.. _program_listing_file_MRML_vtkMRMLLayerDMPythonUtil.h: Program Listing for File vtkMRMLLayerDMPythonUtil.h =================================================== |exhale_lsh| :ref:`Return to documentation for file ` (``MRML/vtkMRMLLayerDMPythonUtil.h``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp #pragma once #include "vtkSlicerLayerDMModuleMRMLExport.h" // VTK includes #include #include #include #include // STD includes #include #include class VTK_SLICER_LAYERDM_MODULE_MRML_EXPORT vtkMRMLLayerDMPythonUtil : public vtkObject { public: static vtkMRMLLayerDMPythonUtil* New(); vtkTypeMacro(vtkMRMLLayerDMPythonUtil, vtkObject); static PyObject* ToPyObject(vtkObjectBase* obj); static PyObject* ToPyObject(unsigned long value); static PyObject* ToPyObject(const std::string& value); static PyObject* RawPtrToPython(void* ptr); static vtkSmartPyObject ToPyArgs(const std::vector& pyObjs); static vtkSmartPyObject ToPyArgs(vtkObjectBase* obj); static vtkSmartPyObject ToPyArgs(vtkObject* obj, unsigned long eventId, void* callData); static PyObject* CastCallData(PyObject* object, int vtkType); static PyObject* CallPythonMethod(PyObject* object, const vtkSmartPyObject& pyArgs, const std::string& fName); static PyObject* CallPythonObject(PyObject* object, const vtkSmartPyObject& pyArgs); static void SetPythonObject(PyObject** destObject, PyObject* object); static void DeletePythonObject(PyObject** destObject); static bool IsValidPythonContext(); static std::string FormatExceptionTraceback(); static void PrintErrorTraceback(const vtkObject* object, const std::string& errorMsg); static std::string GetObjectStr(PyObject* object); protected: vtkMRMLLayerDMPythonUtil(); ~vtkMRMLLayerDMPythonUtil() override; };