Loading...
Searching...
No Matches
itkGPUAdvancedCombinationTransformCopier.h
Go to the documentation of this file.
/*=========================================================================
*
* Copyright UMC Utrecht and contributors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0.txt
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*=========================================================================*/
#ifndef itkGPUAdvancedCombinationTransformCopier_h
#define itkGPUAdvancedCombinationTransformCopier_h
#include "itkGPUAdvancedCombinationTransform.h"
namespace itk
{
template <typename TTypeList,
typename NDimensions,
typename TAdvancedCombinationTransform,
typename TOutputTransformPrecisionType>
class ITK_TEMPLATE_EXPORT GPUAdvancedCombinationTransformCopier : public Object
{
public:
ITK_DISALLOW_COPY_AND_MOVE(GPUAdvancedCombinationTransformCopier);
using Self = GPUAdvancedCombinationTransformCopier;
using Superclass = Object;
using Pointer = SmartPointer<Self>;
using ConstPointer = SmartPointer<const Self>;
itkNewMacro(Self);
itkTypeMacro(GPUAdvancedCombinationTransformCopier, Object);
using CPUComboTransformType = TAdvancedCombinationTransform;
itkStaticConstMacro(SpaceDimension, unsigned int, CPUComboTransformType::SpaceDimension);
using CPUComboTransformConstPointer = typename CPUComboTransformType::ConstPointer;
using CPUCurrentTransformType = typename CPUComboTransformType::CurrentTransformType;
using CPUCurrentTransformPointer = typename CPUComboTransformType::CurrentTransformPointer;
using CPUCurrentTransformConstPointer = typename CPUComboTransformType::CurrentTransformConstPointer;
using CPUInitialTransformType = typename CPUComboTransformType::InitialTransformType;
using CPUInitialTransformPointer = typename CPUComboTransformType::InitialTransformPointer;
using CPUInitialTransformConstPointer = typename CPUComboTransformType::InitialTransformConstPointer;
using TransformType = typename CPUComboTransformType::TransformType; // itk::Transform
using TransformTypePointer = typename CPUComboTransformType::TransformTypePointer; // itk::Transform
using TransformTypeConstPointer = typename CPUComboTransformType::TransformTypeConstPointer; // itk::Transform
using CPUScalarType = typename CPUComboTransformType::ScalarType;
using CPUAdvancedTransformType = AdvancedTransform<CPUScalarType, SpaceDimension, SpaceDimension>;
using CPUParametersType = typename CPUAdvancedTransformType::ParametersType;
using CPUFixedParametersType = typename CPUAdvancedTransformType::FixedParametersType;
using GPUScalarType = TOutputTransformPrecisionType;
using GPUComboTransformType = GPUAdvancedCombinationTransform<GPUScalarType, SpaceDimension>;
using GPUComboTransformPointer = typename GPUComboTransformType::Pointer;
using GPUAdvancedTransformType = AdvancedTransform<GPUScalarType, SpaceDimension, SpaceDimension>;
using GPUAdvancedTransformPointer = typename GPUAdvancedTransformType::Pointer;
using GPUParametersType = typename GPUAdvancedTransformType::ParametersType;
using GPUFixedParametersType = typename GPUAdvancedTransformType::FixedParametersType;
itkSetConstObjectMacro(InputTransform, CPUComboTransformType);
itkGetModifiableObjectMacro(Output, GPUComboTransformType);
itkGetConstMacro(ExplicitMode, bool);
itkSetMacro(ExplicitMode, bool);
void
Update();
#ifdef ITK_USE_CONCEPT_CHECKING
// Begin concept checking
itkConceptMacro(OutputTransformPrecisionTypeIsFloatingPointCheck,
(Concept::IsFloatingPoint<TOutputTransformPrecisionType>));
// End concept checking
#endif
protected:
GPUAdvancedCombinationTransformCopier();
~GPUAdvancedCombinationTransformCopier() override = default;
void
PrintSelf(std::ostream & os, Indent indent) const override;
bool
CopyToCurrentTransform(const CPUCurrentTransformConstPointer & fromTransform, GPUComboTransformPointer & toTransform);
void
CastCopyTransformParameters(const CPUCurrentTransformConstPointer & fromTransform,
GPUAdvancedTransformPointer & toTransform);
void
CastCopyParameters(const CPUParametersType & from, GPUParametersType & to);
void
CastCopyFixedParameters(const CPUFixedParametersType & from, GPUFixedParametersType & to);
private:
bool
CopyBSplineTransform(const CPUCurrentTransformConstPointer & fromTransform, GPUComboTransformPointer & toTransform);
template <unsigned int Dimension>
struct ITK_TEMPLATE_EXPORT TransformSpaceDimensionToType
{};
template <unsigned int InputSpaceDimension>
bool
CopyEuler2DTransform(const CPUCurrentTransformConstPointer &,
GPUComboTransformPointer &,
TransformSpaceDimensionToType<InputSpaceDimension>)
{
return false;
}
template <unsigned int InputSpaceDimension>
bool
CopyEuler3DTransform(const CPUCurrentTransformConstPointer &,
GPUComboTransformPointer &,
TransformSpaceDimensionToType<InputSpaceDimension>)
{
return false;
}
bool
CopyEuler2DTransform(const CPUCurrentTransformConstPointer & fromTransform,
GPUComboTransformPointer & toTransform,
TransformSpaceDimensionToType<2>);
bool
CopyEuler3DTransform(const CPUCurrentTransformConstPointer & fromTransform,
GPUComboTransformPointer & toTransform,
TransformSpaceDimensionToType<3>);
template <unsigned int InputSpaceDimension>
bool
CopySimilarity2DTransform(const CPUCurrentTransformConstPointer &,
GPUComboTransformPointer &,
TransformSpaceDimensionToType<InputSpaceDimension>)
{
return false;
}
template <unsigned int InputSpaceDimension>
bool
CopySimilarity3DTransform(const CPUCurrentTransformConstPointer &,
GPUComboTransformPointer &,
TransformSpaceDimensionToType<InputSpaceDimension>)
{
return false;
}
bool
CopySimilarity2DTransform(const CPUCurrentTransformConstPointer & fromTransform,
GPUComboTransformPointer & toTransform,
TransformSpaceDimensionToType<2>);
bool
CopySimilarity3DTransform(const CPUCurrentTransformConstPointer & fromTransform,
GPUComboTransformPointer & toTransform,
TransformSpaceDimensionToType<3>);
private:
CPUComboTransformConstPointer m_InputTransform{};
GPUComboTransformPointer m_Output{};
ModifiedTimeType m_InternalTransformTime{};
bool m_ExplicitMode{};
};
} // end namespace itk
#ifndef ITK_MANUAL_INSTANTIATION
# include "itkGPUAdvancedCombinationTransformCopier.hxx"
#endif
#endif /* itkGPUAdvancedCombinationTransformCopier_h */
itk::AdvancedTransform
Transform maps points, vectors and covariant vectors from an input space to an output space.
Definition itkAdvancedTransform.h:84
itk::AdvancedTransform< GPUScalarType, SpaceDimension, SpaceDimension >::Pointer
SmartPointer< Self > Pointer
Definition itkAdvancedTransform.h:91
itk::GPUAdvancedCombinationTransformCopier::ConstPointer
SmartPointer< const Self > ConstPointer
Definition itkGPUAdvancedCombinationTransformCopier.h:75
itk::GPUAdvancedCombinationTransformCopier::CastCopyTransformParameters
void CastCopyTransformParameters(const CPUCurrentTransformConstPointer &fromTransform, GPUAdvancedTransformPointer &toTransform)
itk::GPUAdvancedCombinationTransformCopier::TransformTypePointer
typename CPUComboTransformType::TransformTypePointer TransformTypePointer
Definition itkGPUAdvancedCombinationTransformCopier.h:98
itk::GPUAdvancedCombinationTransformCopier::CopyEuler2DTransform
bool CopyEuler2DTransform(const CPUCurrentTransformConstPointer &fromTransform, GPUComboTransformPointer &toTransform, TransformSpaceDimensionToType< 2 >)
itk::GPUAdvancedCombinationTransformCopier::CopyToCurrentTransform
bool CopyToCurrentTransform(const CPUCurrentTransformConstPointer &fromTransform, GPUComboTransformPointer &toTransform)
itk::GPUAdvancedCombinationTransformCopier::CopyEuler3DTransform
bool CopyEuler3DTransform(const CPUCurrentTransformConstPointer &fromTransform, GPUComboTransformPointer &toTransform, TransformSpaceDimensionToType< 3 >)
itk::GPUAdvancedCombinationTransformCopier::CastCopyParameters
void CastCopyParameters(const CPUParametersType &from, GPUParametersType &to)
itk::GPUAdvancedCombinationTransformCopier::GPUAdvancedCombinationTransformCopier
GPUAdvancedCombinationTransformCopier()
itk::GPUAdvancedCombinationTransformCopier::Pointer
SmartPointer< Self > Pointer
Definition itkGPUAdvancedCombinationTransformCopier.h:74
itk::GPUAdvancedCombinationTransformCopier::itkStaticConstMacro
itkStaticConstMacro(SpaceDimension, unsigned int, CPUComboTransformType::SpaceDimension)
itk::GPUAdvancedCombinationTransformCopier::CopySimilarity3DTransform
bool CopySimilarity3DTransform(const CPUCurrentTransformConstPointer &, GPUComboTransformPointer &, TransformSpaceDimensionToType< InputSpaceDimension >)
Definition itkGPUAdvancedCombinationTransformCopier.h:227
itk::GPUAdvancedCombinationTransformCopier::TransformTypeConstPointer
typename CPUComboTransformType::TransformTypeConstPointer TransformTypeConstPointer
Definition itkGPUAdvancedCombinationTransformCopier.h:99
itk::GPUAdvancedCombinationTransformCopier::CPUComboTransformConstPointer
typename CPUComboTransformType::ConstPointer CPUComboTransformConstPointer
Definition itkGPUAdvancedCombinationTransformCopier.h:90
itk::GPUAdvancedCombinationTransformCopier::CopySimilarity3DTransform
bool CopySimilarity3DTransform(const CPUCurrentTransformConstPointer &fromTransform, GPUComboTransformPointer &toTransform, TransformSpaceDimensionToType< 3 >)
itk::GPUAdvancedCombinationTransformCopier::PrintSelf
void PrintSelf(std::ostream &os, Indent indent) const override
itk::GPUAdvancedCombinationTransformCopier::CopyEuler2DTransform
bool CopyEuler2DTransform(const CPUCurrentTransformConstPointer &, GPUComboTransformPointer &, TransformSpaceDimensionToType< InputSpaceDimension >)
Definition itkGPUAdvancedCombinationTransformCopier.h:182
itk::GPUAdvancedCombinationTransformCopier::GPUComboTransformType
GPUAdvancedCombinationTransform< GPUScalarType, SpaceDimension > GPUComboTransformType
Definition itkGPUAdvancedCombinationTransformCopier.h:109
itk::GPUAdvancedCombinationTransformCopier::CPUComboTransformType
TAdvancedCombinationTransform CPUComboTransformType
Definition itkGPUAdvancedCombinationTransformCopier.h:84
itk::GPUAdvancedCombinationTransformCopier::CPUAdvancedTransformType
AdvancedTransform< CPUScalarType, SpaceDimension, SpaceDimension > CPUAdvancedTransformType
Definition itkGPUAdvancedCombinationTransformCopier.h:103
itk::GPUAdvancedCombinationTransformCopier::CPUInitialTransformPointer
typename CPUComboTransformType::InitialTransformPointer CPUInitialTransformPointer
Definition itkGPUAdvancedCombinationTransformCopier.h:95
itk::GPUAdvancedCombinationTransformCopier::Update
void Update()
itk::GPUAdvancedCombinationTransformCopier::GPUAdvancedTransformPointer
typename GPUAdvancedTransformType::Pointer GPUAdvancedTransformPointer
Definition itkGPUAdvancedCombinationTransformCopier.h:114
itk::GPUAdvancedCombinationTransformCopier::CPUCurrentTransformConstPointer
typename CPUComboTransformType::CurrentTransformConstPointer CPUCurrentTransformConstPointer
Definition itkGPUAdvancedCombinationTransformCopier.h:93
itk::GPUAdvancedCombinationTransformCopier::CPUParametersType
typename CPUAdvancedTransformType::ParametersType CPUParametersType
Definition itkGPUAdvancedCombinationTransformCopier.h:104
itk::GPUAdvancedCombinationTransformCopier::ITK_DISALLOW_COPY_AND_MOVE
ITK_DISALLOW_COPY_AND_MOVE(GPUAdvancedCombinationTransformCopier)
itk::GPUAdvancedCombinationTransformCopier::~GPUAdvancedCombinationTransformCopier
~GPUAdvancedCombinationTransformCopier() override=default
itk::GPUAdvancedCombinationTransformCopier::GPUComboTransformPointer
typename GPUComboTransformType::Pointer GPUComboTransformPointer
Definition itkGPUAdvancedCombinationTransformCopier.h:110
itk::GPUAdvancedCombinationTransformCopier::GPUScalarType
TOutputTransformPrecisionType GPUScalarType
Definition itkGPUAdvancedCombinationTransformCopier.h:108
itk::GPUAdvancedCombinationTransformCopier::CopyBSplineTransform
bool CopyBSplineTransform(const CPUCurrentTransformConstPointer &fromTransform, GPUComboTransformPointer &toTransform)
itk::GPUAdvancedCombinationTransformCopier::GPUParametersType
typename GPUAdvancedTransformType::ParametersType GPUParametersType
Definition itkGPUAdvancedCombinationTransformCopier.h:115
itk::GPUAdvancedCombinationTransformCopier::CPUFixedParametersType
typename CPUAdvancedTransformType::FixedParametersType CPUFixedParametersType
Definition itkGPUAdvancedCombinationTransformCopier.h:105
itk::GPUAdvancedCombinationTransformCopier::CPUInitialTransformConstPointer
typename CPUComboTransformType::InitialTransformConstPointer CPUInitialTransformConstPointer
Definition itkGPUAdvancedCombinationTransformCopier.h:96
itk::GPUAdvancedCombinationTransformCopier::CopyEuler3DTransform
bool CopyEuler3DTransform(const CPUCurrentTransformConstPointer &, GPUComboTransformPointer &, TransformSpaceDimensionToType< InputSpaceDimension >)
Definition itkGPUAdvancedCombinationTransformCopier.h:193
itk::GPUAdvancedCombinationTransformCopier::Self
GPUAdvancedCombinationTransformCopier Self
Definition itkGPUAdvancedCombinationTransformCopier.h:72
itk::GPUAdvancedCombinationTransformCopier::itkGetModifiableObjectMacro
itkGetModifiableObjectMacro(Output, GPUComboTransformType)
itk::GPUAdvancedCombinationTransformCopier::m_Output
GPUComboTransformPointer m_Output
Definition itkGPUAdvancedCombinationTransformCopier.h:249
itk::GPUAdvancedCombinationTransformCopier::m_ExplicitMode
bool m_ExplicitMode
Definition itkGPUAdvancedCombinationTransformCopier.h:251
itk::GPUAdvancedCombinationTransformCopier::TransformType
typename CPUComboTransformType::TransformType TransformType
Definition itkGPUAdvancedCombinationTransformCopier.h:97
itk::GPUAdvancedCombinationTransformCopier::CopySimilarity2DTransform
bool CopySimilarity2DTransform(const CPUCurrentTransformConstPointer &fromTransform, GPUComboTransformPointer &toTransform, TransformSpaceDimensionToType< 2 >)
itk::GPUAdvancedCombinationTransformCopier::m_InputTransform
CPUComboTransformConstPointer m_InputTransform
Definition itkGPUAdvancedCombinationTransformCopier.h:248
itk::GPUAdvancedCombinationTransformCopier::CPUInitialTransformType
typename CPUComboTransformType::InitialTransformType CPUInitialTransformType
Definition itkGPUAdvancedCombinationTransformCopier.h:94
itk::GPUAdvancedCombinationTransformCopier::CPUCurrentTransformPointer
typename CPUComboTransformType::CurrentTransformPointer CPUCurrentTransformPointer
Definition itkGPUAdvancedCombinationTransformCopier.h:92
itk::GPUAdvancedCombinationTransformCopier::GPUAdvancedTransformType
AdvancedTransform< GPUScalarType, SpaceDimension, SpaceDimension > GPUAdvancedTransformType
Definition itkGPUAdvancedCombinationTransformCopier.h:113
itk::GPUAdvancedCombinationTransformCopier::CopySimilarity2DTransform
bool CopySimilarity2DTransform(const CPUCurrentTransformConstPointer &, GPUComboTransformPointer &, TransformSpaceDimensionToType< InputSpaceDimension >)
Definition itkGPUAdvancedCombinationTransformCopier.h:216
itk::GPUAdvancedCombinationTransformCopier::GPUFixedParametersType
typename GPUAdvancedTransformType::FixedParametersType GPUFixedParametersType
Definition itkGPUAdvancedCombinationTransformCopier.h:116
itk::GPUAdvancedCombinationTransformCopier::CastCopyFixedParameters
void CastCopyFixedParameters(const CPUFixedParametersType &from, GPUFixedParametersType &to)
itk::GPUAdvancedCombinationTransformCopier::m_InternalTransformTime
ModifiedTimeType m_InternalTransformTime
Definition itkGPUAdvancedCombinationTransformCopier.h:250
itk::GPUAdvancedCombinationTransformCopier::CPUCurrentTransformType
typename CPUComboTransformType::CurrentTransformType CPUCurrentTransformType
Definition itkGPUAdvancedCombinationTransformCopier.h:91
itk::GPUAdvancedCombinationTransformCopier::CPUScalarType
typename CPUComboTransformType::ScalarType CPUScalarType
Definition itkGPUAdvancedCombinationTransformCopier.h:100
itk::GPUAdvancedCombinationTransformCopier::Superclass
Object Superclass
Definition itkGPUAdvancedCombinationTransformCopier.h:73
itk::GPUAdvancedCombinationTransform
GPU version of AdvancedCombinationTransform.
Definition itkGPUAdvancedCombinationTransform.h:43
itk::GPUAdvancedCombinationTransform< GPUScalarType, SpaceDimension >::Pointer
SmartPointer< Self > Pointer
Definition itkGPUAdvancedCombinationTransform.h:49
itkGPUAdvancedCombinationTransform.h
itk
Definition itkAdvancedImageToImageMetric.h:43
itk::GPUAdvancedCombinationTransformCopier::TransformSpaceDimensionToType
Definition itkGPUAdvancedCombinationTransformCopier.h:177

Generated on 1768596610 for elastix by 1.15.0 |