[Pyrex] passing method's args to extern func
Stefan Behnel
stefan_ml at behnel.de
Wed Jun 10 08:19:39 CEST 2009
Bartosz SKOWRON wrote:
> i have a question which the answer is described here:
> http://ldots.org/pyrex-guide/5-python-wrapper.html#std
>
> The problem is, what with more complex data types than char* ? e.g.
> defined structures or unsigned char *?
> i need both and get this:
> pyrexc pcap.pyx
> /home/xsx/__usrsrc__/pypcap/pcap.pyx:235:18: Cannot convert Python
> object to 'pcap_pkthdr *'
Maybe you could add some info about what kind of type 'pcap_pkthdr' is?
Most likely, you will have to convert the data manually in some way.
> /home/xsx/__usrsrc__/pypcap/pcap.pyx:236:16: Cannot convert Python
> object to 'unsigned char *'
You can cast the object to <char*> first to let Pyrex do the conversion,
and then re-cast that to <unsigned char*> to make the C compiler happy, i.e.
cdef unsigned char* c_val
c_val = <unsigned char*><char*>some_python_byte_string
Note that this will not work with unicode strings, just plain byte strings.
Stefan
More information about the Pyrex
mailing list