From 6c4cc3653e8dd7668295f3e659b7eb4dc571b67c Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Tue, 22 Nov 2011 02:59:34 -0600 Subject: Initial import of SIP4 for Qt3 --- doc/html/python_api.html | 528 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 528 insertions(+) create mode 100644 doc/html/python_api.html (limited to 'doc/html/python_api.html') diff --git a/doc/html/python_api.html b/doc/html/python_api.html new file mode 100644 index 0000000..633ac2a --- /dev/null +++ b/doc/html/python_api.html @@ -0,0 +1,528 @@ + + + + + + + Python API for Applications — SIP 4.10.5 Reference Guide + + + + + + + + + + + + +
+
+
+
+ +
+

Python API for Applications

+

The main purpose of the sip module is to provide functionality common to +all SIP generated bindings. It is loaded automatically and most of the time +you will completely ignore it. However, it does expose some functionality that +can be used by applications.

+
+
+sip.cast(obj, type) → object
+

This does the Python equivalent of casting a C++ instance to one of its +sub or super-class types.

+ +++ + + + + + +
Parameters:
    +
  • obj – the Python object.
  • +
  • type – the type.
  • +
+
Returns:

a new Python object is that wraps the same C++ instance as obj, but +has the type type.

+
+
+ +
+
+sip.delete(obj)
+

For C++ instances this calls the C++ destructor. For C structures it +returns the structure’s memory to the heap.

+ +++ + + + +
Parameter:obj – the Python object.
+
+ +
+
+sip.dump(obj)
+

This displays various bits of useful information about the internal state +of the Python object that wraps a C++ instance or C structure.

+ +++ + + + +
Parameter:obj – the Python object.
+
+ +
+
+sip.getapi(name) → version
+

+New in version 4.9.

+

This returns the version number that has been set for an API. The version +number is either set explicitly by a call to sip.setapi() or +implicitly by importing the module that defines it.

+ +++ + + + + + +
Parameter:name – the name of the API.
Returns:The version number that has been set for the API. An exception will +be raised if the API is unknown.
+
+ +
+
+sip.isdeleted(obj) → bool
+

This checks if the C++ instance or C structure has been deleted and +returned to the heap.

+ +++ + + + + + +
Parameter:obj – the Python object.
Returns:True if the C/C++ instance has been deleted.
+
+ +
+
+sip.ispyowned(obj) → bool
+

This checks if the C++ instance or C structure is owned by Python.

+ +++ + + + + + +
Parameter:obj – the Python object.
Returns:True if the C/C++ instance is owned by Python.
+
+ +
+
+sip.setapi(name, version)
+

+New in version 4.9.

+

This sets the version number of an API. An exception is raised if a +different version number has already been set, either explicitly by a +previous call, or implicitly by importing the module that defines it.

+ +++ + + + +
Parameters:
    +
  • name – the name of the API.
  • +
  • version – The version number to set for the API. Version numbers must be +greater than or equal to 1.
  • +
+
+
+ +
+
+sip.setdeleted(obj)
+

This marks the C++ instance or C structure as having been deleted and +returned to the heap so that future references to it raise an exception +rather than cause a program crash. Normally SIP handles such things +automatically, but there may be circumstances where this isn’t possible.

+ +++ + + + +
Parameter:obj – the Python object.
+
+ +
+
+sip.settracemask(mask)
+

If the bindings have been created with SIP’s -r command +line option then the generated code will include debugging statements that +trace the execution of the code. (It is particularly useful when trying to +understand the operation of a C++ library’s virtual function calls.)

+ +++ + + + +
Parameter:mask – the mask that determines which debugging statements are enabled.
+

Debugging statements are generated at the following points:

+
    +
  • in a C++ virtual function (mask is 0x0001)
  • +
  • in a C++ constructor (mask is 0x0002)
  • +
  • in a C++ destructor (mask is 0x0004)
  • +
  • in a Python type’s __init__ method (mask is 0x0008)
  • +
  • in a Python type’s __del__ method (mask is 0x0010)
  • +
  • in a Python type’s ordinary method (mask is 0x0020).
  • +
+

By default the trace mask is zero and all debugging statements are +disabled.

+
+ +
+
+sip.SIP_VERSION
+
This is a Python integer object that represents the SIP version number as +a 3 part hexadecimal number (e.g. v4.0.0 is represented as 0x040000). +It was first implemented in SIP v4.2.
+ +
+
+sip.SIP_VERSION_STR
+
This is a Python string object that defines the SIP version number as +represented as a string. For development snapshots it will start with +snapshot-. It was first implemented in SIP v4.3.
+ +
+
+sip.transferback(obj)
+
This function is a wrapper around sipTransferBack().
+ +
+
+sip.transferto(obj, owner)
+
This function is a wrapper around sipTransferTo().
+ +
+
+sip.unwrapinstance(obj) → integer
+

This returns the address, as an integer, of a wrapped C/C++ structure or +class instance.

+ +++ + + + + + +
Parameter:obj – the Python object.
Returns:an integer that is the address of the C/C++ instance.
+
+ +
+
+class sip.voidptr
+

This is the type object for the type SIP uses to represent a C/C++ +void *. It may have a size associated with the address in which case +the Python buffer protocol is supported. This means that the memory can +be treated as a mutable array of bytes when wrapped with the buffer() +builtin. The type has the following methods.

+
+
+__init__(address[, size=-1[, writeable=True]])
+
+++ + + + +
Parameters:
    +
  • address – the address, either another sip.voidptr, None, a +Python Capsule, a Python CObject, or an integer.
  • +
  • size – the optional associated size of the block of memory and is negative +if the size is not known.
  • +
  • writeable – set if the memory is writeable. If it is not specified, and +address is a sip.voidptr instance then its value will be +used.
  • +
+
+
+ +
+
+__int__() → integer
+

This returns the address as an integer.

+ +++ + + + +
Returns:the integer address.
+
+ +
+
+__hex__() → string
+

This returns the address as a hexadecimal string.

+ +++ + + + +
Returns:the hexadecimal string address.
+
+ +
+
+ascapsule() → capsule
+

+New in version 4.10.

+

This returns the address as an unnamed Python Capsule. This requires +Python v3.1 or later or Python v2.7 or later.

+ +++ + + + +
Returns:the Capsule.
+
+ +
+
+ascobject() → cObject
+

This returns the address as a Python CObject. This is deprecated with +Python v3.1 or later.

+ +++ + + + +
Returns:the CObject.
+
+ +
+
+asstring([size=-1]) → string/bytes
+

This returns a copy of the block of memory as a Python v2 string object +or a Python v3 bytes object.

+ +++ + + + + + +
Parameter:size – the number of bytes to copy. If it is negative then the size +associated with the address is used. If there is no associated +size then an exception is raised.
Returns:the string or bytes object.
+
+ +
+
+getsize() → integer
+

This returns the size associated with the address.

+ +++ + + + +
Returns:the associated size which will be negative if there is none.
+
+ +
+
+setsize(size)
+

This sets the size associated with the address.

+ +++ + + + +
Parameter:size – the size to associate. If it is negative then no size is +associated.
+
+ +
+
+getwriteable() → bool
+

This returns the writeable state of the memory.

+ +++ + + + +
Returns:True if the memory is writeable.
+
+ +
+
+setwriteable(writeable)
+

This sets the writeable state of the memory.

+ +++ + + + +
Parameter:writeable – the writeable state to set.
+
+ +
+ +
+
+sip.wrapinstance(addr, type) → object
+

This wraps a C structure or C++ class instance in a Python object. If the +instance has already been wrapped then a new reference to the existing +object is returned.

+ +++ + + + + + +
Parameters:
    +
  • addr – the address of the instance as a number.
  • +
  • type – the Python type of the instance.
  • +
+
Returns:

the Python object that wraps the instance.

+
+
+ +
+
+class sip.wrapper
+
This is the type object of the base type of all instances wrapped by SIP.
+ +
+
+class sip.wrappertype
+
This is the type object of the metatype of the sip.wrapper type.
+ +
+ + +
+
+
+
+
+

Previous topic

+

Using the C API when Embedding

+

Next topic

+

The Build System

+ + +
+
+
+
+ + + + \ No newline at end of file -- cgit v1.2.3