Home
|
Main Page
|
Modules
|
Namespace List
|
Class Hierarchy
|
Alphabetical List
|
Data Structures
|
File List
|
Namespace Members
|
Data Fields
|
Globals
|
Related Pages
src
Components
Transforms
WeightedCombinationTransform
elxWeightedCombinationTransform.h
Go to the documentation of this file.
1
/*======================================================================
2
3
This file is part of the elastix software.
4
5
Copyright (c) University Medical Center Utrecht. All rights reserved.
6
See src/CopyrightElastix.txt or http://elastix.isi.uu.nl/legal.php for
7
details.
8
9
This software is distributed WITHOUT ANY WARRANTY; without even
10
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11
PURPOSE. See the above copyright notices for more information.
12
13
======================================================================*/
14
15
#ifndef __elxWeightedCombinationTransform_H_
16
#define __elxWeightedCombinationTransform_H_
17
18
#include "
itkWeightedCombinationTransform.h
"
19
#include "
itkAdvancedCombinationTransform.h
"
20
#include "
elxIncludes.h
"
21
22
namespace
elastix
23
{
24
using namespace
itk;
25
79
template
<
class
TElastix >
80
class
WeightedCombinationTransformElastix
:
81
public
AdvancedCombinationTransform
<
82
ITK_TYPENAME elx::TransformBase<TElastix>::CoordRepType,
83
elx::TransformBase<TElastix>::FixedImageDimension > ,
84
public
elx::TransformBase
<TElastix>
85
{
86
public
:
87
89
typedef
WeightedCombinationTransformElastix
Self
;
90
91
typedef
AdvancedCombinationTransform
<
92
typename
elx::TransformBase<TElastix>::CoordRepType
,
93
elx::TransformBase<TElastix>::FixedImageDimension
>
Superclass1
;
94
95
typedef
elx::TransformBase<TElastix>
Superclass2
;
96
99
typedef
WeightedCombinationTransform
<
100
typename
elx::TransformBase<TElastix>::CoordRepType
,
101
elx::TransformBase<TElastix>::FixedImageDimension
,
102
elx::TransformBase<TElastix>::MovingImageDimension
>
WeightedCombinationTransformType
;
103
104
typedef
SmartPointer<Self>
Pointer
;
105
typedef
SmartPointer<const Self>
ConstPointer
;
106
108
itkNewMacro(
Self
);
109
111
itkTypeMacro(
WeightedCombinationTransformElastix
,
AdvancedCombinationTransform
);
112
117
elxClassNameMacro
(
"WeightedCombinationTransform"
);
118
120
itkStaticConstMacro( SpaceDimension,
unsigned
int
, Superclass2::FixedImageDimension );
121
123
typedef
typename
Superclass1::ScalarType
ScalarType
;
124
typedef
typename
Superclass1::ParametersType
ParametersType
;
125
typedef
typename
Superclass1::JacobianType
JacobianType
;
126
typedef
typename
Superclass1::InputVectorType
InputVectorType
;
127
typedef
typename
Superclass1::OutputVectorType
OutputVectorType
;
128
typedef
typename
Superclass1::InputCovariantVectorType
InputCovariantVectorType
;
129
typedef
typename
Superclass1::OutputCovariantVectorType
OutputCovariantVectorType
;
130
typedef
typename
Superclass1::InputVnlVectorType
InputVnlVectorType
;
131
typedef
typename
Superclass1::OutputVnlVectorType
OutputVnlVectorType
;
132
typedef
typename
Superclass1::InputPointType
InputPointType
;
133
typedef
typename
Superclass1::OutputPointType
OutputPointType
;
134
136
typedef
typename
Superclass2::ElastixType
ElastixType
;
137
typedef
typename
Superclass2::ElastixPointer
ElastixPointer
;
138
typedef
typename
Superclass2::ConfigurationType
ConfigurationType
;
139
typedef
typename
Superclass2::ConfigurationPointer
ConfigurationPointer
;
140
typedef
typename
Superclass2::RegistrationType
RegistrationType
;
141
typedef
typename
Superclass2::RegistrationPointer
RegistrationPointer
;
142
typedef
typename
Superclass2::CoordRepType
CoordRepType
;
143
typedef
typename
Superclass2::FixedImageType
FixedImageType
;
144
typedef
typename
Superclass2::MovingImageType
MovingImageType
;
145
typedef
typename
Superclass2::ITKBaseType
ITKBaseType
;
146
typedef
typename
Superclass2::CombinationTransformType
CombinationTransformType
;
147
typedef
typename
Superclass2::CommandLineArgumentMapType
CommandLineArgumentMapType
;
148
typedef
typename
Superclass2::CommandLineEntryType
CommandLineEntryType
;
149
151
typedef
typename
WeightedCombinationTransformType::Pointer
WeightedCombinationTransformPointer
;
152
typedef
typename
153
WeightedCombinationTransformType::TransformContainerType
TransformContainerType
;
154
typedef
typename
155
WeightedCombinationTransformType::TransformType
SubTransformType
;
156
typedef
typename
157
WeightedCombinationTransformType::TransformPointer
SubTransformPointer
;
158
160
typedef
typename
Superclass2::ScalesType
ScalesType
;
161
166
virtual
void
BeforeRegistration(
void
);
167
175
virtual
void
InitializeTransform(
void
);
176
184
virtual
void
SetScales(
void
);
185
191
virtual
void
ReadFromFile(
void
);
192
197
virtual
void
WriteToFile(
const
ParametersType
& param )
const
;
198
201
virtual
void
LoadSubTransforms(
void
);
202
203
protected
:
204
206
WeightedCombinationTransformElastix
();
208
virtual
~WeightedCombinationTransformElastix
() {};
209
210
WeightedCombinationTransformPointer m_WeightedCombinationTransform;
211
std::vector< std::string >
m_SubTransformFileNames
;
212
213
private
:
214
216
WeightedCombinationTransformElastix
(
const
Self
& );
// purposely not implemented
218
void
operator=(
const
Self
& );
// purposely not implemented
219
220
};
// end class WeightedCombinationTransformElastix
221
222
223
}
// end namespace elastix
224
225
#ifndef ITK_MANUAL_INSTANTIATION
226
#include "elxWeightedCombinationTransform.hxx"
227
#endif
228
229
#endif // end #ifndef __elxWeightedCombinationTransform_H_
Generated on 21-03-2014 for elastix by
1.8.1.2