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

Generated at Tue Mar 29 23:52:21 2005 for ITK by doxygen 1.3.9.1 written by Dimitri van Heesch, © 1997-2000