]> Creatis software - cpPlugins.git/blobdiff - lib/cpPlugins/DataObject.h
...
[cpPlugins.git] / lib / cpPlugins / DataObject.h
index 279fe761858eb9f30a4de49c830c8594cc7ea3cf..95cf3dd80c88a443e1ba3e047d73b87c83739259 100644 (file)
@@ -2,6 +2,11 @@
 #define __CPPLUGINS__DATAOBJECT__H__
 
 #include <cpPlugins/Object.h>
+#include <vtkProp.h>
+#include <vtkSmartPointer.h>
+
+// Some forward declarations
+// TODO: class vtkProp;
 
 namespace cpPlugins
 {
@@ -31,17 +36,25 @@ namespace cpPlugins
 
     void DisconnectFromPipeline( );
 
+    // VTK actors
+    vtkProp* GetVTKActor( );
+    const vtkProp* GetVTKActor( ) const;
+
   protected:
     DataObject( );
     virtual ~DataObject( );
 
+    virtual void _CreateVTKActor( ) const;
+
   private:
     // Purposely not implemented
     DataObject( const Self& );
     Self& operator=( const Self& );
 
   protected:
-    ProcessObject* m_Source;
+    ProcessObject*   m_Source;
+    // TODO: mutable vtkProp* m_Actor;
+    mutable vtkSmartPointer< vtkProp > m_Actor;
   };
 
 } // ecapseman