go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkANNBinaryTreeCreator.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright UMC Utrecht and contributors
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18
19#ifndef __itkANNBinaryTreeCreator_h
20#define __itkANNBinaryTreeCreator_h
21
22#include "itkObject.h"
23#include "itkObjectFactory.h"
24#include "ANN/ANN.h"
25
26namespace itk
27{
28
38class ANNBinaryTreeCreator : public Object
39{
40public:
41
44 typedef Object Superclass;
46 typedef SmartPointer< const Self > ConstPointer;
47
49 itkNewMacro( Self );
50
52 itkTypeMacro( ANNBinaryTreeCreator, Object );
53
55 //typedef ANNpointSet ANNTreeBaseType;
62
71 static ANNkDTreeType * CreateANNkDTree( ANNPointArrayType pa, int n, int d, int bs = 1,
73
75 static ANNbdTreeType * CreateANNbdTree( ANNPointArrayType pa, int n, int d, int bs = 1,
77
80
82 static void DeleteANNkDTree( ANNkDTreeType * & tree );
83
86
88 static void IncreaseReferenceCount( void );
89
91 static void DecreaseReferenceCount( void );
92
93protected:
94
97
98private:
99
100 ANNBinaryTreeCreator( const Self & ); // purposely not implemented
101 void operator=( const Self & ); // purposely not implemented
102
104 static unsigned int m_NumberOfANNBinaryTrees;
105
106};
107
108} // end namespace itk
109
110#endif // end #ifndef __itkANNBinaryTreeCreator_h
ANNsplitRule
Definition: ANN.h:575
@ ANN_KD_SUGGEST
Definition: ANN.h:581
ANNshrinkRule
Definition: ANN.h:584
@ ANN_BD_SUGGEST
Definition: ANN.h:588
static unsigned int m_NumberOfANNBinaryTrees
static void DeleteANNBruteForceTree(ANNBruteForceTreeType *&tree)
static ANNBruteForceTreeType * CreateANNBruteForceTree(ANNPointArrayType pa, int n, int d)
void operator=(const Self &)
static void DeleteANNkDTree(ANNkDTreeType *&tree)
ANNBinaryTreeCreator(const Self &)
static ANNbdTreeType * CreateANNbdTree(ANNPointArrayType pa, int n, int d, int bs=1, ANNSplitRuleType split=ANN_KD_SUGGEST, ANNShrinkRuleType shrink=ANN_BD_SUGGEST)
static void DecreaseReferenceCount(void)
SmartPointer< const Self > ConstPointer
static ANNkDTreeType * CreateANNkDTree(ANNPointArrayType pa, int n, int d, int bs=1, ANNSplitRuleType split=ANN_KD_SUGGEST)
static void IncreaseReferenceCount(void)


Generated on 1667476801 for elastix by doxygen 1.9.4 elastix logo