ctkVTKPythonQtWrapperFactory.cpp 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. /// CTK includes
  2. #include "ctkVTKPythonQtWrapperFactory.h"
  3. /// VTK includes
  4. #include <vtkPythonUtil.h>
  5. #include <vtkObject.h>
  6. //-----------------------------------------------------------------------------
  7. ctkVTKPythonQtWrapperFactory::ctkVTKPythonQtWrapperFactory():Superclass()
  8. {
  9. }
  10. //-----------------------------------------------------------------------------
  11. ctkVTKPythonQtWrapperFactory::~ctkVTKPythonQtWrapperFactory()
  12. {
  13. }
  14. //-----------------------------------------------------------------------------
  15. PyObject* ctkVTKPythonQtWrapperFactory::wrap(const QByteArray& classname, void *ptr)
  16. {
  17. if (classname.startsWith("vtk"))
  18. {
  19. #if (VTK_MAJOR_VERSION == 5 && VTK_MINOR_VERSION <= 6) || VTK_MAJOR_VERSION < 5
  20. return vtkPythonGetObjectFromPointer(reinterpret_cast<vtkObjectBase*>(ptr));
  21. #else
  22. return vtkPythonUtil::GetObjectFromPointer(reinterpret_cast<vtkObjectBase*>(ptr));
  23. #endif
  24. }
  25. return NULL;
  26. }
  27. //-----------------------------------------------------------------------------
  28. void* ctkVTKPythonQtWrapperFactory::unwrap(const QByteArray& classname, PyObject* object)
  29. {
  30. if (classname.startsWith("vtk"))
  31. {
  32. #if (VTK_MAJOR_VERSION == 5 && VTK_MINOR_VERSION <= 6) || VTK_MAJOR_VERSION < 5
  33. return vtkPythonGetPointerFromObject(object, classname.data());
  34. #else
  35. return vtkPythonUtil::GetPointerFromObject(object, classname.data());
  36. #endif
  37. }
  38. return NULL;
  39. }