如何将numpy 2-dim数组传递给C函数

时间:2014-05-29 09:35:03

标签: python c arrays numpy ctypes

我的库中有这个界面。

extern "C" {
    Demodulator<double>* Demodulator_new_double(int rows, int cols);

    double * demodulateDoubleMatrix(Demodulator<double>* demodulator, double * input, int rows, int columns);
}

我知道传递numpy对象的唯一方法是使用numpy.ctypes创建类似的东西。

array_2d_double = npct.ndpointer(dtype=numpy.float64, ndim=2, flags='C_CONTIGUOUS')


self.lib.demodulateDoubleMatrix.argtypes = [ctypes.POINTER, array_2d_double, ctypes.c_int, ctypes.c_int]
        self.lib.demodulateDoubleMatrix.restype = array_2d_double

但是我需要将第一个参数设置为指向对象的指针,我不知道该怎么做。

0 个答案:

没有答案