|
|
|
Python/C API Reference Manual |
|
|
|
7.5.10 CObjects
Refer to Extending and Embedding the Python Interpreter,
section 1.12, ``Providing a C API for an Extension Module,'' for more
information on using these objects.
- PyCObject
-
This subtype of PyObject represents an opaque value, useful
for C extension modules who need to pass an opaque value (as a
void* pointer) through Python code to other C code. It is
often used to make a C function pointer defined in one module
available to other modules, so the regular import mechanism can be
used to access C APIs defined in dynamically loaded modules.
int PyCObject_Check( | PyObject *p) |
-
Return true if its argument is a PyCObject.
PyObject* PyCObject_FromVoidPtr( | void* cobj,
void (*destr)(void *)) |
-
Return value:
New reference.
Create a PyCObject from the void * cobj. The
destr function will be called when the object is reclaimed,
unless it is NULL.
PyObject* PyCObject_FromVoidPtrAndDesc( | void* cobj,
void* desc, void (*destr)(void *, void *)) |
-
Return value:
New reference.
Create a PyCObject from the void *cobj. The
destr function will be called when the object is reclaimed.
The desc argument can be used to pass extra callback data for
the destructor function.
void* PyCObject_AsVoidPtr( | PyObject* self) |
-
Return the object void * that the PyCObject
self was created with.
void* PyCObject_GetDesc( | PyObject* self) |
-
Return the description void * that the PyCObject
self was created with.
int PyCObject_SetVoidPtr( | PyObject* self, void* cobj) |
-
Set the void pointer inside self to cobj.
The PyCObject must not have an associated destructor.
Return true on success, false on failure.
Release 2.5.2, documentation updated on 21st February, 2008.
See About this document... for information on suggesting changes.
|