go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkGPUAdvancedCombinationTransformCopier.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright UMC Utrecht and contributors
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18#ifndef __itkGPUAdvancedCombinationTransformCopier_h
19#define __itkGPUAdvancedCombinationTransformCopier_h
20
22
23namespace itk
24{
62template< typename TTypeList, typename NDimensions,
63typename TAdvancedCombinationTransform, typename TOutputTransformPrecisionType >
65{
66public:
67
70 typedef Object Superclass;
72 typedef SmartPointer< const Self > ConstPointer;
73
75 itkNewMacro( Self );
76
79
81 typedef TAdvancedCombinationTransform CPUComboTransformType;
82
84 itkStaticConstMacro( SpaceDimension, unsigned int, CPUComboTransformType::SpaceDimension );
85
87 typedef typename CPUComboTransformType::ConstPointer CPUComboTransformConstPointer;
88 typedef typename CPUComboTransformType::CurrentTransformType CPUCurrentTransformType;
89 typedef typename CPUComboTransformType::CurrentTransformPointer CPUCurrentTransformPointer;
90 typedef typename CPUComboTransformType::CurrentTransformConstPointer CPUCurrentTransformConstPointer;
91 typedef typename CPUComboTransformType::InitialTransformType CPUInitialTransformType;
92 typedef typename CPUComboTransformType::InitialTransformPointer CPUInitialTransformPointer;
93 typedef typename CPUComboTransformType::InitialTransformConstPointer CPUInitialTransformConstPointer;
94 typedef typename CPUComboTransformType::TransformType TransformType; // itk::Transform
95 typedef typename CPUComboTransformType::TransformTypePointer TransformTypePointer; // itk::Transform
96 typedef typename CPUComboTransformType::TransformTypeConstPointer TransformTypeConstPointer; // itk::Transform
97 typedef typename CPUComboTransformType::ScalarType CPUScalarType;
98
104
106 typedef TOutputTransformPrecisionType GPUScalarType;
110
117
119 itkSetConstObjectMacro( InputTransform, CPUComboTransformType );
120
123
132 itkGetConstMacro( ExplicitMode, bool );
133 itkSetMacro( ExplicitMode, bool );
134
136 void Update( void );
137
138#ifdef ITK_USE_CONCEPT_CHECKING
139 // Begin concept checking
140 itkConceptMacro( OutputTransformPrecisionTypeIsFloatingPointCheck,
141 ( Concept::IsFloatingPoint< TOutputTransformPrecisionType > ) );
142 // End concept checking
143#endif
144
145protected:
146
149 void PrintSelf( std::ostream & os, Indent indent ) const override;
150
153 const CPUCurrentTransformConstPointer & fromTransform,
154 GPUComboTransformPointer & toTransform );
155
158 const CPUCurrentTransformConstPointer & fromTransform,
159 GPUAdvancedTransformPointer & toTransform );
160
163 const CPUParametersType & from,
164 GPUParametersType & to );
165
168 const CPUFixedParametersType & from,
170
171private:
172
175 const CPUCurrentTransformConstPointer & fromTransform,
176 GPUComboTransformPointer & toTransform );
177
179 template< unsigned int Dimension >
181
183 template< unsigned int InputSpaceDimension >
188 {
189 return false;
190 }
191
192
194 template< unsigned int InputSpaceDimension >
199 {
200 return false;
201 }
202
203
206 const CPUCurrentTransformConstPointer & fromTransform,
208
211 const CPUCurrentTransformConstPointer & fromTransform,
213
215 template< unsigned int InputSpaceDimension >
220 {
221 return false;
222 }
223
224
226 template< unsigned int InputSpaceDimension >
231 {
232 return false;
233 }
234
235
238 const CPUCurrentTransformConstPointer & fromTransform,
240
243 const CPUCurrentTransformConstPointer & fromTransform,
245
246private:
247
248 GPUAdvancedCombinationTransformCopier( const Self & ); // purposely not implemented
249 void operator=( const Self & ); // purposely not implemented
250
253 ModifiedTimeType m_InternalTransformTime;
255};
256
257} // end namespace itk
258
259#ifndef ITK_MANUAL_INSTANTIATION
260#include "itkGPUAdvancedCombinationTransformCopier.hxx"
261#endif
262
263#endif /* __itkGPUAdvancedCombinationTransformCopier_h */
Transform maps points, vectors and covariant vectors from an input space to an output space.
Superclass::ParametersType ParametersType
Superclass::FixedParametersType FixedParametersType
A helper class which creates an GPU AdvancedCombinationTransform which is perfect copy of the CPU Adv...
void CastCopyTransformParameters(const CPUCurrentTransformConstPointer &fromTransform, GPUAdvancedTransformPointer &toTransform)
bool CopyEuler2DTransform(const CPUCurrentTransformConstPointer &fromTransform, GPUComboTransformPointer &toTransform, TransformSpaceDimensionToType< 2 >)
bool CopyToCurrentTransform(const CPUCurrentTransformConstPointer &fromTransform, GPUComboTransformPointer &toTransform)
bool CopyEuler3DTransform(const CPUCurrentTransformConstPointer &fromTransform, GPUComboTransformPointer &toTransform, TransformSpaceDimensionToType< 3 >)
void CastCopyParameters(const CPUParametersType &from, GPUParametersType &to)
GPUAdvancedCombinationTransform< GPUScalarType, SpaceDimension > GPUComboTransformType
itkStaticConstMacro(SpaceDimension, unsigned int, CPUComboTransformType::SpaceDimension)
CPUComboTransformType::CurrentTransformType CPUCurrentTransformType
bool CopySimilarity3DTransform(const CPUCurrentTransformConstPointer &, GPUComboTransformPointer &, TransformSpaceDimensionToType< InputSpaceDimension >)
bool CopySimilarity3DTransform(const CPUCurrentTransformConstPointer &fromTransform, GPUComboTransformPointer &toTransform, TransformSpaceDimensionToType< 3 >)
CPUComboTransformType::TransformTypePointer TransformTypePointer
CPUComboTransformType::TransformTypeConstPointer TransformTypeConstPointer
void PrintSelf(std::ostream &os, Indent indent) const override
CPUComboTransformType::InitialTransformPointer CPUInitialTransformPointer
bool CopyEuler2DTransform(const CPUCurrentTransformConstPointer &, GPUComboTransformPointer &, TransformSpaceDimensionToType< InputSpaceDimension >)
CPUComboTransformType::CurrentTransformPointer CPUCurrentTransformPointer
CPUComboTransformType::InitialTransformType CPUInitialTransformType
CPUAdvancedTransformType::FixedParametersType CPUFixedParametersType
AdvancedTransform< GPUScalarType, SpaceDimension, SpaceDimension > GPUAdvancedTransformType
bool CopyBSplineTransform(const CPUCurrentTransformConstPointer &fromTransform, GPUComboTransformPointer &toTransform)
CPUComboTransformType::InitialTransformConstPointer CPUInitialTransformConstPointer
CPUComboTransformType::CurrentTransformConstPointer CPUCurrentTransformConstPointer
bool CopyEuler3DTransform(const CPUCurrentTransformConstPointer &, GPUComboTransformPointer &, TransformSpaceDimensionToType< InputSpaceDimension >)
itkGetModifiableObjectMacro(Output, GPUComboTransformType)
bool CopySimilarity2DTransform(const CPUCurrentTransformConstPointer &fromTransform, GPUComboTransformPointer &toTransform, TransformSpaceDimensionToType< 2 >)
bool CopySimilarity2DTransform(const CPUCurrentTransformConstPointer &, GPUComboTransformPointer &, TransformSpaceDimensionToType< InputSpaceDimension >)
GPUAdvancedTransformType::FixedParametersType GPUFixedParametersType
void CastCopyFixedParameters(const CPUFixedParametersType &from, GPUFixedParametersType &to)
AdvancedTransform< CPUScalarType, SpaceDimension, SpaceDimension > CPUAdvancedTransformType
GPU version of AdvancedCombinationTransform.


Generated on 1667476801 for elastix by doxygen 1.9.4 elastix logo