X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=common%2FclitkEsrfHstImageIO.h;fp=common%2FclitkEsrfHstImageIO.h;h=9a732befc38bc8ba37be06ab5490474ce3ac42b7;hb=c7a6bc15ce7ef75426e8f1db97453635fa430370;hp=0000000000000000000000000000000000000000;hpb=ce8987fa603ce1591d6d595273761d092467575d;p=clitk.git diff --git a/common/clitkEsrfHstImageIO.h b/common/clitkEsrfHstImageIO.h new file mode 100644 index 0000000..9a732be --- /dev/null +++ b/common/clitkEsrfHstImageIO.h @@ -0,0 +1,66 @@ +/*========================================================================= + Program: vv http://www.creatis.insa-lyon.fr/rio/vv + + Authors belong to: + - University of LYON http://www.universite-lyon.fr/ + - Léon Bérard cancer center http://www.centreleonberard.fr + - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr + + This software is distributed WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. See the copyright notices for more information. + + It is distributed under dual licence + + - BSD See included LICENSE.txt file + - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +===========================================================================**/ + +#ifndef __clitkEsrfHstImageIO_h +#define __clitkEsrfHstImageIO_h + +#include +#include +#include + +namespace clitk +{ + +//==================================================================== +// Class for reading Esrf Hst Image file format +class EsrfHstImageIO: public itk::ImageIOBase +{ +public: + /** Standard class typedefs. */ + typedef EsrfHstImageIO Self; + typedef itk::ImageIOBase Superclass; + typedef itk::SmartPointer Pointer; + + EsrfHstImageIO():Superclass() { } + + /** Method for creation through the object factory. */ + itkNewMacro(Self); + + /** Run-time type information (and related methods). */ + itkTypeMacro(EsrfHstImageIO, ImageIOBase); + + /*-------- This part of the interface deals with reading data. ------ */ + virtual void ReadImageInformation(); + virtual bool CanReadFile( const char* FileNameToRead ); + virtual void Read(void * buffer); + + /*-------- This part of the interfaces deals with writing data. ----- */ + virtual void WriteImageInformation(bool keepOfStream); + virtual void WriteImageInformation() { WriteImageInformation(false); } + virtual bool CanWriteFile(const char* filename); + virtual void Write(const void* buffer); + +protected: + std::string m_XmlFileName; + std::string m_RawFileName; +}; + +} // end namespace + +#endif +