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"
22 //====================================================================
23 // Class for reading Vox Image file format
24 class VoxImageIO: public itk::ImageIOBase
27 /** Standard class typedefs. */
28 typedef VoxImageIO Self;
29 typedef itk::ImageIOBase Superclass;
30 typedef itk::SmartPointer<Self> Pointer;
31 typedef signed short int PixelType;
33 VoxImageIO():Superclass() { mustWriteHeader = false; }
35 /** Method for creation through the object factory. */
38 /** Run-time type information (and related methods). */
39 itkTypeMacro(VoxImageIO, ImageIOBase);
41 /*-------- This part of the interface deals with reading data. ------ */
42 virtual void ReadImageInformation();
43 virtual bool CanReadFile( const char* FileNameToRead );
44 virtual void Read(void * buffer);
46 /*-------- This part of the interfaces deals with writing data. ----- */
47 virtual void WriteImageInformation(bool keepOfStream);
48 virtual void WriteImageInformation() { WriteImageInformation(false); }
49 virtual bool CanWriteFile(const char* filename);
50 virtual void Write(const void* buffer);
57 }; // end class VoxImageIO
61 // explicit template instantiation
62 template class itk::CreateObjectFunction<clitk::VoxImageIO>;
64 #endif /* end #define CLITKVOXIMAGEIO_H */