Yurttas/PL/SL/python/docs/core-python-programming/doc/20/api/cObjects.html
Jump to navigation
Jump to search
7.5.3 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)
- Returns true if its argument is a PyCObject.
- PyObject* PyCObject_FromVoidPtr (void* cobj, void (*destr)(void *))
- Return value: New reference.Creates 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.Creates 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)
- Returns the object void * that the PyCObject self was created with.
- void* PyCObject_GetDesc (PyObject* self)
- Returns the description void * that the PyCObject self was created with.
See About this document... for information on suggesting changes.