00001 /*========================================================================= 00002 00003 Library : Image Registration Toolkit (IRTK) 00004 Module : $Id: irtkFileToImage.h 8 2009-03-02 16:12:58Z dr $ 00005 Copyright : Imperial College, Department of Computing 00006 Visual Information Processing (VIP), 2008 onwards 00007 Date : $Date: 2009-03-02 16:12:58 +0000 (Mon, 02 Mar 2009) $ 00008 Version : $Revision: 8 $ 00009 Changes : $Author: dr $ 00010 00011 =========================================================================*/ 00012 00013 #ifndef _IRTKFILETOIMAGE_H 00014 00015 #define _IRTKFILETOIMAGE_H 00016 00027 class irtkFileToImage : protected irtkCifstream 00028 { 00029 00031 char *_imagename; 00032 00033 protected: 00034 00036 irtkImageAttributes _attr; 00037 00039 int _bytes; 00040 00042 int _type; 00043 00045 float _slope; 00046 00048 float _intercept; 00049 00051 int _start; 00052 00054 int _reflectX; 00055 00057 int _reflectY; 00058 00060 int _reflectZ; 00061 00063 int _debug; 00064 00070 virtual void ReadHeader() = 0; 00071 00072 public: 00073 00075 irtkFileToImage(); 00076 00078 virtual ~irtkFileToImage(); 00079 00085 static irtkFileToImage *New(const char *); 00086 00088 virtual void SetInput (const char *); 00089 00091 virtual irtkImage *GetOutput(); 00092 00094 virtual int GetDebugFlag(); 00095 00097 virtual void PutDebugFlag(int); 00098 00100 virtual void Print(); 00101 00103 virtual void Debug(char *); 00104 00105 // Returns the name of the class 00106 virtual const char *NameOfClass() = 0; 00107 }; 00108 00109 #include <irtkFilePGMToImage.h> 00110 #include <irtkFileVTKToImage.h> 00111 #include <irtkFileGIPLToImage.h> 00112 #ifdef HAS_NIFTI 00113 #include <irtkFileNIFTIToImage.h> 00114 #endif 00115 #include <irtkFileANALYZEToImage.h> 00116 00117 #endif