return own type from Python extention?
Jeremy Moles
jeremy at emperorlinux.com
Thu Sep 29 10:23:39 EDT 2005
One more thing! :)
The _new method probably isn't what you want to modify the actual interl
C object; the initproc method actually gives you a pointer to it as it's
first object... (it's the tp_init member in the PyTypeObject sturcture.)
On Thu, 2005-09-29 at 15:59 +0200, elho wrote:
> Thx, but my Problem is to get my own type before.
> If I have a C-Type, I know how tu return it from the Python extention,
> but how will it work with my own type?
> I expect something like the following:
>
> static PyObject* wrap_MyFunction (PyObject* self, PyObject* args)
> {
> :
> MyPyType *myType = MyTypeNew ();
> return (PyObject*)myType;
> }
>
> How will the Konstructor-Funktion look for MyPyType to call this in C-Code.
>
> ...If I explain my problem to confuesed here more informations:
> I have one function for MyPyType to construct it by calling from python:
>
> static PyObject* PyMyType_new(PyTypeObject *type, PyObject *args,
> PyObject *kwds)
> {
> PyMyType *self;
> self = (PyMyType*)type->tp_alloc(type, 0);
> if (self != NULL) {
> self->test = 0;
> }
> return (PyObject *)self;
> }
>
> ..but how do I have to call this from C-Code or how will another
> Funktion for this look like?
>
>
>
> Jeremy Moles wrote:
> > You can use Py_BuildValue for most what you're probably going to need.
> >
> > http://docs.python.org/api/arg-parsing.html
> >
> > On Thu, 2005-09-29 at 15:39 +0200, elho wrote:
> >
> >>I used the examples from the "Extending and Embedding the Python
> >>Interpreter" tutorial and this works. I can use my types with python.
> >>But I do not know how to creat my own Python variable in an python
> >>extending c-code. What will I have to creat this and return it to my
> >>python programm?
> >
> >
More information about the Python-list
mailing list