00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef __MinimumDecisionRule_h
00018 #define __MinimumDecisionRule_h
00019
00020 #include "itkWin32Header.h"
00021
00022 #include <vector>
00023 #include "vnl/vnl_matrix.h"
00024 #include "itkObject.h"
00025 #include "itkObjectFactory.h"
00026 #include "itkDecisionRuleBase.h"
00027
00028 namespace itk
00029 {
00030
00035 class ITKCommon_EXPORT MinimumDecisionRule :
00036 public DecisionRuleBase
00037 {
00038 public:
00040 typedef MinimumDecisionRule Self ;
00041 typedef DecisionRuleBase Superclass;
00042 typedef itk::SmartPointer<Self> Pointer;
00043
00045 itkTypeMacro(MinimumDecisionRule, DecisionRuleBase);
00046
00048 itkNewMacro(Self) ;
00049
00050
00052 typedef Superclass::VectorType VectorType;
00053 typedef Superclass::ArrayType ArrayType;
00054
00055
00060 virtual unsigned int Evaluate( const VectorType &discriminantScores) const;
00061
00066 virtual unsigned int Evaluate( const ArrayType &discriminantScores) const;
00067
00068
00069 protected:
00070 MinimumDecisionRule() ;
00071 virtual ~MinimumDecisionRule() {}
00072
00073 private:
00074
00075
00076 } ;
00077
00078 }
00079
00080 #endif
00081
00082
00083
00084
00085
00086
00087
00088