gdcmSpacing.h
Go to the documentation of this file.
/*=========================================================================
Program: GDCM (Grassroots DICOM). A DICOM library
Copyright (c) 2006-2011 Mathieu Malaterre
All rights reserved.
See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
#ifndef GDCMSPACING_H
#define GDCMSPACING_H
#include "gdcmTypes.h"
#include "gdcmAttribute.h"
namespace gdcm
{
class GDCM_EXPORT Spacing
{
public :
Spacing();
~Spacing() = default;
// Here are the list of spacing we support:
// (0018,0088) DS [1.500000] # 8,1 Spacing Between Slices
// (0018,1164) DS [0.5\0.5 ] # 8,2 Imager Pixel Spacing
// (0018,2010) DS [0.664062\0.664062 ] # 18,2 Nominal Scanned Pixel Spacing
// (0018,7022) DS [0.125\0.125 ] # 12,2 Detector Element Spacing
// (0028,0030) DS [0.25\0.25 ] # 10,2 Pixel Spacing
// > (0028,0a02) CS [FIDUCIAL] # 8,1 Pixel Spacing Calibration Type
// > (0028,0a04) LO [Used fiducial ] # 14,1 Pixel Spacing Calibration Description
// (0028,0034) IS [4\3 ] # 4,2 Pixel Aspect Ratio
// (3002,0011) DS [0.8\0.8 ] # 8,2 Image Plane Pixel Spacing
// Here is the list of Spacing we do not support:
// <entry group="0018" element="7041" vr="LT" vm="1" name="Grid Spacing Material"/>
// <entry group="0018" element="9030" vr="FD" vm="1" name="Tag Spacing First Dimension"/>
// <entry group="0018" element="9218" vr="FD" vm="1" name="Tag Spacing Second Dimension"/>
// <entry group="0018" element="9322" vr="FD" vm="2" name="Reconstruction Pixel Spacing"/>
// <entry group="0018" element="9404" vr="FL" vm="2" name="Object Pixel Spacing in Center of Beam"/>
// <entry group="0040" element="08d8" vr="SQ" vm="1" name="Pixel Spacing Sequence"/>
// <entry group="0070" element="0101" vr="DS" vm="2" name="Presentation Pixel Spacing"/>
// <entry group="2010" element="0376" vr="DS" vm="2" name="Printer Pixel Spacing"/>
// <entry group="300a" element="00e9" vr="DS" vm="2" name="Compensator Pixel Spacing"/>
typedef enum {
DETECTOR = 0, // (0018,1164) Imager Pixel Spacing
MAGNIFIED, // (0018,1114) (IHE Mammo)
CALIBRATED, // (0028,0030) Pixel Spacing -> (0028,0a04) Pixel Spacing Calibration Description
UNKNOWN
} SpacingType;
static Attribute<0x28,0x34> ComputePixelAspectRatioFromPixelSpacing(const Attribute<0x28,0x30>& pixelspacing);
};
} // end namespace gdcm
//-----------------------------------------------------------------------------
#endif //GDCMSPACING_H
gdcm::Attribute
Attribute class This class use template metaprograming tricks to let the user know when the template ...
Definition gdcmAttribute.h:86
gdcm::Spacing::Spacing
Spacing()
gdcm::Spacing::ComputePixelAspectRatioFromPixelSpacing
static Attribute< 0x28, 0x34 > ComputePixelAspectRatioFromPixelSpacing(const Attribute< 0x28, 0x30 > &pixelspacing)
gdcm::Spacing::~Spacing
~Spacing()=default
gdcm::Spacing::MAGNIFIED
@ MAGNIFIED
Definition gdcmSpacing.h:115
gdcm::Spacing::UNKNOWN
@ UNKNOWN
Definition gdcmSpacing.h:117
gdcm::Spacing::DETECTOR
@ DETECTOR
Definition gdcmSpacing.h:114
gdcm::Spacing::CALIBRATED
@ CALIBRATED
Definition gdcmSpacing.h:116
gdcmAttribute.h
gdcmTypes.h
GDCM_EXPORT
#define GDCM_EXPORT
Definition gdcmWin32.h:34
gdcm
Definition gdcmASN1.h:21