00001 #ifndef __TMUIEVAL_H__ 00002 #define __TMUIEVAL_H__ 00003 00004 #include<TDataType.h> 00005 #include<PHKey.hh> 00006 #include<PHException.h> 00007 #include<TMuiRoadEval.hh> 00008 #include<TMuiEvalRes.hh> 00009 00010 00012 00013 00016 class TMuiEval : public PHKey 00017 { 00018 public: 00019 00021 typedef std::vector<TMuiEvalRes> eval_res_list; 00022 00024 typedef std::vector<TMuiEvalRes>::const_iterator const_evalres_iter; 00025 00027 00028 00030 TMuiEval(){;} 00031 00033 TMuiEval(const Key &key): PHKey(key){;} 00034 00036 virtual ~TMuiEval(){;} 00037 00039 00041 00042 00044 virtual const eval_res_list* get_eval_res_list() const {return 0;} 00046 virtual void push_eval_res_list(const TMuiEvalRes& res_eval) { } 00047 00049 00051 00052 00054 virtual const TMuiRoadEval* get_road_eval() const {return 0;} 00056 virtual void set_road_eval(const TMuiRoadEval& road_eval) { } 00057 00059 00061 00062 00063 virtual UShort_t get_arm() const { return 0;} 00065 virtual UShort_t get_index() const { return 0;} 00067 virtual void set_arm( UShort_t arm) { } 00069 virtual void set_index( UShort_t index) { } 00071 00073 00074 00075 virtual void print(std::ostream& os = std::cout, bool max=false) const {} 00077 00078 ClassDef(TMuiEval,1) 00079 00080 }; 00081 00082 class TMuiEval_v1 : public TMuiEval 00083 { 00084 public: 00085 00086 TMuiEval_v1(); 00087 00088 TMuiEval_v1(const Key&, 00089 UShort_t arm, 00090 UShort_t index); 00091 00092 TMuiEval_v1(const TMuiEval* base_ptr); 00093 TMuiEval_v1(const TMuiEval& base_ref); 00094 00095 virtual ~TMuiEval_v1(){;} 00096 00097 const eval_res_list* get_eval_res_list() const { return &_eval_res_list;} 00098 void push_eval_res_list(const TMuiEvalRes& res_eval) { _eval_res_list.push_back(res_eval);} 00099 const TMuiRoadEval* get_road_eval() const { return &_road_eval;} 00100 void set_road_eval(const TMuiRoadEval& road_eval) { _road_eval=road_eval;} 00101 00102 UShort_t get_arm() const { return _arm;} 00103 UShort_t get_index() const { return _index;} 00104 void set_arm( UShort_t arm) { _arm=arm;} 00105 void set_index( UShort_t index) { _index=index;} 00106 void print(std::ostream& os = std::cout, bool max=false) const; 00107 00108 private: 00109 00110 UShort_t _arm; 00111 UShort_t _index; 00112 eval_res_list _eval_res_list; 00113 TMuiRoadEval _road_eval; 00114 00115 ClassDef(TMuiEval_v1,1) 00116 }; 00117 00118 #endif /* __TMUIEVAL_H__ */