Home
|
Main Page
|
Modules
|
Namespace List
|
Class Hierarchy
|
Alphabetical List
|
Data Structures
|
File List
|
Namespace Members
|
Data Fields
|
Globals
|
Related Pages
src
Common
KNN
itkANNStandardTreeSearch.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 __itkANNStandardTreeSearch_h
16
#define __itkANNStandardTreeSearch_h
17
18
#include "
itkBinaryANNTreeSearchBase.h
"
19
20
21
namespace
itk
22
{
23
33
template
<
class
TListSample >
34
class
ANNStandardTreeSearch
:
public
BinaryANNTreeSearchBase
< TListSample >
35
{
36
public
:
37
39
typedef
ANNStandardTreeSearch
Self
;
40
typedef
BinaryANNTreeSearchBase< TListSample >
Superclass
;
41
typedef
SmartPointer< Self >
Pointer
;
42
typedef
SmartPointer< const Self >
ConstPointer
;
43
45
itkNewMacro(
Self
);
46
48
itkTypeMacro(
ANNStandardTreeSearch
,
BinaryANNTreeSearchBase
);
49
51
typedef
typename
Superclass::ListSampleType
ListSampleType
;
52
typedef
typename
Superclass::BinaryTreeType
BinaryTreeType
;
53
typedef
typename
Superclass::MeasurementVectorType
MeasurementVectorType
;
54
typedef
typename
Superclass::IndexArrayType
IndexArrayType
;
55
typedef
typename
Superclass::DistanceArrayType
DistanceArrayType
;
56
57
typedef
typename
Superclass::ANNPointType
ANNPointType
;
// double *
58
typedef
typename
Superclass::ANNIndexType
ANNIndexType
;
// int
59
typedef
typename
Superclass::ANNIndexArrayType
ANNIndexArrayType
;
// int *
60
typedef
typename
Superclass::ANNDistanceType
ANNDistanceType
;
// double
61
typedef
typename
Superclass::ANNDistanceArrayType
ANNDistanceArrayType
;
// double *
62
63
typedef
typename
Superclass::BinaryANNTreeType
BinaryANNTreeType
;
64
66
itkSetClampMacro( ErrorBound,
double
, 0.0, 1e14 );
67
itkGetConstMacro( ErrorBound,
double
);
68
70
virtual
void
Search
(
const
MeasurementVectorType
& qp,
IndexArrayType
& ind,
71
DistanceArrayType
& dists );
72
73
protected
:
74
75
ANNStandardTreeSearch
();
76
virtual
~ANNStandardTreeSearch
();
77
79
double
m_ErrorBound
;
80
81
private
:
82
83
ANNStandardTreeSearch
(
const
Self
& );
// purposely not implemented
84
void
operator=
(
const
Self
& );
// purposely not implemented
85
86
};
// end class ANNStandardTreeSearch
87
88
89
}
// end namespace itk
90
91
92
#ifndef ITK_MANUAL_INSTANTIATION
93
#include "itkANNStandardTreeSearch.txx"
94
#endif
95
96
97
#endif // end #ifndef __itkANNStandardTreeSearch_h
98
Generated on 21-03-2014 for elastix by
1.8.1.2