X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcpPlugins%2FInterface%2FImage.h;h=88808c4a59c7e360ece328eb27a23fc050356b9c;hb=a89305e04527ebe2e81d0d1a62bbe34e0d35a141;hp=a5beda39b58b59c7e3424a435f1cdbb9c1cafb7a;hpb=75740198fa0c55f8fdcd8b33ddff00071c893a94;p=cpPlugins.git diff --git a/lib/cpPlugins/Interface/Image.h b/lib/cpPlugins/Interface/Image.h index a5beda3..88808c4 100644 --- a/lib/cpPlugins/Interface/Image.h +++ b/lib/cpPlugins/Interface/Image.h @@ -1,14 +1,10 @@ #ifndef __CPPLUGINS__INTERFACE__IMAGE__H__ #define __CPPLUGINS__INTERFACE__IMAGE__H__ -#include #include #include -class vtkImageData; - -// ------------------------------------------------------------------------- namespace cpPlugins { namespace Interface @@ -27,27 +23,24 @@ namespace cpPlugins public: itkNewMacro( Self ); itkTypeMacro( Image, DataObject ); + cpPlugins_Id_Macro( Image, DataObject ); public: - template< class I > - inline void SetITKImage( itk::DataObject* object ); - - template< class I > - inline I* GetITKImage( ); - - template< class I > - inline const I* GetITKImage( ) const; - - virtual void SetVTKImageData( vtkImageData* image ); - virtual vtkImageData* GetVTKImageData( ); - virtual const vtkImageData* GetVTKImageData( ) const; + virtual void SetITK( itk::LightObject* o ); + virtual void SetVTK( vtkObjectBase* o ); protected: Image( ); virtual ~Image( ); + template< unsigned int D > + inline bool _ITK_2_VTK_0( itk::LightObject* o ); + template< class P, unsigned int D > - inline void _ITK_2_VTK( itk::DataObject* object ); + inline bool _ITK_2_VTK_1( itk::LightObject* o ); + + template< class I > + inline bool _ITK_2_VTK_2( itk::LightObject* o ); private: // Purposely not implemented @@ -55,7 +48,7 @@ namespace cpPlugins Self& operator=( const Self& ); protected: - itk::ProcessObject::Pointer m_ITKvVTKConnection; + itk::ProcessObject::Pointer m_ITKvVTK; }; } // ecapseman