Hi all, So I have a C-function in a DLL loaded through ctypes. This particular function returns a pointer to a double. In fact I know that this pointer points to the first element in an array of, say for simplicity, 200 elements.
How do I convert this pointer to a NumPy array that uses this data (ie. no copy of data in memory)? I am able to create a numpy array using a copy of the data. I have tried using the 'numpy.ctypeslib.ndpointer' but so far failed. In its documentation it claims it should be possible to use for not only argtypes attribute, but also restype. I have not found a single example of this on the web, and I wonder how this is done. As I see it, it would have to use the errcheck attribute to return an ndarray and not just restype. My latest trial was: >>> import ctypes >>> pointer = DLL.my_func() >>> ctypes_arr_type = C.POINTER(200 * ctypes.c_double) >>> ctypes_arr = ctypes_arr_type(pointer) >>> narray = N.ctypeslib.as_array(ctypes_arr) however this didn't work. Any hints would be appreciated. Thanks, Jens _______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion