1 #ifndef CLITKVOXIMAGEIO_H
2 #define CLITKVOXIMAGEIO_H
5 ===================================================================
6 * @file clitkVoxImageIO.h
7 * @author David Sarrut <David.Sarrut@creatis.insa-lyon.fr>
8 * @date 17 May 2006 08:01:35
12 ===================================================================*/
15 #include "clitkCommon.h"
18 #include "itkImageIOBase.h"
25 //====================================================================
26 // Class for reading Vox Image file format
27 class VoxImageIO: public itk::ImageIOBase
30 /** Standard class typedefs. */
31 typedef VoxImageIO Self;
32 typedef itk::ImageIOBase Superclass;
33 typedef itk::SmartPointer<Self> Pointer;
34 typedef signed short int PixelType;
36 VoxImageIO():Superclass() { mustWriteHeader = false; }
38 /** Method for creation through the object factory. */
41 /** Run-time type information (and related methods). */
42 itkTypeMacro(VoxImageIO, ImageIOBase);
44 /*-------- This part of the interface deals with reading data. ------ */
45 virtual void ReadImageInformation();
46 virtual bool CanReadFile( const char* FileNameToRead );
47 virtual void Read(void * buffer);
49 /*-------- This part of the interfaces deals with writing data. ----- */
50 virtual void WriteImageInformation(bool keepOfStream);
51 virtual void WriteImageInformation() { WriteImageInformation(false); }
52 virtual bool CanWriteFile(const char* filename);
53 virtual void Write(const void* buffer);
60 }; // end class VoxImageIO
64 // explicit template instantiation
65 template class itk::CreateObjectFunction<clitk::VoxImageIO>;
67 #endif /* end #define CLITKVOXIMAGEIO_H */