Home
|
Main Page
|
Modules
|
Namespace List
|
Class Hierarchy
|
Alphabetical List
|
Data Structures
|
File List
|
Namespace Members
|
Data Fields
|
Globals
|
Related Pages
src
Common
KNN
itkBinaryTreeSearchBase.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 __itkBinaryTreeSearchBase_h
16
#define __itkBinaryTreeSearchBase_h
17
18
#include "itkObject.h"
19
#include "itkArray.h"
20
21
#include "
itkBinaryTreeBase.h
"
22
23
namespace
itk
24
{
25
35
template
<
class
TListSample >
36
class
BinaryTreeSearchBase
:
public
Object
37
{
38
public
:
39
41
typedef
BinaryTreeSearchBase
Self
;
42
typedef
Object
Superclass
;
43
typedef
SmartPointer< Self >
Pointer
;
44
typedef
SmartPointer< const Self >
ConstPointer
;
45
47
itkTypeMacro(
BinaryTreeSearchBase
, Object );
48
50
typedef
TListSample
ListSampleType
;
51
typedef
BinaryTreeBase< ListSampleType >
BinaryTreeType
;
52
typedef
typename
BinaryTreeType::
53
MeasurementVectorType
MeasurementVectorType
;
54
typedef
Array< int >
IndexArrayType
;
55
typedef
Array< double >
DistanceArrayType
;
56
58
virtual
void
SetBinaryTree
(
BinaryTreeType
* tree );
59
const
BinaryTreeType
*
GetBinaryTree
(
void
)
const
;
60
62
itkSetMacro( KNearestNeighbors,
unsigned
int
);
63
itkGetConstMacro( KNearestNeighbors,
unsigned
int
);
64
66
virtual
void
Search
(
const
MeasurementVectorType
& qp,
IndexArrayType
& ind,
67
DistanceArrayType
& dists ) = 0;
68
69
protected
:
70
71
BinaryTreeSearchBase
();
72
virtual
~BinaryTreeSearchBase
();
73
75
typename
BinaryTreeType::Pointer
m_BinaryTree
;
76
unsigned
int
m_KNearestNeighbors
;
77
unsigned
int
m_DataDimension
;
78
79
private
:
80
81
BinaryTreeSearchBase
(
const
Self
& );
// purposely not implemented
82
void
operator=
(
const
Self
& );
// purposely not implemented
83
84
};
// end class BinaryTreeSearchBase
85
86
87
}
// end namespace itk
88
89
90
#ifndef ITK_MANUAL_INSTANTIATION
91
#include "itkBinaryTreeSearchBase.txx"
92
#endif
93
94
95
#endif // end #ifndef __itkBinaryTreeSearchBase_h
96
Generated on 27-06-2013 for elastix by
1.8.3.1