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::CylinderModelGenerator< PreciseType > Class Template Reference

#include <itkCylinderModelGenerator.h>

+ Inheritance diagram for itk::CylinderModelGenerator< PreciseType >:
+ Collaboration diagram for itk::CylinderModelGenerator< PreciseType >:

Detailed Description

template<class PreciseType = double>
class itk::CylinderModelGenerator< PreciseType >

Cylinder Model.

Reference: Resolution of complex tissue microarchitecture using the diffusion orientation transform (DOT), Evren Ozarslan, NeuroImage 2006

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 42 of file itkCylinderModelGenerator.h.

Public Types

typedef SmartPointer< const SelfConstPointer
 
typedef Image3DType::Pointer Image3DPointer
 
typedef Image< double > Image3DType
 
typedef LUTExpType::Pointer LUTExpPointer
 
typedef UnaryFunctorLookUpTable< utl::Functor::Exp< double > > LUTExpType
 
typedef Superclass::MatrixPointer MatrixPointer
 
typedef Superclass::MatrixType MatrixType
 
typedef SmartPointer< SelfPointer
 
typedef Superclass::PointType PointType
 
typedef Superclass::SamplingSchemeQSpacePointer SamplingSchemeQSpacePointer
 
typedef Superclass::SamplingSchemeQSpaceType SamplingSchemeQSpaceType
 
typedef Superclass::SamplingSchemeRSpacePointer SamplingSchemeRSpacePointer
 
typedef Superclass::SamplingSchemeRSpaceType SamplingSchemeRSpaceType
 
typedef CylinderModelGenerator Self
 
typedef Superclass::STDVectorPointer STDVectorPointer
 
typedef Superclass::STDVectorType STDVectorType
 
typedef DiffusionModelGenerator< PreciseType > Superclass
 
typedef Superclass::VectorPointer VectorPointer
 
typedef Superclass::VectorType VectorType
 
- Public Types inherited from itk::DiffusionModelGenerator< PreciseType >
typedef SmartPointer< const SelfConstPointer
 
typedef utl_shared_ptr< MatrixTypeMatrixPointer
 
typedef vnl_matrix< double > MatrixType
 
typedef SmartPointer< SelfPointer
 
typedef SamplingSchemeQSpaceType::PointType PointType
 
typedef SamplingSchemeQSpaceType::Pointer SamplingSchemeQSpacePointer
 
typedef SamplingSchemeQSpace< double > SamplingSchemeQSpaceType
 
typedef SamplingSchemeRSpaceType::Pointer SamplingSchemeRSpacePointer
 
typedef SamplingScheme3D< double > SamplingSchemeRSpaceType
 
typedef DiffusionModelGenerator Self
 
typedef utl_shared_ptr< STDVectorTypeSTDVectorPointer
 
typedef std::vector< double > STDVectorType
 
typedef Object Superclass
 
typedef utl_shared_ptr< VectorTypeVectorPointer
 
typedef vnl_vector< double > VectorType
 

Public Member Functions

void BuildTable ()
 
void ComputeDWISamples ()
 
void ComputeEAPSamples ()
 
void ComputeODFSamples ()
 
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual PointType GetCylinderAxis ()
 
virtual double GetD0 ()
 
virtual double GetLength ()
 
virtual const char * GetNameOfClass () const
 
virtual double GetRadius ()
 
void Rotate (const MatrixType &mat)
 
virtual void SetCylinderAxis (PointType _arg)
 
virtual void SetD0 (double _arg)
 
virtual void SetLength (double _arg)
 
virtual void SetRadius (double _arg)
 
- Public Member Functions inherited from itk::DiffusionModelGenerator< PreciseType >
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual VectorPointer GetDWISamples ()
 
virtual VectorPointer GetEAPSamples ()
 
virtual int GetODFOrder ()
 
virtual VectorPointer GetODFSamples ()
 
 itkGetObjectMacro (SamplingSchemeQSpace, SamplingSchemeQSpaceType)
 
 itkGetObjectMacro (SamplingSchemeRSpace, SamplingSchemeRSpaceType)
 
virtual void SetODFOrder (int _arg)
 
virtual void SetSamplingSchemeQSpace (SamplingSchemeQSpaceType *_arg)
 
virtual void SetSamplingSchemeRSpace (SamplingSchemeRSpaceType *_arg)
 
virtual void VerifyInputParameters () const
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from itk::DiffusionModelGenerator< PreciseType >
static Pointer New ()
 

Protected Member Functions

 CylinderModelGenerator ()
 
LightObject::Pointer InternalClone () const
 
void PrintSelf (std::ostream &os, Indent indent) const
 
virtual ~CylinderModelGenerator ()
 
- Protected Member Functions inherited from itk::DiffusionModelGenerator< PreciseType >
 DiffusionModelGenerator ()
 
LightObject::Pointer InternalClone () const
 
void PrintSelf (std::ostream &os, Indent indent) const
 
virtual ~DiffusionModelGenerator ()
 

Protected Attributes

PointType m_CylinderAxis
 
double m_D0
 
Image3DPointer m_EAPVolumeForZAxis
 
double m_Length
 
LUTExpPointer m_LUTExp
 
Image3DPointer m_ODFVolumeForZAxis
 
double m_Radius
 
- Protected Attributes inherited from itk::DiffusionModelGenerator< PreciseType >
VectorPointer m_DWISamples
 
VectorPointer m_EAPSamples
 
int m_ODFOrder
 
VectorPointer m_ODFSamples
 
SamplingSchemeQSpacePointer m_SamplingSchemeQSpace
 
SamplingSchemeRSpacePointer m_SamplingSchemeRSpace
 

Private Member Functions

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

Member Typedef Documentation

template<class PreciseType = double>
typedef SmartPointer<const Self> itk::CylinderModelGenerator< PreciseType >::ConstPointer

Definition at line 49 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef Image3DType::Pointer itk::CylinderModelGenerator< PreciseType >::Image3DPointer

Definition at line 71 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef Image<double> itk::CylinderModelGenerator< PreciseType >::Image3DType

Definition at line 70 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef LUTExpType::Pointer itk::CylinderModelGenerator< PreciseType >::LUTExpPointer

Definition at line 74 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef UnaryFunctorLookUpTable<utl::Functor::Exp<double> > itk::CylinderModelGenerator< PreciseType >::LUTExpType

Definition at line 73 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef Superclass::MatrixPointer itk::CylinderModelGenerator< PreciseType >::MatrixPointer

Definition at line 59 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef Superclass::MatrixType itk::CylinderModelGenerator< PreciseType >::MatrixType

Definition at line 55 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef SmartPointer<Self> itk::CylinderModelGenerator< PreciseType >::Pointer

Definition at line 48 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef Superclass::PointType itk::CylinderModelGenerator< PreciseType >::PointType

Definition at line 68 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef Superclass::SamplingSchemeQSpacePointer itk::CylinderModelGenerator< PreciseType >::SamplingSchemeQSpacePointer

Definition at line 65 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef Superclass::SamplingSchemeQSpaceType itk::CylinderModelGenerator< PreciseType >::SamplingSchemeQSpaceType

Definition at line 64 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef Superclass::SamplingSchemeRSpacePointer itk::CylinderModelGenerator< PreciseType >::SamplingSchemeRSpacePointer

Definition at line 67 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef Superclass::SamplingSchemeRSpaceType itk::CylinderModelGenerator< PreciseType >::SamplingSchemeRSpaceType

Definition at line 66 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef CylinderModelGenerator itk::CylinderModelGenerator< PreciseType >::Self

Standard class typedefs.

Definition at line 46 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef Superclass::STDVectorPointer itk::CylinderModelGenerator< PreciseType >::STDVectorPointer

Definition at line 62 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef Superclass::STDVectorType itk::CylinderModelGenerator< PreciseType >::STDVectorType

Definition at line 61 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef DiffusionModelGenerator<PreciseType> itk::CylinderModelGenerator< PreciseType >::Superclass

Definition at line 47 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef Superclass::VectorPointer itk::CylinderModelGenerator< PreciseType >::VectorPointer

Definition at line 60 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
typedef Superclass::VectorType itk::CylinderModelGenerator< PreciseType >::VectorType

Definition at line 58 of file itkCylinderModelGenerator.h.

Constructor & Destructor Documentation

template<class PreciseType >
itk::CylinderModelGenerator< PreciseType >::CylinderModelGenerator ( )
protected
template<class PreciseType = double>
virtual itk::CylinderModelGenerator< PreciseType >::~CylinderModelGenerator ( )
inlineprotectedvirtual

Definition at line 104 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
itk::CylinderModelGenerator< PreciseType >::CylinderModelGenerator ( const Self )
private

Member Function Documentation

template<class PreciseType >
void itk::CylinderModelGenerator< PreciseType >::BuildTable ( )

Definition at line 73 of file itkCylinderModelGenerator.hxx.

References itk::CylinderModelGenerator< PreciseType >::PrintSelf().

Referenced by itk::CylinderModelGenerator< PreciseType >::InternalClone().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<class PreciseType >
void itk::CylinderModelGenerator< PreciseType >::ComputeDWISamples ( )
virtual

Reimplemented from itk::DiffusionModelGenerator< PreciseType >.

Definition at line 109 of file itkCylinderModelGenerator.hxx.

References utl::BesselJPrimeZerosTable, itk::CylinderModelGenerator< PreciseType >::ComputeEAPSamples(), M_PI, utlGlobalException, and utlShowPosition.

Referenced by itk::CylinderModelGenerator< PreciseType >::Rotate().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<class PreciseType >
void itk::CylinderModelGenerator< PreciseType >::ComputeEAPSamples ( )
virtual

Reimplemented from itk::DiffusionModelGenerator< PreciseType >.

Definition at line 215 of file itkCylinderModelGenerator.hxx.

References itk::CylinderModelGenerator< PreciseType >::ComputeODFSamples(), and utlGlobalException.

Referenced by itk::CylinderModelGenerator< PreciseType >::ComputeDWISamples().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<class PreciseType >
void itk::CylinderModelGenerator< PreciseType >::ComputeODFSamples ( )
virtual

Reimplemented from itk::DiffusionModelGenerator< PreciseType >.

Definition at line 225 of file itkCylinderModelGenerator.hxx.

References utlGlobalException.

Referenced by itk::CylinderModelGenerator< PreciseType >::ComputeEAPSamples().

+ Here is the caller graph for this function:

template<class PreciseType = double>
virtual::itk::LightObject::Pointer itk::CylinderModelGenerator< PreciseType >::CreateAnother ( void  ) const
template<class PreciseType = double>
virtual PointType itk::CylinderModelGenerator< PreciseType >::GetCylinderAxis ( )
virtual
template<class PreciseType = double>
virtual double itk::CylinderModelGenerator< PreciseType >::GetD0 ( )
virtual
template<class PreciseType = double>
virtual double itk::CylinderModelGenerator< PreciseType >::GetLength ( )
virtual
template<class PreciseType = double>
virtual const char* itk::CylinderModelGenerator< PreciseType >::GetNameOfClass ( ) const
virtual

Standard part of every itk Object.

Reimplemented from itk::DiffusionModelGenerator< PreciseType >.

template<class PreciseType = double>
virtual double itk::CylinderModelGenerator< PreciseType >::GetRadius ( )
virtual
template<class PreciseType >
LightObject::Pointer itk::CylinderModelGenerator< PreciseType >::InternalClone ( ) const
protected

Definition at line 51 of file itkCylinderModelGenerator.hxx.

References itk::CylinderModelGenerator< PreciseType >::BuildTable().

Referenced by itk::CylinderModelGenerator< PreciseType >::CylinderModelGenerator().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<class PreciseType = double>
static Pointer itk::CylinderModelGenerator< PreciseType >::New ( )
static

Method for creation through the object factory.

template<class PreciseType = double>
void itk::CylinderModelGenerator< PreciseType >::operator= ( const Self )
private
template<class PreciseType >
void itk::CylinderModelGenerator< PreciseType >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
protected

Definition at line 81 of file itkCylinderModelGenerator.hxx.

References PrintVar3, and itk::CylinderModelGenerator< PreciseType >::Rotate().

Referenced by itk::CylinderModelGenerator< PreciseType >::BuildTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<class PreciseType >
void itk::CylinderModelGenerator< PreciseType >::Rotate ( const MatrixType mat)
virtual

Reimplemented from itk::DiffusionModelGenerator< PreciseType >.

Definition at line 98 of file itkCylinderModelGenerator.hxx.

References itk::CylinderModelGenerator< PreciseType >::ComputeDWISamples().

Referenced by itk::CylinderModelGenerator< PreciseType >::PrintSelf().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<class PreciseType = double>
virtual void itk::CylinderModelGenerator< PreciseType >::SetCylinderAxis ( PointType  _arg)
virtual
template<class PreciseType = double>
virtual void itk::CylinderModelGenerator< PreciseType >::SetD0 ( double  _arg)
virtual
template<class PreciseType = double>
virtual void itk::CylinderModelGenerator< PreciseType >::SetLength ( double  _arg)
virtual
template<class PreciseType = double>
virtual void itk::CylinderModelGenerator< PreciseType >::SetRadius ( double  _arg)
virtual

Member Data Documentation

template<class PreciseType = double>
PointType itk::CylinderModelGenerator< PreciseType >::m_CylinderAxis
protected

Definition at line 116 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
double itk::CylinderModelGenerator< PreciseType >::m_D0
protected

Definition at line 114 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
Image3DPointer itk::CylinderModelGenerator< PreciseType >::m_EAPVolumeForZAxis
protected

Definition at line 120 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
double itk::CylinderModelGenerator< PreciseType >::m_Length
protected

Definition at line 112 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
LUTExpPointer itk::CylinderModelGenerator< PreciseType >::m_LUTExp
protected

Definition at line 118 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
Image3DPointer itk::CylinderModelGenerator< PreciseType >::m_ODFVolumeForZAxis
protected

Definition at line 121 of file itkCylinderModelGenerator.h.

template<class PreciseType = double>
double itk::CylinderModelGenerator< PreciseType >::m_Radius
protected

Definition at line 113 of file itkCylinderModelGenerator.h.


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