how to convert c++ objects to Python?
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
cavok@filibusta.crema.unimi.it writes:
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
Why do you think that? Your code should work find without it as written.
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
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();
def("get_A", get_A, return_value_policy
()); } ---------------- 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
Info: http://www.boost.org Wiki: http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl Unsubscribe: mailto:boost-users-unsubscribe@yahoogroups.com
Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
-- Dave Abrahams Boost Consulting www.boost-consulting.com
participants (2)
-
cavokļ¼ filibusta.crema.unimi.it
-
David Abrahams