Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itkGEAdwImageIO.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003 Program:   Insight Segmentation & Registration Toolkit
00004 Module:    $RCSfile: itkGEAdwImageIO.h,v $
00005 Language:  C++
00006 Date:      $Date: 2005/09/28 15:41:54 $
00007 Version:   $Revision: 1.7 $
00008 
00009 Copyright (c) Insight Software Consortium. All rights reserved.
00010 See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
00011 
00012 This software is distributed WITHOUT ANY WARRANTY; without even
00013 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00014 PURPOSE.  See the above copyright notices for more information.
00015 
00016 =========================================================================*/
00017 
00031 #ifndef __itkGEAdwImageIO_h
00032 #define __itkGEAdwImageIO_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 "idbm_hdr_def.h"
00043 
00044 namespace itk
00045 {
00053 class ITK_EXPORT GEAdwImageIO : public IPLCommonImageIO
00054 {
00055 public:
00057   typedef GEAdwImageIO            Self;
00058   typedef IPLCommonImageIO  Superclass;
00059   typedef SmartPointer<Self>  Pointer;
00060 
00062   itkNewMacro(Self);
00063 
00065   itkTypeMacro(GEAdwImageIO, Superclass);
00066 
00067   /*-------- This part of the interfaces deals with reading data. ----- */
00068 
00075   virtual bool CanReadFile(const char* FileNameToRead) ;
00076 
00078   // Implemented in superclass
00079   //      virtual void ReadImageInformation();
00080 
00082   // Implemented in superclass
00083   //      virtual const std::type_info& GetPixelType() const;
00084 
00086   // Implemented in superclass
00087   //      virtual void Read(void* buffer);
00088 
00092   // Implemented in superclass
00093   //      virtual unsigned int GetComponentSize() const;
00094 
00095   /*-------- This part of the interfaces deals with writing data. ----- */
00096 
00103   // Implemented in superclass
00104   //      virtual bool CanWriteFile(const char * FileNameToWrite);
00105 
00107   // Implemented in superclass
00108   //      virtual void WriteImageInformation();
00109 
00112   // Implemented in superclass
00113   //      virtual void Write(const void* buffer);
00114 protected:
00115   GEAdwImageIO();
00116   ~GEAdwImageIO();
00117   // Implemented in superclass
00118   //      void PrintSelf(std::ostream& os, Indent indent) const;
00119   virtual struct GEImageHeader *ReadHeader(const char *FileNameToRead);
00120 private:
00121   GEAdwImageIO(const Self&); //purposely not implemented
00122   void operator=(const Self&); //purposely not implemented
00123   enum GE_ADW_DEFINES {
00124     GE_ADW_SU_ID=0,    
00125     GE_ADW_SU_ID_LEN=4,
00126     GE_ADW_SU_PRODID=7,       
00127     GE_ADW_SU_PRODID_LEN=13,
00128     GE_ADW_EX_SUID=116,   
00129     GE_ADW_EX_SUID_LEN=4,
00130     GE_ADW_EX_NO=124,     
00131     GE_ADW_EX_NO_LEN=2,
00132     GE_ADW_EX_HOSPNAME=126,   
00133     GE_ADW_EX_HOSPNAME_LEN=33,
00134     GE_ADW_EX_MAGSTRENGTH=200,        
00135     GE_ADW_EX_MAGSTRENGTH_LEN=4,
00136     GE_ADW_EX_PATID=204,      
00137     GE_ADW_EX_PATID_LEN=13,
00138     GE_ADW_EX_PATNAME=217,    
00139     GE_ADW_EX_PATNAME_LEN=25,
00140     GE_ADW_EX_PATAGE=242,     
00141     GE_ADW_EX_PATAGE_LEN=2,
00142     GE_ADW_EX_PATIAN=244,     
00143     GE_ADW_EX_PATIAN_LEN=2,
00144     GE_ADW_EX_PATSEX=246,     
00145     GE_ADW_EX_PATSEX_LEN=2,
00146     GE_ADW_EX_PATWEIGHT=248,  
00147     GE_ADW_EX_PATWEIGHT_LEN=4,
00148     GE_ADW_EX_HIST=254,   
00149     GE_ADW_EX_HIST_LEN=61,
00150     GE_ADW_EX_DATETIME=328,   
00151     GE_ADW_EX_DATETIME_LEN=4,
00152     GE_ADW_EX_REFPHY=332,     
00153     GE_ADW_EX_REFPHY_LEN=33,
00154     GE_ADW_EX_DIAGRAD=365,    
00155     GE_ADW_EX_DIAGRAD_LEN=33,
00156     GE_ADW_EX_OP=398,     
00157     GE_ADW_EX_OP_LEN=4,
00158     GE_ADW_EX_DESC=402,   
00159     GE_ADW_EX_DESC_LEN=23,
00160     GE_ADW_EX_TYP=425,    
00161     GE_ADW_EX_TYP_LEN=3,
00162     GE_ADW_EX_FORMAT=428,     
00163     GE_ADW_EX_FORMAT_LEN=2,
00164     GE_ADW_EX_SYSID=444,      
00165     GE_ADW_EX_SYSID_LEN=9,
00166 
00167     /*** Series Header Variables ***/
00168     GE_ADW_SE_SUID=1156,  
00169     GE_ADW_SE_SUID_LEN=4,
00170     GE_ADW_SE_UNIQ=1160,  
00171     GE_ADW_SE_UNIQ_LEN=2,
00172     GE_ADW_SE_EXNO=1164,  
00173     GE_ADW_SE_EXNO_LEN=2,
00174     GE_ADW_SE_NO=1166,    
00175     GE_ADW_SE_NO_LEN=2,
00176     GE_ADW_SE_DATETIME=1168,  
00177     GE_ADW_SE_DATETIME_LEN=4,
00178     GE_ADW_SE_DESC=1176,  
00179     GE_ADW_SE_DESC_LEN=30,
00180     GE_ADW_SE_TYP=1224,   
00181     GE_ADW_SE_TYP_LEN=2,
00182     GE_ADW_SE_PLANE=1228,     
00183     GE_ADW_SE_PLANE_LEN=2,
00184     GE_ADW_SE_POSITION=1232,  
00185     GE_ADW_SE_POSITION_LEN=4,
00186     GE_ADW_SE_ENTRY=1236,     
00187     GE_ADW_SE_ENTRY_LEN=4,
00188     GE_ADW_SE_ANREF=1240,     
00189     GE_ADW_SE_ANREF_LEN=3,
00190     GE_ADW_SE_CONTRAST=1274,  
00191     GE_ADW_SE_CONTRAST_LEN=2,
00192     GE_ADW_SE_START_RAS=1276,         
00193     GE_ADW_SE_START_RAS_LEN=1,
00194     GE_ADW_SE_START_LOC=1280,         
00195     GE_ADW_SE_START_LOC_LEN=4,
00196     GE_ADW_SE_END_RAS=1284,   
00197     GE_ADW_SE_END_RAS_LEN=1,
00198     GE_ADW_SE_END_LOC=1288,   
00199     GE_ADW_SE_END_LOC_LEN=4,
00200     GE_ADW_SE_NUMIMAGES=1368,         
00201     GE_ADW_SE_NUMIMAGES_LEN=4,
00202 
00203     /*** Image Header Variables ***/
00204     GE_ADW_IM_SUID=2184,  
00205     GE_ADW_IM_SUID_LEN=4,
00206     GE_ADW_IM_UNIQ=2188,  
00207     GE_ADW_IM_UNIQ_LEN=2,
00208     GE_ADW_IM_EXNO=2192,  
00209     GE_ADW_IM_EXNO_LEN=2,
00210     GE_ADW_IM_SENO=2194,  
00211     GE_ADW_IM_SENO_LEN=2,
00212     GE_ADW_IM_NO=2196,    
00213     GE_ADW_IM_NO_LEN=2,
00214     GE_ADW_IM_DATETIME=2200,  
00215     GE_ADW_IM_DATETIME_LEN=4,
00216     GE_ADW_IM_ACTUAL_DT=2204,         
00217     GE_ADW_IM_ACTUAL_DT_LEN=4,
00218     GE_ADW_IM_SCTIME=2208,    
00219     GE_ADW_IM_SCTIME_LEN=4,
00220     GE_ADW_IM_SLTHICK=2212,   
00221     GE_ADW_IM_SLTHICK_LEN=4,
00222     GE_ADW_IM_IMATRIX_X=2216,         
00223     GE_ADW_IM_IMATRIX_X_LEN=2,
00224     GE_ADW_IM_IMATRIX_Y=2218,         
00225     GE_ADW_IM_IMATRIX_Y_LEN=2,
00226     GE_ADW_IM_DFOV=2220,  
00227     GE_ADW_IM_DFOV_LEN=4,
00228     GE_ADW_IM_DFOV_RECT=2224,         
00229     GE_ADW_IM_DFOV_RECT_LEN=4,
00230     GE_ADW_IM_DIM_X=2228,     
00231     GE_ADW_IM_DIM_X_LEN=4,
00232     GE_ADW_IM_DIM_Y=2232,     
00233     GE_ADW_IM_DIM_Y_LEN=4,
00234     GE_ADW_IM_PIXSIZE_X=2236,         
00235     GE_ADW_IM_PIXSIZE_X_LEN=4,
00236     GE_ADW_IM_PIXSIZE_Y=2240,         
00237     GE_ADW_IM_PIXSIZE_Y_LEN=4,
00238     GE_ADW_IM_CONTMODE=2292,  
00239     GE_ADW_IM_CONTMODE_LEN=2,
00240     GE_ADW_IM_PLANE=2300,     
00241     GE_ADW_IM_PLANE_LEN=2,
00242     GE_ADW_IM_SCANSPACING=2304,       
00243     GE_ADW_IM_SCANSPACING_LEN=4,
00244     GE_ADW_IM_LOC_RAS=2312,   
00245     GE_ADW_IM_LOC_RAS_LEN=1,
00246     GE_ADW_IM_LOC=2316,   
00247     GE_ADW_IM_LOC_LEN=4,
00248     GE_ADW_IM_ULHC_R=2344,      
00249     GE_ADW_IM_ULHC_R_LEN=4,
00250     GE_ADW_IM_ULHC_A=2348,      
00251     GE_ADW_IM_ULHC_A_LEN=4,
00252     GE_ADW_IM_ULHC_S=2352,      
00253     GE_ADW_IM_ULHC_S_LEN=4,
00254     GE_ADW_IM_URHC_R=2356,     
00255     GE_ADW_IM_URHC_R_LEN=4,
00256     GE_ADW_IM_URHC_A=2360,     
00257     GE_ADW_IM_URHC_A_LEN=4,
00258     GE_ADW_IM_URHC_S=2364,     
00259     GE_ADW_IM_URHC_S_LEN=4,
00260     GE_ADW_IM_BRHC_R=2368,     
00261     GE_ADW_IM_BRHC_R_LEN=4,
00262     GE_ADW_IM_BRHC_A=2372,     
00263     GE_ADW_IM_BRHC_A_LEN=4,
00264     GE_ADW_IM_BRHC_S=2376,     
00265     GE_ADW_IM_BRHC_S_LEN=4,
00266     GE_ADW_IM_TR=2384,    
00267     GE_ADW_IM_TR_LEN=4,
00268     GE_ADW_IM_TI=2388,    
00269     GE_ADW_IM_TI_LEN=4,
00270     GE_ADW_IM_TE=2392,    
00271     GE_ADW_IM_TE_LEN=4,
00272     GE_ADW_IM_NUMECHO=2400,   
00273     GE_ADW_IM_NUMECHO_LEN=2,
00274     GE_ADW_IM_ECHONUM=2402,   
00275     GE_ADW_IM_ECHONUM_LEN=2,
00276     GE_ADW_IM_NEX=2408,   
00277     GE_ADW_IM_NEX_LEN=4,
00278     GE_ADW_IM_CONTIG=2412,    
00279     GE_ADW_IM_CONTIG_LEN=2,
00280     GE_ADW_IM_HRTRATE=2414,   
00281     GE_ADW_IM_HRTRATE_LEN=2,
00282     GE_ADW_IM_TDEL=2416,  
00283     GE_ADW_IM_TDEL_LEN=4,
00284     GE_ADW_IM_XMTGAIN=2438,   
00285     GE_ADW_IM_XMTGAIN_LEN=2,
00286     GE_ADW_IM_MR_FLIP=2444,   
00287     GE_ADW_IM_MR_FLIP_LEN=2,
00288     GE_ADW_IM_CPHASE=2452,    
00289     GE_ADW_IM_CPHASE_LEN=2,
00290     GE_ADW_IM_SWAPPF=2454,    
00291     GE_ADW_IM_SWAPPF_LEN=2,
00292     GE_ADW_IM_OBPLANE=2464,   
00293     GE_ADW_IM_OBPLANE_LEN=4,
00294     GE_ADW_IM_XMTFREQ=2472,   
00295     GE_ADW_IM_XMTFREQ_LEN=4,
00296     GE_ADW_IM_PRESCAN_R1=2482,        
00297     GE_ADW_IM_PRESCAN_R1_LEN=2,
00298     GE_ADW_IM_PRESCAN_R2=2484,        
00299     GE_ADW_IM_PRESCAN_R2_LEN=2,
00300     GE_ADW_IM_IMODE=2494,     
00301     GE_ADW_IM_IMODE_LEN=2,
00302     GE_ADW_IM_IOPT=2496,  
00303     GE_ADW_IM_IOPT_LEN=4,
00304     GE_ADW_IM_PSEQ=2500,  
00305     GE_ADW_IM_PSEQ_LEN=2,
00306     GE_ADW_IM_PSDNAME=2504,   
00307     GE_ADW_IM_PSDNAME_LEN=33,
00308     GE_ADW_IM_CTYP=2558,  
00309     GE_ADW_IM_CTYP_LEN=2,
00310     GE_ADW_IM_CNAME=2560,     
00311     GE_ADW_IM_CNAME_LEN=17,
00312     GE_ADW_IM_SUPP_TECH=2592,         
00313     GE_ADW_IM_SUPP_TECH_LEN=2,
00314     GE_ADW_IM_VBW=2596,   
00315     GE_ADW_IM_VBW_LEN=4,
00316     GE_ADW_IM_SLQUANT=2600,   
00317     GE_ADW_IM_SLQUANT_LEN=2,
00318     GE_ADW_IM_USER0=2608,     
00319     GE_ADW_IM_USER0_LEN=4,
00320     GE_ADW_IM_USER1=2612,     
00321     GE_ADW_IM_USER1_LEN=4,
00322     GE_ADW_IM_USER2=2616,     
00323     GE_ADW_IM_USER2_LEN=4,
00324     GE_ADW_IM_USER3=2620,     
00325     GE_ADW_IM_USER3_LEN=4,
00326     GE_ADW_IM_USER4=2624,     
00327     GE_ADW_IM_USER4_LEN=4,
00328     GE_ADW_IM_USER5=2628,     
00329     GE_ADW_IM_USER5_LEN=4,
00330     GE_ADW_IM_USER6=2632,     
00331     GE_ADW_IM_USER6_LEN=4,
00332     GE_ADW_IM_USER7=2636,     
00333     GE_ADW_IM_USER7_LEN=4,
00334     GE_ADW_IM_USER8=2640,     
00335     GE_ADW_IM_USER8_LEN=4,
00336     GE_ADW_IM_USER9=2644,     
00337     GE_ADW_IM_USER9_LEN=4,
00338     GE_ADW_IM_USER10=2648,    
00339     GE_ADW_IM_USER10_LEN=4,
00340     GE_ADW_IM_USER11=2652,    
00341     GE_ADW_IM_USER11_LEN=4,
00342     GE_ADW_IM_USER12=2656,    
00343     GE_ADW_IM_USER12_LEN=4,
00344     GE_ADW_IM_USER13=2660,    
00345     GE_ADW_IM_USER13_LEN=4,
00346     GE_ADW_IM_USER14=2664,    
00347     GE_ADW_IM_USER14_LEN=4,
00348     GE_ADW_IM_USER15=2668,    
00349     GE_ADW_IM_USER15_LEN=4,
00350     GE_ADW_IM_USER16=2672,    
00351     GE_ADW_IM_USER16_LEN=4,
00352     GE_ADW_IM_USER17=2676,    
00353     GE_ADW_IM_USER17_LEN=4,
00354     GE_ADW_IM_USER18=2680,    
00355     GE_ADW_IM_USER18_LEN=4,
00356     GE_ADW_IM_USER19=2684,    
00357     GE_ADW_IM_USER19_LEN=4,
00358     GE_ADW_IM_USER20=2688,    
00359     GE_ADW_IM_USER20_LEN=4,
00360     GE_ADW_IM_USER21=2692,    
00361     GE_ADW_IM_USER21_LEN=4,
00362     GE_ADW_IM_USER22=2696,    
00363     GE_ADW_IM_USER22_LEN=4,
00364     GE_ADW_IM_USER23=2700,    
00365     GE_ADW_IM_USER23_LEN=4,
00366     GE_ADW_IM_USER24=2704,    
00367     GE_ADW_IM_USER24_LEN=4,
00368     GE_ADW_IM_SATBITS=2756,   
00369     GE_ADW_IM_SATBITS_LEN=2,
00370     GE_ADW_IM_SCIC=2758,  
00371     GE_ADW_IM_SCIC_LEN=2,
00372     GE_ADW_IM_FLAX=2778,  
00373     GE_ADW_IM_FLAX_LEN=2,
00374     GE_ADW_IM_VENC=2780,  
00375     GE_ADW_IM_VENC_LEN=2,
00376     GE_ADW_IM_THK_DISCLMR=2782,       
00377     GE_ADW_IM_THK_DISCLMR_LEN=2,
00378     GE_ADW_IM_VAS_COLLAPSE=2790,      
00379     GE_ADW_IM_VAS_COLLAPSE_LEN=2,
00380     GE_ADW_IM_X_AXIS_ROT=2816,        
00381     GE_ADW_IM_X_AXIS_ROT_LEN=4,
00382     GE_ADW_IM_Y_AXIS_ROT=2820,        
00383     GE_ADW_IM_Y_AXIS_ROT_LEN=4,
00384     GE_ADW_IM_Z_AXIS_ROT=2824,        
00385     GE_ADW_IM_Z_AXIS_ROT_LEN=4,
00386     GE_ADW_IM_ECHO_TRN=2844,  
00387     GE_ADW_IM_ECHO_TRN_LEN=2,
00388     GE_ADW_IM_FRAC_ECHO=2846,         
00389     GE_ADW_IM_FRAC_ECHO_LEN=2,
00390     GE_ADW_IM_PREP_PULSE=2848,        
00391     GE_ADW_IM_PREP_PULSE_LEN=2,
00392     GE_ADW_IM_CPHASENUM=2850,         
00393     GE_ADW_IM_CPHASENUM_LEN=2,
00394     GE_ADW_IM_VAR_ECHO=2852,  
00395     GE_ADW_IM_VAR_ECHO_LEN=2,
00396     GE_ADW_IM_FREQ_DIR=2948,  
00397     GE_ADW_IM_FREQ_DIR_LEN=2,
00398     GE_ADW_IM_VMODE=2950,     
00399     GE_ADW_IM_VMODE_LEN=2,
00400 
00401     GE_ADW_FIXED_HDR_LENGTH=3228,         
00402     GE_ADW_VARIABLE_HDR_LENGTH_LEN=4,
00403     GE_ADW_VARIABLE_HDR_LENGTH=3232      
00404   };
00405 
00406 };
00407 
00408 } // end namespace itk
00409 
00410 #endif // __itkAnalyzeImageIO_h

Generated at Wed May 24 23:11:37 2006 for ITK by doxygen 1.3.5 written by Dimitri van Heesch, © 1997-2000