go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType > Class Template Reference

#include <itkGPUCompositeTransformCopier.h>

Detailed Description

template<typename TTypeList, typename NDimensions, typename TCompositeTransform, typename TOutputTransformPrecisionType>
class itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >

A helper class which creates an GPU composite transform which is perfect copy of the CPU composite transform.

This class is NOT a filter. Although it has an API similar to a filter, this class is not intended to be used in a pipeline. Instead, the typical use will be like it is illustrated in the following code:

struct OCLImageDims
{
itkStaticConstMacro( Support1D, bool, true );
itkStaticConstMacro( Support2D, bool, true );
itkStaticConstMacro( Support3D, bool, true );
};
typedef typelist::MakeTypeList< short, float >::Type OCLImageTypes;
typedef itk::CompositeTransform< float, 3 > TransformType;
CopierType::Pointer copier = CopierType::New();
copier->SetInputTransform(CPUTransform);
copier->Update();
TransformType::Pointer GPUTransform = copier->GetModifiableOutput();
A helper class which creates an GPU composite transform which is perfect copy of the CPU composite tr...
itkStaticConstMacro(SpaceDimension, unsigned int, CPUCompositeTransformType::InputDimension)

Note that the Update() method must be called explicitly in the filter that provides the input to the GPUCompositeTransformCopier object. This is needed because the GPUCompositeTransformCopier is not a pipeline filter.

Author
Denis P. Shamonin and Marius Staring. Division of Image Processing, Department of Radiology, Leiden, The Netherlands
Note
This work was funded by the Netherlands Organisation for Scientific Research (NWO NRG-2010.02 and NWO 639.021.124).

Definition at line 65 of file itkGPUCompositeTransformCopier.h.

+ Inheritance diagram for itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >:

Public Types

typedef SmartPointer< const SelfConstPointer
 
typedef CPUCompositeTransformType::ConstPointer CPUCompositeTransformConstPointer
 
typedef TCompositeTransform CPUCompositeTransformType
 
typedef CPUCompositeTransformType::ScalarType CPUScalarType
 
typedef CPUTransformType::Pointer CPUTransformPointer
 
typedef CPUCompositeTransformType::TransformType CPUTransformType
 
typedef GPUCompositeTransformType::Pointer GPUCompositeTransformPointer
 
typedef CompositeTransform< GPUScalarType, SpaceDimension > GPUCompositeTransformType
 
typedef GPUTransformCopierType::GPUTransformPointer GPUOutputTransformPointer
 
typedef TOutputTransformPrecisionType GPUScalarType
 
typedef GPUTransformCopierType::Pointer GPUTransformCopierPointer
 
typedef GPUTransformCopier< TTypeList, NDimensions, CPUTransformType, GPUScalarTypeGPUTransformCopierType
 
typedef SmartPointer< SelfPointer
 
typedef GPUCompositeTransformCopier Self
 
typedef Object Superclass
 

Public Member Functions

virtual const char * GetClassName () const
 
virtual bool GetExplicitMode () const
 
 itkGetModifiableObjectMacro (Output, GPUCompositeTransformType)
 
 itkStaticConstMacro (SpaceDimension, unsigned int, CPUCompositeTransformType::InputDimension)
 
virtual void SetExplicitMode (bool _arg)
 
virtual void SetInputTransform (const CPUCompositeTransformType *_arg)
 
void Update (void)
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

 GPUCompositeTransformCopier ()
 
virtual void PrintSelf (std::ostream &os, Indent indent) const override
 
virtual ~GPUCompositeTransformCopier ()
 

Private Member Functions

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

Private Attributes

bool m_ExplicitMode
 
CPUCompositeTransformConstPointer m_InputTransform
 
ModifiedTimeType m_InternalTransformTime
 
GPUCompositeTransformPointer m_Output
 
GPUTransformCopierPointer m_TransformCopier
 

Member Typedef Documentation

◆ ConstPointer

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
typedef SmartPointer< const Self > itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::ConstPointer

Definition at line 73 of file itkGPUCompositeTransformCopier.h.

◆ CPUCompositeTransformConstPointer

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
typedef CPUCompositeTransformType::ConstPointer itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::CPUCompositeTransformConstPointer

Definition at line 83 of file itkGPUCompositeTransformCopier.h.

◆ CPUCompositeTransformType

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
typedef TCompositeTransform itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::CPUCompositeTransformType

Type CPU definitions for the transform.

Definition at line 82 of file itkGPUCompositeTransformCopier.h.

◆ CPUScalarType

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
typedef CPUCompositeTransformType::ScalarType itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::CPUScalarType

Definition at line 86 of file itkGPUCompositeTransformCopier.h.

◆ CPUTransformPointer

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
typedef CPUTransformType::Pointer itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::CPUTransformPointer

Definition at line 85 of file itkGPUCompositeTransformCopier.h.

◆ CPUTransformType

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
typedef CPUCompositeTransformType::TransformType itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::CPUTransformType

Definition at line 84 of file itkGPUCompositeTransformCopier.h.

◆ GPUCompositeTransformPointer

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
typedef GPUCompositeTransformType::Pointer itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::GPUCompositeTransformPointer

Definition at line 97 of file itkGPUCompositeTransformCopier.h.

◆ GPUCompositeTransformType

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
typedef CompositeTransform< GPUScalarType, SpaceDimension > itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::GPUCompositeTransformType

Definition at line 96 of file itkGPUCompositeTransformCopier.h.

◆ GPUOutputTransformPointer

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
typedef GPUTransformCopierType::GPUTransformPointer itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::GPUOutputTransformPointer

Definition at line 103 of file itkGPUCompositeTransformCopier.h.

◆ GPUScalarType

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
typedef TOutputTransformPrecisionType itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::GPUScalarType

Type GPU definitions for the transform.

Definition at line 94 of file itkGPUCompositeTransformCopier.h.

◆ GPUTransformCopierPointer

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
typedef GPUTransformCopierType::Pointer itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::GPUTransformCopierPointer

Definition at line 102 of file itkGPUCompositeTransformCopier.h.

◆ GPUTransformCopierType

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
typedef GPUTransformCopier< TTypeList, NDimensions, CPUTransformType, GPUScalarType > itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::GPUTransformCopierType

Type definitions for the transform copier.

Definition at line 101 of file itkGPUCompositeTransformCopier.h.

◆ Pointer

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
typedef SmartPointer< Self > itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::Pointer

Definition at line 72 of file itkGPUCompositeTransformCopier.h.

◆ Self

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
typedef GPUCompositeTransformCopier itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::Self

Standard class typedefs.

Definition at line 70 of file itkGPUCompositeTransformCopier.h.

◆ Superclass

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
typedef Object itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::Superclass

Definition at line 71 of file itkGPUCompositeTransformCopier.h.

Constructor & Destructor Documentation

◆ GPUCompositeTransformCopier() [1/2]

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::GPUCompositeTransformCopier ( )
protected

◆ ~GPUCompositeTransformCopier()

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
virtual itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::~GPUCompositeTransformCopier ( )
inlineprotectedvirtual

Definition at line 135 of file itkGPUCompositeTransformCopier.h.

◆ GPUCompositeTransformCopier() [2/2]

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::GPUCompositeTransformCopier ( const Self )
private

Member Function Documentation

◆ GetClassName()

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
virtual const char * itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::GetClassName ( ) const
virtual

Run-time type information (and related methods).

◆ GetExplicitMode()

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
virtual bool itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::GetExplicitMode ( ) const
virtual

Get/Set the explicit mode. The default is true. If the explicit mode has been set to false that means that early in the code the factories has been created. ObjectFactoryBase::RegisterFactory( GPUAffineTransformFactory::New() ); ObjectFactoryBase::RegisterFactory( GPUTranslationTransformFactory::New() ); ObjectFactoryBase::RegisterFactory( GPUBSplineTransformFactory::New() ); ObjectFactoryBase::RegisterFactory( GPUEuler3DTransformFactory::New() ); ObjectFactoryBase::RegisterFactory( GPUSimilarity3DTransformFactory::New() );

◆ itkGetModifiableObjectMacro()

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::itkGetModifiableObjectMacro ( Output  ,
GPUCompositeTransformType   
)

Compute of the output transform.

◆ itkStaticConstMacro()

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::itkStaticConstMacro ( SpaceDimension  ,
unsigned int  ,
CPUCompositeTransformType::InputDimension   
)

Dimension of the domain space. TCompositeTransform::InputDimension and TCompositeTransform::OutputDimension are the same just pick the select one of them.

◆ New()

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
static Pointer itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::New ( )
static

Method for creation through the object factory.

◆ operator=()

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
void itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::operator= ( const Self )
private

◆ PrintSelf()

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
virtual void itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
overrideprotectedvirtual

◆ SetExplicitMode()

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
virtual void itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::SetExplicitMode ( bool  _arg)
virtual

◆ SetInputTransform()

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
virtual void itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::SetInputTransform ( const CPUCompositeTransformType _arg)
virtual

Get/Set the input transform.

◆ Update()

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
void itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::Update ( void  )

Update method.

Field Documentation

◆ m_ExplicitMode

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
bool itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::m_ExplicitMode
private

Definition at line 146 of file itkGPUCompositeTransformCopier.h.

◆ m_InputTransform

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
CPUCompositeTransformConstPointer itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::m_InputTransform
private

Definition at line 143 of file itkGPUCompositeTransformCopier.h.

◆ m_InternalTransformTime

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
ModifiedTimeType itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::m_InternalTransformTime
private

Definition at line 145 of file itkGPUCompositeTransformCopier.h.

◆ m_Output

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
GPUCompositeTransformPointer itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::m_Output
private

Definition at line 144 of file itkGPUCompositeTransformCopier.h.

◆ m_TransformCopier

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
GPUTransformCopierPointer itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::m_TransformCopier
private

Definition at line 147 of file itkGPUCompositeTransformCopier.h.



Generated on 1667476801 for elastix by doxygen 1.9.4 elastix logo