go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkGPUCompositeTransformBase.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 itkGPUCompositeTransformBase_h
19#define itkGPUCompositeTransformBase_h
20
21#include "itkGPUTransformBase.h"
22#include "itkTransform.h"
23
24namespace itk
25{
37template <typename TScalarType = float, unsigned int NDimensions = 3>
38class ITK_TEMPLATE_EXPORT GPUCompositeTransformBase : public GPUTransformBase
39{
40public:
44
47
50 using TransformType = Transform<TScalarType, NDimensions, NDimensions>;
51 using TransformTypePointer = typename TransformType::Pointer;
52 using TransformTypeConstPointer = typename TransformType::ConstPointer;
53
55 itkStaticConstMacro(InputSpaceDimension, unsigned int, NDimensions);
56 itkStaticConstMacro(OutputSpaceDimension, unsigned int, NDimensions);
57
59 virtual SizeValueType
61
63 virtual const TransformTypePointer
64 GetNthTransform(SizeValueType n) const = 0;
65
68 virtual bool
70
73 virtual bool
75
78 virtual bool
80
83 virtual bool
85
88 virtual bool
89 IsIdentityTransform(const std::size_t index) const;
90
93 virtual bool
94 IsMatrixOffsetTransform(const std::size_t index) const;
95
98 virtual bool
99 IsTranslationTransform(const std::size_t index) const;
100
103 virtual bool
104 IsBSplineTransform(const std::size_t index) const;
105
106protected:
108 ~GPUCompositeTransformBase() override = default;
109
112 bool
113 GetSourceCode(std::string & source) const override;
114
118 GetParametersDataManager(const std::size_t index) const override;
119
120private:
121 GPUCompositeTransformBase(const Self & other) = delete;
122 const Self &
123 operator=(const Self &) = delete;
124
128 bool
129 IsIdentityTransform(const std::size_t index, const bool loadSource, std::string & source) const;
130
135 bool
136 IsMatrixOffsetTransform(const std::size_t index, const bool loadSource, std::string & source) const;
137
141 bool
142 IsTranslationTransform(const std::size_t index, const bool loadSource, std::string & source) const;
143
147 bool
148 IsBSplineTransform(const std::size_t index, const bool loadSource, std::string & source) const;
149};
150
151} // end namespace itk
152
153#ifndef ITK_MANUAL_INSTANTIATION
154# include "itkGPUCompositeTransformBase.hxx"
155#endif
156
157#endif /* itkGPUCompositeTransformBase_h */
GPUDataManager::Pointer GetParametersDataManager(const std::vcl_size_t index) const override
typename TransformType::ConstPointer TransformTypeConstPointer
virtual bool HasIdentityTransform() const
virtual SizeValueType GetNumberOfTransforms() const =0
virtual const TransformTypePointer GetNthTransform(SizeValueType n) const =0
bool IsBSplineTransform(const std::vcl_size_t index, const bool loadSource, std::string &source) const
itkStaticConstMacro(InputSpaceDimension, unsigned int, NDimensions)
const Self & operator=(const Self &)=delete
virtual bool HasMatrixOffsetTransform() const
virtual bool IsIdentityTransform(const std::vcl_size_t index) const
virtual bool HasBSplineTransform() const
bool GetSourceCode(std::string &source) const override
virtual bool HasTranslationTransform() const
virtual bool IsBSplineTransform(const std::vcl_size_t index) const
bool IsIdentityTransform(const std::vcl_size_t index, const bool loadSource, std::string &source) const
typename TransformType::Pointer TransformTypePointer
virtual bool IsMatrixOffsetTransform(const std::vcl_size_t index) const
virtual bool IsTranslationTransform(const std::vcl_size_t index) const
Transform< TScalarType, NDimensions, NDimensions > TransformType
GPUCompositeTransformBase(const Self &other)=delete
bool IsTranslationTransform(const std::vcl_size_t index, const bool loadSource, std::string &source) const
bool IsMatrixOffsetTransform(const std::vcl_size_t index, const bool loadSource, std::string &source) const
itkStaticConstMacro(OutputSpaceDimension, unsigned int, NDimensions)
~GPUCompositeTransformBase() override=default
Base class for all GPU transforms.


Generated on 2023-01-13 for elastix by doxygen 1.9.6 elastix logo