Home
|
Main Page
|
Modules
|
Namespace List
|
Class Hierarchy
|
Alphabetical List
|
Data Structures
|
File List
|
Namespace Members
|
Data Fields
|
Globals
|
Related Pages
src
Components
Metrics
RigidityPenalty
elxTransformRigidityPenaltyTerm.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
#ifndef __elxTransformRigidityPenaltyTerm_H__
15
#define __elxTransformRigidityPenaltyTerm_H__
16
17
#include "
elxIncludes.h
"
18
#include "
itkTransformRigidityPenaltyTerm.h
"
19
20
#include "
elxTimer.h
"
21
22
namespace
elastix
23
{
24
using namespace
itk;
25
108
template
<
class
TElastix >
109
class
TransformRigidityPenalty
110
:
public
TransformRigidityPenaltyTerm
<
111
ITK_TYPENAME MetricBase<TElastix>::FixedImageType,
112
double >,
113
public
MetricBase
<TElastix>
114
{
115
public
:
116
118
typedef
TransformRigidityPenalty
Self
;
119
typedef
TransformRigidityPenaltyTerm
<
120
typename
MetricBase<TElastix>::FixedImageType
,
121
double
>
Superclass1
;
122
typedef
MetricBase<TElastix>
Superclass2
;
123
typedef
SmartPointer<Self>
Pointer
;
124
typedef
SmartPointer<const Self>
ConstPointer
;
125
127
itkNewMacro(
Self
);
128
130
itkTypeMacro(
TransformRigidityPenalty
,
TransformRigidityPenaltyTerm
);
131
136
elxClassNameMacro
(
"TransformRigidityPenalty"
);
137
139
typedef
typename
Superclass1::CoordinateRepresentationType
CoordinateRepresentationType
;
140
typedef
typename
Superclass1::MovingImageType
MovingImageType
;
141
typedef
typename
Superclass1::MovingImagePixelType
MovingImagePixelType
;
142
typedef
typename
Superclass1::MovingImageConstPointer
MovingImageConstPointer
;
143
typedef
typename
Superclass1::FixedImageType
FixedImageType
;
144
typedef
typename
Superclass1::FixedImageConstPointer
FixedImageConstPointer
;
145
typedef
typename
Superclass1::FixedImageRegionType
FixedImageRegionType
;
146
typedef
typename
Superclass1::TransformType
TransformType
;
147
typedef
typename
Superclass1::TransformPointer
TransformPointer
;
148
typedef
typename
Superclass1::InputPointType
InputPointType
;
149
typedef
typename
Superclass1::OutputPointType
OutputPointType
;
150
typedef
typename
Superclass1::TransformParametersType
TransformParametersType
;
151
typedef
typename
Superclass1::TransformJacobianType
TransformJacobianType
;
152
typedef
typename
Superclass1::InterpolatorType
InterpolatorType
;
153
typedef
typename
Superclass1::InterpolatorPointer
InterpolatorPointer
;
154
typedef
typename
Superclass1::RealType
RealType
;
155
typedef
typename
Superclass1::GradientPixelType
GradientPixelType
;
156
typedef
typename
Superclass1::GradientImageType
GradientImageType
;
157
typedef
typename
Superclass1::GradientImagePointer
GradientImagePointer
;
158
typedef
typename
Superclass1::GradientImageFilterType
GradientImageFilterType
;
159
typedef
typename
Superclass1::GradientImageFilterPointer
GradientImageFilterPointer
;
160
typedef
typename
Superclass1::FixedImageMaskType
FixedImageMaskType
;
161
typedef
typename
Superclass1::FixedImageMaskPointer
FixedImageMaskPointer
;
162
typedef
typename
Superclass1::MovingImageMaskType
MovingImageMaskType
;
163
typedef
typename
Superclass1::MovingImageMaskPointer
MovingImageMaskPointer
;
164
typedef
typename
Superclass1::MeasureType
MeasureType
;
165
typedef
typename
Superclass1::DerivativeType
DerivativeType
;
166
typedef
typename
Superclass1::ParametersType
ParametersType
;
167
typedef
typename
Superclass1::FixedImagePixelType
FixedImagePixelType
;
168
typedef
typename
Superclass1::MovingImageRegionType
MovingImageRegionType
;
169
typedef
typename
Superclass1::ImageSamplerType
ImageSamplerType
;
170
typedef
typename
Superclass1::ImageSamplerPointer
ImageSamplerPointer
;
171
typedef
typename
Superclass1::ImageSampleContainerType
ImageSampleContainerType
;
172
typedef
typename
Superclass1::ImageSampleContainerPointer
ImageSampleContainerPointer
;
173
typedef
typename
Superclass1::FixedImageLimiterType
FixedImageLimiterType
;
174
typedef
typename
Superclass1::MovingImageLimiterType
MovingImageLimiterType
;
175
typedef
typename
Superclass1::FixedImageLimiterOutputType
FixedImageLimiterOutputType
;
176
typedef
typename
Superclass1::MovingImageLimiterOutputType
MovingImageLimiterOutputType
;
177
178
typedef
typename
Superclass1::CoefficientImageType
CoefficientImageType
;
179
181
itkStaticConstMacro( FixedImageDimension,
unsigned
int
,
182
FixedImageType::ImageDimension );
183
185
itkStaticConstMacro( MovingImageDimension,
unsigned
int
,
186
MovingImageType::ImageDimension );
187
189
typedef
typename
Superclass2::ElastixType
ElastixType
;
190
typedef
typename
Superclass2::ElastixPointer
ElastixPointer
;
191
typedef
typename
Superclass2::ConfigurationType
ConfigurationType
;
192
typedef
typename
Superclass2::ConfigurationPointer
ConfigurationPointer
;
193
typedef
typename
Superclass2::RegistrationType
RegistrationType
;
194
typedef
typename
Superclass2::RegistrationPointer
RegistrationPointer
;
195
typedef
typename
Superclass2::ITKBaseType
ITKBaseType
;
196
198
typedef
tmr::Timer
TimerType
;
200
typedef
TimerType::Pointer
TimerPointer
;
201
205
virtual
void
Initialize(
void
) throw (ExceptionObject);
206
211
virtual
void
BeforeEachResolution(
void
);
212
219
virtual
void
BeforeRegistration(
void
);
220
225
virtual
void
AfterEachIteration(
void
);
226
231
virtual
void
SelectNewSamples(
void
){};
232
233
protected
:
234
236
TransformRigidityPenalty
(){};
237
239
virtual
~TransformRigidityPenalty
() {}
240
241
private
:
242
244
TransformRigidityPenalty
(
const
Self& );
// purposely not implemented
246
void
operator=(
const
Self& );
// purposely not implemented
247
248
};
// end class TransformRigidityPenalty
249
250
251
}
// end namespace elastix
252
253
254
#ifndef ITK_MANUAL_INSTANTIATION
255
#include "elxTransformRigidityPenaltyTerm.hxx"
256
#endif
257
258
#endif // end #ifndef __elxTransformRigidityPenaltyTerm_H__
259
Generated on 21-03-2014 for elastix by
1.8.1.2