ITK  4.8.0
Insight Segmentation and Registration Toolkit
itkGEAdwImageIO.h
Go to the documentation of this file.
1 /*=========================================================================
2  *
3  * Copyright Insight Software Consortium
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0.txt
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  *=========================================================================*/
32 #ifndef itkGEAdwImageIO_h
33 #define itkGEAdwImageIO_h
34 #include "ITKIOGEExport.h"
35 
36 
37 #include "itkIPLCommonImageIO.h"
38 
39 namespace itk
40 {
49 class ITKIOGE_EXPORT GEAdwImageIO:public IPLCommonImageIO
50 {
51 public:
53  typedef GEAdwImageIO Self;
56 
58  itkNewMacro(Self);
59 
61  itkTypeMacro(GEAdwImageIO, Superclass);
62 
63  /*-------- This part of the interfaces deals with reading data. ----- */
64 
71  virtual bool CanReadFile(const char *FileNameToRead) ITK_OVERRIDE;
72 
73  /* * Set the spacing and dimension information for the set filename. */
74  // Implemented in superclass
75  // virtual void ReadImageInformation();
76 
77  /* * Get the type of the pixel. */
78  // Implemented in superclass
79  // virtual const std::type_info& GetPixelType() const;
80 
81  /* * Reads the data from disk into the memory buffer provided. */
82  // Implemented in superclass
83  // virtual void Read(void* buffer);
84 
85  /* * Compute the size (in bytes) of the components of a pixel. For
86  * example, and RGB pixel of unsigned char would have a
87  * component size of 1 byte. */
88  // Implemented in superclass
89  // virtual unsigned int GetComponentSize() const;
90 
91  /*-------- This part of the interfaces deals with writing data. ----- */
92 
93  /* * Determine if the file can be written with this ImageIO implementation.
94  * \param FileNameToWrite The name of the file to test for writing.
95  * \author Hans J. Johnson
96  * \post Sets classes ImageIOBase::m_FileName variable to be FileNameToWrite
97  * \return Returns true if this ImageIO can write the file specified.
98  */
99  // Implemented in superclass
100  // virtual bool CanWriteFile(const char * FileNameToWrite);
101 
102  /* * Set the spacing and dimension information for the set filename. */
103  // Implemented in superclass
104  // virtual void WriteImageInformation();
105 
106  /* * Writes the data to disk from the memory buffer provided. Make sure
107  * that the IORegions has been set properly. */
108  // Implemented in superclass
109  // virtual void Write(const void* buffer);
110 
111 protected:
112  GEAdwImageIO();
113  ~GEAdwImageIO();
114  // Implemented in superclass
115  // void PrintSelf(std::ostream& os, Indent indent) const;
116  virtual GEImageHeader * ReadHeader(const char *FileNameToRead) ITK_OVERRIDE;
117 
118 private:
119  GEAdwImageIO(const Self &); //purposely not implemented
120  void operator=(const Self &); //purposely not implemented
121 
124  GE_ADW_SU_ID_LEN = 4,
125 
127  GE_ADW_SU_PRODID_LEN = 13,
128 
130  GE_ADW_EX_SUID_LEN = 4,
131 
133  GE_ADW_EX_NO_LEN = 2,
134 
136  GE_ADW_EX_HOSPNAME_LEN = 33,
137 
139  GE_ADW_EX_MAGSTRENGTH_LEN = 4,
140 
142  GE_ADW_EX_PATID_LEN = 13,
143 
145  GE_ADW_EX_PATNAME_LEN = 25,
146 
148  GE_ADW_EX_PATAGE_LEN = 2,
149 
151  GE_ADW_EX_PATIAN_LEN = 2,
152 
154  GE_ADW_EX_PATSEX_LEN = 2,
155 
157  GE_ADW_EX_PATWEIGHT_LEN = 4,
158 
160  GE_ADW_EX_HIST_LEN = 61,
161 
163  GE_ADW_EX_DATETIME_LEN = 4,
164 
166  GE_ADW_EX_REFPHY_LEN = 33,
167 
169  GE_ADW_EX_DIAGRAD_LEN = 33,
170 
172  GE_ADW_EX_OP_LEN = 4,
173 
175  GE_ADW_EX_DESC_LEN = 23,
176 
178  GE_ADW_EX_TYP_LEN = 3,
179 
181  GE_ADW_EX_FORMAT_LEN = 2,
182 
184  GE_ADW_EX_SYSID_LEN = 9,
185 
191  GE_ADW_SE_SUID_LEN = 4,
192 
194  GE_ADW_SE_UNIQ_LEN = 2,
195 
197  GE_ADW_SE_EXNO_LEN = 2,
198 
200  GE_ADW_SE_NO_LEN = 2,
201 
203  GE_ADW_SE_DATETIME_LEN = 4,
204 
206  GE_ADW_SE_DESC_LEN = 30,
207 
209  GE_ADW_SE_TYP_LEN = 2,
210 
212  GE_ADW_SE_PLANE_LEN = 2,
213 
215  GE_ADW_SE_POSITION_LEN = 4,
216 
218  GE_ADW_SE_ENTRY_LEN = 4,
219 
221  GE_ADW_SE_ANREF_LEN = 3,
222 
224  GE_ADW_SE_CONTRAST_LEN = 2,
225 
228  GE_ADW_SE_START_RAS_LEN = 1,
229 
231  GE_ADW_SE_START_LOC_LEN = 4,
232 
235  GE_ADW_SE_END_RAS_LEN = 1,
236 
238  GE_ADW_SE_END_LOC_LEN = 4,
239 
242  GE_ADW_SE_NUMIMAGES_LEN = 4,
243 
249  GE_ADW_IM_SUID_LEN = 4,
250 
252  GE_ADW_IM_UNIQ_LEN = 2,
253 
255  GE_ADW_IM_EXNO_LEN = 2,
256 
258  GE_ADW_IM_SENO_LEN = 2,
259 
261  GE_ADW_IM_NO_LEN = 2,
262 
265  GE_ADW_IM_DATETIME_LEN = 4,
266 
269  GE_ADW_IM_ACTUAL_DT_LEN = 4,
270 
272  GE_ADW_IM_SCTIME_LEN = 4,
273 
275  GE_ADW_IM_SLTHICK_LEN = 4,
276 
279  GE_ADW_IM_IMATRIX_X_LEN = 2,
280 
283  GE_ADW_IM_IMATRIX_Y_LEN = 2,
284 
286  GE_ADW_IM_DFOV_LEN = 4,
287 
290  GE_ADW_IM_DFOV_RECT_LEN = 4,
291 
293  GE_ADW_IM_DIM_X_LEN = 4,
294 
296  GE_ADW_IM_DIM_Y_LEN = 4,
297 
299  GE_ADW_IM_PIXSIZE_X_LEN = 4,
300 
302  GE_ADW_IM_PIXSIZE_Y_LEN = 4,
303 
305  GE_ADW_IM_CONTMODE_LEN = 2,
306 
308  GE_ADW_IM_PLANE_LEN = 2,
309 
312  GE_ADW_IM_SCANSPACING_LEN = 4,
313 
315  GE_ADW_IM_LOC_RAS_LEN = 1,
316 
318  GE_ADW_IM_LOC_LEN = 4,
319 
322  GE_ADW_IM_ULHC_R_LEN = 4,
323 
326  GE_ADW_IM_ULHC_A_LEN = 4,
327 
330  GE_ADW_IM_ULHC_S_LEN = 4,
331 
334  GE_ADW_IM_URHC_R_LEN = 4,
335 
338  GE_ADW_IM_URHC_A_LEN = 4,
339 
342  GE_ADW_IM_URHC_S_LEN = 4,
343 
346  GE_ADW_IM_BRHC_R_LEN = 4,
347 
350  GE_ADW_IM_BRHC_A_LEN = 4,
351 
354  GE_ADW_IM_BRHC_S_LEN = 4,
355 
357  GE_ADW_IM_TR_LEN = 4,
358 
360  GE_ADW_IM_TI_LEN = 4,
361 
363  GE_ADW_IM_TE_LEN = 4,
364 
366  GE_ADW_IM_NUMECHO_LEN = 2,
367 
369  GE_ADW_IM_ECHONUM_LEN = 2,
370 
372  GE_ADW_IM_NEX_LEN = 4,
373 
375  GE_ADW_IM_CONTIG_LEN = 2,
376 
378  GE_ADW_IM_HRTRATE_LEN = 2,
379 
381  GE_ADW_IM_TDEL_LEN = 4,
382 
385  GE_ADW_IM_XMTGAIN_LEN = 2,
386 
389  GE_ADW_IM_MR_FLIP_LEN = 2,
390 
393  GE_ADW_IM_CPHASE_LEN = 2,
394 
396  GE_ADW_IM_SWAPPF_LEN = 2,
397 
399  GE_ADW_IM_OBPLANE_LEN = 4,
400 
402  GE_ADW_IM_XMTFREQ_LEN = 4,
403 
405  GE_ADW_IM_PRESCAN_R1_LEN = 2,
406 
408  GE_ADW_IM_PRESCAN_R2_LEN = 2,
409 
411  GE_ADW_IM_IMODE_LEN = 2,
412 
414  GE_ADW_IM_IOPT_LEN = 4,
415 
417  GE_ADW_IM_PSEQ_LEN = 2,
418 
420  GE_ADW_IM_PSDNAME_LEN = 33,
421 
423  GE_ADW_IM_CTYP_LEN = 2,
424 
426  GE_ADW_IM_CNAME_LEN = 17,
427 
430  GE_ADW_IM_SUPP_TECH_LEN = 2,
431 
433  GE_ADW_IM_VBW_LEN = 4,
434 
437  GE_ADW_IM_SLQUANT_LEN = 2,
438 
440  GE_ADW_IM_USER0_LEN = 4,
441 
443  GE_ADW_IM_USER1_LEN = 4,
444 
446  GE_ADW_IM_USER2_LEN = 4,
447 
449  GE_ADW_IM_USER3_LEN = 4,
450 
452  GE_ADW_IM_USER4_LEN = 4,
453 
455  GE_ADW_IM_USER5_LEN = 4,
456 
458  GE_ADW_IM_USER6_LEN = 4,
459 
461  GE_ADW_IM_USER7_LEN = 4,
462 
464  GE_ADW_IM_USER8_LEN = 4,
465 
467  GE_ADW_IM_USER9_LEN = 4,
468 
470  GE_ADW_IM_USER10_LEN = 4,
471 
473  GE_ADW_IM_USER11_LEN = 4,
474 
476  GE_ADW_IM_USER12_LEN = 4,
477 
479  GE_ADW_IM_USER13_LEN = 4,
480 
482  GE_ADW_IM_USER14_LEN = 4,
483 
485  GE_ADW_IM_USER15_LEN = 4,
486 
488  GE_ADW_IM_USER16_LEN = 4,
489 
491  GE_ADW_IM_USER17_LEN = 4,
492 
494  GE_ADW_IM_USER18_LEN = 4,
495 
497  GE_ADW_IM_USER19_LEN = 4,
498 
500  GE_ADW_IM_USER20_LEN = 4,
501 
503  GE_ADW_IM_USER21_LEN = 4,
504 
506  GE_ADW_IM_USER22_LEN = 4,
507 
509  GE_ADW_IM_USER23_LEN = 4,
510 
512  GE_ADW_IM_USER24_LEN = 4,
513 
515  GE_ADW_IM_SATBITS_LEN = 2,
516 
519  GE_ADW_IM_SCIC_LEN = 2,
520 
522  GE_ADW_IM_FLAX_LEN = 2,
523 
525  GE_ADW_IM_VENC_LEN = 2,
526 
528  GE_ADW_IM_THK_DISCLMR_LEN = 2,
529 
531  GE_ADW_IM_VAS_COLLAPSE_LEN = 2,
532 
534  GE_ADW_IM_X_AXIS_ROT_LEN = 4,
535 
537  GE_ADW_IM_Y_AXIS_ROT_LEN = 4,
538 
540  GE_ADW_IM_Z_AXIS_ROT_LEN = 4,
541 
543  GE_ADW_IM_ECHO_TRN_LEN = 2,
544 
546  GE_ADW_IM_FRAC_ECHO_LEN = 2,
547 
549  GE_ADW_IM_PREP_PULSE_LEN = 2,
550 
553  GE_ADW_IM_CPHASENUM_LEN = 2,
554 
556  GE_ADW_IM_VAR_ECHO_LEN = 2,
557 
559  GE_ADW_IM_FREQ_DIR_LEN = 2,
560 
562  GE_ADW_IM_VMODE_LEN = 2,
563 
566  GE_ADW_VARIABLE_HDR_LENGTH_LEN = 4,
567 
570  };
571 };
572 } // end namespace itk
573 
574 #endif // itkAnalyzeImageIO_h
Light weight base class for most itk classes.
IPLCommonImageIO Superclass
GEAdwImageIO Self
Class that defines how to read GE4 file format.
SmartPointer< Self > Pointer
Class that defines how to read GEAdw file format.
This file was written as a modification to the itkMetaImageIO as a new method for reading in files fr...
Base class for most ITK classes.
Definition: itkObject.h:57