FREE::ImagePolyStorage< TPixel2D, TPixel3D > Class Template Reference

Class is used a poly dimensional storage for images. More...

#include <freImagePolyStorage.h>

List of all members.

Public Types

enum  DimensionType { Dim_Undefined = 0, Dim_2D = 2, Dim_3D = 3 }
typedef TPixel2D Pixel2DType
typedef TPixel3D Pixel3DType
typedef itk::Image
< TPixel2D, 2 > 
Image2DType
typedef
Image2DType::Pointer 
Image2DPointer
typedef itk::Image
< TPixel3D, 3 > 
Image3DType
typedef
Image3DType::Pointer 
Image3DPointer

Public Member Functions

bool GetImage (Image2DType *&pImage) const
bool GetImage (Image2DPointer &smpImage) const
bool GetImage (Image3DType *&pImage) const
bool GetImage (Image3DPointer &smpImage) const
void SetImage (Image2DType *pImage)
void SetImage (Image3DType *pImage)
bool GetPixelByPhysicalPoint (const ImageTypes< 2 >::PointType &point, Pixel2DType &pixel) const
bool GetPixelByPhysicalPoint (const ImageTypes< 3 >::PointType &point, Pixel3DType &pixel) const
bool GetPixelByIndex (const typename Image2DType::IndexType &index, Pixel2DType &pixel) const
bool GetPixelByIndex (const typename Image3DType::IndexType &index, Pixel3DType &pixel) const
void Reset ()
DimensionType GetImageDimension () const
 ImagePolyStorage ()
 ImagePolyStorage (Image2DType *pImage)
 ImagePolyStorage (Image3DType *pImage)
 ~ImagePolyStorage ()

Private Attributes

Image2DPointer m_smp2DImage
Image3DPointer m_smp3DImage
DimensionType m_ImageDimension


Detailed Description

template<class TPixel2D, class TPixel3D = TPixel2D>
class FREE::ImagePolyStorage< TPixel2D, TPixel3D >

Class is used a poly dimensional storage for images.

This class is used within f.r.e.e. to establish a generic method for passing images (of any dimensionality) to a non templated class (at least a class with no dimension template, but image interaction). This version can handle 2D and 3D images.

Definition at line 38 of file freImagePolyStorage.h.


Member Typedef Documentation

template<class TPixel2D, class TPixel3D = TPixel2D>
typedef TPixel2D FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Pixel2DType

Definition at line 48 of file freImagePolyStorage.h.

template<class TPixel2D, class TPixel3D = TPixel2D>
typedef TPixel3D FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Pixel3DType

Definition at line 49 of file freImagePolyStorage.h.

template<class TPixel2D, class TPixel3D = TPixel2D>
typedef itk::Image<TPixel2D, 2> FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Image2DType

Definition at line 50 of file freImagePolyStorage.h.

template<class TPixel2D, class TPixel3D = TPixel2D>
typedef Image2DType::Pointer FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Image2DPointer

Definition at line 51 of file freImagePolyStorage.h.

template<class TPixel2D, class TPixel3D = TPixel2D>
typedef itk::Image<TPixel3D, 3> FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Image3DType

Definition at line 52 of file freImagePolyStorage.h.

template<class TPixel2D, class TPixel3D = TPixel2D>
typedef Image3DType::Pointer FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Image3DPointer

Definition at line 53 of file freImagePolyStorage.h.


Member Enumeration Documentation

template<class TPixel2D, class TPixel3D = TPixel2D>
enum FREE::ImagePolyStorage::DimensionType

Enumerator:
Dim_Undefined  No image has been stored yet;.
Dim_2D  A 2D image is stored.
Dim_3D  A 3D image is stored.

Definition at line 41 of file freImagePolyStorage.h.


Constructor & Destructor Documentation

template<class TPixel2D, class TPixel3D>
FREE::ImagePolyStorage< TPixel2D, TPixel3D >::ImagePolyStorage (  )  [inline]

Default constructor

Definition at line 172 of file freImagePolyStorage.txx.

References FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Reset().

Here is the call graph for this function:

FREE::ImagePolyStorage::Reset

template<class TPixel2D, class TPixel3D>
FREE::ImagePolyStorage< TPixel2D, TPixel3D >::ImagePolyStorage ( Image2DType pImage  )  [inline]

Definition at line 179 of file freImagePolyStorage.txx.

References FREE::ImagePolyStorage< TPixel2D, TPixel3D >::SetImage().

Here is the call graph for this function:

FREE::ImagePolyStorage::SetImage

template<class TPixel2D, class TPixel3D>
FREE::ImagePolyStorage< TPixel2D, TPixel3D >::ImagePolyStorage ( Image3DType pImage  )  [inline]

Definition at line 186 of file freImagePolyStorage.txx.

References FREE::ImagePolyStorage< TPixel2D, TPixel3D >::SetImage().

Here is the call graph for this function:

FREE::ImagePolyStorage::SetImage

template<class TPixel2D, class TPixel3D>
FREE::ImagePolyStorage< TPixel2D, TPixel3D >::~ImagePolyStorage (  )  [inline]

destructor

Definition at line 193 of file freImagePolyStorage.txx.

References FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Reset().

Here is the call graph for this function:

FREE::ImagePolyStorage::Reset


Member Function Documentation

template<class TPixel2D, class TPixel3D>
bool FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetImage ( Image2DType *&  pImage  )  const [inline]

Function returns the stored image in the passed pointer, if it has the right dimension. If not the pointer is not valid and the return will be false.

Remarks:
If no image has set yet, or the image is set to null, the return will also be true, but the pointer will be null.
Parameters:
[out] pImage Pointer to the stored image. Can be null if no image has been defined yet.
Returns:
Returns false, if the stored image has the wrong dimension.

Definition at line 33 of file freImagePolyStorage.txx.

References FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Dim_2D, FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_ImageDimension, and FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_smp2DImage.

Referenced by FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetImage().

template<class TPixel2D, class TPixel3D>
bool FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetImage ( Image2DPointer smpImage  )  const [inline]

Definition at line 46 of file freImagePolyStorage.txx.

References FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetImage().

Here is the call graph for this function:

FREE::ImagePolyStorage::GetImage

template<class TPixel2D, class TPixel3D>
bool FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetImage ( Image3DType *&  pImage  )  const [inline]

Definition at line 59 of file freImagePolyStorage.txx.

References FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Dim_3D, FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_ImageDimension, and FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_smp3DImage.

template<class TPixel2D, class TPixel3D>
bool FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetImage ( Image3DPointer smpImage  )  const [inline]

Definition at line 72 of file freImagePolyStorage.txx.

References FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetImage().

Here is the call graph for this function:

FREE::ImagePolyStorage::GetImage

template<class TPixel2D, class TPixel3D>
void FREE::ImagePolyStorage< TPixel2D, TPixel3D >::SetImage ( Image2DType pImage  )  [inline]

Definition at line 85 of file freImagePolyStorage.txx.

References FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Dim_2D, FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_ImageDimension, FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_smp2DImage, and FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_smp3DImage.

Referenced by FREE::ImagePolyStorage< TPixel2D, TPixel3D >::ImagePolyStorage().

template<class TPixel2D, class TPixel3D>
void FREE::ImagePolyStorage< TPixel2D, TPixel3D >::SetImage ( Image3DType pImage  )  [inline]

Definition at line 95 of file freImagePolyStorage.txx.

References FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Dim_3D, FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_ImageDimension, FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_smp2DImage, and FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_smp3DImage.

template<class TPixel2D, class TPixel3D>
bool FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetPixelByPhysicalPoint ( const ImageTypes< 2 >::PointType &  point,
Pixel2DType pixel 
) const [inline]

Definition at line 105 of file freImagePolyStorage.txx.

References FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Dim_2D, FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetPixelByIndex(), FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_ImageDimension, and FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_smp2DImage.

Referenced by FREE::CenteredRigid3DTransformController::ActualizeReferencesMainComponent().

Here is the call graph for this function:

FREE::ImagePolyStorage::GetPixelByIndex

template<class TPixel2D, class TPixel3D>
bool FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetPixelByPhysicalPoint ( const ImageTypes< 3 >::PointType &  point,
Pixel3DType pixel 
) const [inline]

Definition at line 120 of file freImagePolyStorage.txx.

References FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Dim_3D, FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetPixelByIndex(), FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_ImageDimension, and FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_smp3DImage.

Here is the call graph for this function:

FREE::ImagePolyStorage::GetPixelByIndex

template<class TPixel2D, class TPixel3D>
bool FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetPixelByIndex ( const typename Image2DType::IndexType &  index,
Pixel2DType pixel 
) const [inline]

Definition at line 135 of file freImagePolyStorage.txx.

References FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Dim_2D, FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_ImageDimension, and FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_smp2DImage.

Referenced by FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetPixelByPhysicalPoint().

template<class TPixel2D, class TPixel3D>
bool FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetPixelByIndex ( const typename Image3DType::IndexType &  index,
Pixel3DType pixel 
) const [inline]

Definition at line 148 of file freImagePolyStorage.txx.

References FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Dim_3D, FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_ImageDimension, and FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_smp3DImage.

template<class TPixel2D, class TPixel3D>
void FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Reset (  )  [inline]

Definition at line 162 of file freImagePolyStorage.txx.

References FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Dim_Undefined, FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_ImageDimension, FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_smp2DImage, and FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_smp3DImage.

Referenced by FREE::ImagePolyStorage< TPixel2D, TPixel3D >::ImagePolyStorage(), and FREE::ImagePolyStorage< TPixel2D, TPixel3D >::~ImagePolyStorage().

template<class TPixel2D, class TPixel3D = TPixel2D>
DimensionType FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetImageDimension (  )  const [inline]

Definition at line 81 of file freImagePolyStorage.h.

References FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_ImageDimension.


Member Data Documentation

template<class TPixel2D, class TPixel3D = TPixel2D>
Image2DPointer FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_smp2DImage [private]

Definition at line 97 of file freImagePolyStorage.h.

Referenced by FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetImage(), FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetPixelByIndex(), FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetPixelByPhysicalPoint(), FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Reset(), and FREE::ImagePolyStorage< TPixel2D, TPixel3D >::SetImage().

template<class TPixel2D, class TPixel3D = TPixel2D>
Image3DPointer FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_smp3DImage [private]

Definition at line 98 of file freImagePolyStorage.h.

Referenced by FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetImage(), FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetPixelByIndex(), FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetPixelByPhysicalPoint(), FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Reset(), and FREE::ImagePolyStorage< TPixel2D, TPixel3D >::SetImage().

template<class TPixel2D, class TPixel3D = TPixel2D>
DimensionType FREE::ImagePolyStorage< TPixel2D, TPixel3D >::m_ImageDimension [private]

Definition at line 99 of file freImagePolyStorage.h.

Referenced by FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetImage(), FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetImageDimension(), FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetPixelByIndex(), FREE::ImagePolyStorage< TPixel2D, TPixel3D >::GetPixelByPhysicalPoint(), FREE::ImagePolyStorage< TPixel2D, TPixel3D >::Reset(), and FREE::ImagePolyStorage< TPixel2D, TPixel3D >::SetImage().


The documentation for this class was generated from the following files:
Generated at Sat Oct 13 18:17:26 2007 for f.r.e.e. - Flexible Registration and Evaluation Engine by doxygen 1.5.3 written by Dimitri van Heesch, © 1997-2000