28 #ifndef itkGDCMImageIO_h
29 #define itkGDCMImageIO_h
31 #define ITKIO_DEPRECATED_GDCM1_API
34 #include "ITKIOGDCMExport.h"
91 virtual bool CanReadFile(
const char *) ITK_OVERRIDE;
94 virtual
void ReadImageInformation() ITK_OVERRIDE;
97 virtual
void Read(
void *buffer) ITK_OVERRIDE;
103 itkSetEnumMacro(InternalComponentType, IOComponentType);
110 virtual
bool CanWriteFile(const
char *) ITK_OVERRIDE;
114 virtual
void WriteImageInformation() ITK_OVERRIDE;
118 virtual
void Write(const
void *buffer) ITK_OVERRIDE;
123 itkGetConstMacro(RescaleSlope,
double);
124 itkGetConstMacro(RescaleIntercept,
double);
131 itkGetStringMacro(UIDPrefix);
132 itkSetStringMacro(UIDPrefix);
136 itkGetStringMacro(StudyInstanceUID);
137 itkGetStringMacro(SeriesInstanceUID);
138 itkGetStringMacro(FrameOfReferenceInstanceUID);
143 itkSetMacro(KeepOriginalUID,
bool);
144 itkGetConstMacro(KeepOriginalUID,
bool);
145 itkBooleanMacro(KeepOriginalUID);
151 itkSetMacro(LoadPrivateTags,
bool);
152 itkGetConstMacro(LoadPrivateTags,
bool);
153 itkBooleanMacro(LoadPrivateTags);
156 #if defined( ITKIO_DEPRECATED_GDCM1_API )
163 void GetPatientName(
char *name);
165 void GetPatientID(
char *
id);
167 void GetPatientSex(
char *sex);
169 void GetPatientAge(
char *age);
171 void GetStudyID(
char *
id);
173 void GetPatientDOB(
char *dob);
175 void GetStudyDescription(
char *desc);
177 void GetBodyPart(
char *part);
179 void GetNumberOfSeriesInStudy(
char *series);
181 void GetNumberOfStudyRelatedSeries(
char *series);
183 void GetStudyDate(
char *date);
185 void GetModality(
char *modality);
187 void GetManufacturer(
char *manu);
189 void GetInstitution(
char *ins);
191 void GetModel(
char *model);
193 void GetScanOptions(
char *options);
199 bool GetValueFromTag(
const std::string & tag, std::string & value);
207 static bool GetLabelFromTag(
const std::string & tag,
208 std::string & labelId);
210 #if defined( ITKIO_DEPRECATED_GDCM1_API )
261 typedef enum { JPEG = 0, JPEG2000, JPEGLS, RLE } TCompressionType;
262 itkSetEnumMacro(CompressionType, TCompressionType);
263 itkGetEnumMacro(CompressionType, TCompressionType);
269 virtual void PrintSelf(std::ostream & os,
Indent indent)
const ITK_OVERRIDE;
271 void InternalReadImageInformation();
287 void operator=(const
Self &) ITK_DELETE_FUNCTION;
289 #if defined( ITKIO_DEPRECATED_GDCM1_API )
318 #endif // itkGDCMImageIO_h
std::string m_FrameOfReferenceInstanceUID
virtual void SetLoadSequences(const bool)
Light weight base class for most itk classes.
std::string m_ScanOptions
Abstract superclass defines image IO interface.
static bool GetLoadSequencesDefault()
double m_RescaleIntercept
ImageIO class for reading and writing DICOM V3.0 and ACR/NEMA 1&2 uncompressed images. This class is only an adaptor to the GDCM library. Currently GDCM 2.4.6 (git SHA 1efe9e28) is used.
static void SetLoadSequencesDefault(bool)
std::string m_PatientName
static void LoadPrivateTagsDefaultOn()
unsigned int m_GlobalNumberOfDimensions
virtual void LoadSequencesOff()
std::string m_NumberOfSeriesInStudy
SmartPointer< Self > Pointer
std::string m_StudyDescription
static bool GetLoadPrivateTagsDefault()
virtual void LoadSequencesOn()
ImageIOBase::IOComponentType m_InternalComponentType
std::string m_Manufacturer
static void LoadSequencesDefaultOn()
TCompressionType m_CompressionType
std::string m_StudyInstanceUID
static void LoadSequencesDefaultOff()
std::string m_SeriesInstanceUID
std::string m_NumberOfStudyRelatedSeries
Control indentation during Print() invocation.
std::string m_Institution
InternalHeader * m_DICOMHeader
virtual bool GetLoadSequences() const
Base class for most ITK classes.
static void LoadPrivateTagsDefaultOff()
static void SetLoadPrivateTagsDefault(bool)
virtual void SetMaxSizeLoadEntry(const long)