[C++-sig] Custom smart pointer and bp::wrapper (original) (raw)

Roman Yakovenko roman.yakovenko at gmail.com
Sat Jan 17 20:15:12 CET 2009


2009/1/17 Paul Melis <pyplusplus at assumetheposition.nl>:

But when trying to run

import doh class MyCallback(doh.Callback): def execute(self, t): print t return 1 m = MyCallback() t = doh.Thing() t.setCallback(m) t.update() i'm getting Traceback (most recent call last): File "notopythonconverter.py", line 12, in t.update() TypeError: No topython (by-value) converter found for C++ type: Thing". And I fail to see why...

Mu guess: you need to use boost::python::register_ptr_to_python< Thin >(); ( http://www.boost.org/doc/libs/1_37_0/libs/python/doc/v2/register_ptr_to_python.html )

I have more or less complete example, which exports custom pointer class and its usage to Python: http://www.language-binding.net/pyplusplus/troubleshooting_guide/smart_ptrs/smart_ptrs.html

HTH

-- Roman Yakovenko C++ Python language binding http://www.language-binding.net/



More information about the Cplusplus-sig mailing list