ITK  4.1.0
Insight Segmentation and Registration Toolkit
Classes | Public Types | Public Member Functions | Static Public Attributes
itk::LevelSetBase< TInput, VDimension, TOutput, TDomain > Class Template Reference

#include <itkLevelSetBase.h>

+ Inheritance diagram for itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >:
+ Collaboration diagram for itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >:

List of all members.

Classes

class  DataType
 Internal class used for one computed characteritic. More...
struct  LevelSetDataType
 Convenient data structure to cache computed characteristics. More...

Public Types

typedef SmartPointer< const SelfConstPointer
typedef TDomain DomainType
typedef CovariantVector
< OutputRealType, VDimension > 
GradientType
typedef Matrix< OutputRealType,
VDimension, VDimension > 
HessianType
typedef TInput InputType
typedef NumericTraits
< OutputType >::RealType 
OutputRealType
typedef TOutput OutputType
typedef SmartPointer< SelfPointer
typedef IdentifierType RegionType
typedef LevelSetBase Self
typedef DataObject Superclass

Public Member Functions

virtual OutputType Evaluate (const InputType &iP) const =0
virtual GradientType EvaluateGradient (const InputType &iP) const =0
virtual OutputRealType EvaluateGradientNorm (const InputType &iP) const
virtual HessianType EvaluateHessian (const InputType &iP) const =0
virtual OutputRealType EvaluateLaplacian (const InputType &iP) const =0
virtual OutputRealType EvaluateMeanCurvature (const InputType &iP) const =0
virtual const char * GetNameOfClass () const

Static Public Attributes

static const unsigned int Dimension = VDimension
RegionType m_MaximumNumberOfRegions
RegionType m_NumberOfRegions
RegionType m_RequestedNumberOfRegions
RegionType m_BufferedRegion
RegionType m_RequestedRegion
virtual void Evaluate (const InputType &iP, LevelSetDataType &ioData) const =0
virtual void EvaluateGradient (const InputType &iP, LevelSetDataType &ioData) const =0
virtual void EvaluateHessian (const InputType &iP, LevelSetDataType &ioData) const =0
virtual void EvaluateLaplacian (const InputType &iP, LevelSetDataType &ioData) const =0
virtual void EvaluateGradientNorm (const InputType &iP, LevelSetDataType &ioData) const
virtual void EvaluateMeanCurvature (const InputType &iP, LevelSetDataType &ioData) const
virtual void EvaluateForwardGradient (const InputType &iP, LevelSetDataType &ioData) const =0
virtual void EvaluateBackwardGradient (const InputType &iP, LevelSetDataType &ioData) const =0
virtual bool IsInside (const InputType &iP) const
virtual RegionType GetMaximumNumberOfRegions () const
virtual void Initialize ()
virtual void UpdateOutputInformation ()
virtual void SetRequestedRegionToLargestPossibleRegion ()
virtual void CopyInformation (const DataObject *data)
virtual void Graft (const DataObject *data)
virtual bool RequestedRegionIsOutsideOfTheBufferedRegion ()
virtual bool VerifyRequestedRegion ()
virtual void SetRequestedRegion (const DataObject *data)
virtual void SetRequestedRegion (const RegionType &region)
virtual RegionType GetRequestedRegion () const
virtual void SetBufferedRegion (const RegionType &region)
virtual RegionType GetBufferedRegion () const
 LevelSetBase ()
virtual ~LevelSetBase ()
 LevelSetBase (const Self &)
void operator= (const Self &)

Detailed Description

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
class itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >

Abstract base class for the representation of a level-set function.

Template Parameters:
TInputInput type where the level set function will be evaluated
VDimensionDimension of the input space
TOutputReturned type when evaluating the level set function
TDomainSupport of the level-set function (e.g. Image or QuadEdgeMesh)

Definition at line 44 of file itkLevelSetBase.h.


Member Typedef Documentation

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
typedef SmartPointer< const Self > itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::ConstPointer
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
typedef TDomain itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::DomainType

Definition at line 63 of file itkLevelSetBase.h.

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
typedef CovariantVector< OutputRealType, VDimension > itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::GradientType
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
typedef Matrix< OutputRealType, VDimension, VDimension > itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::HessianType
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
typedef TInput itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::InputType
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
typedef NumericTraits< OutputType >::RealType itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::OutputRealType
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
typedef TOutput itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::OutputType
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
typedef SmartPointer< Self > itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::Pointer
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
typedef IdentifierType itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::RegionType
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
typedef LevelSetBase itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::Self
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
typedef DataObject itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::Superclass

Constructor & Destructor Documentation

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::LevelSetBase ( ) [protected]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::~LevelSetBase ( ) [inline, protected, virtual]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

Definition at line 220 of file itkLevelSetBase.h.

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::LevelSetBase ( const Self ) [private]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $


Member Function Documentation

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::CopyInformation ( const DataObject data) [virtual]
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual OutputType itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::Evaluate ( const InputType iP) const [pure virtual]

Returns the value of the level set function at a given location iP

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::Evaluate ( const InputType iP,
LevelSetDataType ioData 
) const [pure virtual]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::EvaluateBackwardGradient ( const InputType iP,
LevelSetDataType ioData 
) const [pure virtual]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::EvaluateForwardGradient ( const InputType iP,
LevelSetDataType ioData 
) const [pure virtual]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual GradientType itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::EvaluateGradient ( const InputType iP) const [pure virtual]

Returns the gradient of the level set function at a given location iP

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::EvaluateGradient ( const InputType iP,
LevelSetDataType ioData 
) const [pure virtual]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual OutputRealType itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::EvaluateGradientNorm ( const InputType iP) const [virtual]
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::EvaluateGradientNorm ( const InputType iP,
LevelSetDataType ioData 
) const [virtual]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual HessianType itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::EvaluateHessian ( const InputType iP) const [pure virtual]

Returns the hessian of the level set function at a given location iP

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::EvaluateHessian ( const InputType iP,
LevelSetDataType ioData 
) const [pure virtual]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual OutputRealType itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::EvaluateLaplacian ( const InputType iP) const [pure virtual]
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::EvaluateLaplacian ( const InputType iP,
LevelSetDataType ioData 
) const [pure virtual]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual OutputRealType itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::EvaluateMeanCurvature ( const InputType iP) const [pure virtual]
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::EvaluateMeanCurvature ( const InputType iP,
LevelSetDataType ioData 
) const [virtual]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual RegionType itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::GetBufferedRegion ( ) const [virtual]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual RegionType itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::GetMaximumNumberOfRegions ( ) const [virtual]

Get the maximum number of regions that this data can be separated into.

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual const char* itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::GetNameOfClass ( ) const [virtual]
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual RegionType itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::GetRequestedRegion ( ) const [virtual]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::Graft ( const DataObject data) [virtual]
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::Initialize ( ) [virtual]
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual bool itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::IsInside ( const InputType iP) const [virtual]
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::operator= ( const Self ) [private]
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual bool itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::RequestedRegionIsOutsideOfTheBufferedRegion ( ) [virtual]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

Reimplemented from itk::DataObject.

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::SetBufferedRegion ( const RegionType region) [virtual]

Set/Get the Buffered region

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::SetRequestedRegion ( const DataObject data) [virtual]

Set the requested region from this data object to match the requested region of the data object passed in as a parameter. This method implements the API from DataObject. The data object parameter must be castable to a PointSet.

Reimplemented from itk::DataObject.

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::SetRequestedRegion ( const RegionType region) [virtual]

Set/Get the Requested region

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::SetRequestedRegionToLargestPossibleRegion ( ) [virtual]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

Reimplemented from itk::DataObject.

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual void itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::UpdateOutputInformation ( ) [virtual]

Methods to manage streaming.

Reimplemented from itk::DataObject.

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
virtual bool itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::VerifyRequestedRegion ( ) [virtual]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

Reimplemented from itk::DataObject.


Member Data Documentation

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
const unsigned int itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::Dimension = VDimension [static]
template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
RegionType itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::m_BufferedRegion [protected]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

Definition at line 235 of file itkLevelSetBase.h.

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
RegionType itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::m_MaximumNumberOfRegions [protected]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

Definition at line 232 of file itkLevelSetBase.h.

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
RegionType itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::m_NumberOfRegions [protected]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

Definition at line 233 of file itkLevelSetBase.h.

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
RegionType itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::m_RequestedNumberOfRegions [protected]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

Definition at line 234 of file itkLevelSetBase.h.

template<class TInput, unsigned int VDimension, typename TOutput, class TDomain>
RegionType itk::LevelSetBase< TInput, VDimension, TOutput, TDomain >::m_RequestedRegion [protected]

Returns true if iP is inside the level set, i.e. $\phi(p) \leqslant 0 $

Definition at line 236 of file itkLevelSetBase.h.


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