Loading...
Searching...
No Matches
itkANNBinaryTreeCreator.h
Go to the documentation of this file.
/*=========================================================================
*
* Copyright UMC Utrecht and contributors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0.txt
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*=========================================================================*/
#ifndef itkANNBinaryTreeCreator_h
#define itkANNBinaryTreeCreator_h
#include "itkObject.h"
#include "itkObjectFactory.h"
#include "ANN/ANN.h"
namespace itk
{
class ANNBinaryTreeCreator : public Object
{
public:
ITK_DISALLOW_COPY_AND_MOVE(ANNBinaryTreeCreator);
using Self = ANNBinaryTreeCreator;
using Superclass = Object;
using Pointer = SmartPointer<Self>;
using ConstPointer = SmartPointer<const Self>;
itkNewMacro(Self);
itkTypeMacro(ANNBinaryTreeCreator, Object);
// typedef ANNpointSet ANNTreeBaseType;
using ANNkDTreeType = ANNkd_tree;
using ANNbdTreeType = ANNbd_tree;
using ANNBruteForceTreeType = ANNbruteForce;
using ANNPointArrayType = ANNpointArray;
using ANNSplitRuleType = ANNsplitRule;
using ANNShrinkRuleType = ANNshrinkRule;
static ANNkDTreeType *
CreateANNkDTree(ANNPointArrayType pa, int n, int d, int bs = 1, ANNSplitRuleType split = ANN_KD_SUGGEST);
static ANNbdTreeType *
CreateANNbdTree(ANNPointArrayType pa,
int n,
int d,
int bs = 1,
ANNSplitRuleType split = ANN_KD_SUGGEST,
ANNShrinkRuleType shrink = ANN_BD_SUGGEST);
static ANNBruteForceTreeType *
CreateANNBruteForceTree(ANNPointArrayType pa, int n, int d);
static void
DeleteANNkDTree(ANNkDTreeType *& tree);
static void
DeleteANNBruteForceTree(ANNBruteForceTreeType *& tree);
static void
IncreaseReferenceCount();
static void
DecreaseReferenceCount();
protected:
ANNBinaryTreeCreator() = default;
~ANNBinaryTreeCreator() override = default;
private:
static unsigned int m_NumberOfANNBinaryTrees;
};
} // end namespace itk
#endif // end #ifndef itkANNBinaryTreeCreator_h
ANN.h
ANNsplitRule
ANNsplitRule
Definition ANN.h:575
ANN_KD_SUGGEST
@ ANN_KD_SUGGEST
Definition ANN.h:581
ANNpointArray
ANNpoint * ANNpointArray
Definition ANN.h:354
ANNshrinkRule
ANNshrinkRule
Definition ANN.h:584
ANN_BD_SUGGEST
@ ANN_BD_SUGGEST
Definition ANN.h:588
ANNbd_tree
Definition ANN.h:776
ANNbruteForce
Definition ANN.h:517
ANNkd_tree
Definition ANN.h:684
itk::ANNBinaryTreeCreator::Pointer
SmartPointer< Self > Pointer
Definition itkANNBinaryTreeCreator.h:46
itk::ANNBinaryTreeCreator::ANNBinaryTreeCreator
ANNBinaryTreeCreator()=default
itk::ANNBinaryTreeCreator::m_NumberOfANNBinaryTrees
static unsigned int m_NumberOfANNBinaryTrees
Definition itkANNBinaryTreeCreator.h:110
itk::ANNBinaryTreeCreator::ANNkDTreeType
ANNkd_tree ANNkDTreeType
Definition itkANNBinaryTreeCreator.h:57
itk::ANNBinaryTreeCreator::DeleteANNBruteForceTree
static void DeleteANNBruteForceTree(ANNBruteForceTreeType *&tree)
itk::ANNBinaryTreeCreator::ANNShrinkRuleType
ANNshrinkRule ANNShrinkRuleType
Definition itkANNBinaryTreeCreator.h:62
itk::ANNBinaryTreeCreator::CreateANNBruteForceTree
static ANNBruteForceTreeType * CreateANNBruteForceTree(ANNPointArrayType pa, int n, int d)
itk::ANNBinaryTreeCreator::Superclass
Object Superclass
Definition itkANNBinaryTreeCreator.h:45
itk::ANNBinaryTreeCreator::ANNSplitRuleType
ANNsplitRule ANNSplitRuleType
Definition itkANNBinaryTreeCreator.h:61
itk::ANNBinaryTreeCreator::DecreaseReferenceCount
static void DecreaseReferenceCount()
itk::ANNBinaryTreeCreator::ANNbdTreeType
ANNbd_tree ANNbdTreeType
Definition itkANNBinaryTreeCreator.h:58
itk::ANNBinaryTreeCreator::ConstPointer
SmartPointer< const Self > ConstPointer
Definition itkANNBinaryTreeCreator.h:47
itk::ANNBinaryTreeCreator::DeleteANNkDTree
static void DeleteANNkDTree(ANNkDTreeType *&tree)
itk::ANNBinaryTreeCreator::ANNBruteForceTreeType
ANNbruteForce ANNBruteForceTreeType
Definition itkANNBinaryTreeCreator.h:59
itk::ANNBinaryTreeCreator::IncreaseReferenceCount
static void IncreaseReferenceCount()
itk::ANNBinaryTreeCreator::~ANNBinaryTreeCreator
~ANNBinaryTreeCreator() override=default
itk::ANNBinaryTreeCreator::CreateANNbdTree
static ANNbdTreeType * CreateANNbdTree(ANNPointArrayType pa, int n, int d, int bs=1, ANNSplitRuleType split=ANN_KD_SUGGEST, ANNShrinkRuleType shrink=ANN_BD_SUGGEST)
itk::ANNBinaryTreeCreator::ANNPointArrayType
ANNpointArray ANNPointArrayType
Definition itkANNBinaryTreeCreator.h:60
itk::ANNBinaryTreeCreator::Self
ANNBinaryTreeCreator Self
Definition itkANNBinaryTreeCreator.h:44
itk::ANNBinaryTreeCreator::CreateANNkDTree
static ANNkDTreeType * CreateANNkDTree(ANNPointArrayType pa, int n, int d, int bs=1, ANNSplitRuleType split=ANN_KD_SUGGEST)
itk::ANNBinaryTreeCreator::ITK_DISALLOW_COPY_AND_MOVE
ITK_DISALLOW_COPY_AND_MOVE(ANNBinaryTreeCreator)
itk
Definition itkAdvancedImageToImageMetric.h:43

Generated on 1768596610 for elastix by 1.15.0 |