Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::GDCMImageIO Class Reference
[Input and Output Filters]

ImageIO class for reading and writing DICOM v3 and ACR/NEMA images This class is only an adaptor to the gdcm library (currently gdcm 0.6.x is used):. More...

#include <itkGDCMImageIO.h>

Inheritance diagram for itk::GDCMImageIO:

Inheritance graph
[legend]
Collaboration diagram for itk::GDCMImageIO:

Collaboration graph
[legend]
List of all members.

Public Types

typedef GDCMImageIO Self
typedef ImageIOBase Superclass
typedef SmartPointer< SelfPointer

Public Member Functions

virtual const char * GetNameOfClass () const
virtual bool CanReadFile (const char *)
virtual void ReadImageInformation ()
virtual void Read (void *buffer)
virtual bool CanWriteFile (const char *)
virtual void WriteImageInformation ()
virtual void Write (const void *buffer)
virtual void SetMaxSizeLoadEntry (long _arg)
virtual double GetRescaleSlope ()
virtual double GetRescaleIntercept ()
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 ()
virtual void KeepOriginalUIDOn ()
virtual void KeepOriginalUIDOff ()
void GetPatientName (char *name)
void GetPatientID (char *id)
void GetPatientSex (char *sex)
void GetPatientAge (char *age)
void GetStudyID (char *id)
void GetPatientDOB (char *dob)
void GetStudyDescription (char *desc)
void GetBodyPart (char *part)
void GetNumberOfSeriesInStudy (char *series)
void GetNumberOfStudyRelatedSeries (char *series)
void GetStudyDate (char *date)
void GetModality (char *modality)
void GetManufacturer (char *manu)
void GetInstitution (char *ins)
void GetModel (char *model)
void GetScanOptions (char *options)

Static Public Member Functions

Pointer New ()
bool GetLabelFromTag (const std::string &tag, std::string &labelId)

Protected Member Functions

 GDCMImageIO ()
 ~GDCMImageIO ()
void PrintSelf (std::ostream &os, Indent indent) const
bool OpenGDCMFileForReading (std::ifstream &os, const char *filename)
bool OpenGDCMFileForWriting (std::ofstream &os, const char *filename)
void InternalReadImageInformation (std::ifstream &file)

Protected Attributes

double m_RescaleSlope
double m_RescaleIntercept
std::string m_UIDPrefix
std::string m_StudyInstanceUID
std::string m_SeriesInstanceUID
std::string m_FrameOfReferenceInstanceUID
bool m_KeepOriginalUID
long m_MaxSizeLoadEntry

Detailed Description

ImageIO class for reading and writing DICOM v3 and ACR/NEMA images This class is only an adaptor to the gdcm library (currently gdcm 0.6.x is used):.

http://creatis-www.insa-lyon.fr/Public/Gdcm/

CREATIS INSA - Lyon 2003-2005 http://www.creatis.insa-lyon.fr

Warning:
There are several restrictions to this current writer: * Basically you always need a DICOM as input to write a proper DICOM image file (As of 12/10/2004 this restriction is solved in GDCM CVS repository) * Eventhough during the writing process you pass in a DICOM file as input The output file may not contains ALL DICOM field from the input file. In particular:

Definition at line 53 of file itkGDCMImageIO.h.


Member Typedef Documentation

typedef SmartPointer<Self> itk::GDCMImageIO::Pointer
 

Reimplemented from itk::ImageIOBase.

Reimplemented in itk::DicomImageIO.

Definition at line 59 of file itkGDCMImageIO.h.

typedef GDCMImageIO itk::GDCMImageIO::Self
 

Standard class typedefs.

Reimplemented from itk::ImageIOBase.

Reimplemented in itk::DicomImageIO.

Definition at line 57 of file itkGDCMImageIO.h.

typedef ImageIOBase itk::GDCMImageIO::Superclass
 

Reimplemented from itk::ImageIOBase.

Reimplemented in itk::DicomImageIO.

Definition at line 58 of file itkGDCMImageIO.h.


Constructor & Destructor Documentation

itk::GDCMImageIO::GDCMImageIO  )  [protected]
 

itk::GDCMImageIO::~GDCMImageIO  )  [protected]
 


Member Function Documentation

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.

void itk::GDCMImageIO::GetBodyPart char *  part  ) 
 

Convenience methods to query patient information and scanner information. These methods are here for compatibility with the DICOMImageIO2 class.

virtual const char* itk::GDCMImageIO::GetFrameOfReferenceInstanceUID  )  const [virtual]
 

Access the generated DICOM UID's.

void itk::GDCMImageIO::GetInstitution char *  ins  ) 
 

Convenience methods to query patient information and scanner information. These methods are here for compatibility with the DICOMImageIO2 class.

virtual bool itk::GDCMImageIO::GetKeepOriginalUID  )  [virtual]
 

Preserve the original DICOM UID of the input files

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.

void itk::GDCMImageIO::GetManufacturer char *  manu  ) 
 

Convenience methods to query patient information and scanner information. These methods are here for compatibility with the DICOMImageIO2 class.

void itk::GDCMImageIO::GetModality char *  modality  ) 
 

Convenience methods to query patient information and scanner information. These methods are here for compatibility with the DICOMImageIO2 class.

void itk::GDCMImageIO::GetModel char *  model  ) 
 

Convenience methods to query patient information and scanner information. These methods are here for compatibility with the DICOMImageIO2 class.

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  ) 
 

Convenience methods to query patient information and scanner information. These methods are here for compatibility with the DICOMImageIO2 class.

void itk::GDCMImageIO::GetNumberOfStudyRelatedSeries char *  series  ) 
 

Convenience methods to query patient information and scanner information. These methods are here for compatibility with the DICOMImageIO2 class.

void itk::GDCMImageIO::GetPatientAge char *  age  ) 
 

Convenience methods to query patient information and scanner information. These methods are here for compatibility with the DICOMImageIO2 class.

void itk::GDCMImageIO::GetPatientDOB char *  dob  ) 
 

Convenience methods to query patient information and scanner information. These methods are here for compatibility with the DICOMImageIO2 class.

void itk::GDCMImageIO::GetPatientID char *  id  ) 
 

Convenience methods to query patient information and scanner information. These methods are here for compatibility with the DICOMImageIO2 class.

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.

void itk::GDCMImageIO::GetPatientSex char *  sex  ) 
 

Convenience methods to query patient information and scanner information. These methods are here for compatibility with the DICOMImageIO2 class.

virtual double itk::GDCMImageIO::GetRescaleIntercept  )  [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  )  [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  ) 
 

Convenience methods to query patient information and scanner information. These methods are here for compatibility with the DICOMImageIO2 class.

virtual const char* itk::GDCMImageIO::GetSeriesInstanceUID  )  const [virtual]
 

Access the generated DICOM UID's.

void itk::GDCMImageIO::GetStudyDate char *  date  ) 
 

Convenience methods to query patient information and scanner information. These methods are here for compatibility with the DICOMImageIO2 class.

void itk::GDCMImageIO::GetStudyDescription char *  desc  ) 
 

Convenience methods to query patient information and scanner information. These methods are here for compatibility with the DICOMImageIO2 class.

void itk::GDCMImageIO::GetStudyID char *  id  ) 
 

Convenience methods to query patient information and scanner information. These methods are here for compatibility with the DICOMImageIO2 class.

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.

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

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::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::SetKeepOriginalUID bool  _arg  )  [virtual]
 

Preserve the original DICOM UID of the input files

virtual void itk::GDCMImageIO::SetMaxSizeLoadEntry long  _arg  )  [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

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.


Member Data Documentation

std::string itk::GDCMImageIO::m_FrameOfReferenceInstanceUID [protected]
 

Definition at line 174 of file itkGDCMImageIO.h.

bool itk::GDCMImageIO::m_KeepOriginalUID [protected]
 

Definition at line 175 of file itkGDCMImageIO.h.

long itk::GDCMImageIO::m_MaxSizeLoadEntry [protected]
 

Definition at line 176 of file itkGDCMImageIO.h.

double itk::GDCMImageIO::m_RescaleIntercept [protected]
 

Definition at line 169 of file itkGDCMImageIO.h.

double itk::GDCMImageIO::m_RescaleSlope [protected]
 

Definition at line 168 of file itkGDCMImageIO.h.

std::string itk::GDCMImageIO::m_SeriesInstanceUID [protected]
 

Definition at line 173 of file itkGDCMImageIO.h.

std::string itk::GDCMImageIO::m_StudyInstanceUID [protected]
 

Definition at line 172 of file itkGDCMImageIO.h.

std::string itk::GDCMImageIO::m_UIDPrefix [protected]
 

Definition at line 171 of file itkGDCMImageIO.h.


The documentation for this class was generated from the following file:
Generated at Thu May 25 01:00:33 2006 for ITK by doxygen 1.3.5 written by Dimitri van Heesch, © 1997-2000