go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkANNkDTree.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#ifndef __itkANNkDTree_h
19#define __itkANNkDTree_h
20
22
23namespace itk
24{
25
35template< class TListSample >
36class ANNkDTree : public BinaryANNTreeBase< TListSample >
37{
38public:
39
41 typedef ANNkDTree Self;
44 typedef SmartPointer< const Self > ConstPointer;
45
47 itkNewMacro( Self );
48
50 itkTypeMacro( ANNkDTree, BinaryANNTreeBase );
51
57
62 typedef unsigned int BucketSizeType;
63
65 itkSetMacro( BucketSize, BucketSizeType );
66 itkGetConstMacro( BucketSize, BucketSizeType );
67
69 itkSetMacro( SplittingRule, SplittingRuleType );
70 itkGetConstMacro( SplittingRule, SplittingRuleType );
71 void SetSplittingRule( std::string rule );
72
73 std::string GetSplittingRule( void );
74
76 //void SetMaximumNumberOfPointsToVisit( unsigned int num )
77 //{
78 // annMaxPtsVisit( static_cast<int>( num ) );
79 //}
80
82 void GenerateTree( void ) override;
83
85 ANNPointSetType * GetANNTree( void ) const override
86 {
87 return this->m_ANNTree;
88 }
89
90
91protected:
92
95
97 ~ANNkDTree() override;
98
100 void PrintSelf( std::ostream & os, Indent indent ) const override;
101
106
107private:
108
109 ANNkDTree( const Self & ); // purposely not implemented
110 void operator=( const Self & ); // purposely not implemented
111
112};
113
114} // end namespace itk
115
116#ifndef ITK_MANUAL_INSTANTIATION
117#include "itkANNkDTree.hxx"
118#endif
119
120#endif // end #ifndef __itkANNkDTree_h
ANNsplitRule
Definition: ANN.h:575
SplittingRuleType m_SplittingRule
Definition: itkANNkDTree.h:104
Superclass::SampleType SampleType
Definition: itkANNkDTree.h:53
ANNkDTree(const Self &)
BucketSizeType m_BucketSize
Definition: itkANNkDTree.h:105
Superclass::MeasurementVectorSizeType MeasurementVectorSizeType
Definition: itkANNkDTree.h:55
SmartPointer< const Self > ConstPointer
Definition: itkANNkDTree.h:44
~ANNkDTree() override
BinaryANNTreeBase< TListSample > Superclass
Definition: itkANNkDTree.h:42
void operator=(const Self &)
ANNkDTree Self
Definition: itkANNkDTree.h:41
unsigned int BucketSizeType
Definition: itkANNkDTree.h:62
void SetSplittingRule(std::string rule)
void PrintSelf(std::ostream &os, Indent indent) const override
Superclass::TotalAbsoluteFrequencyType TotalAbsoluteFrequencyType
Definition: itkANNkDTree.h:56
ANNkDTreeType * m_ANNTree
Definition: itkANNkDTree.h:103
ANNpointSet ANNPointSetType
Definition: itkANNkDTree.h:59
SmartPointer< Self > Pointer
Definition: itkANNkDTree.h:43
Superclass::MeasurementVectorType MeasurementVectorType
Definition: itkANNkDTree.h:54
void GenerateTree(void) override
ANNkd_tree ANNkDTreeType
Definition: itkANNkDTree.h:60
std::string GetSplittingRule(void)
ANNPointSetType * GetANNTree(void) const override
Definition: itkANNkDTree.h:85
ANNsplitRule SplittingRuleType
Definition: itkANNkDTree.h:61
Superclass::MeasurementVectorSizeType MeasurementVectorSizeType
Superclass::TotalAbsoluteFrequencyType TotalAbsoluteFrequencyType
Superclass::SampleType SampleType
Superclass::MeasurementVectorType MeasurementVectorType


Generated on 1667476801 for elastix by doxygen 1.9.4 elastix logo