
hi, i have a c++ function that returns a reference to a c++ object. i want to expose this function to Python making it return the Python version of the object. i'm using Boost.Python. i understood that i have to use to_python_converter but the body of the A_to_Python::convert function is mystery for me. Boost documentation's example solves the problem in a manner i'm not able to apply to my case. my A object is complex and i'd like to somewhat (re)use the class_ object. ---------------- CUT HERE ---------------- #include <boost/python.hpp> using namespace boost::python; struct A { void f() {} }; A a; struct A_to_Python { static PyObject* convert(const A& a) { // documentation says: // return PyObject_New(noddy_NoddyObject, &noddy_NoddyType); } }; A& get_A() { return a; } BOOST_PYTHON_MODULE(hello) { class_<A>("A") .def("f", &A::f) ; to_python_converter<A, A_to_Python>(); def("get_A", get_A, return_value_policy<reference_existing_object>()); } ---------------- CUT HERE ---------------- please, somebody enlighten me. many thanks domenico -----[ Domenico Andreoli, aka cavok --[ http://filibusta.crema.unimi.it/~cavok/gpgkey.asc ---[ 3A0F 2F80 F79C 678A 8936 4FEE 0677 9033 A20E BC50