summaryrefslogtreecommitdiffstats
path: root/libshiboken/sbkconverter.h
diff options
context:
space:
mode:
Diffstat (limited to 'libshiboken/sbkconverter.h')
-rw-r--r--libshiboken/sbkconverter.h16
1 files changed, 12 insertions, 4 deletions
diff --git a/libshiboken/sbkconverter.h b/libshiboken/sbkconverter.h
index b0868598..c400693b 100644
--- a/libshiboken/sbkconverter.h
+++ b/libshiboken/sbkconverter.h
@@ -113,6 +113,14 @@ LIBSHIBOKEN_API SbkConverter* createConverter(PyTypeObject* type, CppToPythonFun
LIBSHIBOKEN_API void deleteConverter(SbkConverter* converter);
+/// Sets the Python object to C++ pointer conversion function.
+LIBSHIBOKEN_API void setCppPointerToPythonFunction(SbkConverter* converter, CppToPythonFunc pointerToPythonFunc);
+
+/// Sets the C++ pointer to Python object conversion functions.
+LIBSHIBOKEN_API void setPythonToCppPointerFunctions(SbkConverter* converter,
+ PythonToCppFunc toCppPointerConvFunc,
+ IsConvertibleToCppFunc toCppPointerCheckFunc);
+
/**
* Adds a new conversion of a Python object to a C++ value.
* This is used in copy and implicit conversions.
@@ -134,6 +142,7 @@ LIBSHIBOKEN_API void addPythonToCppValueConversion(SbkObjectType* type,
* PyObject* pyVar = pointerToPython(SBKTYPE, &var);
*/
LIBSHIBOKEN_API PyObject* pointerToPython(SbkObjectType* type, const void* cppIn);
+LIBSHIBOKEN_API PyObject* pointerToPython(SbkConverter* converter, const void* cppIn);
/**
* For the given \p cppIn C++ reference it returns the Python wrapper object,
@@ -192,12 +201,11 @@ LIBSHIBOKEN_API void* cppPointer(PyTypeObject* desiredType, SbkObject* pyIn);
/// Converts a Python object \p pyIn to C++ and stores the result in the C++ pointer passed in \p cppOut.
LIBSHIBOKEN_API void pythonToCppPointer(SbkObjectType* type, PyObject* pyIn, void* cppOut);
+LIBSHIBOKEN_API void pythonToCppPointer(SbkConverter* converter, PyObject* pyIn, void* cppOut);
-/// Converts a Python object \p pyIn to C++ and copies the result in the C++ variable passed in \p cppOut.
+/// Converts a Python object \p pyIn to C++, and copies the result in the C++ variable passed in \p cppOut.
LIBSHIBOKEN_API void pythonToCppCopy(SbkObjectType* type, PyObject* pyIn, void* cppOut);
-
-/// Converts a Python object \p pyIn to C++, copying the result in the C++ variable passed in \p cppOut.
-LIBSHIBOKEN_API void pythonToCpp(SbkConverter* converter, PyObject* pyIn, void* cppOut);
+LIBSHIBOKEN_API void pythonToCppCopy(SbkConverter* converter, PyObject* pyIn, void* cppOut);
/**
* Helper function returned by generated convertible checking functions