From: Chris B. <cb...@jp...> - 2001-01-09 18:48:58
|
Phlip TheProgrammer wrote: > And using CXX, we wrap these objects in high-level C++ methods. Not the low-level fragile C. The effect compares favorably to ATL for VC++ and ActiveX. > If we pass a multiarray into a function expecting a PyArrayObject, how then do we add new elements to it? I tried things like 'push_back()' and 'setItem()', but they either did not exist or did not extend the array. > > Am I going to have to generate a new array and copy the old one into the new? I waited a little while before answering this, because there are certainly people more qualified to do so that me. I am only on the NumPy list, so it may have been answered on a different list. The short answer is yes, you will have to generate a new a array and copy the old one into the new. MultiArray objects were created to provide efficient storage of lots of numbers (among other things). Because of this requirement, the numbers are stored as a large single array, and so they cannot be re-sized without re-creating that array. You may be able to change just the data array itself (and a few properties), rather than creating a new structure entirely, but it probably wouldn't be worth it. By the way, I'd like to hear how this all works out. Being able to use NumPy Arrays in extensions more easily would be great! -Chris -- Christopher Barker, Ph.D. cb...@jp... --- --- --- http://www.jps.net/cbarker -----@@ -----@@ -----@@ ------@@@ ------@@@ ------@@@ Water Resources Engineering ------ @ ------ @ ------ @ Coastal and Fluvial Hydrodynamics ------- --------- -------- ------------------------------------------------------------------------ ------------------------------------------------------------------------ |