Home
|
Main Page
|
Modules
|
Namespace List
|
Class Hierarchy
|
Alphabetical List
|
Data Structures
|
File List
|
Namespace Members
|
Data Fields
|
Globals
|
Related Pages
src
Components
Interpolators
LinearInterpolator
elxLinearInterpolator.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 __elxLinearInterpolator_h
16
#define __elxLinearInterpolator_h
17
18
#include "itkLinearInterpolateImageFunction.h"
19
#include "
elxIncludes.h
"
20
21
namespace
elastix
22
{
23
24
using namespace
itk;
25
57
template
<
class
TElastix >
58
class
LinearInterpolator
:
59
public
60
LinearInterpolateImageFunction
<
61
ITK_TYPENAME InterpolatorBase<TElastix>::InputImageType,
62
ITK_TYPENAME InterpolatorBase<TElastix>::CoordRepType >,
63
public
64
InterpolatorBase
<TElastix>
65
{
66
public
:
67
69
typedef
LinearInterpolator
Self
;
70
typedef
LinearInterpolateImageFunction
<
71
typename
InterpolatorBase<TElastix>::InputImageType
,
72
typename
InterpolatorBase<TElastix>::CoordRepType
>
Superclass1
;
73
typedef
InterpolatorBase<TElastix>
Superclass2
;
74
typedef
SmartPointer<Self>
Pointer
;
75
typedef
SmartPointer<const Self>
ConstPointer
;
76
78
itkNewMacro(
Self
);
79
81
itkTypeMacro(
LinearInterpolator
,
LinearInterpolateImageFunction
);
82
87
elxClassNameMacro
(
"LinearInterpolator"
);
88
90
itkStaticConstMacro( ImageDimension,
unsigned
int
, Superclass1::ImageDimension );
91
93
typedef
typename
Superclass1::OutputType
OutputType
;
94
typedef
typename
Superclass1::InputImageType
InputImageType
;
95
typedef
typename
Superclass1::IndexType
IndexType
;
96
typedef
typename
Superclass1::ContinuousIndexType
ContinuousIndexType
;
97
typedef
typename
Superclass1::PointType
PointType
;
98
100
typedef
typename
Superclass2::ElastixType
ElastixType
;
101
typedef
typename
Superclass2::ElastixPointer
ElastixPointer
;
102
typedef
typename
Superclass2::ConfigurationType
ConfigurationType
;
103
typedef
typename
Superclass2::ConfigurationPointer
ConfigurationPointer
;
104
typedef
typename
Superclass2::RegistrationType
RegistrationType
;
105
typedef
typename
Superclass2::RegistrationPointer
RegistrationPointer
;
106
typedef
typename
Superclass2::ITKBaseType
ITKBaseType
;
107
108
protected
:
109
111
LinearInterpolator
() {}
113
virtual
~LinearInterpolator
() {}
114
115
private
:
116
118
LinearInterpolator
(
const
Self& );
// purposely not implemented
120
void
operator=(
const
Self& );
// purposely not implemented
121
122
};
// end class LinearInterpolator
123
124
125
}
// end namespace elastix
126
127
#ifndef ITK_MANUAL_INSTANTIATION
128
#include "elxLinearInterpolator.hxx"
129
#endif
130
131
#endif // end #ifndef __elxLinearInterpolator_h
132
Generated on 21-03-2014 for elastix by
1.8.1.2