Library of Assembled Shared Sources
|
#include "pyobject_call.inl"
#include "module_definition.h"
#include "../meta/is_member.h"
#include "../meta/is_charptr.h"
Go to the source code of this file.
Macros | |
Module Declaration Macros | |
These macros declare and define ModuleDefinition objects that represent Python modules. They create the fundamental module object that serves as the container for all exported functions, classes, and constants. | |
#define | PY_DECLARE_MODULE_NAME_DOC(i_module, s_name, s_doc) |
Declare and define a ModuleDefinition object representing a Python module. | |
#define | PY_DECLARE_MODULE_NAME(i_module, s_name) |
Declare a module with name only (no documentation). | |
#define | PY_DECLARE_MODULE_DOC(i_module, s_doc) |
Declare a module with documentation, using the identifier as the module name. | |
#define | PY_DECLARE_MODULE(i_module) |
Declare a module with minimal setup (name derived from identifier, no documentation). | |
Module Entrypoint and Injection Macros | |
These macros handle module initialization, injection, and extension module creation. They manage the Python module lifecycle from creation to registration with the Python interpreter. If you're building a Python extension module (a .pyd or .so file), you will typically use the entrypoint macros to create the required // Declare module
// Add functions and classes
// ...
// Create module entrypoint for Python extension
PY_MODULE_ENTRYPOINT(mymodule)
#define PY_MODULE_ENTRYPOINT(i_module) Create a Python module initialization function using the module identifier as the function name. Definition pyobject_macros.h:171 #define PY_DECLARE_MODULE_NAME_DOC(i_module, s_name, s_doc) Declare and define a ModuleDefinition object representing a Python module. Definition pyobject_macros.h:88 The injection macros are more low-level and can be used to create modules at runtime to be registered with an embedded Python interpreter. | |
#define | PY_MODULE_ENTRYPOINT_NAME(i_module, i_name) |
Create a PyInit_* Python module initialization function with custom name. | |
#define | PY_MODULE_ENTRYPOINT(i_module) |
Create a Python module initialization function using the module identifier as the function name. | |
#define | PY_INJECT_MODULE(i_module) |
Inject a Python module so Python becomes aware of it. | |
#define | PY_INJECT_MODULE_EX(i_module, s_moduleName, s_doc) |
#define | PY_INJECT_MODULE_NAME(i_module, s_moduleName) |
#define | PY_INJECT_MODULE_DOC(i_module, s_doc) |
#define | PY_EXTENSION_MODULE_EX(i_module, f_injection, s_doc) |
Inject a python module so Python is aware of it and produce all necessary code so a module can be used as extension of Python. | |
#define | PY_EXTENSION_MODULE_DOC(i_module, f_injection, s_doc) |
Create an extension module with documentation. | |
#define | PY_EXTENSION_MODULE(i_module, f_injection) |
Create an extension module (no documentation). | |
Module Constants and Objects Macros | |
These macros add constants, variables, and arbitrary Python objects to modules. They provide different approaches for exposing C++ values and objects to Python. | |
#define | PY_MODULE_INTEGER_CONSTANT(i_module, s_name, s_value) |
Add an integer constant to a Python module. | |
#define | PY_MODULE_STRING_CONSTANT(i_module, s_name, s_value) |
Add a string constant to a Python module. | |
#define | PY_INJECT_OBJECT_IN_MODULE_EX(o_object, i_module, s_objectName) |
Inject an arbitrary object into an already created module at runtime. | |
#define | PY_INJECT_OBJECT_IN_MODULE(o_object, i_module) |
Inject an object using its C++ identifier as the Python name. | |
#define | PY_MODULE_ADD_INTEGER_CONSTANT(i_module, s_name, v_value) |
#define | PY_MODULE_ADD_STRING_CONSTANT(i_module, s_name, s_value) |
Basic Function Export Macros | |
These macros export C++ functions to Python with automatic type deduction and wrapper generation. Use these for simple function exports where overloading is not an issue and automatic type deduction is sufficient. | |
#define | PY_MODULE_PY_FUNCTION_EX(i_module, f_cppFunction, s_functionName, s_doc) |
Export a C++ function to Python without automatic wrapper generation. | |
#define | PY_MODULE_FUNCTION_EX(i_module, f_cppFunction, s_functionName, s_doc, i_dispatcher) |
Export a C++ free function to Python with full control over overloading. | |
#define | PY_MODULE_FUNCTION_NAME_DOC(i_module, f_cppFunction, s_name, s_doc) |
Export a C++ free function to Python with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_NAME(i_module, f_cppFunction, s_name) |
Export a C++ free function to Python with custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_DOC(i_module, f_cppFunction, s_doc) |
Export a C++ free function to Python using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION(i_module, f_cppFunction) |
Export a C++ free function to Python using the C++ function name (no documentation). | |
Function Cast Export Macros (Deprecated) | |
These macros export C++ functions to Python with explicit type casting and support for default parameters. They create wrapper functions that handle type conversions and allow exporting functions with default parameters by omitting trailing parameters. | |
#define | PY_MODULE_FUNCTION_CAST_EX_0(i_module, f_cppFunction, t_return, s_functionName, s_doc, i_dispatcher) |
Exports a C++ free functions to Python with on the fly casting on return type and parameters, including omission of default parameters. | |
#define | PY_MODULE_FUNCTION_CAST_EX_1(i_module, f_cppFunction, t_return, t_P1, s_functionName, s_doc, i_dispatcher) |
#define | PY_MODULE_FUNCTION_CAST_EX_2(i_module, f_cppFunction, t_return, t_P1, t_P2, s_functionName, s_doc, i_dispatcher) |
#define | PY_MODULE_FUNCTION_CAST_EX_3(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, s_functionName, s_doc, i_dispatcher) |
#define | PY_MODULE_FUNCTION_CAST_EX_4(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, s_functionName, s_doc, i_dispatcher) |
#define | PY_MODULE_FUNCTION_CAST_EX_5(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_functionName, s_doc, i_dispatcher) |
#define | PY_MODULE_FUNCTION_CAST_EX_6(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_functionName, s_doc, i_dispatcher) |
#define | PY_MODULE_FUNCTION_CAST_EX_7(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_functionName, s_doc, i_dispatcher) |
#define | PY_MODULE_FUNCTION_CAST_EX_8(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_functionName, s_doc, i_dispatcher) |
#define | PY_MODULE_FUNCTION_CAST_EX_9(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_functionName, s_doc, i_dispatcher) |
#define | PY_MODULE_FUNCTION_CAST_EX_10(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_functionName, s_doc, i_dispatcher) |
#define | PY_MODULE_FUNCTION_CAST_EX_11(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_functionName, s_doc, i_dispatcher) |
#define | PY_MODULE_FUNCTION_CAST_EX_12(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_functionName, s_doc, i_dispatcher) |
#define | PY_MODULE_FUNCTION_CAST_EX_13(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_functionName, s_doc, i_dispatcher) |
#define | PY_MODULE_FUNCTION_CAST_EX_14(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_functionName, s_doc, i_dispatcher) |
#define | PY_MODULE_FUNCTION_CAST_EX_15(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_functionName, s_doc, i_dispatcher) |
#define | PY_MODULE_FUNCTION_CAST_NAME_DOC_0(i_module, f_cppFunction, t_return, t_params, s_functionName, s_doc) |
#define | PY_MODULE_FUNCTION_CAST_NAME_DOC_1(i_module, f_cppFunction, t_return, t_P1, s_functionName, s_doc) |
#define | PY_MODULE_FUNCTION_CAST_NAME_DOC_2(i_module, f_cppFunction, t_return, t_P1, t_P2, s_functionName, s_doc) |
#define | PY_MODULE_FUNCTION_CAST_NAME_DOC_3(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, s_functionName, s_doc) |
#define | PY_MODULE_FUNCTION_CAST_NAME_DOC_4(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, s_functionName, s_doc) |
#define | PY_MODULE_FUNCTION_CAST_NAME_DOC_5(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_functionName, s_doc) |
#define | PY_MODULE_FUNCTION_CAST_NAME_DOC_6(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_functionName, s_doc) |
#define | PY_MODULE_FUNCTION_CAST_NAME_DOC_7(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_functionName, s_doc) |
#define | PY_MODULE_FUNCTION_CAST_NAME_DOC_8(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_functionName, s_doc) |
#define | PY_MODULE_FUNCTION_CAST_NAME_DOC_9(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_functionName, s_doc) |
#define | PY_MODULE_FUNCTION_CAST_NAME_DOC_10(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_functionName, s_doc) |
#define | PY_MODULE_FUNCTION_CAST_NAME_DOC_11(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_functionName, s_doc) |
#define | PY_MODULE_FUNCTION_CAST_NAME_DOC_12(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_functionName, s_doc) |
#define | PY_MODULE_FUNCTION_CAST_NAME_DOC_13(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_functionName, s_doc) |
#define | PY_MODULE_FUNCTION_CAST_NAME_DOC_14(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_functionName, s_doc) |
#define | PY_MODULE_FUNCTION_CAST_NAME_DOC_15(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_functionName, s_doc) |
#define | PY_MODULE_FUNCTION_CAST_NAME_0(i_module, f_cppFunction, t_return, s_functionName) |
#define | PY_MODULE_FUNCTION_CAST_NAME_1(i_module, f_cppFunction, t_return, t_P1, s_functionName) |
#define | PY_MODULE_FUNCTION_CAST_NAME_2(i_module, f_cppFunction, t_return, t_P1, t_P2, s_functionName) |
#define | PY_MODULE_FUNCTION_CAST_NAME_3(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, s_functionName) |
#define | PY_MODULE_FUNCTION_CAST_NAME_4(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, s_functionName) |
#define | PY_MODULE_FUNCTION_CAST_NAME_5(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_functionName) |
#define | PY_MODULE_FUNCTION_CAST_NAME_6(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_functionName) |
#define | PY_MODULE_FUNCTION_CAST_NAME_7(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_functionName) |
#define | PY_MODULE_FUNCTION_CAST_NAME_8(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_functionName) |
#define | PY_MODULE_FUNCTION_CAST_NAME_9(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_functionName) |
#define | PY_MODULE_FUNCTION_CAST_NAME_10(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_functionName) |
#define | PY_MODULE_FUNCTION_CAST_NAME_11(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_functionName) |
#define | PY_MODULE_FUNCTION_CAST_NAME_12(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_functionName) |
#define | PY_MODULE_FUNCTION_CAST_NAME_13(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_functionName) |
#define | PY_MODULE_FUNCTION_CAST_NAME_14(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_functionName) |
#define | PY_MODULE_FUNCTION_CAST_NAME_15(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_functionName) |
Type-Qualified Function Export Macros | |
These macros export C++ functions to Python with explicit type qualification to resolve function overload ambiguities. They provide fine-grained control over function signatures and are essential when exporting overloaded functions that would otherwise be ambiguous. The macros are organized in layers:
| |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX(i_module, f_cppFunction, t_return, t_params, s_functionName, s_doc, i_dispatcher) |
Export a C++ free function to Python with explicit type qualification to resolve ambiguities. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX_0(i_module, f_cppFunction, t_return, s_functionName, s_doc, i_dispatcher) |
Export a C++ function with type qualification for 0-parameter functions with full control. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX_1(i_module, f_cppFunction, t_return, t_P1, s_functionName, s_doc, i_dispatcher) |
Export a C++ function with type qualification for 1-parameter functions with full control. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX_2(i_module, f_cppFunction, t_return, t_P1, t_P2, s_functionName, s_doc, i_dispatcher) |
Export a C++ function with type qualification for 2-parameter functions with full control. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX_3(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, s_functionName, s_doc, i_dispatcher) |
Export a C++ function with type qualification for 3-parameter functions with full control. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX_4(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, s_functionName, s_doc, i_dispatcher) |
Export a C++ function with type qualification for 4-parameter functions with full control. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX_5(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_functionName, s_doc, i_dispatcher) |
Export a C++ function with type qualification for 5-parameter functions with full control. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX_6(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_functionName, s_doc, i_dispatcher) |
Export a C++ function with type qualification for 6-parameter functions with full control. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX_7(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_functionName, s_doc, i_dispatcher) |
Export a C++ function with type qualification for 7-parameter functions with full control. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX_8(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_functionName, s_doc, i_dispatcher) |
Export a C++ function with type qualification for 8-parameter functions with full control. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX_9(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_functionName, s_doc, i_dispatcher) |
Export a C++ function with type qualification for 9-parameter functions with full control. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX_10(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_functionName, s_doc, i_dispatcher) |
Export a C++ function with type qualification for 10-parameter functions with full control. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX_11(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_functionName, s_doc, i_dispatcher) |
Export a C++ function with type qualification for 11-parameter functions with full control. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX_12(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_functionName, s_doc, i_dispatcher) |
Export a C++ function with type qualification for 12-parameter functions with full control. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX_13(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_functionName, s_doc, i_dispatcher) |
Export a C++ function with type qualification for 13-parameter functions with full control. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX_14(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_functionName, s_doc, i_dispatcher) |
Export a C++ function with type qualification for 14-parameter functions with full control. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_EX_15(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_functionName, s_doc, i_dispatcher) |
Export a C++ function with type qualification for 15-parameter functions with full control. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC(i_module, f_cppFunction, t_return, t_params, s_functionName, s_doc) |
Export a C++ function with type qualification and custom name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC_0(i_module, f_cppFunction, t_return, t_params, s_functionName, s_doc) |
Export a C++ function with type qualification for 0-parameter functions with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC_1(i_module, f_cppFunction, t_return, t_P1, s_functionName, s_doc) |
Export a C++ function with type qualification for 1-parameter functions with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC_2(i_module, f_cppFunction, t_return, t_P1, t_P2, s_functionName, s_doc) |
Export a C++ function with type qualification for 2-parameter functions with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC_3(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, s_functionName, s_doc) |
Export a C++ function with type qualification for 3-parameter functions with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC_4(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, s_functionName, s_doc) |
Export a C++ function with type qualification for 4-parameter functions with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC_5(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_functionName, s_doc) |
Export a C++ function with type qualification for 5-parameter functions with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC_6(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_functionName, s_doc) |
Export a C++ function with type qualification for 6-parameter functions with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC_7(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_functionName, s_doc) |
Export a C++ function with type qualification for 7-parameter functions with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC_8(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_functionName, s_doc) |
Export a C++ function with type qualification for 8-parameter functions with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC_9(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_functionName, s_doc) |
Export a C++ function with type qualification for 9-parameter functions with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC_10(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_functionName, s_doc) |
Export a C++ function with type qualification for 10-parameter functions with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC_11(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_functionName, s_doc) |
Export a C++ function with type qualification for 11-parameter functions with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC_12(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_functionName, s_doc) |
Export a C++ function with type qualification for 12-parameter functions with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC_13(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_functionName, s_doc) |
Export a C++ function with type qualification for 13-parameter functions with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC_14(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_functionName, s_doc) |
Export a C++ function with type qualification for 14-parameter functions with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_DOC_15(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_functionName, s_doc) |
Export a C++ function with type qualification for 15-parameter functions with custom name and documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME(i_module, f_cppFunction, t_return, t_params, s_functionName) |
Export a C++ function with type qualification and custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_0(i_module, f_cppFunction, t_return, s_functionName) |
Export a C++ function with type qualification for 0-parameter functions and custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_1(i_module, f_cppFunction, t_return, t_P1, s_functionName) |
Export a C++ function with type qualification for 1-parameter functions with custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_2(i_module, f_cppFunction, t_return, t_P1, t_P2, s_functionName) |
Export a C++ function with type qualification for 2-parameter functions with custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_3(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, s_functionName) |
Export a C++ function with type qualification for 3-parameter functions with custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_4(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, s_functionName) |
Export a C++ function with type qualification for 4-parameter functions with custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_5(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_functionName) |
Export a C++ function with type qualification for 5-parameter functions with custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_6(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_functionName) |
Export a C++ function with type qualification for 6-parameter functions with custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_7(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_functionName) |
Export a C++ function with type qualification for 7-parameter functions with custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_8(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_functionName) |
Export a C++ function with type qualification for 8-parameter functions with custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_9(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_functionName) |
Export a C++ function with type qualification for 9-parameter functions with custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_10(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_functionName) |
Export a C++ function with type qualification for 10-parameter functions with custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_11(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_functionName) |
Export a C++ function with type qualification for 11-parameter functions with custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_12(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_functionName) |
Export a C++ function with type qualification for 12-parameter functions with custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_13(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_functionName) |
Export a C++ function with type qualification for 13-parameter functions with custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_14(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_functionName) |
Export a C++ function with type qualification for 14-parameter functions with custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_NAME_15(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_functionName) |
Export a C++ function with type qualification for 15-parameter functions with custom name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC(i_module, f_cppFunction, t_return, t_params, s_doc) |
Export a C++ function with type qualification using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC_0(i_module, f_cppFunction, t_return, s_doc) |
Export a C++ function with type qualification for 0-parameter functions using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC_1(i_module, f_cppFunction, t_return, t_P1, s_doc) |
Export a C++ function with type qualification for 1-parameter functions using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC_2(i_module, f_cppFunction, t_return, t_P1, t_P2, s_doc) |
Export a C++ function with type qualification for 2-parameter functions using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC_3(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, s_doc) |
Export a C++ function with type qualification for 3-parameter functions using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC_4(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, s_doc) |
Export a C++ function with type qualification for 4-parameter functions using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC_5(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_doc) |
Export a C++ function with type qualification for 5-parameter functions using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC_6(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_doc) |
Export a C++ function with type qualification for 6-parameter functions using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC_7(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_doc) |
Export a C++ function with type qualification for 7-parameter functions using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC_8(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_doc) |
Export a C++ function with type qualification for 8-parameter functions using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC_9(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_doc) |
Export a C++ function with type qualification for 9-parameter functions using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC_10(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_doc) |
Export a C++ function with type qualification for 10-parameter functions using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC_11(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_doc) |
Export a C++ function with type qualification for 11-parameter functions using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC_12(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_doc) |
Export a C++ function with type qualification for 12-parameter functions using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC_13(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_doc) |
Export a C++ function with type qualification for 13-parameter functions using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC_14(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_doc) |
Export a C++ function with type qualification for 14-parameter functions using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED_DOC_15(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_doc) |
Export a C++ function with type qualification for 15-parameter functions using the C++ function name with documentation. | |
#define | PY_MODULE_FUNCTION_QUALIFIED(i_module, f_cppFunction, t_return, t_params) |
Export a C++ function with type qualification using the C++ function name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_0(i_module, f_cppFunction, t_return) |
Export a C++ function with type qualification for 0-parameter functions using the C++ function name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_1(i_module, f_cppFunction, t_return, t_P1) |
Export a C++ function with type qualification for 1-parameter functions using the C++ function name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_2(i_module, f_cppFunction, t_return, t_P1, t_P2) |
Export a C++ function with type qualification for 2-parameter functions using the C++ function name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_3(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3) |
Export a C++ function with type qualification for 3-parameter functions using the C++ function name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_4(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4) |
Export a C++ function with type qualification for 4-parameter functions using the C++ function name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_5(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5) |
Export a C++ function with type qualification for 5-parameter functions using the C++ function name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_6(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6) |
Export a C++ function with type qualification for 6-parameter functions using the C++ function name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_7(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7) |
Export a C++ function with type qualification for 7-parameter functions using the C++ function name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_8(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8) |
Export a C++ function with type qualification for 8-parameter functions using the C++ function name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_9(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9) |
Export a C++ function with type qualification for 9-parameter functions using the C++ function name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_10(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10) |
Export a C++ function with type qualification for 10-parameter functions using the C++ function name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_11(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11) |
Export a C++ function with type qualification for 11-parameter functions using the C++ function name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_12(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12) |
Export a C++ function with type qualification for 12-parameter functions using the C++ function name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_13(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13) |
Export a C++ function with type qualification for 13-parameter functions using the C++ function name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_14(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14) |
Export a C++ function with type qualification for 14-parameter functions using the C++ function name (no documentation). | |
#define | PY_MODULE_FUNCTION_QUALIFIED_15(i_module, f_cppFunction, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15) |
Export a C++ function with type qualification for 15-parameter functions using the C++ function name (no documentation). | |
Class Declaration & Setup | |
Macros to declare and configure Python classes from C++ types. These macros create the internal class definition objects that aggregate all the information needed to generate a Python type. Every C++ class that needs to be exposed to Python must be declared using one of these macros. LASS supports two approaches for exporting C++ classes to Python:
In both cases, the class parameter in these declaration macros refers to the Python binding class (either PyObjectPlus-derived or shadow wrapper), never the underlying native C++ type being shadowed. All Python classes must use the PY_HEADER macro in their declaration and be declared in source files only, never in headers, to avoid multiple definition errors. Native Python Class Usage: // In header file (MyClass.h):
class MyClass: public PyObjectPlus
{
PY_HEADER(PyObjectPlus)
public:
MyClass();
void someMethod();
};
// In source file (MyClass.cpp):
// ... add methods, constructors, properties etc.
#define PY_DECLARE_CLASS_NAME_DOC(t_cppClass, s_className, s_doc) Declare a Python class with full control over name and documentation. Definition pyobject_macros.h:2790 #define PY_HEADER(t_parentClass) Place as first line of your Pythonized class. Definition pyobject_plus.h:57 Shadow Class Usage: // Existing non-Python-aware C++ class:
class LegacyClass
{
public:
void doSomething();
};
// Shadow wrapper class:
PY_SHADOW_CLASS(LASS_DLL_EXPORT, PyShadowLegacyClass, LegacyClass)
// Declaration (note: we declare the shadow class, not LegacyClass):
| |
#define | PY_DECLARE_CLASS_NAME_DOC(t_cppClass, s_className, s_doc) |
Declare a Python class with full control over name and documentation. | |
#define | PY_DECLARE_CLASS_NAME(t_cppClass, s_className) |
Declare a Python class with custom name but no documentation. | |
#define | PY_DECLARE_CLASS_DOC(i_cppClass, s_doc) |
Declare a Python class with automatic name and custom documentation. | |
#define | PY_DECLARE_CLASS(i_cppClass) |
Declare a Python class with automatic name and no documentation. | |
#define | PY_DECLARE_CLASS_EX(t_cppClass, s_className, i_uniqueClassIdentifier) |
Legacy class declaration macro. | |
Class Integration | |
Macros to add Python classes to modules. These macros integrate class definitions with module definitions, making the classes available as types within the module namespace. Classes must first be declared using PY_DECLARE_CLASS_* macros before they can be added to modules. | |
#define | PY_INJECT_CLASS_IN_MODULE(t_cppClass, i_module, s_doc) |
Inject a class into a module at runtime (deprecated). | |
#define | PY_MODULE_CLASS(i_module, t_cppClass) |
Add a Python class to a module. | |
Static Constants | |
Macros to export static constant values as class attributes. These macros allow you to expose compile-time constant values as static attributes of Python classes. The values are converted to Python objects using PyExportTraits and become accessible as class-level attributes in Python. | |
#define | PY_CLASS_STATIC_CONST(i_cppClass, s_name, v_value) |
Export a static constant value as a class attribute. | |
Inner Classes | |
Macros for declaring inner classes (nested classes) within Python-exported classes. These macros establish hierarchical class relationships where inner classes become attributes of their outer class in Python.
Usage pattern: // Declare both classes first
PY_DECLARE_CLASS_DOC(Outer, "Outer class")
PY_DECLARE_CLASS_DOC(Inner, "Inner class")
// Establish inner class relationship
PY_CLASS_INNER_CLASS(Outer, Inner)
#define PY_DECLARE_CLASS_DOC(i_cppClass, s_doc) Declare a Python class with automatic name and custom documentation. Definition pyobject_macros.h:2831 #define PY_CLASS_INNER_CLASS(i_outerCppClass, i_innerCppClass) Exports an inner class with default name and no documentation. Definition pyobject_macros.h:3098 | |
#define | PY_CLASS_INNER_CLASS_EX(t_outerCppClass, t_innerCppClass, s_name, s_doc, i_uniqueSuffix) |
Exports an inner class with full customization of name, documentation, and symbol suffix. | |
#define | PY_CLASS_INNER_CLASS_NAME_DOC(i_outerCppClass, i_innerCppClass, s_name, s_doc) |
Exports an inner class with custom name and documentation. | |
#define | PY_CLASS_INNER_CLASS_NAME(i_outerCppClass, i_innerCppClass, s_name) |
Exports an inner class with custom name but no documentation. | |
#define | PY_CLASS_INNER_CLASS_DOC(i_outerCppClass, i_innerCppClass, s_doc) |
Exports an inner class with default name and custom documentation. | |
#define | PY_CLASS_INNER_CLASS(i_outerCppClass, i_innerCppClass) |
Exports an inner class with default name and no documentation. | |
Methods | |
Macros for exporting C++ class methods to Python with automatic type deduction and wrapper generation. These macros handle member function calls, overloading, and method documentation.
Usage pattern: // Declare the class first
PY_DECLARE_CLASS_DOC(Foo, "My class")
// Export methods - simple case
PY_CLASS_METHOD(Foo, someMethod)
// Export overloaded methods with same Python name
#define PY_CLASS_METHOD(i_cppClass, i_cppMethod) Export a C++ method to Python using the C++ method name (no documentation). Definition pyobject_macros.h:3304 #define PY_CLASS_METHOD_EX(t_cppClass, i_cppMethod, s_methodName, s_doc, i_dispatcher) Export a C++ method to Python with full control over overloading. Definition pyobject_macros.h:3224 | |
#define | PY_CLASS_PY_METHOD_EX(i_cppClass, i_cppMethod, s_methodName, s_doc) |
Export a C++ method that returns raw PyObject* to Python. | |
#define | PY_CLASS_METHOD_EX(t_cppClass, i_cppMethod, s_methodName, s_doc, i_dispatcher) |
Export a C++ method to Python with full control over overloading. | |
#define | PY_CLASS_METHOD_NAME_DOC(i_cppClass, i_cppMethod, s_methodName, s_doc) |
Export a C++ method to Python with custom name and documentation. | |
#define | PY_CLASS_METHOD_NAME(i_cppClass, i_cppMethod, s_methodName) |
Export a C++ method to Python with custom name (no documentation). | |
#define | PY_CLASS_METHOD_DOC(i_cppClass, i_cppMethod, s_doc) |
Export a C++ method to Python using the C++ method name with documentation. | |
#define | PY_CLASS_METHOD(i_cppClass, i_cppMethod) |
Export a C++ method to Python using the C++ method name (no documentation). | |
Type-Qualified Method Export Macros | |
These macros export C++ class methods to Python with explicit type qualification to resolve method overload ambiguities. They provide fine-grained control over method signatures and are essential when exporting overloaded methods that would otherwise be ambiguous. Use these macros when you have overloaded C++ methods and need to specify exactly which overload to export to Python by providing explicit return and parameter types. The macros are organized in layers:
| |
#define | PY_CLASS_METHOD_QUALIFIED_EX(t_cppClass, i_cppMethod, t_return, t_params, s_methodName, s_doc, i_dispatcher) |
Export a C++ method to Python with explicit type qualification to resolve ambiguities. | |
#define | PY_CLASS_METHOD_QUALIFIED_EX_0(t_cppClass, i_cppMethod, t_return, s_methodName, s_doc, i_dispatcher) |
Export a C++ method with type qualification for 0-parameter methods. | |
#define | PY_CLASS_METHOD_QUALIFIED_EX_1(t_cppClass, i_cppMethod, t_return, t_P1, s_methodName, s_doc, i_dispatcher) |
Export a C++ method with type qualification for 1-parameter methods. | |
#define | PY_CLASS_METHOD_QUALIFIED_EX_2(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, s_methodName, s_doc, i_dispatcher) |
Export a C++ method with type qualification for 2-parameter methods. | |
#define | PY_CLASS_METHOD_QUALIFIED_EX_3(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, s_methodName, s_doc, i_dispatcher) |
Export a C++ method with type qualification for 3-parameter methods. | |
#define | PY_CLASS_METHOD_QUALIFIED_EX_4(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, s_methodName, s_doc, i_dispatcher) |
Export a C++ method with type qualification for 4-parameter methods. | |
#define | PY_CLASS_METHOD_QUALIFIED_EX_5(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_methodName, s_doc, i_dispatcher) |
Export a C++ method with type qualification for 5-parameter methods. | |
#define | PY_CLASS_METHOD_QUALIFIED_EX_6(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_methodName, s_doc, i_dispatcher) |
Export a C++ method with type qualification for 6-parameter methods. | |
#define | PY_CLASS_METHOD_QUALIFIED_EX_7(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_methodName, s_doc, i_dispatcher) |
Export a C++ method with type qualification for 7-parameter methods. | |
#define | PY_CLASS_METHOD_QUALIFIED_EX_8(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_methodName, s_doc, i_dispatcher) |
Export a C++ method with type qualification for 8-parameter methods. | |
#define | PY_CLASS_METHOD_QUALIFIED_EX_9(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_methodName, s_doc, i_dispatcher) |
Export a C++ method with type qualification for 9-parameter methods. | |
#define | PY_CLASS_METHOD_QUALIFIED_EX_10(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_methodName, s_doc, i_dispatcher) |
Export a C++ method with type qualification for 10-parameter methods. | |
#define | PY_CLASS_METHOD_QUALIFIED_EX_11(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_methodName, s_doc, i_dispatcher) |
Export a C++ method with type qualification for 11-parameter methods. | |
#define | PY_CLASS_METHOD_QUALIFIED_EX_12(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_methodName, s_doc, i_dispatcher) |
Export a C++ method with type qualification for 12-parameter methods. | |
#define | PY_CLASS_METHOD_QUALIFIED_EX_13(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_methodName, s_doc, i_dispatcher) |
Export a C++ method with type qualification for 13-parameter methods. | |
#define | PY_CLASS_METHOD_QUALIFIED_EX_14(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_methodName, s_doc, i_dispatcher) |
Export a C++ method with type qualification for 14-parameter methods. | |
#define | PY_CLASS_METHOD_QUALIFIED_EX_15(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_methodName, s_doc, i_dispatcher) |
Export a C++ method with type qualification for 15-parameter methods. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC(i_cppClass, i_cppMethod, t_return, t_params, s_methodName, s_doc) |
Export a C++ method with type qualification and custom name with documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC_0(i_cppClass, i_cppMethod, t_return, s_methodName, s_doc) |
Export a C++ method with type qualification for 0-parameter methods with custom name and documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC_1(i_cppClass, i_cppMethod, t_return, t_P1, s_methodName, s_doc) |
Export a C++ method with type qualification for 1-parameter methods with custom name and documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC_2(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, s_methodName, s_doc) |
Export a C++ method with type qualification for 2-parameter methods with custom name and documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC_3(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, s_methodName, s_doc) |
Export a C++ method with type qualification for 3-parameter methods with custom name and documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC_4(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, s_methodName, s_doc) |
Export a C++ method with type qualification for 4-parameter methods with custom name and documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC_5(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_methodName, s_doc) |
Export a C++ method with type qualification for 5-parameter methods with custom name and documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC_6(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_methodName, s_doc) |
Export a C++ method with type qualification for 6-parameter methods with custom name and documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC_7(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_methodName, s_doc) |
Export a C++ method with type qualification for 7-parameter methods with custom name and documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC_8(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_methodName, s_doc) |
Export a C++ method with type qualification for 8-parameter methods with custom name and documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC_9(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_methodName, s_doc) |
Export a C++ method with type qualification for 9-parameter methods with custom name and documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC_10(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_methodName, s_doc) |
Export a C++ method with type qualification for 10-parameter methods with custom name and documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC_11(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_methodName, s_doc) |
Export a C++ method with type qualification for 11-parameter methods with custom name and documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC_12(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_methodName, s_doc) |
Export a C++ method with type qualification for 12-parameter methods with custom name and documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC_13(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_methodName, s_doc) |
Export a C++ method with type qualification for 13-parameter methods with custom name and documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC_14(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_methodName, s_doc) |
Export a C++ method with type qualification for 14-parameter methods with custom name and documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_DOC_15(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_methodName, s_doc) |
Export a C++ method with type qualification for 15-parameter methods with custom name and documentation. | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME(i_cppClass, i_cppMethod, t_return, t_params, s_methodName) |
Export a C++ method with type qualification and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_0(i_cppClass, i_cppMethod, t_return, s_methodName) |
Export a C++ method with type qualification for 0-parameter methods and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_1(i_cppClass, i_cppMethod, t_return, t_P1, s_methodName) |
Export a C++ method with type qualification for 1-parameter methods and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_2(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, s_methodName) |
Export a C++ method with type qualification for 2-parameter methods and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_3(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, s_methodName) |
Export a C++ method with type qualification for 3-parameter methods and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_4(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, s_methodName) |
Export a C++ method with type qualification for 4-parameter methods and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_5(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_methodName) |
Export a C++ method with type qualification for 5-parameter methods and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_6(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_methodName) |
Export a C++ method with type qualification for 6-parameter methods and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_7(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_methodName) |
Export a C++ method with type qualification for 7-parameter methods and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_8(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_methodName) |
Export a C++ method with type qualification for 8-parameter methods and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_9(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_methodName) |
Export a C++ method with type qualification for 9-parameter methods and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_10(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_methodName) |
Export a C++ method with type qualification for 10-parameter methods and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_11(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_methodName) |
Export a C++ method with type qualification for 11-parameter methods and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_12(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_methodName) |
Export a C++ method with type qualification for 12-parameter methods and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_13(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_methodName) |
Export a C++ method with type qualification for 13-parameter methods and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_14(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_methodName) |
Export a C++ method with type qualification for 14-parameter methods and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_NAME_15(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_methodName) |
Export a C++ method with type qualification for 15-parameter methods and custom name (no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC(i_cppClass, i_cppMethod, t_return, t_params, s_doc) |
Export a C++ method with type qualification and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC_0(i_cppClass, i_cppMethod, t_return, s_doc) |
Export a C++ method with type qualification for 0-parameter methods and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC_1(i_cppClass, i_cppMethod, t_return, t_P1, s_doc) |
Export a C++ method with type qualification for 1-parameter methods and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC_2(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, s_doc) |
Export a C++ method with type qualification for 2-parameter methods and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC_3(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, s_doc) |
Export a C++ method with type qualification for 3-parameter methods and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC_4(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, s_doc) |
Export a C++ method with type qualification for 4-parameter methods and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC_5(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_doc) |
Export a C++ method with type qualification for 5-parameter methods and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC_6(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_doc) |
Export a C++ method with type qualification for 6-parameter methods and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC_7(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_doc) |
Export a C++ method with type qualification for 7-parameter methods and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC_8(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_doc) |
Export a C++ method with type qualification for 8-parameter methods and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC_9(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_doc) |
Export a C++ method with type qualification for 9-parameter methods and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC_10(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_doc) |
Export a C++ method with type qualification for 10-parameter methods and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC_11(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_doc) |
Export a C++ method with type qualification for 11-parameter methods and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC_12(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_doc) |
Export a C++ method with type qualification for 12-parameter methods and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC_13(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_doc) |
Export a C++ method with type qualification for 13-parameter methods and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC_14(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_doc) |
Export a C++ method with type qualification for 14-parameter methods and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED_DOC_15(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_doc) |
Export a C++ method with type qualification for 15-parameter methods and custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_METHOD_QUALIFIED(i_cppClass, i_cppMethod, t_return, t_params) |
Export a C++ method with type qualification (method name derived from C++ method, no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_0(i_cppClass, i_cppMethod, t_return) |
Export a C++ method with type qualification for 0-parameter methods (method name derived from C++ method, no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_1(i_cppClass, i_cppMethod, t_return, t_P1) |
Export a C++ method with type qualification for 1-parameter methods (method name derived from C++ method, no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_2(i_cppClass, i_cppMethod, t_return, t_P1, t_P2) |
Export a C++ method with type qualification for 2-parameter methods (method name derived from C++ method, no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_3(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3) |
Export a C++ method with type qualification for 3-parameter methods (method name derived from C++ method, no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_4(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4) |
Export a C++ method with type qualification for 4-parameter methods (method name derived from C++ method, no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_5(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5) |
Export a C++ method with type qualification for 5-parameter methods (method name derived from C++ method, no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_6(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6) |
Export a C++ method with type qualification for 6-parameter methods (method name derived from C++ method, no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_7(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7) |
Export a C++ method with type qualification for 7-parameter methods (method name derived from C++ method, no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_8(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8) |
Export a C++ method with type qualification for 8-parameter methods (method name derived from C++ method, no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_9(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9) |
Export a C++ method with type qualification for 9-parameter methods (method name derived from C++ method, no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_10(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10) |
Export a C++ method with type qualification for 10-parameter methods (method name derived from C++ method, no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_11(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11) |
Export a C++ method with type qualification for 11-parameter methods (method name derived from C++ method, no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_12(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12) |
Export a C++ method with type qualification for 12-parameter methods (method name derived from C++ method, no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_13(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13) |
Export a C++ method with type qualification for 13-parameter methods (method name derived from C++ method, no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_14(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14) |
Export a C++ method with type qualification for 14-parameter methods (method name derived from C++ method, no documentation). | |
#define | PY_CLASS_METHOD_QUALIFIED_15(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15) |
Export a C++ method with type qualification for 15-parameter methods (method name derived from C++ method, no documentation). | |
Free Method Export Macros | |
Export C/C++ free functions as Python methods. The first parameter of the free function becomes the implicit 'self' parameter and must be a pointer or reference (const or non-const) to the class being exported. This is particularly useful for shadow classes where adding methods directly to the class is undesirable or impossible. | |
#define | PY_CLASS_FREE_METHOD_EX(t_cppClass, f_cppFreeMethod, s_methodName, s_doc, i_dispatcher) |
Export a C/C++ free function as a Python method with full control over all parameters. | |
#define | PY_CLASS_FREE_METHOD_NAME_DOC(i_cppClass, f_cppFreeMethod, s_methodName, s_doc) |
Export a C/C++ free function as a Python method with custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_NAME(i_cppClass, f_cppFreeMethod, s_methodName) |
Export a C/C++ free function as a Python method with custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_DOC(i_cppClass, i_cppFreeMethod, s_doc) |
Export a C/C++ free function as a Python method with custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD(i_cppClass, i_cppFreeMethod) |
Export a C/C++ free function as a Python method (method name derived from function name, no documentation). | |
Type-Qualified Free Method Export Macros | |
Export C++ free functions as Python methods with explicit type qualification to resolve overload ambiguity. These macros require explicit specification of return type and parameter types, making them suitable for overloaded free functions. The first parameter of the free function becomes the implicit 'self' parameter and must be a pointer or reference (const or non-const) to the class being exported. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX(t_cppClass, f_cppFreeMethod, t_return, t_params, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with explicit type qualification and full parameter control. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX_0(t_cppClass, f_cppFreeMethod, t_return, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with type qualification for 0-parameter functions. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX_1(t_cppClass, f_cppFreeMethod, t_return, t_P1, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with type qualification for 1-parameter functions. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX_2(t_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with type qualification for 2-parameter functions. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX_3(t_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with type qualification for 3-parameter functions. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX_4(t_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with type qualification for 4-parameter functions. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX_5(t_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with type qualification for 5-parameter functions. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX_6(t_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with type qualification for 6-parameter functions. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX_7(t_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with type qualification for 7-parameter functions. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX_8(t_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with type qualification for 8-parameter functions. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX_9(t_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with type qualification for 9-parameter functions. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX_10(t_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with type qualification for 10-parameter functions. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX_11(t_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with type qualification for 11-parameter functions. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX_12(t_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with type qualification for 12-parameter functions. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX_13(t_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with type qualification for 13-parameter functions. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX_14(t_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with type qualification for 14-parameter functions. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_EX_15(t_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_methodName, s_doc, i_dispatcher) |
Export a C++ free function as a Python method with type qualification for 15-parameter functions. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC(i_cppClass, f_cppFreeMethod, t_return, t_params, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC_0(i_cppClass, f_cppFreeMethod, t_return, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification for 0-parameter functions, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC_1(i_cppClass, f_cppFreeMethod, t_return, t_P1, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification for 1-parameter functions, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC_2(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification for 2-parameter functions, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC_3(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification for 3-parameter functions, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC_4(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification for 4-parameter functions, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC_5(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification for 5-parameter functions, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC_6(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification for 6-parameter functions, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC_7(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification for 7-parameter functions, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC_8(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification for 8-parameter functions, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC_9(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification for 9-parameter functions, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC_10(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification for 10-parameter functions, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC_11(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification for 11-parameter functions, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC_12(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification for 12-parameter functions, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC_13(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification for 13-parameter functions, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC_14(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification for 14-parameter functions, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_DOC_15(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_methodName, s_doc) |
Export a C++ free function as a Python method with type qualification for 15-parameter functions, custom name and documentation. | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME(i_cppClass, f_cppFreeMethod, t_return, t_params, s_methodName) |
Export a C++ free function as a Python method with type qualification and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_0(i_cppClass, f_cppFreeMethod, t_return, s_methodName) |
Export a C++ free function as a Python method with type qualification for 0-parameter functions and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_1(i_cppClass, f_cppFreeMethod, t_return, t_P1, s_methodName) |
Export a C++ free function as a Python method with type qualification for 1-parameter functions and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_2(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, s_methodName) |
Export a C++ free function as a Python method with type qualification for 2-parameter functions and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_3(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, s_methodName) |
Export a C++ free function as a Python method with type qualification for 3-parameter functions and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_4(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, s_methodName) |
Export a C++ free function as a Python method with type qualification for 4-parameter functions and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_5(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_methodName) |
Export a C++ free function as a Python method with type qualification for 5-parameter functions and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_6(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_methodName) |
Export a C++ free function as a Python method with type qualification for 6-parameter functions and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_7(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_methodName) |
Export a C++ free function as a Python method with type qualification for 7-parameter functions and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_8(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_methodName) |
Export a C++ free function as a Python method with type qualification for 8-parameter functions and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_9(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_methodName) |
Export a C++ free function as a Python method with type qualification for 9-parameter functions and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_10(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_methodName) |
Export a C++ free function as a Python method with type qualification for 10-parameter functions and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_11(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_methodName) |
Export a C++ free function as a Python method with type qualification for 11-parameter functions and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_12(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_methodName) |
Export a C++ free function as a Python method with type qualification for 12-parameter functions and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_13(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_methodName) |
Export a C++ free function as a Python method with type qualification for 13-parameter functions and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_14(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_methodName) |
Export a C++ free function as a Python method with type qualification for 14-parameter functions and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_NAME_15(i_cppClass, f_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_methodName) |
Export a C++ free function as a Python method with type qualification for 15-parameter functions and custom name (no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC(i_cppClass, i_cppFreeMethod, t_return, t_params, s_doc) |
Export a C++ free function as a Python method with type qualification and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC_0(i_cppClass, i_cppFreeMethod, t_return, s_doc) |
Export a C++ free function as a Python method with type qualification for 0-parameter functions and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC_1(i_cppClass, i_cppFreeMethod, t_return, t_P1, s_doc) |
Export a C++ free function as a Python method with type qualification for 1-parameter functions and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC_2(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, s_doc) |
Export a C++ free function as a Python method with type qualification for 2-parameter functions and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC_3(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, s_doc) |
Export a C++ free function as a Python method with type qualification for 3-parameter functions and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC_4(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, s_doc) |
Export a C++ free function as a Python method with type qualification for 4-parameter functions and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC_5(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_doc) |
Export a C++ free function as a Python method with type qualification for 5-parameter functions and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC_6(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_doc) |
Export a C++ free function as a Python method with type qualification for 6-parameter functions and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC_7(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_doc) |
Export a C++ free function as a Python method with type qualification for 7-parameter functions and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC_8(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_doc) |
Export a C++ free function as a Python method with type qualification for 8-parameter functions and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC_9(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_doc) |
Export a C++ free function as a Python method with type qualification for 9-parameter functions and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC_10(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_doc) |
Export a C++ free function as a Python method with type qualification for 10-parameter functions and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC_11(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_doc) |
Export a C++ free function as a Python method with type qualification for 11-parameter functions and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC_12(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_doc) |
Export a C++ free function as a Python method with type qualification for 12-parameter functions and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC_13(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_doc) |
Export a C++ free function as a Python method with type qualification for 13-parameter functions and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC_14(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_doc) |
Export a C++ free function as a Python method with type qualification for 14-parameter functions and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_DOC_15(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_doc) |
Export a C++ free function as a Python method with type qualification for 15-parameter functions and custom documentation (method name derived from function name). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED(i_cppClass, i_cppFreeMethod, t_return, t_params) |
Export a C++ free function as a Python method with type qualification (method name derived from function name, no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_0(i_cppClass, i_cppFreeMethod, t_return) |
Export a C++ free function as a Python method with type qualification for 0-parameter functions (method name derived from function name, no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_1(i_cppClass, i_cppFreeMethod, t_return, t_P1) |
Export a C++ free function as a Python method with type qualification for 1-parameter functions (method name derived from function name, no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_2(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2) |
Export a C++ free function as a Python method with type qualification for 2-parameter functions (method name derived from function name, no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_3(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3) |
Export a C++ free function as a Python method with type qualification for 3-parameter functions (method name derived from function name, no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_4(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4) |
Export a C++ free function as a Python method with type qualification for 4-parameter functions (method name derived from function name, no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_5(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5) |
Export a C++ free function as a Python method with type qualification for 5-parameter functions (method name derived from function name, no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_6(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6) |
Export a C++ free function as a Python method with type qualification for 6-parameter functions (method name derived from function name, no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_7(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7) |
Export a C++ free function as a Python method with type qualification for 7-parameter functions (method name derived from function name, no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_8(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8) |
Export a C++ free function as a Python method with type qualification for 8-parameter functions (method name derived from function name, no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_9(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9) |
Export a C++ free function as a Python method with type qualification for 9-parameter functions (method name derived from function name, no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_10(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10) |
Export a C++ free function as a Python method with type qualification for 10-parameter functions (method name derived from function name, no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_11(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11) |
Export a C++ free function as a Python method with type qualification for 11-parameter functions (method name derived from function name, no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_12(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12) |
Export a C++ free function as a Python method with type qualification for 12-parameter functions (method name derived from function name, no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_13(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13) |
Export a C++ free function as a Python method with type qualification for 13-parameter functions (method name derived from function name, no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_14(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14) |
Export a C++ free function as a Python method with type qualification for 14-parameter functions (method name derived from function name, no documentation). | |
#define | PY_CLASS_FREE_METHOD_QUALIFIED_15(i_cppClass, i_cppFreeMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15) |
Export a C++ free function as a Python method with type qualification for 15-parameter functions (method name derived from function name, no documentation). | |
Casting Method Export Macros (Deprecated) | |
Export C++ methods to Python with custom casting policies for type conversion. These macros allow on-the-fly type conversion using casting operators like PointerCast and CopyCast. However, these macros are deprecated and should be avoided in new code. | |
#define | PY_CLASS_METHOD_CAST_EX_0(t_cppClass, i_cppMethod, t_return, s_methodName, s_doc, i_dispatcher, i_typename) |
Export a C++ method to Python with custom casting policy and full parameter control. | |
#define | PY_CLASS_METHOD_CAST_EX_1(t_cppClass, i_cppMethod, t_return, t_P1, s_methodName, s_doc, i_dispatcher, i_typename) |
Export a C++ method with casting policy for 1-parameter methods. | |
#define | PY_CLASS_METHOD_CAST_EX_2(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, s_methodName, s_doc, i_dispatcher, i_typename) |
Export a C++ method with casting policy for 2-parameter methods. | |
#define | PY_CLASS_METHOD_CAST_EX_3(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, s_methodName, s_doc, i_dispatcher, i_typename) |
Export a C++ method with casting policy for 3-parameter methods. | |
#define | PY_CLASS_METHOD_CAST_EX_4(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, s_methodName, s_doc, i_dispatcher, i_typename) |
Export a C++ method with casting policy for 4-parameter methods. | |
#define | PY_CLASS_METHOD_CAST_EX_5(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_methodName, s_doc, i_dispatcher, i_typename) |
Export a C++ method with casting policy for 5-parameter methods. | |
#define | PY_CLASS_METHOD_CAST_EX_6(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_methodName, s_doc, i_dispatcher, i_typename) |
Export a C++ method with casting policy for 6-parameter methods. | |
#define | PY_CLASS_METHOD_CAST_EX_7(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_methodName, s_doc, i_dispatcher, i_typename) |
Export a C++ method with casting policy for 7-parameter methods. | |
#define | PY_CLASS_METHOD_CAST_EX_8(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_methodName, s_doc, i_dispatcher, i_typename) |
Export a C++ method with casting policy for 8-parameter methods. | |
#define | PY_CLASS_METHOD_CAST_EX_9(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_methodName, s_doc, i_dispatcher, i_typename) |
Export a C++ method with casting policy for 9-parameter methods. | |
#define | PY_CLASS_METHOD_CAST_EX_10(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_methodName, s_doc, i_dispatcher, i_typename) |
Export a C++ method with casting policy for 10-parameter methods. | |
#define | PY_CLASS_METHOD_CAST_EX_11(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_methodName, s_doc, i_dispatcher, i_typename) |
Export a C++ method with casting policy for 11-parameter methods. | |
#define | PY_CLASS_METHOD_CAST_EX_12(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_methodName, s_doc, i_dispatcher, i_typename) |
Export a C++ method with casting policy for 12-parameter methods. | |
#define | PY_CLASS_METHOD_CAST_EX_13(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_methodName, s_doc, i_dispatcher, i_typename) |
Export a C++ method with casting policy for 13-parameter methods. | |
#define | PY_CLASS_METHOD_CAST_EX_14(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_methodName, s_doc, i_dispatcher, i_typename) |
Export a C++ method with casting policy for 14-parameter methods. | |
#define | PY_CLASS_METHOD_CAST_EX_15(t_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_methodName, s_doc, i_dispatcher, i_typename) |
Export a C++ method with casting policy for 15-parameter methods. | |
#define | PY_CLASS_METHOD_CAST_NAME_DOC_0(i_cppClass, i_cppMethod, t_return, s_methodName, s_doc) |
Convenience wrapper for PY_CLASS_METHOD_CAST_EX_0(). | |
#define | PY_CLASS_METHOD_CAST_NAME_DOC_1(i_cppClass, i_cppMethod, t_return, t_P1, s_methodName, s_doc) |
Convenience wrapper for PY_CLASS_METHOD_CAST_EX_1(). | |
#define | PY_CLASS_METHOD_CAST_NAME_DOC_2(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, s_methodName, s_doc) |
Convenience wrapper for PY_CLASS_METHOD_CAST_EX_2(). | |
#define | PY_CLASS_METHOD_CAST_NAME_DOC_3(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, s_methodName, s_doc) |
Convenience wrapper for PY_CLASS_METHOD_CAST_EX_3(). | |
#define | PY_CLASS_METHOD_CAST_NAME_DOC_4(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, s_methodName, s_doc) |
Convenience wrapper for PY_CLASS_METHOD_CAST_EX_4(). | |
#define | PY_CLASS_METHOD_CAST_NAME_DOC_5(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_methodName, s_doc) |
Convenience wrapper for PY_CLASS_METHOD_CAST_EX_5(). | |
#define | PY_CLASS_METHOD_CAST_NAME_DOC_6(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_methodName, s_doc) |
Convenience wrapper for PY_CLASS_METHOD_CAST_EX_6(). | |
#define | PY_CLASS_METHOD_CAST_NAME_DOC_7(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_methodName, s_doc) |
Convenience wrapper for PY_CLASS_METHOD_CAST_EX_7(). | |
#define | PY_CLASS_METHOD_CAST_NAME_DOC_8(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_methodName, s_doc) |
Convenience wrapper for PY_CLASS_METHOD_CAST_EX_8(). | |
#define | PY_CLASS_METHOD_CAST_NAME_DOC_9(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_methodName, s_doc) |
Convenience wrapper for PY_CLASS_METHOD_CAST_EX_9(). | |
#define | PY_CLASS_METHOD_CAST_NAME_DOC_10(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_methodName, s_doc) |
Convenience wrapper for PY_CLASS_METHOD_CAST_EX_10(). | |
#define | PY_CLASS_METHOD_CAST_NAME_DOC_11(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_methodName, s_doc) |
Convenience wrapper for PY_CLASS_METHOD_CAST_EX_11(). | |
#define | PY_CLASS_METHOD_CAST_NAME_DOC_12(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_methodName, s_doc) |
Convenience wrapper for PY_CLASS_METHOD_CAST_EX_12(). | |
#define | PY_CLASS_METHOD_CAST_NAME_DOC_13(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_methodName, s_doc) |
Convenience wrapper for PY_CLASS_METHOD_CAST_EX_13(). | |
#define | PY_CLASS_METHOD_CAST_NAME_DOC_14(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_methodName, s_doc) |
Convenience wrapper for PY_CLASS_METHOD_CAST_EX_14(). | |
#define | PY_CLASS_METHOD_CAST_NAME_DOC_15(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_methodName, s_doc) |
Convenience wrapper for PY_CLASS_METHOD_CAST_EX_15(). | |
#define | PY_CLASS_METHOD_CAST_NAME(i_cppClass, i_cppMethod, t_return, t_params, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_NAME_0(i_cppClass, i_cppMethod, t_return, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_NAME_1(i_cppClass, i_cppMethod, t_return, t_P1, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_NAME_2(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_NAME_3(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_NAME_4(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_NAME_5(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_NAME_6(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_NAME_7(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_NAME_8(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_NAME_9(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_NAME_10(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_NAME_11(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_NAME_12(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_NAME_13(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_NAME_14(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_NAME_15(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_methodName) |
Convenience wrapper with no documentation. | |
#define | PY_CLASS_METHOD_CAST_DOC(i_cppClass, i_cppMethod, t_return, t_params, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST_DOC_0(i_cppClass, i_cppMethod, t_return, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST_DOC_1(i_cppClass, i_cppMethod, t_return, t_P1, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST_DOC_2(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST_DOC_3(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST_DOC_4(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST_DOC_5(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST_DOC_6(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST_DOC_7(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST_DOC_8(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST_DOC_9(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST_DOC_10(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST_DOC_11(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST_DOC_12(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST_DOC_13(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST_DOC_14(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST_DOC_15(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15, s_doc) |
Convenience wrapper with method name derived from C++ method. | |
#define | PY_CLASS_METHOD_CAST(i_cppClass, i_cppMethod, t_return, t_params) |
Basic convenience wrapper with minimal parameters. | |
#define | PY_CLASS_METHOD_CAST_0(i_cppClass, i_cppMethod, t_return) |
Basic convenience wrapper with minimal parameters. | |
#define | PY_CLASS_METHOD_CAST_1(i_cppClass, i_cppMethod, t_return, t_P1) |
Basic convenience wrapper with minimal parameters. | |
#define | PY_CLASS_METHOD_CAST_2(i_cppClass, i_cppMethod, t_return, t_P1, t_P2) |
Basic convenience wrapper with minimal parameters. | |
#define | PY_CLASS_METHOD_CAST_3(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3) |
Basic convenience wrapper with minimal parameters. | |
#define | PY_CLASS_METHOD_CAST_4(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4) |
Basic convenience wrapper with minimal parameters. | |
#define | PY_CLASS_METHOD_CAST_5(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5) |
Basic convenience wrapper with minimal parameters. | |
#define | PY_CLASS_METHOD_CAST_6(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6) |
Basic convenience wrapper with minimal parameters. | |
#define | PY_CLASS_METHOD_CAST_7(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7) |
Basic convenience wrapper with minimal parameters. | |
#define | PY_CLASS_METHOD_CAST_8(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8) |
Basic convenience wrapper with minimal parameters. | |
#define | PY_CLASS_METHOD_CAST_9(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9) |
Basic convenience wrapper with minimal parameters. | |
#define | PY_CLASS_METHOD_CAST_10(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10) |
Basic convenience wrapper with minimal parameters. | |
#define | PY_CLASS_METHOD_CAST_11(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11) |
Basic convenience wrapper with minimal parameters. | |
#define | PY_CLASS_METHOD_CAST_12(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12) |
Basic convenience wrapper with minimal parameters. | |
#define | PY_CLASS_METHOD_CAST_13(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13) |
Basic convenience wrapper with minimal parameters. | |
#define | PY_CLASS_METHOD_CAST_14(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14) |
Basic convenience wrapper with minimal parameters. | |
#define | PY_CLASS_METHOD_CAST_15(i_cppClass, i_cppMethod, t_return, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15) |
Basic convenience wrapper with minimal parameters. | |
Static Method Export Macros | |
Export C++ static methods or free functions as Python static methods (class methods). Static methods are called on the class itself rather than on instances, and do not receive an implicit 'self' parameter. Both C++ static member functions and free functions can be exported as static methods. | |
#define | PY_CLASS_STATIC_METHOD_EX(t_cppClass, f_cppFunction, s_methodName, s_doc, i_dispatcher) |
Export a C++ function as a Python static method with full parameter control. | |
#define | PY_CLASS_STATIC_METHOD_DOC(i_cppClass, i_cppMethod, s_doc) |
Export a C++ static method with custom documentation (method name derived from C++ method). | |
#define | PY_CLASS_STATIC_METHOD_NAME_DOC(i_cppClass, i_cppMethod, s_methodName, s_doc) |
Export a C++ static method with custom name and documentation. | |
#define | PY_CLASS_STATIC_METHOD_NAME(i_cppClass, i_cppMethod, s_methodName) |
Export a C++ static method with custom name (no documentation). | |
#define | PY_CLASS_STATIC_METHOD(i_cppClass, i_cppMethod) |
Export a C++ static method (method name derived from C++ method, no documentation). | |
Data Member Export Macros | |
Export C++ class data members as Python properties/attributes. These macros create Python properties that provide access to C++ class data through various access patterns: getter/setter methods, free functions, or direct public member access. | |
#define | PY_CLASS_MEMBER_RW_EX(t_cppClass, i_cppGetter, i_cppSetter, s_memberName, s_doc, i_dispatcher) |
Export getter/setter method pair as read/write Python property with full control. | |
#define | PY_CLASS_MEMBER_RW_NAME_DOC(t_cppClass, i_cppGetter, i_cppSetter, s_memberName, s_doc) |
Export getter/setter method pair as read/write Python property with custom name and documentation. | |
#define | PY_CLASS_MEMBER_RW_NAME(t_cppClass, i_cppGetter, i_cppSetter, s_memberName) |
Export getter/setter method pair as read/write Python property with custom name (no documentation). | |
#define | PY_CLASS_MEMBER_RW_DOC(t_cppClass, i_cppGetter, i_cppSetter, s_doc) |
Export getter/setter method pair as read/write Python property (name derived from getter, with documentation). | |
#define | PY_CLASS_MEMBER_RW(t_cppClass, i_cppGetter, i_cppSetter) |
Export getter/setter method pair as read/write Python property (name derived from getter, no documentation). | |
#define | PY_CLASS_MEMBER_R_EX(t_cppClass, i_cppGetter, s_memberName, s_doc, i_dispatcher) |
Export getter method as read-only Python property with full control. | |
#define | PY_CLASS_MEMBER_R_NAME_DOC(t_cppClass, i_cppGetter, s_memberName, s_doc) |
Export getter method as read-only Python property with custom name and documentation. | |
#define | PY_CLASS_MEMBER_R_NAME(t_cppClass, i_cppGetter, s_memberName) |
Export getter method as read-only Python property with custom name (no documentation). | |
#define | PY_CLASS_MEMBER_R_DOC(t_cppClass, i_cppGetter, s_doc) |
Export getter method as read-only Python property (name derived from getter, with documentation). | |
#define | PY_CLASS_MEMBER_R(t_cppClass, i_cppGetter) |
Export getter method as read-only Python property using method name. | |
#define | PY_CLASS_FREE_MEMBER_RW_EX(t_cppClass, i_cppFreeGetter, i_cppFreeSetter, s_memberName, s_doc, i_dispatcher) |
Export free function accessors as read-write Python property. | |
#define | PY_CLASS_FREE_MEMBER_RW_NAME_DOC(t_cppClass, i_cppFreeGetter, i_cppFreeSetter, s_memberName, s_doc) |
Export free function accessors as read-write Python property with custom name and documentation. | |
#define | PY_CLASS_FREE_MEMBER_RW_NAME(t_cppClass, i_cppFreeGetter, i_cppFreeSetter, s_memberName) |
Export free function accessors as read-write Python property with custom name. | |
#define | PY_CLASS_FREE_MEMBER_RW_DOC(t_cppClass, i_cppFreeGetter, i_cppFreeSetter, s_doc) |
Export free function accessors as read-write Python property using function name. | |
#define | PY_CLASS_FREE_MEMBER_RW(t_cppClass, i_cppFreeGetter, i_cppFreeSetter) |
Export free function accessors as read-write Python property using function name. | |
#define | PY_CLASS_FREE_MEMBER_R_EX(t_cppClass, i_freeCppGetter, s_memberName, s_doc, i_dispatcher) |
Export free function accessor as read-only Python property. | |
#define | PY_CLASS_FREE_MEMBER_R_NAME_DOC(t_cppClass, i_freeCppGetter, s_memberName, s_doc) |
Export free function accessor as read-only Python property with custom name and documentation. | |
#define | PY_CLASS_FREE_MEMBER_R_NAME(t_cppClass, i_freeCppGetter, s_memberName) |
Export free function accessor as read-only Python property with custom name. | |
#define | PY_CLASS_FREE_MEMBER_R_DOC(t_cppClass, i_freeCppGetter, s_doc) |
Export free function accessor as read-only Python property using function name. | |
#define | PY_CLASS_FREE_MEMBER_R(t_cppClass, i_freeCppGetter) |
Export free function accessor as read-only Python property using function name. | |
#define | PY_CLASS_PUBLIC_MEMBER_EX(t_cppClass, i_cppMember, s_memberName, s_doc, i_dispatcher) |
Export public data member as read-write Python property. | |
#define | PY_CLASS_PUBLIC_MEMBER_NAME_DOC(i_cppClass, i_cppMember, s_memberName, s_doc) |
Export public data member as read-write Python property with custom name and documentation. | |
#define | PY_CLASS_PUBLIC_MEMBER_NAME(i_cppClass, i_cppMember, s_memberName) |
Export public data member as read-write Python property with custom name. | |
#define | PY_CLASS_PUBLIC_MEMBER_DOC(i_cppClass, i_cppMember, s_doc) |
Export public data member as read-write Python property using member name. | |
#define | PY_CLASS_PUBLIC_MEMBER(i_cppClass, i_cppMember) |
Export public data member as read-write Python property using member name. | |
#define | PY_CLASS_PUBLIC_MEMBER_R_EX(t_cppClass, i_cppMember, s_memberName, s_doc, i_dispatcher) |
Export public data member as read-only Python property. | |
#define | PY_CLASS_PUBLIC_MEMBER_R_NAME_DOC(i_cppClass, i_cppMember, s_memberName, s_doc) |
Export public data member as read-only Python property with custom name and documentation. | |
#define | PY_CLASS_PUBLIC_MEMBER_R_NAME(i_cppClass, i_cppMember, s_memberName) |
Export public data member as read-only Python property with custom name. | |
#define | PY_CLASS_PUBLIC_MEMBER_R_DOC(i_cppClass, i_cppMember, s_doc) |
Export public data member as read-only Python property using member name. | |
#define | PY_CLASS_PUBLIC_MEMBER_R(i_cppClass, i_cppMember) |
Export public data member as read-only Python property using member name. | |
Constructor Export Macros | |
Export C++ constructors directly as Python class constructors. These macros make abstract Python classes concrete by adding constructors that can create instances from Python code using the actual C++ constructors. Standard Constructor Export:
Convenience Macros by Parameter Count:
| |
#define | PY_CLASS_CONSTRUCTOR_EX(t_cppClass, t_params, i_dispatcher) |
Export C++ constructor as Python class constructor with full control. | |
#define | PY_CLASS_CONSTRUCTOR(i_cppClass, t_params) |
Export C++ constructor as Python class constructor. | |
#define | PY_CLASS_CONSTRUCTOR_0(t_cppClass) |
Export C++ default constructor as Python class constructor. | |
#define | PY_CLASS_CONSTRUCTOR_1(t_cppClass, t_P1) |
Export C++ constructor as Python class constructor with 1 parameters. | |
#define | PY_CLASS_CONSTRUCTOR_2(t_cppClass, t_P1, t_P2) |
Export C++ constructor as Python class constructor with 2 parameters. | |
#define | PY_CLASS_CONSTRUCTOR_3(t_cppClass, t_P1, t_P2, t_P3) |
Export C++ constructor as Python class constructor with 3 parameters. | |
#define | PY_CLASS_CONSTRUCTOR_4(t_cppClass, t_P1, t_P2, t_P3, t_P4) |
Export C++ constructor as Python class constructor with 4 parameters. | |
#define | PY_CLASS_CONSTRUCTOR_5(t_cppClass, t_P1, t_P2, t_P3, t_P4, t_P5) |
Export C++ constructor as Python class constructor with 5 parameters. | |
#define | PY_CLASS_CONSTRUCTOR_6(t_cppClass, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6) |
Export C++ constructor as Python class constructor with 6 parameters. | |
#define | PY_CLASS_CONSTRUCTOR_7(t_cppClass, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7) |
Export C++ constructor as Python class constructor with 7 parameters. | |
#define | PY_CLASS_CONSTRUCTOR_8(t_cppClass, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8) |
Export C++ constructor as Python class constructor with 8 parameters. | |
#define | PY_CLASS_CONSTRUCTOR_9(t_cppClass, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9) |
Export C++ constructor as Python class constructor with 9 parameters. | |
#define | PY_CLASS_CONSTRUCTOR_10(t_cppClass, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10) |
Export C++ constructor as Python class constructor with 10 parameters. | |
#define | PY_CLASS_CONSTRUCTOR_11(t_cppClass, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11) |
Export C++ constructor as Python class constructor with 11 parameters. | |
#define | PY_CLASS_CONSTRUCTOR_12(t_cppClass, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12) |
Export C++ constructor as Python class constructor with 12 parameters. | |
#define | PY_CLASS_CONSTRUCTOR_13(t_cppClass, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13) |
Export C++ constructor as Python class constructor with 13 parameters. | |
#define | PY_CLASS_CONSTRUCTOR_14(t_cppClass, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14) |
Export C++ constructor as Python class constructor with 14 parameters. | |
#define | PY_CLASS_CONSTRUCTOR_15(t_cppClass, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15) |
Export C++ constructor as Python class constructor with 15 parameters. | |
Free Function Constructor Export Macros | |
Export factory functions as Python class constructors. These macros allow C++ functions that return instances of a class to be used as Python constructors. This is useful when you need special construction logic or when the actual constructor is not accessible from Python. These factory function constructors appear as regular constructors to Python code, but are implemented using C++ functions rather than actual constructors. The functions must return an instance of the target class. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_EX(t_cppClass, f_cppFunction, t_params, i_dispatcher) |
Export C++ factory function as Python constructor with full control. | |
#define | PY_CLASS_FREE_CONSTRUCTOR(i_cppClass, f_cppFunction, t_params) |
Convenience wrapper for PY_CLASS_FREE_CONSTRUCTOR_EX. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_0(t_cppClass, f_cppFunction) |
Export C++ factory function as Python constructor with 0 parameters. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_1(t_cppClass, f_cppFunction, t_P1) |
Export C++ factory function as Python constructor with 1 parameters. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_2(t_cppClass, f_cppFunction, t_P1, t_P2) |
Export C++ factory function as Python constructor with 2 parameters. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_3(t_cppClass, f_cppFunction, t_P1, t_P2, t_P3) |
Export C++ factory function as Python constructor with 3 parameters. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_4(t_cppClass, f_cppFunction, t_P1, t_P2, t_P3, t_P4) |
Export C++ factory function as Python constructor with 4 parameters. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_5(t_cppClass, f_cppFunction, t_P1, t_P2, t_P3, t_P4, t_P5) |
Export C++ factory function as Python constructor with 5 parameters. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_6(t_cppClass, f_cppFunction, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6) |
Export C++ factory function as Python constructor with 6 parameters. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_7(t_cppClass, f_cppFunction, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7) |
Export C++ factory function as Python constructor with 7 parameters. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_8(t_cppClass, f_cppFunction, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8) |
Export C++ factory function as Python constructor with 8 parameters. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_9(t_cppClass, f_cppFunction, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9) |
Export C++ factory function as Python constructor with 9 parameters. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_10(t_cppClass, f_cppFunction, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10) |
Export C++ factory function as Python constructor with 10 parameters. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_11(t_cppClass, f_cppFunction, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11) |
Export C++ factory function as Python constructor with 11 parameters. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_12(t_cppClass, f_cppFunction, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12) |
Export C++ factory function as Python constructor with 12 parameters. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_13(t_cppClass, f_cppFunction, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13) |
Export C++ factory function as Python constructor with 13 parameters. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_14(t_cppClass, f_cppFunction, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14) |
Export C++ factory function as Python constructor with 14 parameters. | |
#define | PY_CLASS_FREE_CONSTRUCTOR_15(t_cppClass, f_cppFunction, t_P1, t_P2, t_P3, t_P4, t_P5, t_P6, t_P7, t_P8, t_P9, t_P10, t_P11, t_P12, t_P13, t_P14, t_P15) |
Export C++ factory function as Python constructor with 15 parameters. | |
*** BEGIN LICENSE INFORMATION ***
The contents of this file are subject to the Common Public Attribution License Version 1.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://lass.sourceforge.net/cpal-license. The License is based on the Mozilla Public License Version 1.1 but Sections 14 and 15 have been added to cover use of software over a computer network and provide for limited attribution for the Original Developer. In addition, Exhibit A has been modified to be consistent with Exhibit B.
Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License.
The Original Code is LASS - Library of Assembled Shared Sources.
The Initial Developer of the Original Code is Bram de Greve and Tom De Muer. The Original Developer is the Initial Developer.
All portions of the code written by the Initial Developer are: Copyright (C) 2004-2025 the Initial Developer. All Rights Reserved.
Contributor(s):
Alternatively, the contents of this file may be used under the terms of the GNU General Public License Version 2 or later (the GPL), in which case the provisions of GPL are applicable instead of those above. If you wish to allow use of your version of this file only under the terms of the GPL and not to allow others to use your version of this file under the CPAL, indicate your decision by deleting the provisions above and replace them with the notice and other provisions required by the GPL License. If you do not delete the provisions above, a recipient may use your version of this file under either the CPAL or the GPL.
*** END LICENSE INFORMATION ***
Definition in file pyobject_macros.h.