From 55657db2d72fe1e274af4bd1e5d9ca9d350442df Mon Sep 17 00:00:00 2001 From: Drew Short Date: Thu, 7 Jan 2016 16:03:13 -0600 Subject: [PATCH] Working python FFI example/test --- FFI-tests/ffi_test.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/FFI-tests/ffi_test.py b/FFI-tests/ffi_test.py index 50d0c21..382f9d7 100755 --- a/FFI-tests/ffi_test.py +++ b/FFI-tests/ffi_test.py @@ -17,7 +17,6 @@ small_image3_path = "test_images/sample_03_small.jpg".encode(encoding="utf-8") test_images=[large_image1_path, medium_image1_path, small_image1_path,large_image2_path, medium_image2_path, small_image2_path,large_image3_path, medium_image3_path, small_image3_path] def unsigned64(number): - #return c_ulonglong(number).value return c_ulonglong(number).value print("starting ffi test") @@ -25,6 +24,11 @@ print("starting ffi test") # Load the shared library lib = cdll.LoadLibrary("libpihash.so") +# Setting the ctypes return type references for the foreign functions +lib.ext_get_ahash.restype = c_ulonglong +lib.ext_get_dhash.restype = c_ulonglong +lib.ext_get_phash.restype = c_ulonglong + #initialize the library lib.init() @@ -34,9 +38,9 @@ lib.init() for image in test_images: print("Requesting hashes for: %s"% image) - print("ahash: %i"% lib.ext_get_ahash(image)) - print("dhash: %i"% lib.ext_get_dhash(image)) - print("phash: %i"% lib.ext_get_phash(image)) + print("ahash: %i"% unsigned64(lib.ext_get_ahash(image))) + print("dhash: %i"% unsigned64(lib.ext_get_dhash(image))) + print("phash: %i"% unsigned64(lib.ext_get_phash(image))) # Do cleanup #lib.teardown()