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

itk::SparseImage< TNode, VImageDimension > Class Template Reference

This class implements a storage type for sparse image data. More...

#include <itkSparseImage.h>

Inheritance diagram for itk::SparseImage< TNode, VImageDimension >:

Inheritance graph
[legend]
Collaboration diagram for itk::SparseImage< TNode, VImageDimension >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef SparseImage Self
typedef Image< TNode *, VImageDimension > Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef TNode NodeType
typedef Superclass::IndexType IndexType
typedef SparseFieldLayer<
NodeType
NodeListType
typedef ObjectStore< NodeTypeNodeStoreType

Public Member Functions

virtual const char * GetClassName () const
 itkStaticConstMacro (ImageDimension, unsigned int, Superclass::ImageDimension)
NodeListTypeGetNodeList ()
virtual void Initialize ()
NodeTypeAddNode (const IndexType &index)

Static Public Member Functions

Pointer New ()

Protected Member Functions

 SparseImage ()
 ~SparseImage ()
void PrintSelf (std::ostream &os, Indent indent) const

Detailed Description

template<class TNode, unsigned int VImageDimension = 2>
class itk::SparseImage< TNode, VImageDimension >

This class implements a storage type for sparse image data.

This class is derived from the Image class. It uses the base class image data for storing pointers to variables of type TNode. The node type must have a member variable m_Index. The node data is stored using the SparseFieldLayer and ObjectStore classes to allow sequential list access to the nodes. This functionality is used in filter classes that process the SparseImage class such as FiniteDifferenceSparseImageFilter.
This class provides the method AddNode which allocates a node variable, associates it with the image pixel index (sets m_Index in the node variable) and returns the pointer to the node variable. It is suggested that the user call the FillBuffer method to initialize the image to null pointers before any calls to AddNode. This would allow the user later to distinguish between valid and non-valid pixels.

Definition at line 51 of file itkSparseImage.h.


Member Typedef Documentation

template<class TNode, unsigned int VImageDimension = 2>
typedef SmartPointer<const Self> itk::SparseImage< TNode, VImageDimension >::ConstPointer
 

Reimplemented from itk::Image< TNode *, VImageDimension >.

Definition at line 58 of file itkSparseImage.h.

template<class TNode, unsigned int VImageDimension = 2>
typedef Superclass::IndexType itk::SparseImage< TNode, VImageDimension >::IndexType
 

Types derived from the Superclass

Reimplemented from itk::Image< TNode *, VImageDimension >.

Definition at line 74 of file itkSparseImage.h.

Referenced by itk::SparseImage< TNode, VImageDimension >::AddNode().

template<class TNode, unsigned int VImageDimension = 2>
typedef SparseFieldLayer<NodeType> itk::SparseImage< TNode, VImageDimension >::NodeListType
 

The list types for storing the active pixels. Definition at line 77 of file itkSparseImage.h.

template<class TNode, unsigned int VImageDimension = 2>
typedef ObjectStore<NodeType> itk::SparseImage< TNode, VImageDimension >::NodeStoreType
 

Definition at line 78 of file itkSparseImage.h.

template<class TNode, unsigned int VImageDimension = 2>
typedef TNode itk::SparseImage< TNode, VImageDimension >::NodeType
 

The actual sparse pixel type. Definition at line 71 of file itkSparseImage.h.

Referenced by itk::SparseImage< TNode, VImageDimension >::AddNode().

template<class TNode, unsigned int VImageDimension = 2>
typedef SmartPointer<Self> itk::SparseImage< TNode, VImageDimension >::Pointer
 

Reimplemented from itk::Image< TNode *, VImageDimension >.

Definition at line 57 of file itkSparseImage.h.

template<class TNode, unsigned int VImageDimension = 2>
typedef SparseImage itk::SparseImage< TNode, VImageDimension >::Self
 

Standard typedefs.

Reimplemented from itk::Image< TNode *, VImageDimension >.

Definition at line 55 of file itkSparseImage.h.

Referenced by itk::SparseImage< TNode, VImageDimension >::~SparseImage().

template<class TNode, unsigned int VImageDimension = 2>
typedef Image<TNode*, VImageDimension> itk::SparseImage< TNode, VImageDimension >::Superclass
 

Reimplemented from itk::Image< TNode *, VImageDimension >.

Definition at line 56 of file itkSparseImage.h.


Constructor & Destructor Documentation

template<class TNode, unsigned int VImageDimension = 2>
itk::SparseImage< TNode, VImageDimension >::SparseImage  )  [protected]
 

template<class TNode, unsigned int VImageDimension = 2>
itk::SparseImage< TNode, VImageDimension >::~SparseImage  )  [inline, protected]
 

Definition at line 105 of file itkSparseImage.h.

References itk::SparseImage< TNode, VImageDimension >::Self.


Member Function Documentation

template<class TNode, unsigned int VImageDimension = 2>
NodeType* itk::SparseImage< TNode, VImageDimension >::AddNode const IndexType index  )  [inline]
 

This function should be used to allocate memory for a variable at the desired pixel location. Definition at line 82 of file itkSparseImage.h.

References itk::SparseImage< TNode, VImageDimension >::IndexType, and itk::SparseImage< TNode, VImageDimension >::NodeType.

template<class TNode, unsigned int VImageDimension = 2>
virtual const char* itk::SparseImage< TNode, VImageDimension >::GetClassName  )  const [virtual]
 

Run-time type information (and related methods).

Reimplemented from itk::Image< TNode *, VImageDimension >.

template<class TNode, unsigned int VImageDimension = 2>
NodeListType* itk::SparseImage< TNode, VImageDimension >::GetNodeList  )  [inline]
 

This function returns the allocated node list which can be used to iterate through the valid nodes. Definition at line 94 of file itkSparseImage.h.

template<class TNode, unsigned int VImageDimension = 2>
virtual void itk::SparseImage< TNode, VImageDimension >::Initialize  )  [virtual]
 

This function initializes the m_NodeList and m_NodeStore variables, and calls the superclass Initialize method.

Reimplemented from itk::Image< TNode *, VImageDimension >.

template<class TNode, unsigned int VImageDimension = 2>
itk::SparseImage< TNode, VImageDimension >::itkStaticConstMacro ImageDimension  ,
unsigned  int,
Superclass::ImageDimension 
 

Dimension of the image.

template<class TNode, unsigned int VImageDimension = 2>
Pointer itk::SparseImage< TNode, VImageDimension >::New  )  [static]
 

Method for creation through the object factory.

Reimplemented from itk::Image< TNode *, VImageDimension >.

template<class TNode, unsigned int VImageDimension = 2>
void itk::SparseImage< TNode, VImageDimension >::PrintSelf std::ostream &  os,
Indent  indent
const [protected, virtual]
 

Compute the index of the pixel at a specified offset from the beginning of the buffered region.

Reimplemented from itk::Image< TNode *, VImageDimension >.


The documentation for this class was generated from the following file:
Generated at Sun Apr 1 03:13:30 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000