1 #ifndef __CPPLUGINS__INTERFACE__DATAOBJECT__H__
2 #define __CPPLUGINS__INTERFACE__DATAOBJECT__H__
4 #include <cpPlugins/Interface/Object.h>
10 // Some forward declarations
15 class cpPlugins_Interface_EXPORT DataObject
19 typedef DataObject Self;
20 typedef Object Superclass;
21 typedef itk::SmartPointer< Self > Pointer;
22 typedef itk::SmartPointer< const Self > ConstPointer;
26 itkTypeMacro( DataObject, Object );
27 cpPlugins_Id_Macro( DataObject, BasicObject );
30 ProcessObject* GetSource( );
31 const ProcessObject* GetSource( ) const;
32 void SetSource( ProcessObject* src );
34 void DisconnectFromPipeline( );
38 virtual ~DataObject( );
41 // Purposely not implemented
42 DataObject( const Self& );
43 Self& operator=( const Self& );
53 #endif // __CPPLUGINS__INTERFACE__DATAOBJECT__H__