X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=lib%2FcpPlugins%2FInterface%2FImage.h;h=1aeee5cc18a7b6945951fcbf7d692d1748318b70;hb=8e5fd31fd4d280781d8bc27a799361bf9c30b1d4;hp=1da443bfa457df5350392f859d0b9884d502005e;hpb=a3cae0375976d524c957493a3cc565b9f5b20bce;p=cpPlugins.git diff --git a/lib/cpPlugins/Interface/Image.h b/lib/cpPlugins/Interface/Image.h index 1da443b..1aeee5c 100644 --- a/lib/cpPlugins/Interface/Image.h +++ b/lib/cpPlugins/Interface/Image.h @@ -4,23 +4,10 @@ #include #include -#define ITK_MANUAL_INSTANTIATION #include class vtkImageData; -// ------------------------------------------------------------------------- -/* TODO - #define cpPlugins_Image_Demangle( p, d, o, f, r ) \ - if( dynamic_cast< itk::Image< p, d >* >( o ) != NULL ) \ - r = this->f< itk::Image< p, d > >( o ) - - // ------------------------------------------------------------------------- - #define cpPlugins_Image_Array_Demangle( a, p, da, di, o, f, r ) \ - if( dynamic_cast< itk::Image< a< p, da >, di >* >( o ) != NULL ) \ - r = this->f< itk::Image< a< p, da >, di > >( o ) -*/ - // ------------------------------------------------------------------------- namespace cpPlugins { @@ -40,40 +27,22 @@ namespace cpPlugins public: itkNewMacro( Self ); itkTypeMacro( Image, DataObject ); + cpPlugins_Id_Macro( + cpPlugins::Interface::Image, "DataObject" + ); public: - /* - virtual void SetITKDataObject( itk::DataObject* o ); - virtual void SetVTKDataObject( vtkDataObject* o ); - */ - - template< class I > - inline void SetITKImage( itk::DataObject* object ); - - template< class I > - inline I* GetITKImage( ); - template< class I > - inline const I* GetITKImage( ) const; + inline void SetITK( itk::Object* object ); - virtual void SetVTKImageData( vtkImageData* image ); - virtual vtkImageData* GetVTKImageData( ); - virtual const vtkImageData* GetVTKImageData( ) const; + virtual void SetVTK( vtkObject* image ); protected: Image( ); virtual ~Image( ); template< class P, unsigned int D > - inline void _ITK_2_VTK( itk::DataObject* object ); - - /* TODO - template< unsigned int D > - bool _Dim( itk::DataObject* o ); - - template< class I > - bool _Type( itk::DataObject* o ); - */ + inline void _ITK_2_VTK( itk::Object* object ); private: // Purposely not implemented