Home
|
Main Page
|
Modules
|
Namespace List
|
Class Hierarchy
|
Alphabetical List
|
Data Structures
|
File List
|
Namespace Members
|
Data Fields
|
Globals
|
Related Pages
src
Common
KNN
itkBinaryANNTreeSearchBase.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 __itkBinaryANNTreeSearchBase_h
16
#define __itkBinaryANNTreeSearchBase_h
17
18
#include "
itkBinaryTreeSearchBase.h
"
19
#include "
itkBinaryANNTreeBase.h
"
20
#include "ANN/ANN.h"
21
22
23
namespace
itk
24
{
25
35
template
<
class
TListSample >
36
class
BinaryANNTreeSearchBase
:
37
public
BinaryTreeSearchBase
< TListSample >
38
{
39
public
:
40
42
typedef
BinaryANNTreeSearchBase
Self
;
43
typedef
BinaryTreeSearchBase
<
44
TListSample >
Superclass
;
45
typedef
SmartPointer< Self >
Pointer
;
46
typedef
SmartPointer< const Self >
ConstPointer
;
47
49
itkTypeMacro(
BinaryANNTreeSearchBase
,
BinaryTreeSearchBase
);
50
52
typedef
typename
Superclass::ListSampleType
ListSampleType
;
53
typedef
typename
Superclass::BinaryTreeType
BinaryTreeType
;
54
typedef
typename
Superclass::MeasurementVectorType
MeasurementVectorType
;
55
typedef
typename
Superclass::IndexArrayType
IndexArrayType
;
56
typedef
typename
Superclass::DistanceArrayType
DistanceArrayType
;
57
59
typedef
ANNpoint
ANNPointType
;
// double *
60
typedef
ANNidx
ANNIndexType
;
// int
61
typedef
ANNidxArray
ANNIndexArrayType
;
// int *
62
typedef
ANNdist
ANNDistanceType
;
// double
63
typedef
ANNdistArray
ANNDistanceArrayType
;
// double *
64
66
typedef
BinaryANNTreeBase< ListSampleType >
BinaryANNTreeType
;
67
69
virtual
void
SetBinaryTree
(
BinaryTreeType
* tree );
70
//const BinaryTreeType * GetBinaryTree( void ) const;
71
72
protected
:
73
74
BinaryANNTreeSearchBase
();
75
virtual
~BinaryANNTreeSearchBase
();
76
78
typename
BinaryANNTreeType::Pointer
m_BinaryTreeAsITKANNType
;
79
80
private
:
81
82
BinaryANNTreeSearchBase
(
const
Self
& );
// purposely not implemented
83
void
operator=
(
const
Self
& );
// purposely not implemented
84
85
};
// end class BinaryANNTreeSearchBase
86
87
88
}
// end namespace itk
89
90
91
#ifndef ITK_MANUAL_INSTANTIATION
92
#include "itkBinaryANNTreeSearchBase.txx"
93
#endif
94
95
96
#endif // end #ifndef __itkBinaryANNTreeSearchBase_h
97
Generated on 27-06-2013 for elastix by
1.8.3.1