X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcpPlugins%2FInterface%2FImage.h;h=4ba14cbf558fc80964f610acf9b2b0df393f47ec;hb=c820e7665125bc5ccda8580a0511f2d8fce3ede8;hp=e69de29bb2d1d6434b8b29ae775ad8c2e48c5391;hpb=8c23766af88a29c3e830299dffc4b95d9fe61df9;p=cpPlugins.git diff --git a/lib/cpPlugins/Interface/Image.h b/lib/cpPlugins/Interface/Image.h index e69de29..4ba14cb 100644 --- a/lib/cpPlugins/Interface/Image.h +++ b/lib/cpPlugins/Interface/Image.h @@ -0,0 +1,64 @@ +#ifndef __CPPLUGINS__INTERFACE__IMAGE__H__ +#define __CPPLUGINS__INTERFACE__IMAGE__H__ + +#include +#include +#include +#include +#include + +class vtkImageData; + +namespace cpPlugins +{ + namespace Interface + { + /** + */ + class cpPlugins_Interface_EXPORT Image + : public DataObject + { + public: + typedef Image Self; + typedef DataObject Superclass; + typedef itk::SmartPointer< Self > Pointer; + typedef itk::SmartPointer< const Self > ConstPointer; + + public: + itkNewMacro( Self ); + itkTypeMacro( Image, DataObject ); + + public: + virtual std::string GetClassName( ) const; + virtual void SetRealDataObject( itk::DataObject* dobj ); + + vtkImageData* GetVTKImageData( ) const; + void UpdateVTKImageData( ); + + protected: + Image( ); + virtual ~Image( ); + + template< unsigned int D > + void _VTK_0( ); + + template< class P, unsigned int D > + void _VTK_1( ); + + private: + // Purposely not implemented + Image( const Self& ); + Self& operator=( const Self& ); + + protected: + itk::ProcessObject::Pointer m_Image2VTKImageData; + vtkImageData* m_VTKImageData; + }; + + } // ecapseman + +} // ecapseman + +#endif // __CPPLUGINS__INTERFACE__IMAGE__H__ + +// eof - $RCSfile$