28 #ifndef itkGDCMImageIO_h
29 #define itkGDCMImageIO_h
33 #include "ITKIOGDCMExport.h"
38 #if !defined(ITK_LEGACY_REMOVE)
39 # define ITKIO_DEPRECATED_GDCM1_API
65 extern ITKIOGDCM_EXPORT std::ostream &
107 class InternalHeader;
130 CanReadFile(
const char *)
override;
134 ReadImageInformation()
override;
138 Read(
void * pointer)
override;
152 CanWriteFile(
const char *)
override;
157 WriteImageInformation()
override;
162 Write(
const void * buffer)
override;
165 itkGetConstMacro(RescaleSlope,
double);
166 itkGetConstMacro(RescaleIntercept,
double);
172 itkGetStringMacro(UIDPrefix);
173 itkSetStringMacro(UIDPrefix);
177 itkGetStringMacro(StudyInstanceUID);
178 itkGetStringMacro(SeriesInstanceUID);
179 itkGetStringMacro(FrameOfReferenceInstanceUID);
183 itkSetMacro(KeepOriginalUID,
bool);
184 itkGetConstMacro(KeepOriginalUID,
bool);
185 itkBooleanMacro(KeepOriginalUID);
190 itkSetMacro(LoadPrivateTags,
bool);
191 itkGetConstMacro(LoadPrivateTags,
bool);
192 itkBooleanMacro(LoadPrivateTags);
197 itkSetMacro(ReadYBRtoRGB,
bool);
198 itkGetConstMacro(ReadYBRtoRGB,
bool);
199 itkBooleanMacro(ReadYBRtoRGB);
202 #if defined(ITKIO_DEPRECATED_GDCM1_API)
209 GetPatientName(
char * name,
size_t len = 512);
212 GetPatientID(
char * name,
size_t len = 512);
215 GetPatientSex(
char * name,
size_t len = 512);
218 GetPatientAge(
char * name,
size_t len = 512);
221 GetStudyID(
char * name,
size_t len = 512);
224 GetPatientDOB(
char * name,
size_t len = 512);
227 GetStudyDescription(
char * name,
size_t len = 512);
230 GetBodyPart(
char * name,
size_t len = 512);
233 GetNumberOfSeriesInStudy(
char * name,
size_t len = 512);
236 GetNumberOfStudyRelatedSeries(
char * name,
size_t len = 512);
239 GetStudyDate(
char * name,
size_t len = 512);
242 GetModality(
char * name,
size_t len = 512);
245 GetManufacturer(
char * name,
size_t len = 512);
248 GetInstitution(
char * name,
size_t len = 512);
251 GetModel(
char * name,
size_t len = 512);
254 GetScanOptions(
char * name,
size_t len = 512);
260 GetValueFromTag(
const std::string & tag, std::string & value);
269 GetLabelFromTag(
const std::string & tag, std::string & labelId);
271 #if defined(ITKIO_DEPRECATED_GDCM1_API)
279 SetMaxSizeLoadEntry(
const long)
287 SetLoadSequences(
const bool)
290 GetLoadSequences()
const
310 SetLoadSequencesDefault(
bool)
313 LoadSequencesDefaultOn()
316 LoadSequencesDefaultOff()
319 GetLoadSequencesDefault()
333 SetLoadPrivateTagsDefault(
bool)
336 LoadPrivateTagsDefaultOn()
339 LoadPrivateTagsDefaultOff()
342 GetLoadPrivateTagsDefault()
351 #if !defined(ITK_LEGACY_REMOVE)
364 InternalSetCompressor(
const std::string & _compressor)
override;
370 PrintSelf(std::ostream & os,
Indent indent)
const override;
373 InternalReadImageInformation();
375 double m_RescaleSlope{};
377 double m_RescaleIntercept{};
379 std::string m_UIDPrefix{};
381 std::string m_StudyInstanceUID{};
383 std::string m_SeriesInstanceUID{};
385 std::string m_FrameOfReferenceInstanceUID{};
387 bool m_KeepOriginalUID{};
389 bool m_LoadPrivateTags{};
391 bool m_ReadYBRtoRGB{};
394 #if defined(ITKIO_DEPRECATED_GDCM1_API)
395 std::string m_PatientName{};
397 std::string m_PatientID{};
399 std::string m_PatientDOB{};
401 std::string m_StudyID{};
403 std::string m_StudyDescription{};
405 std::string m_BodyPart{};
407 std::string m_NumberOfSeriesInStudy{};
409 std::string m_NumberOfStudyRelatedSeries{};
411 std::string m_PatientSex{};
413 std::string m_PatientAge{};
415 std::string m_StudyDate{};
417 std::string m_Modality{};
419 std::string m_Manufacturer{};
421 std::string m_Institution{};
423 std::string m_Model{};
425 std::string m_ScanOptions{};
428 unsigned int m_GlobalNumberOfDimensions{};
436 InternalHeader * m_DICOMHeader{};
441 #endif // itkGDCMImageIO_h