ITK  4.3.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder > Class Template Reference

#include <itkBSplineInterpolationWeightFunction.h>

+ Inheritance diagram for itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >:
+ Collaboration diagram for itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >:

Detailed Description

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
class itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >

Returns the weights over the support region used for B-spline interpolation/reconstruction.

Computes/evaluate the B-spline interpolation weights over the support region of the B-spline.

This class is templated over the coordinate representation type, the space dimension and the spline order.

See Also
Point
Index
ContinuousIndex

Definition at line 51 of file itkBSplineInterpolationWeightFunction.h.

Public Types

typedef SmartPointer< const SelfConstPointer
 
typedef ContinuousIndex
< TCoordRep, VSpaceDimension > 
ContinuousIndexType
 
typedef Index< VSpaceDimension > IndexType
 
typedef SmartPointer< SelfPointer
 
typedef
BSplineInterpolationWeightFunction 
Self
 
typedef Size< VSpaceDimension > SizeType
 
typedef FunctionBase
< ContinuousIndex< TCoordRep,
VSpaceDimension >, Array
< double > > 
Superclass
 
typedef Array< double > WeightsType
 
- Public Types inherited from itk::FunctionBase< ContinuousIndex< TCoordRep, VSpaceDimension >, Array< double > >
typedef SmartPointer< const SelfConstPointer
 
typedef ContinuousIndex
< TCoordRep, VSpaceDimension > 
InputType
 
typedef Array< double > OutputType
 
typedef SmartPointer< SelfPointer
 
typedef FunctionBase Self
 
typedef Object Superclass
 
- Public Types inherited from itk::Object
typedef SmartPointer< const SelfConstPointer
 
typedef SmartPointer< SelfPointer
 
typedef Object Self
 
typedef LightObject Superclass
 
- Public Types inherited from itk::LightObject
typedef SmartPointer< const SelfConstPointer
 
typedef SmartPointer< SelfPointer
 
typedef LightObject Self
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual WeightsType Evaluate (const ContinuousIndexType &index) const
 
virtual void Evaluate (const ContinuousIndexType &index, WeightsType &weights, IndexType &startIndex) const
 
virtual const char * GetNameOfClass () const
 
virtual unsigned long GetNumberOfWeights () const
 
virtual SizeType GetSupportSize () const
 

Static Public Member Functions

static Pointer New ()
 

Static Public Attributes

static const unsigned int SpaceDimension = VSpaceDimension
 
static const unsigned int SplineOrder = VSplineOrder
 

Protected Member Functions

 BSplineInterpolationWeightFunction ()
 
void PrintSelf (std::ostream &os, Indent indent) const
 
 ~BSplineInterpolationWeightFunction ()
 
- Protected Member Functions inherited from itk::FunctionBase< ContinuousIndex< TCoordRep, VSpaceDimension >, Array< double > >
 FunctionBase ()
 
 ~FunctionBase ()
 
- Protected Member Functions inherited from itk::Object
 Object ()
 
bool PrintObservers (std::ostream &os, Indent indent) const
 
virtual void SetTimeStamp (const TimeStamp &time)
 
virtual ~Object ()
 
- Protected Member Functions inherited from itk::LightObject
virtual LightObject::Pointer InternalClone () const
 
 LightObject ()
 
virtual void PrintHeader (std::ostream &os, Indent indent) const
 
virtual void PrintTrailer (std::ostream &os, Indent indent) const
 
virtual ~LightObject ()
 

Private Types

typedef BSplineKernelFunction
< itkGetStaticConstMacro(SplineOrder) > 
KernelType
 
typedef Array2D< unsigned long > TableType
 

Private Member Functions

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

Private Attributes

KernelType::Pointer m_Kernel
 
unsigned long m_NumberOfWeights
 
TableType m_OffsetToIndexTable
 
SizeType m_SupportSize
 

Additional Inherited Members

- Protected Types inherited from itk::LightObject
typedef int InternalReferenceCountType
 
- Protected Attributes inherited from itk::LightObject
InternalReferenceCountType m_ReferenceCount
 
SimpleFastMutexLock m_ReferenceCountLock
 

Member Typedef Documentation

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef SmartPointer< const Self > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::ConstPointer

Definition at line 62 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef ContinuousIndex< TCoordRep, VSpaceDimension > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::ContinuousIndexType

ContinuousIndex typedef support.

Definition at line 84 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Index< VSpaceDimension > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::IndexType

Index and size typedef support.

Definition at line 80 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef BSplineKernelFunction< itkGetStaticConstMacro(SplineOrder) > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::KernelType
private

Interpolation kernel type.

Definition at line 129 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef SmartPointer< Self > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Pointer

Definition at line 61 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef BSplineInterpolationWeightFunction itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Self

Standard class typedefs.

Definition at line 57 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Size< VSpaceDimension > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::SizeType

Definition at line 81 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef FunctionBase< ContinuousIndex< TCoordRep, VSpaceDimension >, Array< double > > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Superclass

Definition at line 59 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Array2D< unsigned long > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::TableType
private

Lookup table type.

Definition at line 123 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Array< double > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::WeightsType

OutputType typedef support.

Definition at line 77 of file itkBSplineInterpolationWeightFunction.h.

Constructor & Destructor Documentation

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::BSplineInterpolationWeightFunction ( )
protected
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::~BSplineInterpolationWeightFunction ( )
inlineprotected

Definition at line 109 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::BSplineInterpolationWeightFunction ( const Self )
private

Member Function Documentation

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
virtual::itk::LightObject::Pointer itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::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::Object.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
virtual WeightsType itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Evaluate ( const ContinuousIndexType index) const
virtual

Evaluate the weights at specified ContinousIndex position. Subclasses must provide this method.

Implements itk::FunctionBase< ContinuousIndex< TCoordRep, VSpaceDimension >, Array< double > >.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
virtual void itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Evaluate ( const ContinuousIndexType index,
WeightsType weights,
IndexType startIndex 
) const
virtual

Evaluate the weights at specified ContinousIndex position. The weights are returned in the user specified container. This function assume that weights can hold (SplineOrder + 1)^(SpaceDimension) elements. For efficiency, no size checking is done. On return, startIndex contains the start index of the support region over which the weights are defined.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
virtual const char* itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from itk::FunctionBase< ContinuousIndex< TCoordRep, VSpaceDimension >, Array< double > >.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
virtual unsigned long itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::GetNumberOfWeights ( ) const
virtual

Get number of weights.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
virtual SizeType itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::GetSupportSize ( ) const
virtual

Get support region size.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
static Pointer itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::New ( )
static

New macro for creation of through the object factory.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
void itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::operator= ( const Self )
private
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
void itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
protectedvirtual

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::Object.

Member Data Documentation

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
KernelType::Pointer itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::m_Kernel
private

Interpolation kernel.

Definition at line 132 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
unsigned long itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::m_NumberOfWeights
private

Number of weights.

Definition at line 117 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
TableType itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::m_OffsetToIndexTable
private

Table mapping linear offset to indices.

Definition at line 126 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
SizeType itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::m_SupportSize
private

Size of support region.

Definition at line 120 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
const unsigned int itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::SpaceDimension = VSpaceDimension
static

Space dimension.

Definition at line 71 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
const unsigned int itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::SplineOrder = VSplineOrder
static

Spline order.

Definition at line 74 of file itkBSplineInterpolationWeightFunction.h.


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