ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
itk::MINC2ImageIO Class Reference

Class that defines how to read MINC2 file format. Note,like ITK, MINC2 is N dimensional and dimensions can be submitted in any arbitrary order. Here we make sure the dimensions are ordered as xspace, yspace, zspace, time and vector_dimension and so on or xfrequencey, yfrequency, zfrequency, tfrequency and vector_dimension and so on NOTE** This class only reads the regularly sampled dimensions as I am not sure how to deal with "iregularly sampled" dimensions yet! More...

#include <itkMINC2ImageIO.h>

Inheritance diagram for itk::MINC2ImageIO:
Collaboration diagram for itk::MINC2ImageIO:

List of all members.

Public Types

typedef Matrix< float, 3, 3 > MatrixType
typedef SmartPointer< SelfPointer
typedef MINC2ImageIO Self
typedef ImageIOBase Superclass

Public Member Functions

virtual bool CanReadFile (const char *)
virtual bool CanWriteFile (const char *)
virtual ::itk::LightObject::Pointer CreateAnother (void) const
char * GetDimensionOrder ()
virtual const char * GetNameOfClass () const
virtual void Read (void *buffer)
virtual void ReadImageInformation ()
void SetDimensionOrder (char *dimorder)
virtual void Write (const void *buffer)
virtual void WriteImageInformation ()
void XYZFromDirectionCosines (midimhandle_t *hdims, int *dim_indices, unsigned int *number_of_components)

Static Public Member Functions

static Pointer New ()

Protected Member Functions

int CheckDimensionOrder (char *userdimorder)
virtual char * GetDimensionName (unsigned int i)
 MINC2ImageIO ()
void PrintSelf (std::ostream &os, Indent indent) const
virtual void SetDimensionName (unsigned int i, char *name)
void WriteSlice (std::string &fileName, const void *buffer)
 ~MINC2ImageIO ()

Protected Attributes

int m_Complex
int * m_DimensionIndices
char ** m_DimensionName
char * m_DimensionOrder
unsigned int * m_DimensionSize
double * m_DimensionStart
double * m_DimensionStep
MatrixType m_DirectionCosines
unsigned int m_NDims
double m_OriginalStart [3]
double m_Scale
double m_Shift

Private Member Functions

 MINC2ImageIO (const Self &)
void operator= (const Self &)
void SetSliceScalingFromGlobalScaling (mihandle_t volume)
void SetSliceScalingFromLocalScaling (mihandle_t volume)

Detailed Description

Class that defines how to read MINC2 file format. Note,like ITK, MINC2 is N dimensional and dimensions can be submitted in any arbitrary order. Here we make sure the dimensions are ordered as xspace, yspace, zspace, time and vector_dimension and so on or xfrequencey, yfrequency, zfrequency, tfrequency and vector_dimension and so on NOTE** This class only reads the regularly sampled dimensions as I am not sure how to deal with "iregularly sampled" dimensions yet!

Author:
Leila Baghdadi This code was contributed in the Insight Journal paper: "MINC2.0 IO Support for ITK" by Baghdadi L. http://hdl.handle.net/1926/191 http://www.insight-journal.org/browse/publication/88

Definition at line 61 of file itkMINC2ImageIO.h.


Member Typedef Documentation

typedef Matrix< float, 3, 3 > itk::MINC2ImageIO::MatrixType

Definition at line 68 of file itkMINC2ImageIO.h.

Reimplemented from itk::ImageIOBase.

Definition at line 67 of file itkMINC2ImageIO.h.

Standard class typedefs.

Reimplemented from itk::ImageIOBase.

Definition at line 65 of file itkMINC2ImageIO.h.

Reimplemented from itk::ImageIOBase.

Definition at line 66 of file itkMINC2ImageIO.h.


Constructor & Destructor Documentation

itk::MINC2ImageIO::MINC2ImageIO ( ) [protected]
itk::MINC2ImageIO::~MINC2ImageIO ( ) [protected]
itk::MINC2ImageIO::MINC2ImageIO ( const Self ) [private]

Member Function Documentation

virtual bool itk::MINC2ImageIO::CanReadFile ( const char *  ) [virtual]

Determine the file type. Returns true if this ImageIO can read the file specified.

Implements itk::ImageIOBase.

virtual bool itk::MINC2ImageIO::CanWriteFile ( const char *  ) [virtual]

Determine the file type. Returns true if this ImageIO can read the file specified.

Implements itk::ImageIOBase.

int itk::MINC2ImageIO::CheckDimensionOrder ( char *  userdimorder) [protected]
virtual::itk::LightObject::Pointer itk::MINC2ImageIO::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.

virtual char* itk::MINC2ImageIO::GetDimensionName ( unsigned int  i) [inline, protected, virtual]

Definition at line 121 of file itkMINC2ImageIO.h.

char* itk::MINC2ImageIO::GetDimensionOrder ( ) [inline]

Definition at line 102 of file itkMINC2ImageIO.h.

virtual const char* itk::MINC2ImageIO::GetNameOfClass ( ) const [virtual]

Run-time type information (and related methods).

Reimplemented from itk::ImageIOBase.

static Pointer itk::MINC2ImageIO::New ( ) [static]

Method for creation through the object factory.

Reimplemented from itk::LightProcessObject.

void itk::MINC2ImageIO::operator= ( const Self ) [private]

This method causes the filter to generate its output.

Reimplemented from itk::ImageIOBase.

void itk::MINC2ImageIO::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::MINC2ImageIO::Read ( void *  buffer) [virtual]

Reads the data from disk into the memory buffer provided.

Implements itk::ImageIOBase.

virtual void itk::MINC2ImageIO::ReadImageInformation ( ) [virtual]

Set the spacing and dimension information for the set filename.

Implements itk::ImageIOBase.

virtual void itk::MINC2ImageIO::SetDimensionName ( unsigned int  i,
char *  name 
) [protected, virtual]
void itk::MINC2ImageIO::SetDimensionOrder ( char *  dimorder) [inline]

Definition at line 103 of file itkMINC2ImageIO.h.

void itk::MINC2ImageIO::SetSliceScalingFromGlobalScaling ( mihandle_t  volume) [private]
void itk::MINC2ImageIO::SetSliceScalingFromLocalScaling ( mihandle_t  volume) [private]
virtual void itk::MINC2ImageIO::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::MINC2ImageIO::WriteImageInformation ( ) [virtual]

Writes the spacing and dimentions of the image. Assumes SetFileName has been called with a valid file name.

Implements itk::ImageIOBase.

void itk::MINC2ImageIO::WriteSlice ( std::string &  fileName,
const void *  buffer 
) [protected]
void itk::MINC2ImageIO::XYZFromDirectionCosines ( midimhandle_t *  hdims,
int *  dim_indices,
unsigned int *  number_of_components 
)

Member Data Documentation

Definition at line 146 of file itkMINC2ImageIO.h.

Definition at line 136 of file itkMINC2ImageIO.h.

Definition at line 118 of file itkMINC2ImageIO.h.

Definition at line 123 of file itkMINC2ImageIO.h.

unsigned int* itk::MINC2ImageIO::m_DimensionSize [protected]

Definition at line 130 of file itkMINC2ImageIO.h.

Definition at line 131 of file itkMINC2ImageIO.h.

Definition at line 132 of file itkMINC2ImageIO.h.

Definition at line 134 of file itkMINC2ImageIO.h.

unsigned int itk::MINC2ImageIO::m_NDims [protected]

Definition at line 116 of file itkMINC2ImageIO.h.

double itk::MINC2ImageIO::m_OriginalStart[3] [protected]

Definition at line 144 of file itkMINC2ImageIO.h.

double itk::MINC2ImageIO::m_Scale [protected]

Definition at line 127 of file itkMINC2ImageIO.h.

double itk::MINC2ImageIO::m_Shift [protected]

Definition at line 126 of file itkMINC2ImageIO.h.


The documentation for this class was generated from the following file: