1 #ifndef __cpPlugins__DataObjects__Image__h__
2 #define __cpPlugins__DataObjects__Image__h__
4 #include <cpPlugins/BaseObjects/DataObject.h>
5 #include <itkProcessObject.h>
6 #include <cpPlugins_Images.h>
14 class cpPlugins_EXPORT Image
15 : public cpPlugins::BaseObjects::DataObject
19 typedef cpPlugins::BaseObjects::DataObject Superclass;
20 typedef itk::SmartPointer< Self > Pointer;
21 typedef itk::SmartPointer< const Self > ConstPointer;
25 itkTypeMacro( Image, cpPlugins::BaseObjects::DataObject );
26 cpPlugins_Id_Macro( Image, Object );
27 cpPlugins_Compatibility_Macro;
30 virtual void SetITK( itk::LightObject* o ) cpPlugins_OVERRIDE;
31 virtual void SetVTK( vtkObjectBase* o ) cpPlugins_OVERRIDE;
37 template< unsigned int _VDim >
38 inline void _ITK_2_VTK_0( itk::ImageBase< _VDim >* image );
40 template< class _TImage >
41 inline void _ITK_2_VTK_1( _TImage* image );
43 template< class _TPixel >
44 inline void _VTK_2_ITK_0( vtkImageData* image );
46 template< class _TPixel, unsigned int _VDim >
47 inline void _VTK_2_ITK_1( vtkImageData* image );
50 // Purposely not implemented
52 Self& operator=( const Self& );
55 itk::ProcessObject::Pointer m_ITKvVTK;
62 #include <cpPlugins/BaseObjects/Demangle.h>
64 #endif // __cpPlugins__DataObjects__Image__h__