[C++-sig] Accessing 2D array from python in C++

alfa alfarobi0161 at yahoo.com
Thu Aug 16 10:29:35 CEST 2012


Hi,

Could you give more hints on this or any code snippet that I can implement this. I'm a bit naive in applying this. Please consider my 2D array of Vp_cpp(Vp equivalent in Python) is as below:


    typedef boost::multi_array<double, 2> array_type;
    typedef array_type::index index;
    array_type Vp_cpp(boost::extents[X_cpp][X_cpp]);


I'm still puzzled how to "manually wrap the features" in the last "..." in:
    boost::python::class_< boost::multi_array<...> >(...)

Thanks in advance.



________________________________
 From: Jim Bosch <talljimbo at gmail.com>
To: alfa <alfarobi0161 at yahoo.com> 
Cc: Development of Python/C++ integration <cplusplus-sig at python.org> 
Sent: Wednesday, August 15, 2012 5:34 PM
Subject: Re: [C++-sig] Accessing 2D array from python in C++
 

On Aug 15, 2012 1:57 AM, "alfa" <alfarobi0161 at yahoo.com> wrote:
>
> I apologize for double posting this because it was spammed before.
>
> Hi Jim,
>
> Do you mean, "you could wrap multi_array itself using class_", I should do as below:
>
> boost::python::class_<std::vector<std::vector<double> > >("PyVec").def(boost::python::vector_indexing_suite<std::vector<std::vector<double> > >());
>
No, I don't think that will work; I meant something like this:
boost::python::class_< boost::multi_array<...> >(...)
    ...;
Where the last "..." is where you have to manually wrap the features of multi_array you want to use.  I'm afraid there's nothing as easy as vector_indexing_suite.

Jim
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/cplusplus-sig/attachments/20120816/c8999758/attachment.html>


More information about the Cplusplus-sig mailing list