ITK  4.1.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes
itk::NormalVectorFunctionBase< TSparseImageType > Class Template Reference

#include <itkNormalVectorFunctionBase.h>

+ Inheritance diagram for itk::NormalVectorFunctionBase< TSparseImageType >:
+ Collaboration diagram for itk::NormalVectorFunctionBase< TSparseImageType >:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef Superclass::FloatOffsetType FloatOffsetType
typedef Superclass::IndexType IndexType
typedef
Superclass::NeighborhoodType 
NeighborhoodType
typedef SparseImageType::NodeType NodeType
typedef NodeType::NodeValueType NodeValueType
typedef NodeType::NodeDataType NormalVectorType
typedef SmartPointer< SelfPointer
typedef Superclass::RadiusType RadiusType
typedef NormalVectorFunctionBase Self
typedef Superclass::SparseImageType SparseImageType
typedef
FiniteDifferenceSparseImageFunction
< TSparseImageType > 
Superclass
typedef Superclass::TimeStepType TimeStepType

Public Member Functions

virtual TimeStepType ComputeGlobalTimeStep (void *) const
virtual const char * GetNameOfClass () const
void SetTimeStep (const TimeStepType &ts)
virtual void * GetGlobalDataPointer () const
virtual void ReleaseGlobalDataPointer (void *) const

Static Public Attributes

static const unsigned int ImageDimension = Superclass::ImageDimension

Private Member Functions

 NormalVectorFunctionBase (const Self &)
void operator= (const Self &)

Private Attributes

TimeStepType m_TimeStep
TimeStepType GetTimeStep () const
 NormalVectorFunctionBase ()
 ~NormalVectorFunctionBase ()
virtual void PrintSelf (std::ostream &os, Indent indent) const

Detailed Description

template<class TSparseImageType>
class itk::NormalVectorFunctionBase< TSparseImageType >

This class defines the common functionality for Sparse Image neighborhoods of unit vectors.

This class is derived from the FiniteDifferenceSparseImageFunction class and adds the functionality needed to process unit normal vector neighborhoods.
This class is the parent class of the NormalVectorDiffusionFunction class which defines all the necessary functionality for performing diffusion operations on unit vectors stored in sparse images. Other (non-diffusion) filters (such as median filtering) on unit vectors can also be derived from this base class.
PARAMETERS
This function class has a time step parameter which is returned by the ComputeGloablTimeStep method. Unlike other finite difference function classes, this class does not use the maximum change magnitude to compute the time step, it returns this predetermined time step.

Definition at line 52 of file itkNormalVectorFunctionBase.h.


Member Typedef Documentation

template<class TSparseImageType >
typedef SmartPointer< const Self > itk::NormalVectorFunctionBase< TSparseImageType >::ConstPointer
template<class TSparseImageType >
typedef Superclass::FloatOffsetType itk::NormalVectorFunctionBase< TSparseImageType >::FloatOffsetType

A floating point offset from an image grid location. Used for interpolation among grid values in a neighborhood.

Reimplemented from itk::FiniteDifferenceSparseImageFunction< TSparseImageType >.

Reimplemented in itk::NormalVectorDiffusionFunction< TSparseImageType >.

Definition at line 72 of file itkNormalVectorFunctionBase.h.

template<class TSparseImageType >
typedef Superclass::IndexType itk::NormalVectorFunctionBase< TSparseImageType >::IndexType

The index type for the sparse image.

Reimplemented from itk::FiniteDifferenceSparseImageFunction< TSparseImageType >.

Reimplemented in itk::NormalVectorDiffusionFunction< TSparseImageType >.

Definition at line 73 of file itkNormalVectorFunctionBase.h.

template<class TSparseImageType >
typedef Superclass::NeighborhoodType itk::NormalVectorFunctionBase< TSparseImageType >::NeighborhoodType

The type of data structure that is passed to this function object to evaluate at a pixel that does not lie on a data set boundary.

Reimplemented from itk::FiniteDifferenceSparseImageFunction< TSparseImageType >.

Reimplemented in itk::NormalVectorDiffusionFunction< TSparseImageType >.

Definition at line 71 of file itkNormalVectorFunctionBase.h.

template<class TSparseImageType >
typedef SparseImageType::NodeType itk::NormalVectorFunctionBase< TSparseImageType >::NodeType

The node type for the sparse image.

Reimplemented from itk::FiniteDifferenceSparseImageFunction< TSparseImageType >.

Reimplemented in itk::NormalVectorDiffusionFunction< TSparseImageType >.

Definition at line 77 of file itkNormalVectorFunctionBase.h.

template<class TSparseImageType >
typedef NodeType::NodeValueType itk::NormalVectorFunctionBase< TSparseImageType >::NodeValueType

The basic floating point type for the variables.

Reimplemented in itk::NormalVectorDiffusionFunction< TSparseImageType >.

Definition at line 80 of file itkNormalVectorFunctionBase.h.

template<class TSparseImageType >
typedef NodeType::NodeDataType itk::NormalVectorFunctionBase< TSparseImageType >::NormalVectorType

The vector type for the normals.

Reimplemented in itk::NormalVectorDiffusionFunction< TSparseImageType >.

Definition at line 83 of file itkNormalVectorFunctionBase.h.

template<class TSparseImageType >
typedef SmartPointer< Self > itk::NormalVectorFunctionBase< TSparseImageType >::Pointer
template<class TSparseImageType >
typedef Superclass::RadiusType itk::NormalVectorFunctionBase< TSparseImageType >::RadiusType
template<class TSparseImageType >
typedef NormalVectorFunctionBase itk::NormalVectorFunctionBase< TSparseImageType >::Self
template<class TSparseImageType >
typedef Superclass::SparseImageType itk::NormalVectorFunctionBase< TSparseImageType >::SparseImageType
template<class TSparseImageType >
typedef FiniteDifferenceSparseImageFunction< TSparseImageType > itk::NormalVectorFunctionBase< TSparseImageType >::Superclass
template<class TSparseImageType >
typedef Superclass::TimeStepType itk::NormalVectorFunctionBase< TSparseImageType >::TimeStepType

Typedefs from the superclass.

Reimplemented from itk::FiniteDifferenceSparseImageFunction< TSparseImageType >.

Reimplemented in itk::NormalVectorDiffusionFunction< TSparseImageType >.

Definition at line 69 of file itkNormalVectorFunctionBase.h.


Constructor & Destructor Documentation

template<class TSparseImageType >
itk::NormalVectorFunctionBase< TSparseImageType >::NormalVectorFunctionBase ( ) [protected]

Returns the time step.

template<class TSparseImageType >
itk::NormalVectorFunctionBase< TSparseImageType >::~NormalVectorFunctionBase ( ) [inline, protected]

Returns the time step.

Definition at line 103 of file itkNormalVectorFunctionBase.h.

template<class TSparseImageType >
itk::NormalVectorFunctionBase< TSparseImageType >::NormalVectorFunctionBase ( const Self ) [private]

Member Function Documentation

template<class TSparseImageType >
virtual TimeStepType itk::NormalVectorFunctionBase< TSparseImageType >::ComputeGlobalTimeStep ( void *  ) const [inline, virtual]

For the global time step, we return the time step parameter.

Implements itk::FiniteDifferenceFunction< TSparseImageType >.

Definition at line 91 of file itkNormalVectorFunctionBase.h.

template<class TSparseImageType >
virtual void* itk::NormalVectorFunctionBase< TSparseImageType >::GetGlobalDataPointer ( ) const [inline, virtual]

Globaldata methods are not needed in this class.

Implements itk::FiniteDifferenceFunction< TSparseImageType >.

Definition at line 86 of file itkNormalVectorFunctionBase.h.

template<class TSparseImageType >
virtual const char* itk::NormalVectorFunctionBase< TSparseImageType >::GetNameOfClass ( ) const [virtual]

Run-time type information (and related methods)

Reimplemented from itk::FiniteDifferenceSparseImageFunction< TSparseImageType >.

Reimplemented in itk::NormalVectorDiffusionFunction< TSparseImageType >.

template<class TSparseImageType >
TimeStepType itk::NormalVectorFunctionBase< TSparseImageType >::GetTimeStep ( ) const [inline]

Returns the time step.

Definition at line 99 of file itkNormalVectorFunctionBase.h.

template<class TSparseImageType >
void itk::NormalVectorFunctionBase< TSparseImageType >::operator= ( const Self ) [private]

Mutex lock to protect modification to the reference count

Reimplemented from itk::FiniteDifferenceSparseImageFunction< TSparseImageType >.

Reimplemented in itk::NormalVectorDiffusionFunction< TSparseImageType >.

template<class TSparseImageType >
virtual void itk::NormalVectorFunctionBase< TSparseImageType >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]
template<class TSparseImageType >
virtual void itk::NormalVectorFunctionBase< TSparseImageType >::ReleaseGlobalDataPointer ( void *  ) const [inline, virtual]

Globaldata methods are not needed in this class.

Implements itk::FiniteDifferenceFunction< TSparseImageType >.

Definition at line 87 of file itkNormalVectorFunctionBase.h.

template<class TSparseImageType >
void itk::NormalVectorFunctionBase< TSparseImageType >::SetTimeStep ( const TimeStepType ts) [inline]

Sets the time step.

Definition at line 95 of file itkNormalVectorFunctionBase.h.


Member Data Documentation

template<class TSparseImageType >
const unsigned int itk::NormalVectorFunctionBase< TSparseImageType >::ImageDimension = Superclass::ImageDimension [static]

Image dimension derived from the superclass.

Reimplemented from itk::FiniteDifferenceSparseImageFunction< TSparseImageType >.

Reimplemented in itk::NormalVectorDiffusionFunction< TSparseImageType >.

Definition at line 66 of file itkNormalVectorFunctionBase.h.

template<class TSparseImageType >
TimeStepType itk::NormalVectorFunctionBase< TSparseImageType >::m_TimeStep [private]

The time step for normal vector finite difference computations.

Definition at line 109 of file itkNormalVectorFunctionBase.h.


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