pyste and functions returning opaque pointers
Hi, i am wrapping a C library containing several functions returning opaque pointers. When i wrap several functions returning the same opaque pointer, the BOOST_PYTHON_OPAQUE_SPECIALIZED_TYPE_ID-Makro for the pointer type is issued as many times as I'm having functions returning the same pointer type. Consider the following source: ggbug.h ===== typedef struct anonymous *type1; type1 f1(); type1 f2() ggbug.pyste ======== h = AllFromHeader("ggbug.h") set_policy ( h.f1, return_value_policy(return_opaque_pointer)) set_policy ( h.f2, return_value_policy(return_opaque_pointer)) "pyste ggbug.pyste" produces the following ggbug.cpp ======= // Includes ==================================================================== #include <boost/python.hpp> #include <ggbug.h> // Using ======================================================================= using namespace boost::python; // Declarations ================================================================ BOOST_PYTHON_OPAQUE_SPECIALIZED_TYPE_ID(anonymous)BOOST_PYTHON_OPAQUE_SPECIA LIZE D_TYPE_ID(anonymous) // Module ====================================================================== BOOST_PYTHON_MODULE(ggbug) { def("f1", &f1, return_value_policy< return_opaque_pointer >()); def("f2", &f2, return_value_policy< return_opaque_pointer >()); } I think that one of the BOOST_PYTHON_OPAQUE_SPECIALIZED_TYPE_ID(anonymous)'s shouldn't be there Cheers, Gottfried Ganßauge
participants (2)
-
Gottfried Gan�auge -
Nicodemus