[C++-sig] why am I getting a Boost.Python.ArgumentError? (original) (raw)

Tom Haynes trhaynes at gmail.com
Tue Aug 25 16:42:15 CEST 2009


Fixed it.

The self.geometry came from a list of Geometrys, which in C++ was a std::vector. I had used the vector_indexing_suite to wrap this list, but forgot to include the "true" as the NoProxy template parameter (since they're boost::shared_ptrs).

-tom

On Mon, Aug 24, 2009 at 5:27 PM, Tom Haynes<trhaynes at gmail.com> wrote:

When trying to called a wrapped method (getName) from python, I get the following error:

 return self.geometry.getName() Boost.Python.ArgumentError: Python argument types in  Geometry.getName(Geometry) did not match C++ signature:  getName(gfx::Geometry {lvalue}) I don't understand why these don't match, though.  It seems to say that the C++ signature is Geometry::getName() (which is true) ... and that's how I'm calling it from python.  If I "print self.geometry" I get that it is a gfx.Geometry object. Thanks for your help. -tom



More information about the Cplusplus-sig mailing list