00001 #ifndef GOODNESSRULE_H
00002 #define GOODNESSRULE_H
00003
00004 #include "CompositeFragment.h"
00005
00009 class GoodnessRule
00010 {
00011 public:
00012
00016 GoodnessRule( void );
00017
00021 ~GoodnessRule(){};
00022
00026 void addMinMax( double p_min, double p_max );
00027
00031 void resetMinMax( void );
00032
00036 bool operator()( const CompositeFragment & p_composite_fragment);
00037
00041 void operator()( const CompositeFragment & p_composite_fragment, float & p_goodness ) const;
00042
00043 protected:
00044
00048 class MinMax
00049 {
00050 public:
00051 MinMax() : min(0.0), max(0.0){};
00052 double min;
00053 double max;
00054 };
00055
00056 std::vector<MinMax> m_min_max;
00057
00058 private:
00059
00060 std::vector<double> m_tmp_properties;
00061 };
00062
00063 #endif
00064 te:
00065
00066 std::vector<double> m_tmp_properties;
00067 };
00068
00069 #endif