![]() |
Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages |
00001 /*====================================================================== 00002 00003 This file is part of the elastix software. 00004 00005 Copyright (c) University Medical Center Utrecht. All rights reserved. 00006 See src/CopyrightElastix.txt or http://elastix.isi.uu.nl/legal.php for 00007 details. 00008 00009 This software is distributed WITHOUT ANY WARRANTY; without even 00010 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00011 PURPOSE. See the above copyright notices for more information. 00012 00013 ======================================================================*/ 00014 00015 #ifndef __itkANNStandardTreeSearch_h 00016 #define __itkANNStandardTreeSearch_h 00017 00018 #include "itkBinaryANNTreeSearchBase.h" 00019 00020 00021 namespace itk 00022 { 00023 00033 template < class TListSample > 00034 class ANNStandardTreeSearch : public BinaryANNTreeSearchBase< TListSample > 00035 { 00036 public: 00037 00039 typedef ANNStandardTreeSearch Self; 00040 typedef BinaryANNTreeSearchBase< TListSample > Superclass; 00041 typedef SmartPointer< Self > Pointer; 00042 typedef SmartPointer< const Self > ConstPointer; 00043 00045 itkNewMacro( Self ); 00046 00048 itkTypeMacro( ANNStandardTreeSearch, BinaryANNTreeSearchBase ); 00049 00051 typedef typename Superclass::ListSampleType ListSampleType; 00052 typedef typename Superclass::BinaryTreeType BinaryTreeType; 00053 typedef typename Superclass::MeasurementVectorType MeasurementVectorType; 00054 typedef typename Superclass::IndexArrayType IndexArrayType; 00055 typedef typename Superclass::DistanceArrayType DistanceArrayType; 00056 00057 typedef typename Superclass::ANNPointType ANNPointType; // double * 00058 typedef typename Superclass::ANNIndexType ANNIndexType; // int 00059 typedef typename Superclass::ANNIndexArrayType ANNIndexArrayType; // int * 00060 typedef typename Superclass::ANNDistanceType ANNDistanceType; // double 00061 typedef typename Superclass::ANNDistanceArrayType ANNDistanceArrayType; // double * 00062 00063 typedef typename Superclass::BinaryANNTreeType BinaryANNTreeType; 00064 00066 itkSetClampMacro( ErrorBound, double, 0.0, 1e14 ); 00067 itkGetConstMacro( ErrorBound, double ); 00068 00070 virtual void Search( const MeasurementVectorType & qp, IndexArrayType & ind, 00071 DistanceArrayType & dists ); 00072 00073 protected: 00074 00075 ANNStandardTreeSearch(); 00076 virtual ~ANNStandardTreeSearch(); 00077 00079 double m_ErrorBound; 00080 00081 private: 00082 00083 ANNStandardTreeSearch( const Self& ); // purposely not implemented 00084 void operator=( const Self& ); // purposely not implemented 00085 00086 }; // end class ANNStandardTreeSearch 00087 00088 00089 } // end namespace itk 00090 00091 00092 #ifndef ITK_MANUAL_INSTANTIATION 00093 #include "itkANNStandardTreeSearch.txx" 00094 #endif 00095 00096 00097 #endif // end #ifndef __itkANNStandardTreeSearch_h 00098
Generated on 11-05-2012 for elastix by ![]() |
![]() |