00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00031 #ifndef __itkGE5ImageIO_h
00032 #define __itkGE5ImageIO_h
00033
00034 #ifdef _MSC_VER
00035 #pragma warning ( disable : 4786 )
00036 #endif
00037
00038 #include <fstream>
00039 #include "itkImageIOBase.h"
00040 #include "itkIPLCommonImageIO.h"
00041 #include "itkGEImageHeader.h"
00042 #include "Ge5xHdr.h"
00043
00044 namespace itk
00045 {
00054 class ITK_EXPORT GE5ImageIO : public IPLCommonImageIO
00055 {
00056 public:
00058 typedef GE5ImageIO Self;
00059 typedef IPLCommonImageIO Superclass;
00060 typedef SmartPointer<Self> Pointer;
00061
00063 itkNewMacro(Self);
00064
00066 itkTypeMacro(GE5ImageIO, Superclass);
00067
00068
00069
00076 virtual bool CanReadFile(const char* FileNameToRead);
00077
00079
00080
00081
00083 void ModifyImageInformation();
00084
00086
00087
00088
00090
00091
00092
00096
00097
00098
00099
00100
00107
00108
00109
00111
00112
00113
00116
00117
00118 protected:
00119 GE5ImageIO();
00120 ~GE5ImageIO();
00122
00123 virtual struct GEImageHeader *ReadHeader(const char *FileNameToRead);
00124 private:
00125 void SwapPixHdr (Ge5xPixelHeader * hdr);
00126 int CheckGE5xImages (char const * const imageFileTemplate, std::string &reason);
00127 GE5ImageIO(const Self&);
00128 void operator=(const Self&);
00129 };
00130
00131 }
00132
00133 #endif // __itkAnalyzeImageIO_h
00134