1 #ifndef __CPPLUGINS__IMAGE__H__
2 #define __CPPLUGINS__IMAGE__H__
4 #include <cpPlugins/DataObject.h>
6 #include <itkProcessObject.h>
12 class cpPlugins_EXPORT Image
17 typedef DataObject Superclass;
18 typedef itk::SmartPointer< Self > Pointer;
19 typedef itk::SmartPointer< const Self > ConstPointer;
23 itkTypeMacro( Image, DataObject );
24 cpPlugins_Id_Macro( Image, Object );
27 virtual void SetITK( itk::LightObject* o ) override;
28 virtual void SetVTK( vtkObjectBase* o ) override;
34 template< unsigned int D >
35 inline bool _ITK_2_VTK_0( itk::LightObject* o );
37 template< class P, unsigned int D >
38 inline bool _ITK_2_VTK_1( itk::LightObject* o );
41 inline bool _ITK_2_VTK_2( itk::LightObject* o );
44 // Purposely not implemented
46 Self& operator=( const Self& );
49 itk::ProcessObject::Pointer m_ITKvVTK;
54 #include <cpPlugins/Image.hxx>
56 #endif // __CPPLUGINS__IMAGE__H__