ITK
4.1.0
Insight Segmentation and Registration Toolkit
|
#include <itkGDCMImageIO.h>
Public Types | |
typedef SmartPointer< Self > | Pointer |
typedef GDCMImageIO | Self |
typedef ImageIOBase | Superclass |
Public Member Functions | |
virtual bool | CanReadFile (const char *) |
virtual bool | CanWriteFile (const char *) |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
void | GetBodyPart (char *part) |
void | GetInstitution (char *ins) |
virtual IOComponentType | GetInternalComponentType () const |
void | GetManufacturer (char *manu) |
void | GetModality (char *modality) |
void | GetModel (char *model) |
virtual const char * | GetNameOfClass () const |
void | GetNumberOfSeriesInStudy (char *series) |
void | GetNumberOfStudyRelatedSeries (char *series) |
void | GetPatientAge (char *age) |
void | GetPatientDOB (char *dob) |
void | GetPatientID (char *id) |
void | GetPatientName (char *name) |
void | GetPatientSex (char *sex) |
void | GetScanOptions (char *options) |
void | GetStudyDate (char *date) |
void | GetStudyDescription (char *desc) |
void | GetStudyID (char *id) |
bool | GetValueFromTag (const std::string &tag, std::string &value) |
virtual void | Read (void *buffer) |
virtual void | ReadImageInformation () |
virtual void | SetMaxSizeLoadEntry (const long) |
virtual void | Write (const void *buffer) |
virtual void | WriteImageInformation () |
virtual double | GetRescaleSlope () const |
virtual double | GetRescaleIntercept () const |
virtual const char * | GetUIDPrefix () const |
virtual void | SetUIDPrefix (const char *_arg) |
virtual const char * | GetStudyInstanceUID () const |
virtual const char * | GetSeriesInstanceUID () const |
virtual const char * | GetFrameOfReferenceInstanceUID () const |
virtual void | SetKeepOriginalUID (bool _arg) |
virtual bool | GetKeepOriginalUID () const |
virtual void | KeepOriginalUIDOn () |
virtual void | KeepOriginalUIDOff () |
virtual void | SetLoadSequences (const bool) |
virtual bool | GetLoadSequences () const |
virtual void | LoadSequencesOn () |
virtual void | LoadSequencesOff () |
virtual void | SetLoadPrivateTags (const bool) |
virtual bool | GetLoadPrivateTags () const |
virtual void | LoadPrivateTagsOn () |
virtual void | LoadPrivateTagsOff () |
Static Public Member Functions | |
static bool | GetLabelFromTag (const std::string &tag, std::string &labelId) |
static Pointer | New () |
static void | SetLoadSequencesDefault (bool) |
static void | LoadSequencesDefaultOn () |
static void | LoadSequencesDefaultOff () |
static bool | GetLoadSequencesDefault () |
static void | SetLoadPrivateTagsDefault (bool) |
static void | LoadPrivateTagsDefaultOn () |
static void | LoadPrivateTagsDefaultOff () |
static bool | GetLoadPrivateTagsDefault () |
Protected Member Functions | |
GDCMImageIO () | |
void | InternalReadImageInformation (std::ifstream &file) |
bool | OpenGDCMFileForReading (std::ifstream &os, const char *filename) |
bool | OpenGDCMFileForWriting (std::ofstream &os, const char *filename) |
void | PrintSelf (std::ostream &os, Indent indent) const |
~GDCMImageIO () | |
Protected Attributes | |
std::string | m_FrameOfReferenceInstanceUID |
bool | m_KeepOriginalUID |
double | m_RescaleIntercept |
double | m_RescaleSlope |
std::string | m_SeriesInstanceUID |
std::string | m_StudyInstanceUID |
std::string | m_UIDPrefix |
Private Member Functions | |
GDCMImageIO (const Self &) | |
void | operator= (const Self &) |
Private Attributes | |
std::string | m_BodyPart |
TCompressionType | m_CompressionType |
InternalHeader * | m_DICOMHeader |
unsigned int | m_GlobalNumberOfDimensions |
std::string | m_Institution |
ImageIOBase::IOComponentType | m_InternalComponentType |
std::string | m_Manufacturer |
std::string | m_Modality |
std::string | m_Model |
std::string | m_NumberOfSeriesInStudy |
std::string | m_NumberOfStudyRelatedSeries |
std::string | m_PatientAge |
std::string | m_PatientDOB |
std::string | m_PatientID |
std::string | m_PatientName |
std::string | m_PatientSex |
std::string | m_ScanOptions |
std::string | m_StudyDate |
std::string | m_StudyDescription |
std::string | m_StudyID |
enum | TCompressionType { JPEG = 0, JPEG2000, JPEGLS, RLE } |
virtual void | SetCompressionType (const TCompressionType _arg) |
virtual TCompressionType | GetCompressionType () const |
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 1.2.x is used by default):
GDCM 1.2 can be found at: http://www.creatis.insa-lyon.fr/software/public/Gdcm/
CREATIS INSA - Lyon 2003-2008 http://www.creatis.insa-lyon.fr/site/en
Using the CMake variable: ITK_USE_SYSTEM_GDCM it is now possible to use a system installed GDCM 2.x release. GDCM 2.x is now being developped on sourceforge.net :
Documentation:
Definition at line 86 of file itkGDCMImageIO.h.
typedef SmartPointer< Self > itk::GDCMImageIO::Pointer |
Reimplemented from itk::ImageIOBase.
Reimplemented in itk::DicomImageIO.
Definition at line 92 of file itkGDCMImageIO.h.
typedef GDCMImageIO itk::GDCMImageIO::Self |
Standard class typedefs.
Reimplemented from itk::ImageIOBase.
Reimplemented in itk::DicomImageIO.
Definition at line 90 of file itkGDCMImageIO.h.
Reimplemented from itk::ImageIOBase.
Reimplemented in itk::DicomImageIO.
Definition at line 91 of file itkGDCMImageIO.h.
Set/Get a compression type to use.
Definition at line 277 of file itkGDCMImageIO.h.
itk::GDCMImageIO::GDCMImageIO | ( | ) | [protected] |
itk::GDCMImageIO::~GDCMImageIO | ( | ) | [protected] |
itk::GDCMImageIO::GDCMImageIO | ( | const Self & | ) | [private] |
virtual bool itk::GDCMImageIO::CanReadFile | ( | const char * | ) | [virtual] |
Determine the file type. Returns true if this ImageIO can read the file specified.
Implements itk::ImageIOBase.
virtual bool itk::GDCMImageIO::CanWriteFile | ( | const char * | ) | [virtual] |
Determine the file type. Returns true if this ImageIO can write the file specified. GDCM triggers on ".dcm" and ".dicom".
Implements itk::ImageIOBase.
virtual::itk::LightObject::Pointer itk::GDCMImageIO::CreateAnother | ( | void | ) | const [virtual] |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::LightProcessObject.
Reimplemented in itk::DicomImageIO.
void itk::GDCMImageIO::GetBodyPart | ( | char * | part | ) |
virtual TCompressionType itk::GDCMImageIO::GetCompressionType | ( | ) | const [virtual] |
Set/Get a compression type to use.
virtual const char* itk::GDCMImageIO::GetFrameOfReferenceInstanceUID | ( | ) | const [virtual] |
Access the generated DICOM UID's.
void itk::GDCMImageIO::GetInstitution | ( | char * | ins | ) |
virtual IOComponentType itk::GDCMImageIO::GetInternalComponentType | ( | ) | const [virtual] |
Get the original component type of the image. This differs from ComponentType which may change as a function of rescale slope and intercept.
virtual bool itk::GDCMImageIO::GetKeepOriginalUID | ( | ) | const [virtual] |
Preserve the original DICOM UID of the input files
static bool itk::GDCMImageIO::GetLabelFromTag | ( | const std::string & | tag, |
std::string & | labelId | ||
) | [static] |
Method for consulting the DICOM dictionary and recovering the text description of a field using its numeric tag represented as a string. If the tagkey is not found in the dictionary then this static method return false and the value "Unknown " in the labelId. If the tagkey is found then this static method returns true and the actual string descriptor of the tagkey is returned in the variable labelId.
virtual bool itk::GDCMImageIO::GetLoadPrivateTags | ( | ) | const [inline, virtual] |
Parse any private tags in the DICOM file. Defaults to the value of LoadPrivateTagsDefault. Loading DICOM files is faster when private tags are not needed.
Definition at line 242 of file itkGDCMImageIO.h.
static bool itk::GDCMImageIO::GetLoadPrivateTagsDefault | ( | ) | [inline, static] |
Global method to define the default value for LoadPrivateTags. When instances of GDCMImageIO are created, the ivar LoadPrivateTags is initialized to the value of LoadPrivateTagsDefault. This method is useful when relying on the IO factory mechanism to load images rather than specifying a particular ImageIO object on the readers. Default is false.
Definition at line 272 of file itkGDCMImageIO.h.
virtual bool itk::GDCMImageIO::GetLoadSequences | ( | ) | const [inline, virtual] |
Parse any sequences in the DICOM file. Defaults to the value of LoadSequencesDefault. Loading DICOM files is faster when sequences are not needed.
Definition at line 231 of file itkGDCMImageIO.h.
static bool itk::GDCMImageIO::GetLoadSequencesDefault | ( | ) | [inline, static] |
Global method to define the default value for LoadSequences. When instances of GDCMImageIO are created, the ivar LoadSequences is initialized to the value of LoadSequencesDefault. This method is useful when relying on the IO factory mechanism to load images rather than specifying a particular ImageIO object on the readers. Default is false.
Definition at line 258 of file itkGDCMImageIO.h.
void itk::GDCMImageIO::GetManufacturer | ( | char * | manu | ) |
void itk::GDCMImageIO::GetModality | ( | char * | modality | ) |
void itk::GDCMImageIO::GetModel | ( | char * | model | ) |
virtual const char* itk::GDCMImageIO::GetNameOfClass | ( | ) | const [virtual] |
Run-time type information (and related methods).
Reimplemented from itk::ImageIOBase.
Reimplemented in itk::DicomImageIO.
void itk::GDCMImageIO::GetNumberOfSeriesInStudy | ( | char * | series | ) |
void itk::GDCMImageIO::GetNumberOfStudyRelatedSeries | ( | char * | series | ) |
void itk::GDCMImageIO::GetPatientAge | ( | char * | age | ) |
void itk::GDCMImageIO::GetPatientDOB | ( | char * | dob | ) |
void itk::GDCMImageIO::GetPatientID | ( | char * | id | ) |
void itk::GDCMImageIO::GetPatientName | ( | char * | name | ) |
Convenience methods to query patient information and scanner information. These methods are here for compatibility with the DICOMImageIO2 class and as such should not be used in any new code. They rely on properly preallocated buffer, which is not a good practice. Instead user are encourage to use directly the GetValueFromTag function
void itk::GDCMImageIO::GetPatientSex | ( | char * | sex | ) |
virtual double itk::GDCMImageIO::GetRescaleIntercept | ( | ) | const [virtual] |
Macro to access Rescale Slope and Rescale Intercept. Which are needed to rescale properly image when needed. User then need to Always check those value when access value from the DICOM header
virtual double itk::GDCMImageIO::GetRescaleSlope | ( | ) | const [virtual] |
Macro to access Rescale Slope and Rescale Intercept. Which are needed to rescale properly image when needed. User then need to Always check those value when access value from the DICOM header
void itk::GDCMImageIO::GetScanOptions | ( | char * | options | ) |
virtual const char* itk::GDCMImageIO::GetSeriesInstanceUID | ( | ) | const [virtual] |
Access the generated DICOM UID's.
void itk::GDCMImageIO::GetStudyDate | ( | char * | date | ) |
void itk::GDCMImageIO::GetStudyDescription | ( | char * | desc | ) |
void itk::GDCMImageIO::GetStudyID | ( | char * | id | ) |
virtual const char* itk::GDCMImageIO::GetStudyInstanceUID | ( | ) | const [virtual] |
Access the generated DICOM UID's.
virtual const char* itk::GDCMImageIO::GetUIDPrefix | ( | ) | const [virtual] |
Macro to access the DICOM UID prefix. By default this is the ITK root id. This default can be overriden if the exam is for example part of an existing study.
bool itk::GDCMImageIO::GetValueFromTag | ( | const std::string & | tag, |
std::string & | value | ||
) |
More general method to retrieve an arbitrary DICOM value based on a DICOM Tag (eg "0123|4567"). WARNING: You need to use the lower case for hex 0x[a-f], for instance: "0020|000d" instead of "0020|000D" (the latter won't work)
void itk::GDCMImageIO::InternalReadImageInformation | ( | std::ifstream & | file | ) | [protected] |
virtual void itk::GDCMImageIO::KeepOriginalUIDOff | ( | ) | [virtual] |
Preserve the original DICOM UID of the input files
virtual void itk::GDCMImageIO::KeepOriginalUIDOn | ( | ) | [virtual] |
Preserve the original DICOM UID of the input files
static void itk::GDCMImageIO::LoadPrivateTagsDefaultOff | ( | ) | [inline, static] |
Global method to define the default value for LoadPrivateTags. When instances of GDCMImageIO are created, the ivar LoadPrivateTags is initialized to the value of LoadPrivateTagsDefault. This method is useful when relying on the IO factory mechanism to load images rather than specifying a particular ImageIO object on the readers. Default is false.
Definition at line 271 of file itkGDCMImageIO.h.
static void itk::GDCMImageIO::LoadPrivateTagsDefaultOn | ( | ) | [inline, static] |
Global method to define the default value for LoadPrivateTags. When instances of GDCMImageIO are created, the ivar LoadPrivateTags is initialized to the value of LoadPrivateTagsDefault. This method is useful when relying on the IO factory mechanism to load images rather than specifying a particular ImageIO object on the readers. Default is false.
Definition at line 270 of file itkGDCMImageIO.h.
virtual void itk::GDCMImageIO::LoadPrivateTagsOff | ( | ) | [inline, virtual] |
Parse any private tags in the DICOM file. Defaults to the value of LoadPrivateTagsDefault. Loading DICOM files is faster when private tags are not needed.
Definition at line 244 of file itkGDCMImageIO.h.
virtual void itk::GDCMImageIO::LoadPrivateTagsOn | ( | ) | [inline, virtual] |
Parse any private tags in the DICOM file. Defaults to the value of LoadPrivateTagsDefault. Loading DICOM files is faster when private tags are not needed.
Definition at line 243 of file itkGDCMImageIO.h.
static void itk::GDCMImageIO::LoadSequencesDefaultOff | ( | ) | [inline, static] |
Global method to define the default value for LoadSequences. When instances of GDCMImageIO are created, the ivar LoadSequences is initialized to the value of LoadSequencesDefault. This method is useful when relying on the IO factory mechanism to load images rather than specifying a particular ImageIO object on the readers. Default is false.
Definition at line 257 of file itkGDCMImageIO.h.
static void itk::GDCMImageIO::LoadSequencesDefaultOn | ( | ) | [inline, static] |
Global method to define the default value for LoadSequences. When instances of GDCMImageIO are created, the ivar LoadSequences is initialized to the value of LoadSequencesDefault. This method is useful when relying on the IO factory mechanism to load images rather than specifying a particular ImageIO object on the readers. Default is false.
Definition at line 256 of file itkGDCMImageIO.h.
virtual void itk::GDCMImageIO::LoadSequencesOff | ( | ) | [inline, virtual] |
Parse any sequences in the DICOM file. Defaults to the value of LoadSequencesDefault. Loading DICOM files is faster when sequences are not needed.
Definition at line 233 of file itkGDCMImageIO.h.
virtual void itk::GDCMImageIO::LoadSequencesOn | ( | ) | [inline, virtual] |
Parse any sequences in the DICOM file. Defaults to the value of LoadSequencesDefault. Loading DICOM files is faster when sequences are not needed.
Definition at line 232 of file itkGDCMImageIO.h.
static Pointer itk::GDCMImageIO::New | ( | ) | [static] |
Method for creation through the object factory.
Reimplemented from itk::LightProcessObject.
Reimplemented in itk::DicomImageIO.
bool itk::GDCMImageIO::OpenGDCMFileForReading | ( | std::ifstream & | os, |
const char * | filename | ||
) | [protected] |
bool itk::GDCMImageIO::OpenGDCMFileForWriting | ( | std::ofstream & | os, |
const char * | filename | ||
) | [protected] |
void itk::GDCMImageIO::operator= | ( | const Self & | ) | [private] |
This method causes the filter to generate its output.
Reimplemented from itk::ImageIOBase.
Reimplemented in itk::DicomImageIO.
void itk::GDCMImageIO::PrintSelf | ( | std::ostream & | os, |
Indent | indent | ||
) | const [protected, virtual] |
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from itk::ImageIOBase.
virtual void itk::GDCMImageIO::Read | ( | void * | buffer | ) | [virtual] |
Reads the data from disk into the memory buffer provided.
Implements itk::ImageIOBase.
virtual void itk::GDCMImageIO::ReadImageInformation | ( | ) | [virtual] |
Set the spacing and dimesion information for the current filename.
Implements itk::ImageIOBase.
virtual void itk::GDCMImageIO::SetCompressionType | ( | const TCompressionType | _arg | ) | [virtual] |
Set/Get a compression type to use.
virtual void itk::GDCMImageIO::SetKeepOriginalUID | ( | bool | _arg | ) | [virtual] |
Preserve the original DICOM UID of the input files
virtual void itk::GDCMImageIO::SetLoadPrivateTags | ( | const bool | ) | [inline, virtual] |
Parse any private tags in the DICOM file. Defaults to the value of LoadPrivateTagsDefault. Loading DICOM files is faster when private tags are not needed.
Definition at line 241 of file itkGDCMImageIO.h.
static void itk::GDCMImageIO::SetLoadPrivateTagsDefault | ( | bool | ) | [inline, static] |
Global method to define the default value for LoadPrivateTags. When instances of GDCMImageIO are created, the ivar LoadPrivateTags is initialized to the value of LoadPrivateTagsDefault. This method is useful when relying on the IO factory mechanism to load images rather than specifying a particular ImageIO object on the readers. Default is false.
Definition at line 269 of file itkGDCMImageIO.h.
virtual void itk::GDCMImageIO::SetLoadSequences | ( | const bool | ) | [inline, virtual] |
Parse any sequences in the DICOM file. Defaults to the value of LoadSequencesDefault. Loading DICOM files is faster when sequences are not needed.
Definition at line 230 of file itkGDCMImageIO.h.
static void itk::GDCMImageIO::SetLoadSequencesDefault | ( | bool | ) | [inline, static] |
Global method to define the default value for LoadSequences. When instances of GDCMImageIO are created, the ivar LoadSequences is initialized to the value of LoadSequencesDefault. This method is useful when relying on the IO factory mechanism to load images rather than specifying a particular ImageIO object on the readers. Default is false.
Definition at line 255 of file itkGDCMImageIO.h.
virtual void itk::GDCMImageIO::SetMaxSizeLoadEntry | ( | const long | ) | [inline, virtual] |
A DICOM file can contains multiple binary stream that can be very long For example an Overlay on the image. Most of the time user do not want to load this binary structure in memory since it can consume lot of memory. Therefore any field that is bigger than the default value 0xfff is discarded and just seek'd This method allow advanced user to force the reading of such field
Definition at line 223 of file itkGDCMImageIO.h.
virtual void itk::GDCMImageIO::SetUIDPrefix | ( | const char * | _arg | ) | [virtual] |
Macro to access the DICOM UID prefix. By default this is the ITK root id. This default can be overriden if the exam is for example part of an existing study.
virtual void itk::GDCMImageIO::Write | ( | const void * | buffer | ) | [virtual] |
Writes the data to disk from the memory buffer provided. Make sure that the IORegion has been set properly.
Implements itk::ImageIOBase.
virtual void itk::GDCMImageIO::WriteImageInformation | ( | ) | [virtual] |
Writes the spacing and dimentions of the image. Assumes SetFileName has been called with a valid file name.
Implements itk::ImageIOBase.
std::string itk::GDCMImageIO::m_BodyPart [private] |
Definition at line 312 of file itkGDCMImageIO.h.
Definition at line 328 of file itkGDCMImageIO.h.
InternalHeader* itk::GDCMImageIO::m_DICOMHeader [private] |
Definition at line 331 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_FrameOfReferenceInstanceUID [protected] |
Definition at line 299 of file itkGDCMImageIO.h.
unsigned int itk::GDCMImageIO::m_GlobalNumberOfDimensions [private] |
defines whether this image is a 2D out of a 2D image or a 2D out of a 3D image.
Definition at line 327 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_Institution [private] |
Definition at line 320 of file itkGDCMImageIO.h.
Definition at line 330 of file itkGDCMImageIO.h.
bool itk::GDCMImageIO::m_KeepOriginalUID [protected] |
Definition at line 301 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_Manufacturer [private] |
Definition at line 319 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_Modality [private] |
Definition at line 318 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_Model [private] |
Definition at line 321 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_NumberOfSeriesInStudy [private] |
Definition at line 313 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_NumberOfStudyRelatedSeries [private] |
Definition at line 314 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_PatientAge [private] |
Definition at line 316 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_PatientDOB [private] |
Definition at line 309 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_PatientID [private] |
Definition at line 308 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_PatientName [private] |
Definition at line 307 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_PatientSex [private] |
Definition at line 315 of file itkGDCMImageIO.h.
double itk::GDCMImageIO::m_RescaleIntercept [protected] |
Definition at line 294 of file itkGDCMImageIO.h.
double itk::GDCMImageIO::m_RescaleSlope [protected] |
Definition at line 293 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_ScanOptions [private] |
Definition at line 322 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_SeriesInstanceUID [protected] |
Definition at line 298 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_StudyDate [private] |
Definition at line 317 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_StudyDescription [private] |
Definition at line 311 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_StudyID [private] |
Definition at line 310 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_StudyInstanceUID [protected] |
Definition at line 297 of file itkGDCMImageIO.h.
std::string itk::GDCMImageIO::m_UIDPrefix [protected] |
Definition at line 296 of file itkGDCMImageIO.h.