go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Attributes | Static Private Attributes
elastix::AdvancedTransformAdapter< TScalarType, NDimensions > Class Template Reference

#include <elxAdvancedTransformAdapter.h>

Detailed Description

template<class TScalarType, unsigned int NDimensions>
class elastix::AdvancedTransformAdapter< TScalarType, NDimensions >

Adapts the ITK transform that is specified by AdvancedTransformAdapter::SetExternalTransform to the elastix AdvancedTransform interface.

DO NOT USE IT FOR REGISTRATION. DO NOT USE IT TO RETRIEVE JACOBIAN OR THE HESSIAN VALUES.

Definition at line 38 of file elxAdvancedTransformAdapter.h.

+ Inheritance diagram for elastix::AdvancedTransformAdapter< TScalarType, NDimensions >:

Public Types

using ConstPointer = itk::SmartPointer< const Self >
 
using Pointer = itk::SmartPointer< Self >
 
using Self = AdvancedTransformAdapter
 
using Superclass = itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >
 
- Public Types inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >
using ConstPointer = SmartPointer< const Self >
 
using InternalMatrixType = typename SpatialJacobianType::InternalMatrixType
 
using InverseTransformBaseType = typename Superclass::InverseTransformBaseType
 
using JacobianOfSpatialHessianType = std::vector< SpatialHessianType >
 
using JacobianOfSpatialJacobianType = std::vector< SpatialJacobianType >
 
using MovingImageGradientType = OutputCovariantVectorType
 
using MovingImageGradientValueType = typename MovingImageGradientType::ValueType
 
using NonZeroJacobianIndicesType = std::vector< unsigned long >
 
using Pointer = SmartPointer< Self >
 
using Self = AdvancedTransform
 
using SpatialHessianType = FixedArray< Matrix< ScalarType, InputSpaceDimension, InputSpaceDimension >, OutputSpaceDimension >
 
using SpatialJacobianType = Matrix< ScalarType, OutputSpaceDimension, InputSpaceDimension >
 
using Superclass = Transform< TScalarType, NInputDimensions, NOutputDimensions >
 
using TransformType = Transform< TScalarType, NInputDimensions, NOutputDimensions >
 
using TransformTypeConstPointer = typename TransformType::ConstPointer
 
using TransformTypePointer = typename TransformType::Pointer
 

Public Member Functions

virtual const char * GetClassName () const
 
const ParametersType & GetFixedParameters () const override
 
void GetJacobian (const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const override
 
void GetJacobianOfSpatialHessian (const InputPointType &, JacobianOfSpatialHessianType &, NonZeroJacobianIndicesType &) const override
 
void GetJacobianOfSpatialHessian (const InputPointType &, SpatialHessianType &, JacobianOfSpatialHessianType &, NonZeroJacobianIndicesType &) const override
 
void GetJacobianOfSpatialJacobian (const InputPointType &, JacobianOfSpatialJacobianType &, NonZeroJacobianIndicesType &) const override
 
void GetJacobianOfSpatialJacobian (const InputPointType &, SpatialJacobianType &, JacobianOfSpatialJacobianType &, NonZeroJacobianIndicesType &) const override
 
TransformTypeGetModifiableExternalTransform () const
 
void GetSpatialHessian (const InputPointType &, SpatialHessianType &) const override
 
void GetSpatialJacobian (const InputPointType &, SpatialJacobianType &) const override
 
bool IsLinear () const override
 
 ITK_DISALLOW_COPY_AND_MOVE (AdvancedTransformAdapter)
 
 itkStaticConstMacro (InputSpaceDimension, unsigned int, Superclass::InputSpaceDimension)
 
 itkStaticConstMacro (OutputSpaceDimension, unsigned int, Superclass::OutputSpaceDimension)
 
virtual void SetExternalTransform (TransformType *_arg)
 
void SetFixedParameters (const ParametersType &) override
 
void SetParameters (const ParametersType &parameters) override
 
OutputCovariantVectorType TransformCovariantVector (const InputCovariantVectorType &) const override
 
OutputPointType TransformPoint (const InputPointType &point) const override
 
OutputVectorType TransformVector (const InputVectorType &) const override
 
OutputVnlVectorType TransformVector (const InputVnlVectorType &) const override
 
- Public Member Functions inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >
void ComputeJacobianWithRespectToParameters (const InputPointType &, JacobianType &) const override
 
virtual void EvaluateJacobianWithImageGradientProduct (const InputPointType &inputPoint, const MovingImageGradientType &movingImageGradient, DerivativeType &imageJacobian, NonZeroJacobianIndicesType &nonZeroJacobianIndices) const
 
virtual bool GetHasNonZeroJacobianOfSpatialHessian () const
 
virtual bool GetHasNonZeroSpatialHessian () const
 
virtual NumberOfParametersType GetNumberOfNonZeroJacobianIndices () const
 
 ITK_DISALLOW_COPY_AND_MOVE (AdvancedTransform)
 
 itkStaticConstMacro (InputSpaceDimension, unsigned int, NInputDimensions)
 
 itkStaticConstMacro (OutputSpaceDimension, unsigned int, NOutputDimensions)
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

 AdvancedTransformAdapter ()=default
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
 ~AdvancedTransformAdapter () override=default
 
- Protected Member Functions inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >
 AdvancedTransform ()=default
 
 ~AdvancedTransform () override=default
 

Private Attributes

itk::SmartPointer< TransformTypem_ExternalTransform {}
 

Static Private Attributes

static constexpr const char * unimplementedOverrideMessage = "Not implemented for AdvancedTransformAdapter"
 

Additional Inherited Members

- Protected Attributes inherited from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >
bool m_HasNonZeroJacobianOfSpatialHessian
 
bool m_HasNonZeroSpatialHessian
 

Member Typedef Documentation

◆ ConstPointer

template<class TScalarType , unsigned int NDimensions>
using elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::ConstPointer = itk::SmartPointer<const Self>

Definition at line 48 of file elxAdvancedTransformAdapter.h.

◆ Pointer

template<class TScalarType , unsigned int NDimensions>
using elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::Pointer = itk::SmartPointer<Self>

Definition at line 47 of file elxAdvancedTransformAdapter.h.

◆ Self

template<class TScalarType , unsigned int NDimensions>
using elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::Self = AdvancedTransformAdapter

Standard class typedefs.

Definition at line 45 of file elxAdvancedTransformAdapter.h.

◆ Superclass

template<class TScalarType , unsigned int NDimensions>
using elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::Superclass = itk::AdvancedTransform<TScalarType, NDimensions, NDimensions>

Definition at line 46 of file elxAdvancedTransformAdapter.h.

Constructor & Destructor Documentation

◆ AdvancedTransformAdapter()

template<class TScalarType , unsigned int NDimensions>
elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::AdvancedTransformAdapter ( )
protecteddefault

Default-constructor.

◆ ~AdvancedTransformAdapter()

template<class TScalarType , unsigned int NDimensions>
elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::~AdvancedTransformAdapter ( )
overrideprotecteddefault

Destructor.

Member Function Documentation

◆ GetClassName()

template<class TScalarType , unsigned int NDimensions>
virtual const char * elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetClassName ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from itk::AdvancedTransform< TScalarType, NDimensions, NDimensions >.

◆ GetFixedParameters()

template<class TScalarType , unsigned int NDimensions>
const ParametersType & elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetFixedParameters ( ) const
inlineoverride

Get the fixed parameters.

Definition at line 99 of file elxAdvancedTransformAdapter.h.

◆ GetJacobian()

template<class TScalarType , unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetJacobian ( const InputPointType &  ,
JacobianType &  ,
NonZeroJacobianIndicesType  
) const
inlineoverridevirtual

◆ GetJacobianOfSpatialHessian() [1/2]

template<class TScalarType , unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetJacobianOfSpatialHessian ( const InputPointType &  ,
JacobianOfSpatialHessianType ,
NonZeroJacobianIndicesType  
) const
inlineoverridevirtual

◆ GetJacobianOfSpatialHessian() [2/2]

template<class TScalarType , unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetJacobianOfSpatialHessian ( const InputPointType &  ,
SpatialHessianType ,
JacobianOfSpatialHessianType ,
NonZeroJacobianIndicesType  
) const
inlineoverridevirtual

◆ GetJacobianOfSpatialJacobian() [1/2]

template<class TScalarType , unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetJacobianOfSpatialJacobian ( const InputPointType &  ,
JacobianOfSpatialJacobianType ,
NonZeroJacobianIndicesType  
) const
inlineoverridevirtual

◆ GetJacobianOfSpatialJacobian() [2/2]

template<class TScalarType , unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetJacobianOfSpatialJacobian ( const InputPointType &  ,
SpatialJacobianType ,
JacobianOfSpatialJacobianType ,
NonZeroJacobianIndicesType  
) const
inlineoverridevirtual

◆ GetModifiableExternalTransform()

template<class TScalarType , unsigned int NDimensions>
TransformType * elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetModifiableExternalTransform ( ) const
inline
Note
GetModifiableExternalTransform() is const, because it does not affect the adapter itself.

Definition at line 194 of file elxAdvancedTransformAdapter.h.

◆ GetSpatialHessian()

template<class TScalarType , unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetSpatialHessian ( const InputPointType &  ,
SpatialHessianType  
) const
inlineoverridevirtual

◆ GetSpatialJacobian()

template<class TScalarType , unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::GetSpatialJacobian ( const InputPointType &  ,
SpatialJacobianType  
) const
inlineoverridevirtual

◆ IsLinear()

template<class TScalarType , unsigned int NDimensions>
bool elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::IsLinear ( ) const
inlineoverride

Definition at line 131 of file elxAdvancedTransformAdapter.h.

◆ ITK_DISALLOW_COPY_AND_MOVE()

template<class TScalarType , unsigned int NDimensions>
elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::ITK_DISALLOW_COPY_AND_MOVE ( AdvancedTransformAdapter< TScalarType, NDimensions >  )

◆ itkStaticConstMacro() [1/2]

template<class TScalarType , unsigned int NDimensions>
elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::itkStaticConstMacro ( InputSpaceDimension  ,
unsigned int  ,
Superclass::InputSpaceDimension   
)

Dimension of the domain spaces.

◆ itkStaticConstMacro() [2/2]

template<class TScalarType , unsigned int NDimensions>
elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::itkStaticConstMacro ( OutputSpaceDimension  ,
unsigned int  ,
Superclass::OutputSpaceDimension   
)

◆ New()

template<class TScalarType , unsigned int NDimensions>
static Pointer elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::New ( )
static

New macro for creation of through the object factory.

◆ PrintSelf()

template<class TScalarType , unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
inlineoverrideprotected

Print contents of an AdvancedTransformAdapter.

Definition at line 208 of file elxAdvancedTransformAdapter.h.

◆ SetExternalTransform()

template<class TScalarType , unsigned int NDimensions>
virtual void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::SetExternalTransform ( TransformType _arg)
virtual

◆ SetFixedParameters()

template<class TScalarType , unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::SetFixedParameters ( const ParametersType &  )
inlineoverride

Set the fixed parameters. Not implemented for this transform.

Definition at line 92 of file elxAdvancedTransformAdapter.h.

◆ SetParameters()

template<class TScalarType , unsigned int NDimensions>
void elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::SetParameters ( const ParametersType &  parameters)
inlineoverride

Set the transformation parameters.

Definition at line 79 of file elxAdvancedTransformAdapter.h.

◆ TransformCovariantVector()

template<class TScalarType , unsigned int NDimensions>
OutputCovariantVectorType elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::TransformCovariantVector ( const InputCovariantVectorType &  ) const
inlineoverride

Definition at line 125 of file elxAdvancedTransformAdapter.h.

◆ TransformPoint()

template<class TScalarType , unsigned int NDimensions>
OutputPointType elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::TransformPoint ( const InputPointType &  point) const
inlineoverride

Transform a point.

Definition at line 106 of file elxAdvancedTransformAdapter.h.

◆ TransformVector() [1/2]

template<class TScalarType , unsigned int NDimensions>
OutputVectorType elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::TransformVector ( const InputVectorType &  ) const
inlineoverride

These vector transforms are not implemented for this transform.

Definition at line 113 of file elxAdvancedTransformAdapter.h.

◆ TransformVector() [2/2]

template<class TScalarType , unsigned int NDimensions>
OutputVnlVectorType elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::TransformVector ( const InputVnlVectorType &  ) const
inlineoverride

Definition at line 119 of file elxAdvancedTransformAdapter.h.

Field Documentation

◆ m_ExternalTransform

template<class TScalarType , unsigned int NDimensions>
itk::SmartPointer<TransformType> elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::m_ExternalTransform {}
private

Definition at line 231 of file elxAdvancedTransformAdapter.h.

◆ unimplementedOverrideMessage

template<class TScalarType , unsigned int NDimensions>
constexpr const char* elastix::AdvancedTransformAdapter< TScalarType, NDimensions >::unimplementedOverrideMessage = "Not implemented for AdvancedTransformAdapter"
staticconstexprprivate

Definition at line 229 of file elxAdvancedTransformAdapter.h.



Generated on 1739326392 for elastix by doxygen 1.9.8 elastix logo