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 itk::CompositeTransform< float, 3 > TransformType;
CopierType::Pointer copier = CopierType::New();
copier->SetInputTransform(CPUTransform);
copier->Update();
TransformType::Pointer GPUTransform = copier->GetModifiableOutput();

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 >:
Inheritance graph
[legend]

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 ITK_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

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.

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.

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 79 of file itkGPUCompositeTransformCopier.h.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::GPUCompositeTransformCopier ( )
protected
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.

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

Member Function Documentation

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).

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() );

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

Compute of the output transform.

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.

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.

template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
void itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::operator= ( const Self )
private
template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
virtual void itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
protectedvirtual
template<typename TTypeList , typename NDimensions , typename TCompositeTransform , typename TOutputTransformPrecisionType >
virtual void itk::GPUCompositeTransformCopier< TTypeList, NDimensions, TCompositeTransform, TOutputTransformPrecisionType >::SetExplicitMode ( bool  _arg)
virtual
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.

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

Update method.

Field Documentation

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.

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.

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.

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.

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 04-09-2015 for elastix by doxygen 1.8.9.1 elastix logo