scoringComponent.h

Go to the documentation of this file.
00001 // $id$
00002 
00003 #ifndef BALL_SCORING_COMMON_SCORINGCOMPONENT
00004 #define BALL_SCORING_COMMON_SCORINGCOMPONENT
00005 
00006 #include <BALL/DATATYPE/string.h>
00007 #include <BALL/SCORING/COMMON/scoringFunction.h>
00008 
00009 namespace BALL
00010 {
00011 
00012   class ScoringFunction;
00013 
00014   class ScoringComponent
00015   {
00016 
00017     public:
00018 
00020     ScoringComponent()
00021       ;
00022 
00024     ScoringComponent(const ScoringComponent& sc)
00025       ;
00026 
00028     ScoringComponent(ScoringFunction& sf)
00029       ;
00030 
00032     virtual ~ScoringComponent()
00033       ;
00034 
00036     virtual void clear()
00037       ;
00038 
00040     virtual bool setup()
00041       ;
00042 
00044     ScoringFunction* getScoringFunction() const
00045       ;
00046 
00048     void setScoringFunction(ScoringFunction& sf)
00049       ;
00050 
00052     String getName() const
00053       ;
00054 
00056     void setName(const String& name)
00057       ;
00058 
00060     virtual double calculateScore()
00061       ;
00062 
00064     virtual double getScore() const
00065       ;
00066 
00067 
00068     protected:
00069 
00070     //_
00071     ScoringFunction* scoring_function_;
00072   
00073     //_
00074     double score_;
00075 
00076 
00077     private:
00078 
00079     //_
00080     String name_;
00081 
00082   };
00083 
00084 }
00085 
00086 #endif // BALL_SCORING_COMMON_SCORINGCOMPONENT