|
Boost : |
Subject: Re: [boost] [python] Setting a pointer into an object
From: Robert Dailey (rcdailey_at_[hidden])
Date: 2008-09-30 17:05:46
On Tue, Sep 30, 2008 at 3:14 PM, David Abrahams <dave_at_[hidden]> wrote:
> Just wrap the class without exposing any of its interesting parts and
> you should be fine:
>
> class_<SomeClassOfMine>("SomeClassOfMine");
Thanks David.
After I posted my original inquiry I found out through PyErr_Print()
that it needed the class to be exposed to Python. However, I no longer
wish to expose the class, but instead I want to define a global
function in a python script that I'm loading.
For example, I would add this function to the namespace that I pass
into exec_file().
The C++ function I want to expose looks like:
static Rocket::Core::Context* GetContext( std::string const& context_name );
All I'm doing is this:
boost::python::object MyNewFunction( &GetContext );
However, when I compile this I get:
error C2027: use of undefined type
'boost::python::detail::specify_a_return_value_policy_to_wrap_functions_returning<T>'
with
[
T=result_t
]
I can't exactly use return policies here since I'm not using def().
How can I make this work?
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk