00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __itkLSMImageIO_h
00021 #define __itkLSMImageIO_h
00022
00023 #include "itkTIFFImageIO.h"
00024 #include <fstream>
00025
00026 namespace itk
00027 {
00028
00038 class ITK_EXPORT LSMImageIO : public TIFFImageIO
00039 {
00040 public:
00042 typedef LSMImageIO Self;
00043 typedef ImageIOBase Superclass;
00044 typedef SmartPointer<Self> Pointer;
00045
00047 itkNewMacro(Self);
00048
00050 itkTypeMacro(LSMImageIO, Superclass);
00051
00052
00053
00056 virtual bool CanReadFile(const char*);
00057
00059 virtual void ReadImageInformation();
00060
00062 virtual void Read(void* buffer);
00063
00064
00065
00068 virtual bool CanWriteFile(const char*);
00069
00072 virtual void WriteImageInformation() {};
00073
00076 virtual void Write(const void* buffer);
00077
00078 protected:
00079 LSMImageIO();
00080 ~LSMImageIO();
00081 void PrintSelf(std::ostream& os, Indent indent) const;
00082
00083 private:
00084 LSMImageIO(const Self&);
00085 void operator=(const Self&);
00086 void FillZeissStruct(char *z);
00087 };
00088
00089 }
00090
00091 #endif // __itkLSMImageIO_h
00092