"[EMAIL PROTECTED]" wrote:
> Calling a python method from C++ has the following signature:
>
> PyObject *
> PyObject_CallMethod(PyObject *self, char *method_name,
> char *arg_format, ...);
>
> I'm having trouble figuring out how to declare self.
Reading the C API documentation might provide the clues you're
looking for:
PyObject* PyObject_CallMethod(PyObject *o, char *method, char *format, ...)
Return value: New reference.
Call the method named method of object o with a variable number of C
arguments.
/.../ This is the equivalent of the Python expression "o.method(args)".
What is the object? What method are you calling? What arguments
are you passing in?
> Let's say my python file is called stuff.py and is like the following,
> doMath() is defined in stuff.py and is not part of any class:
>
> #stuff.py
>
> def doMath():
> val = val + 1
That's a function, not an object method.
> In C++, I think my codes should be like the following:
>
> PyObject *resultObj = PyObject_CallMethod( self, "doMath", "");
>
> What do I put for self? Any help please?
CallMethod is used to call a method on a given object. To call a callable
object
(such as a function), other callable object, use PyObject_Call (or CallObject
or CallFunction). See the C API documentation for details.
</F>
--
http://mail.python.org/mailman/listinfo/python-list