23 #include <vtkObject.h>
26 #include <vtkCallbackCommand.h>
29 #include "vtkPolyDataAlgorithm.h"
66 vtkCommand::EventIds eventId=vtkCommand::AnyEvent,
67 float priority = 0.0f);
94 virtual void _handleManagedVTKObject(vtkObject *caller,
95 unsigned long eventId,
99 static void _vtkCallbackFunc(vtkObject *caller,
unsigned long eid,
void *clientdata,
void *calldata);
102 static void _vtkManagedCallbackFunc(vtkObject *caller,
unsigned long eid,
void *clientdata,
void *calldata);
106 bool _suppressHandleVTKObjectCalls;
109 vtkCallbackCommand *_observer;
112 vtkObject *_observedObject;
115 vtkObject *_managedObject;
118 vtkCallbackCommand **_managedObservers;
Base class for an image processing module of the ML.
Base class to derive from all modules which wrap automatically generated VTK classes.
std::string getInputCheckString() const
Check input connections whether they are allowed to be open.
vtkObject * getObservedObject()
Return currently observed object.
void setObservedObject(vtkObject *vObj, vtkCommand::EventIds eventId=vtkCommand::AnyEvent, float priority=0.0f)
The object to be observed. Use NULL as parameter to unregister former objects.
void setManagedObject(vtkObject *vObj)
The object managed by the wrapper. Use NULL as parameter to unregister former objects.
VTKModule(int inputNum=0, int outputNum=0)
Normally used constructor.
virtual void handleVTKObject(vtkObject *, unsigned long, void *)
Method called if observing of vtkObject is active and if the vtkObjects posts any event.
virtual ~VTKModule()
Destructor.
void suppressHandleVTKObjectCalls(bool suppress)
Set a flag which suppresses handleObject calls if true.
vtkPolyDataAlgorithm * getDummyPolyDataAlgorithm(int polyType=0)
Returns an empty vtkPolyDataAlgorithm; to be used when a placeholder is needed.
bool areHandleVTKObjectCallsSuppressed()
Returns whether handleObject calls are suppressed.
vtkObject * getManagedObject()
Return currently managed object.
#define ML_MODULE_CLASS_HEADER(className)
Similar to ML_CLASS_HEADER for the usage of derived classes from Module.
#define MLVTK_SUPPORT_EXPORT
When included by other libraries MLVTK_SUPPORT_EXPORT is compiled as import symbol.