DMRITool  v0.1.1-139-g860d86b4
Diffusion MRI Tool
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue > Class Template Reference

#include <itkFunctorTableBase.h>

+ Inheritance diagram for itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >:
+ Collaboration diagram for itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >:

Detailed Description

template<class TFunctor, class TParameters, class TFunctorValue>
class itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >

use FunctorTableBase to accelerate evaluation of functions.

Author
Jian Cheng (JC), jian..nosp@m.chen.nosp@m.g.198.nosp@m.3@gm.nosp@m.ail.c.nosp@m.om

Definition at line 38 of file itkFunctorTableBase.h.

Public Types

typedef SmartPointer< const SelfConstPointer
 
typedef TFunctor FunctorType
 
typedef TFunctorValue FunctorValueType
 
typedef TParameters ParametersType
 
typedef SmartPointer< SelfPointer
 
typedef FunctorTableBase Self
 
typedef utl_shared_ptr< STDVectorTypeSTDVectorPointer
 
typedef std::vector< double > STDVectorType
 
typedef Object Superclass
 

Public Member Functions

void BuildTable ()
 
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
FunctorValueType GetFunctionValue (const ParametersType &param)
 
FunctorTypeGetFunctor ()
 
const FunctorTypeGetFunctor () const
 
virtual const char * GetNameOfClass () const
 
unsigned long GetTableSize () const
 
virtual void Initialize ()
 
bool IsTableBuilt () const
 
void SetFunctor (const FunctorType &functor)
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

 FunctorTableBase ()
 
LightObject::Pointer InternalClone () const ITK_OVERRIDE
 
virtual ~FunctorTableBase ()
 

Protected Attributes

FunctorType m_Functor
 

Private Member Functions

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

Member Typedef Documentation

template<class TFunctor, class TParameters, class TFunctorValue>
typedef SmartPointer<const Self> itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::ConstPointer

Definition at line 46 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
typedef TFunctor itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::FunctorType

Definition at line 55 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
typedef TFunctorValue itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::FunctorValueType

Definition at line 56 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
typedef TParameters itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::ParametersType

Definition at line 52 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
typedef SmartPointer<Self> itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::Pointer

Definition at line 45 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
typedef FunctorTableBase itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::Self

Standard class typedefs.

Definition at line 43 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
typedef utl_shared_ptr<STDVectorType > itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::STDVectorPointer

Definition at line 59 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
typedef std::vector<double> itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::STDVectorType

Definition at line 58 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
typedef Object itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::Superclass

Definition at line 44 of file itkFunctorTableBase.h.

Constructor & Destructor Documentation

template<class TFunctor, class TParameters, class TFunctorValue>
itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::FunctorTableBase ( )
inlineprotected

Definition at line 109 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
virtual itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::~FunctorTableBase ( )
inlineprotectedvirtual

Definition at line 112 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::FunctorTableBase ( const Self )
private

Member Function Documentation

template<class TFunctor, class TParameters, class TFunctorValue>
void itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::BuildTable ( )
inline

Definition at line 88 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
virtual::itk::LightObject::Pointer itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::CreateAnother ( void  ) const
template<class TFunctor, class TParameters, class TFunctorValue>
FunctorValueType itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::GetFunctionValue ( const ParametersType param)
inline
Note
virtual function is a little bit slower. Thus it is not efficient if a virtual function is called too many times

Definition at line 103 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
FunctorType& itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::GetFunctor ( )
inline

Get the functor object. The functor is returned by reference. (Functors do not have to derive from itk::LightObject, so they do not necessarily have a reference count. So we cannot return a SmartPointer.)

Definition at line 66 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
const FunctorType& itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::GetFunctor ( ) const
inline

Definition at line 67 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
virtual const char* itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods)

Reimplemented in itk::FunctorHashTable< TFunctor, TParameters, TFunctorValue, THash >, and itk::UnaryFunctorLookUpTable< TFunctor >.

template<class TFunctor, class TParameters, class TFunctorValue>
unsigned long itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::GetTableSize ( ) const
inline

Definition at line 92 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
virtual void itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::Initialize ( )
inlinevirtual

Reimplemented in itk::UnaryFunctorLookUpTable< TFunctor >.

Definition at line 84 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
LightObject::Pointer itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::InternalClone ( ) const
inlineprotected

Definition at line 119 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
bool itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::IsTableBuilt ( ) const
inline

Definition at line 97 of file itkFunctorTableBase.h.

template<class TFunctor, class TParameters, class TFunctorValue>
static Pointer itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::New ( )
static

Method for creation through the object factory.

template<class TFunctor, class TParameters, class TFunctorValue>
void itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::operator= ( const Self )
private
template<class TFunctor, class TParameters, class TFunctorValue>
void itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::SetFunctor ( const FunctorType functor)
inline

Set the functor object. This replaces the current Functor with a copy of the specified Functor. This allows the user to specify a functor that has ivars set differently than the default functor. This method requires an operator!=() be defined on the functor (or the compiler's default implementation of operator!=() being appropriate).

Definition at line 75 of file itkFunctorTableBase.h.

Member Data Documentation

template<class TFunctor, class TParameters, class TFunctorValue>
FunctorType itk::FunctorTableBase< TFunctor, TParameters, TFunctorValue >::m_Functor
protected

Definition at line 131 of file itkFunctorTableBase.h.


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