Thank you very much Daniel!

I had another question, is it possible to use multi_array and const_multi_array_ref together in python.
What I mean is, if I create a multi_array from python through my c++ functions and I want to pass this array to another c++ function that uses a const_multi_array_ref how do I manage this in the interface file? is this possible?

I added class_<const_multi_array_ref<double, 2> >("const_multi_array_2d_ref"); to my interface file but the types seem to be incompatible.
I would prefer to use the const_multi_array_ref with the multi_arrays to avoid copies...

I had to rewrite my functions to use only multi_array's to make the code I had attached work.



Daniel Wallin wrote:
Sebastien Fortier wrote:
  
I'm having some problems with the use of multi_array's with python. What 
I'm trying to do is to export some functions that create multi_array's 
and pass these multi_array's to other functions that will extract other 
array's from them and display them.
    
[...]
  
So you see I can't use my code, what am I doing wrong?
    

You didn't export multi_array<double, 2> to Python. If you just want to
pass the multi_array's around without manipulating them, it's enough to
export it without any functions:

  class_<multi_array<double, 2> >("multi_array_2d");

If you want a more complete binding, there's binding code for
boost::multi_array queued for inclusion on the CVS. It's currently on a
branch:

Header:
  http://tinyurl.com/hm7pa

Test:
  http://tinyurl.com/z7fzn
  http://tinyurl.com/hthg2

HTH,
  


--

Sébastien Fortier