GDCM
2.2.3
|
00001 /*========================================================================= 00002 00003 Program: GDCM (Grassroots DICOM). A DICOM library 00004 00005 Copyright (c) 2006-2011 Mathieu Malaterre 00006 All rights reserved. 00007 See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html for details. 00008 00009 This software is distributed WITHOUT ANY WARRANTY; without even 00010 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00011 PURPOSE. See the above copyright notice for more information. 00012 00013 =========================================================================*/ 00014 #ifndef GDCMSPACING_H 00015 #define GDCMSPACING_H 00016 00017 #include "gdcmTypes.h" 00018 #include "gdcmAttribute.h" 00019 00020 namespace gdcm 00021 { 00085 class GDCM_EXPORT Spacing 00086 { 00087 public : 00088 Spacing(); 00089 ~Spacing(); 00090 00091 // Here are the list of spacing we support: 00092 // (0018,0088) DS [1.500000] # 8,1 Spacing Between Slices 00093 // (0018,1164) DS [0.5\0.5 ] # 8,2 Imager Pixel Spacing 00094 // (0018,2010) DS [0.664062\0.664062 ] # 18,2 Nominal Scanned Pixel Spacing 00095 // (0018,7022) DS [0.125\0.125 ] # 12,2 Detector Element Spacing 00096 // (0028,0030) DS [0.25\0.25 ] # 10,2 Pixel Spacing 00097 // > (0028,0a02) CS [FIDUCIAL] # 8,1 Pixel Spacing Calibration Type 00098 // > (0028,0a04) LO [Used fiducial ] # 14,1 Pixel Spacing Calibration Description 00099 // (0028,0034) IS [4\3 ] # 4,2 Pixel Aspect Ratio 00100 // (3002,0011) DS [0.8\0.8 ] # 8,2 Image Plane Pixel Spacing 00101 00102 // Here is the list of Spacing we do not support: 00103 // <entry group="0018" element="7041" vr="LT" vm="1" name="Grid Spacing Material"/> 00104 // <entry group="0018" element="9030" vr="FD" vm="1" name="Tag Spacing First Dimension"/> 00105 // <entry group="0018" element="9218" vr="FD" vm="1" name="Tag Spacing Second Dimension"/> 00106 // <entry group="0018" element="9322" vr="FD" vm="2" name="Reconstruction Pixel Spacing"/> 00107 // <entry group="0018" element="9404" vr="FL" vm="2" name="Object Pixel Spacing in Center of Beam"/> 00108 // <entry group="0040" element="08d8" vr="SQ" vm="1" name="Pixel Spacing Sequence"/> 00109 // <entry group="0070" element="0101" vr="DS" vm="2" name="Presentation Pixel Spacing"/> 00110 // <entry group="2010" element="0376" vr="DS" vm="2" name="Printer Pixel Spacing"/> 00111 // <entry group="300a" element="00e9" vr="DS" vm="2" name="Compensator Pixel Spacing"/> 00112 00113 typedef enum { 00114 DETECTOR = 0, // (0018,1164) Imager Pixel Spacing 00115 MAGNIFIED, // (0018,1114) (IHE Mammo) 00116 CALIBRATED, // (0028,0030) Pixel Spacing -> (0028,0a04) Pixel Spacing Calibration Description 00117 UNKNOWN 00118 } SpacingType; 00119 00120 static Attribute<0x28,0x34> ComputePixelAspectRatioFromPixelSpacing(const Attribute<0x28,0x30>& pixelspacing); 00121 }; 00122 } // end namespace gdcm 00123 //----------------------------------------------------------------------------- 00124 #endif //GDCMSPACING_H