Home
|
Main Page
|
Modules
|
Namespace List
|
Class Hierarchy
|
Alphabetical List
|
Data Structures
|
File List
|
Namespace Members
|
Data Fields
|
Globals
|
Related Pages
src
Core
ComponentBaseClasses
elxFixedImagePyramidBase.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 __elxFixedImagePyramidBase_h
16
#define __elxFixedImagePyramidBase_h
17
19
#include "
elxMacro.h
"
20
21
#include "
elxBaseComponentSE.h
"
22
#include "itkObject.h"
23
#include "itkMultiResolutionPyramidImageFilter.h"
24
25
26
namespace
elastix
27
{
28
using namespace
itk;
29
56
template
<
class
TElastix>
57
class
FixedImagePyramidBase
:
public
BaseComponentSE
<TElastix>
58
{
59
public
:
60
62
typedef
FixedImagePyramidBase
Self
;
63
typedef
BaseComponentSE<TElastix>
Superclass
;
64
66
itkTypeMacro(
FixedImagePyramidBase
,
BaseComponentSE
);
67
69
typedef
typename
Superclass::ElastixType
ElastixType
;
70
typedef
typename
Superclass::ElastixPointer
ElastixPointer
;
71
typedef
typename
Superclass::ConfigurationType
ConfigurationType
;
72
typedef
typename
Superclass::ConfigurationPointer
ConfigurationPointer
;
73
typedef
typename
Superclass::RegistrationType
RegistrationType
;
74
typedef
typename
Superclass::RegistrationPointer
RegistrationPointer
;
75
77
typedef
typename
ElastixType::FixedImageType
InputImageType
;
78
typedef
typename
ElastixType::FixedImageType
OutputImageType
;
79
81
typedef
MultiResolutionPyramidImageFilter
<
82
InputImageType
,
OutputImageType
>
ITKBaseType
;
83
85
typedef
typename
ITKBaseType::ScheduleType
ScheduleType
;
86
88
virtual
ITKBaseType
* GetAsITKBaseType(
void
)
89
{
90
return
dynamic_cast<
ITKBaseType
*
>
(
this
);
91
}
92
94
virtual
const
ITKBaseType
* GetAsITKBaseType(
void
)
const
95
{
96
return
dynamic_cast<
const
ITKBaseType
*
>
(
this
);
97
}
98
102
virtual
void
BeforeRegistrationBase(
void
);
103
107
virtual
void
BeforeEachResolutionBase(
void
);
108
110
virtual
void
SetFixedSchedule(
void
);
111
113
virtual
void
WritePyramidImage(
const
std::string & filename,
114
const
unsigned
int
& level );
// const;
115
116
protected
:
117
119
FixedImagePyramidBase
() {}
121
virtual
~FixedImagePyramidBase
() {}
122
123
private
:
124
126
FixedImagePyramidBase
(
const
Self& );
// purposely not implemented
128
void
operator=(
const
Self& );
// purposely not implemented
129
130
};
// end class FixedImagePyramidBase
131
132
133
}
// end namespace elastix
134
135
136
#ifndef ITK_MANUAL_INSTANTIATION
137
#include "elxFixedImagePyramidBase.hxx"
138
#endif
139
140
141
#endif // end #ifndef __elxFixedImagePyramidBase_h
Generated on 21-03-2014 for elastix by
1.8.1.2