Home
|
Main Page
|
Modules
|
Namespace List
|
Class Hierarchy
|
Alphabetical List
|
Data Structures
|
File List
|
Namespace Members
|
Data Fields
|
Globals
|
Related Pages
src
Components
MovingImagePyramids
MovingShrinkingPyramid
elxMovingShrinkingPyramid.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 __elxMovingShrinkingPyramid_h
16
#define __elxMovingShrinkingPyramid_h
17
18
#include "
itkMultiResolutionShrinkPyramidImageFilter.h
"
19
#include "
elxIncludes.h
"
20
21
22
namespace
elastix
23
{
24
using namespace
itk;
25
37
template
<
class
TElastix>
38
class
MovingShrinkingPyramid
:
39
public
40
MultiResolutionShrinkPyramidImageFilter
<
41
ITK_TYPENAME MovingImagePyramidBase<TElastix>::InputImageType,
42
ITK_TYPENAME MovingImagePyramidBase<TElastix>::OutputImageType >,
43
public
44
MovingImagePyramidBase
<TElastix>
45
{
46
public
:
47
49
typedef
MovingShrinkingPyramid
Self
;
50
typedef
MultiResolutionShrinkPyramidImageFilter
<
51
typename
MovingImagePyramidBase<TElastix>::InputImageType
,
52
typename
MovingImagePyramidBase<TElastix>::OutputImageType
>
Superclass1
;
53
typedef
MovingImagePyramidBase<TElastix>
Superclass2
;
54
typedef
SmartPointer<Self>
Pointer
;
55
typedef
SmartPointer<const Self>
ConstPointer
;
56
58
itkNewMacro(
Self
);
59
61
itkTypeMacro(
MovingShrinkingPyramid
,
MultiResolutionShrinkPyramidImageFilter
);
62
67
elxClassNameMacro
(
"MovingShrinkingImagePyramid"
);
68
70
itkStaticConstMacro( ImageDimension,
unsigned
int
, Superclass1::ImageDimension );
71
73
typedef
typename
Superclass1::InputImageType
InputImageType
;
74
typedef
typename
Superclass1::OutputImageType
OutputImageType
;
75
typedef
typename
Superclass1::InputImagePointer
InputImagePointer
;
76
typedef
typename
Superclass1::OutputImagePointer
OutputImagePointer
;
77
typedef
typename
Superclass1::InputImageConstPointer
InputImageConstPointer
;
78
typedef
typename
Superclass1::ScheduleType
ScheduleType
;
79
81
typedef
typename
Superclass2::ElastixType
ElastixType
;
82
typedef
typename
Superclass2::ElastixPointer
ElastixPointer
;
83
typedef
typename
Superclass2::ConfigurationType
ConfigurationType
;
84
typedef
typename
Superclass2::ConfigurationPointer
ConfigurationPointer
;
85
typedef
typename
Superclass2::RegistrationType
RegistrationType
;
86
typedef
typename
Superclass2::RegistrationPointer
RegistrationPointer
;
87
typedef
typename
Superclass2::ITKBaseType
ITKBaseType
;
88
89
protected
:
90
92
MovingShrinkingPyramid
() {}
94
virtual
~MovingShrinkingPyramid
() {}
95
96
private
:
97
99
MovingShrinkingPyramid
(
const
Self& );
// purposely not implemented
101
void
operator=(
const
Self& );
// purposely not implemented
102
103
};
// end class MovingShrinkingPyramid
104
105
106
}
// end namespace elastix
107
108
#ifndef ITK_MANUAL_INSTANTIATION
109
#include "elxMovingShrinkingPyramid.hxx"
110
#endif
111
112
#endif // end #ifndef __elxMovingShrinkingPyramid_h
113
Generated on 27-06-2013 for elastix by
1.8.3.1