Kaspar,

Yes, in order for numpy.i typemaps to work, you need to provide dimensions.  
How is lilv_test(float*) supposed to know how large the float array is?  Is it 
actually a method where the class knows the size?  In cases where dimensions 
are not passed through the argument list, you have two options:

  1. Write a proxy function that does have dimension arguments and calls the 
original function, and then wrap that instead of the original function.

  2. Use the functions and macros in numpy.i to write new typemaps that work 
for your case.

-Bill

On Nov 22, 2013, at 3:30 PM, Kaspar Emanuel wrote:

> Hey,
> I am trying to improve the Lilv Python bindings to include numpy.i to allow 
> for creation and verification of audio test buffers using NumPy.
> 
> I am just trying to get something working at the moment so I am tring to wrap 
> a test function.
> 
> static inline void
> lilv_test(float* data_location){}
> 
> and I have in lilv.i:
> 
> %apply (float* INPLACE_ARRAY1) {(float* data_location)};
> This doesn’t produce any warnings or anything but when I try and use it from 
> Python I get:
> 
> TypeError: in method 'lilv_test', argument 1 of type 'float *'
> What does work is if I have:
> 
> lilv_test(float* data_location, int n){}
> and
> 
> %apply (float* INPLACE_ARRAY1, int DIM1) {(float* data_location, int n)};
> but this doesn’t fit very well with the functions I eventually want to wrap, 
> as they don’t have a dimension argument.
> 
> Is it not possible to use INPLACE_ARRAY1 without a dimension?
> 
> Thanks for any help,
> 
> Kaspar
> 
> 
> _______________________________________________
> NumPy-Discussion mailing list
> [email protected]
> http://mail.scipy.org/mailman/listinfo/numpy-discussion

** Bill Spotz                                              **
** Sandia National Laboratories  Voice: (505)845-0170      **
** P.O. Box 5800                 Fax:   (505)284-0154      **
** Albuquerque, NM 87185-0370    Email: [email protected] **





_______________________________________________
NumPy-Discussion mailing list
[email protected]
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to