Home
|
Main Page
|
Modules
|
Namespace List
|
Class Hierarchy
|
Alphabetical List
|
Data Structures
|
File List
|
Namespace Members
|
Data Fields
|
Globals
|
Related Pages
src
Components
Registrations
MultiResolutionRegistrationWithFeatures
elxMultiResolutionRegistrationWithFeatures.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 __elxMultiResolutionRegistrationWithFeatures_H__
16
#define __elxMultiResolutionRegistrationWithFeatures_H__
17
18
#include "
itkMultiResolutionImageRegistrationMethodWithFeatures.h
"
19
20
#include "
elxIncludes.h
"
21
22
namespace
elastix
23
{
24
using namespace
itk;
25
51
template
<
class
TElastix>
52
class
MultiResolutionRegistrationWithFeatures
:
53
public
54
MultiResolutionImageRegistrationMethodWithFeatures
<
55
ITK_TYPENAME RegistrationBase<TElastix>::FixedImageType,
56
ITK_TYPENAME RegistrationBase<TElastix>::MovingImageType >,
57
public
58
RegistrationBase
<TElastix>
59
{
60
public
:
61
63
typedef
MultiResolutionRegistrationWithFeatures
Self
;
64
typedef
MultiResolutionImageRegistrationMethodWithFeatures
<
65
typename
RegistrationBase<TElastix>::FixedImageType
,
66
typename
RegistrationBase<TElastix>::MovingImageType
>
67
Superclass1
;
68
typedef
RegistrationBase<TElastix>
Superclass2
;
69
typedef
SmartPointer<Self>
Pointer
;
70
typedef
SmartPointer<const Self>
ConstPointer
;
71
73
itkNewMacro(
Self
);
74
76
itkTypeMacro(
MultiResolutionRegistrationWithFeatures
,
77
MultiResolutionImageRegistrationMethodWithFeatures
);
78
83
elxClassNameMacro
(
"MultiResolutionRegistrationWithFeatures"
);
84
88
typedef
typename
Superclass1::FixedImageType
FixedImageType
;
89
typedef
typename
Superclass1::FixedImageConstPointer
FixedImageConstPointer
;
90
typedef
typename
Superclass1::FixedImageRegionType
FixedImageRegionType
;
91
93
typedef
typename
Superclass1::MovingImageType
MovingImageType
;
94
typedef
typename
Superclass1::MovingImageConstPointer
MovingImageConstPointer
;
95
97
typedef
typename
Superclass1::MetricType
MetricType
;
98
typedef
typename
Superclass1::MetricPointer
MetricPointer
;
99
101
typedef
typename
Superclass1::TransformType
TransformType
;
102
typedef
typename
Superclass1::TransformPointer
TransformPointer
;
103
105
typedef
typename
Superclass1::InterpolatorType
InterpolatorType
;
106
typedef
typename
Superclass1::InterpolatorPointer
InterpolatorPointer
;
107
109
typedef
typename
Superclass1::OptimizerType
OptimizerType
;
110
typedef
typename
Superclass1::OptimizerPointer
OptimizerPointer
;
111
113
typedef
typename
Superclass1::FixedImagePyramidType
FixedImagePyramidType
;
114
typedef
typename
Superclass1::FixedImagePyramidPointer
FixedImagePyramidPointer
;
115
117
typedef
typename
Superclass1::MovingImagePyramidType
MovingImagePyramidType
;
118
typedef
typename
Superclass1::MovingImagePyramidPointer
MovingImagePyramidPointer
;
119
123
typedef
typename
Superclass1::ParametersType
ParametersType
;
124
126
//typedef typename Superclass1::CombinationMetricType CombinationMetricType;
127
//typedef typename Superclass1::CombinationMetricPointer CombinationMetricPointer;
128
130
typedef
typename
Superclass2::ElastixType
ElastixType
;
131
typedef
typename
Superclass2::ElastixPointer
ElastixPointer
;
132
typedef
typename
Superclass2::ConfigurationType
ConfigurationType
;
133
typedef
typename
Superclass2::ConfigurationPointer
ConfigurationPointer
;
134
typedef
typename
Superclass2::RegistrationType
RegistrationType
;
135
typedef
typename
Superclass2::RegistrationPointer
RegistrationPointer
;
136
typedef
typename
Superclass2::ITKBaseType
ITKBaseType
;
137
typedef
typename
Superclass2::UseMaskErosionArrayType
UseMaskErosionArrayType
;
138
140
itkStaticConstMacro( FixedImageDimension,
unsigned
int
, Superclass2::FixedImageDimension );
141
143
itkStaticConstMacro( MovingImageDimension,
unsigned
int
, Superclass2::MovingImageDimension );
144
151
virtual
void
BeforeRegistration(
void
);
152
157
virtual
void
BeforeEachResolution(
void
);
158
159
protected
:
160
162
MultiResolutionRegistrationWithFeatures
(){};
163
165
virtual
~MultiResolutionRegistrationWithFeatures
() {};
166
168
typedef
tmr::Timer
TimerType;
169
typedef
TimerType::Pointer
TimerPointer
;
170
172
typedef
typename
Superclass2::MaskPixelType
MaskPixelType
;
173
typedef
typename
Superclass2::FixedMaskImageType
FixedMaskImageType
;
174
typedef
typename
Superclass2::MovingMaskImageType
MovingMaskImageType
;
175
typedef
typename
Superclass2::FixedMaskImagePointer
FixedMaskImagePointer
;
176
typedef
typename
Superclass2::MovingMaskImagePointer
MovingMaskImagePointer
;
177
typedef
typename
Superclass2::FixedMaskSpatialObjectType
FixedMaskSpatialObjectType
;
178
typedef
typename
Superclass2::MovingMaskSpatialObjectType
MovingMaskSpatialObjectType
;
179
typedef
typename
Superclass2::FixedMaskSpatialObjectPointer
FixedMaskSpatialObjectPointer
;
180
typedef
typename
Superclass2::MovingMaskSpatialObjectPointer
MovingMaskSpatialObjectPointer
;
181
183
void
UpdateFixedMasks(
unsigned
int
level );
184
void
UpdateMovingMasks(
unsigned
int
level );
185
187
virtual
void
GetAndSetComponents(
void
);
188
190
virtual
void
GetAndSetFixedImageRegions(
void
);
191
193
virtual
void
GetAndSetFixedImageInterpolators(
void
);
194
195
private
:
196
198
MultiResolutionRegistrationWithFeatures
(
const
Self
& );
// purposely not implemented
200
void
operator=(
const
Self
& );
// purposely not implemented
201
202
};
// end class MultiResolutionRegistrationWithFeatures
203
204
205
}
// end namespace elastix
206
207
#ifndef ITK_MANUAL_INSTANTIATION
208
#include "elxMultiResolutionRegistrationWithFeatures.hxx"
209
#endif
210
211
#endif // end #ifndef __elxMultiResolutionRegistrationWithFeatures_H__
Generated on 27-06-2013 for elastix by
1.8.3.1