[Numpy-discussion] Best way to expose std::vector to be used with numpy

Charles R Harris charlesr.harris at gmail.com
Mon Oct 13 22:39:50 EDT 2014


On Mon, Oct 13, 2014 at 12:54 PM, Sebastian Berg <sebastian at sipsolutions.net
> wrote:

> On Mo, 2014-10-13 at 13:35 +0200, Daniele Nicolodi wrote:
> > Hello,
> >
> > I have a C++ application that collects float, int or complex data in a
> > possibly quite large std::vector. The application has some SWIG
> > generated python wrappers that expose this vector to python. However,
> > the standard way in which SWIG exposes the data is to create a touple
> > and pass this to python, where it is very often converted to a numpy
> > array for processing. Of course this is not efficient.
> >
> > I would like therefore to generate a smarter python interface. In python
> > 3 I would without doubt go for implementing the buffer protocol, which
> > enables seamless interfacing with numpy. However, I need to support also
> > python 2 and there the buffer protocol is not as nice.
>
> Isn't the new buffer protocol in python 2.6 or 2.7 already? There is at
> least a memoryview object in python 2, which maybe could be used to the
> same effect?
>

No memoryview in python2.6, but the older buffer protocol it there. Is
Boost Python an option?

<snip>

Chuck
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20141013/d5edf7a3/attachment.html>


More information about the NumPy-Discussion mailing list