. module:: shiboken
Shiboken module¶
Functions¶
def
isValid
(obj)def
wrapInstance
(address, type)def
getCppPointer
(obj)def
delete
(obj)def
isOwnedByPython
(obj)def
wasCreatedByPython
(obj)def
dump
(obj)
Detailed description¶
This Python module can be used to access internal information related to our binding technology. Access to this internal information is required to e.g.: integrate PySide with Qt based programs that offer Python scripting like Maya™ or just for debug purposes.
Some function description refer to “Shiboken based objects”, wich means Python objects instances of any Python Type created using Shiboken.
- isValid(obj)¶
Given a Python object, returns True if the object methods can be called without an exception being thrown. A Python wrapper becomes invalid when the underlying C++ object is destroyed or unreachable.
- wrapInstance(address, type)¶
Creates a Python wrapper for a C++ object instantiated at a given memory address - the returned object type will be the same given by the user.
The type must be a Shiboken type, the C++ object will not be destroyed when the returned Python object reach zero references.
If the address is invalid or doesn’t point to a C++ object of given type the behavior is undefined.
- getCppPointer(obj)¶
Returns a tuple of longs that contain the memory addresses of the C++ instances wrapped by the given object.
- delete(obj)¶
Deletes the C++ object wrapped by the given Python object.
- isOwnedByPython(obj)¶
Given a Python object, returns True if Python is responsible for deleting the underlying C++ object, False otherwise.
If the object was not a Shiboken based object, a TypeError is thrown.
- wasCreatedByPython(obj)¶
Returns true if the given Python object was created by Python.
- dump(obj)¶
Returns a string with implementation-defined information about the object. This method should be used only for debug purposes by developers creating their own bindings as no guarantee is provided that the string format will be the same across different versions.
If the object is not a Shiboken based object, a TypeError is thrown.
© 2022 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.