-#define BBTK_VTK_DISABLE_GARBAGE_COLLECTOR \
- public: \
- virtual void Register(vtkObjectBase* o) {} \
- virtual void UnRegister(vtkObjectBase* o) {} \
- protected: \
- virtual void ReportReferences(vtkGarbageCollector* collector) {}
-
-/*
-
- public: \
- virtual void Register(vtkObjectBase* o) {} \
- {
- this->RegisterInternal(o, 1);
- }
- virtual void UnRegister(vtkObjectBase* o)
- {
- this->UnRegisterInternal(o, 1);
- }
-
- protected:
-
- virtual void ReportReferences(vtkGarbageCollector* collector)
- {
- // Report references held by this object that may be in a loop.
- this->Superclass::ReportReferences(collector);
- vtkGarbageCollectorReport(collector, this->OtherObject, "Other Object");
- }
-*/
-//===========================================================================
-
-//===========================================================================
-#define BBTK_VTK_DELETE() \
- void bbDelete() { \
- for (int i=0; i<vtkParent::GetNumberOfInputPorts();++i) \
- vtkParent::SetInput(i,0); \
- bbGetOutputOut()->SetSource(NULL); \
- /*std::cout << "VTK : bbDelete() "<<std::endl;*/ \
- /*std::cout << "Use count = "<<GetUseCount()<<std::endl;*/ \
- /*std::cout << "VTK count = "<<GetReferenceCount()<<std::endl;*/ \
- /* vtkParent::SetReferenceCount(1); GetUseCount());*/ \
- /*delete this; */ \
- vtkParent::Delete(); \
- }
+#define BBTK_VTK_BLACK_BOX_INTERFACE(CLASS,PARENTBLACKBOX,VTKOBJECT) \
+ BBTK_BLACK_BOX_INTERFACE(CLASS,PARENTBLACKBOX); \
+ typedef VTKOBJECT bbVtkObject; \
+ bbVtkObject* bbGetVtkObject() { return mVtkObject; } \
+ private: \
+ bbVtkObject *mVtkObject;