00001 #ifndef __MMUIEVALO_H__ 00002 #define __MMUIEVALO_H__ 00003 00004 #include<PHModule.h> 00005 #include<PHTimeServer.h> 00006 #include<mMuiEvalOPar.h> 00007 #include<TMuiHitMapO.h> 00008 #include<TMuiClusterMapO.h> 00009 #include<TMuiRoadMapO.h> 00010 #include<TMutMCTrkMap.h> 00011 #include<TMuiMCHitMapO.h> 00012 #include<TMuiEvalMap.h> 00013 00014 class mMuiEvalO : public PHModule 00015 { 00016 public: 00017 00018 mMuiEvalO(); 00019 virtual ~mMuiEvalO(); 00020 virtual PHBoolean event(PHCompositeNode*); 00021 00022 private: 00023 00024 // private methods 00025 00026 void set_interface_ptrs(PHCompositeNode* top_node); 00027 void evaluate(); 00028 void associate_mchit(); 00029 void associate_mctrk(); 00030 void fill_road_eval(TMuiRoadMapO::pointer, TMutMCTrkMap::pointer, 00031 TMuiEvalMap::pointer); 00032 std::pair<UShort_t, UShort_t> get_true_hits(TMuiRoadMapO::pointer, TMutMCTrkMap::pointer); 00033 UShort_t get_n_maskhit(TMutMCTrkMap::pointer); 00034 void fill_eval_res(TMuiRoadMapO::pointer, TMutMCTrkMap::pointer, 00035 TMuiEvalMap::pointer); 00036 00037 // private members 00038 const mMuiEvalOPar* _mod_par; 00039 TMuiHitMapO* _hit_map; 00040 TMuiClusterMapO* _cluster_map; 00041 TMuiRoadMapO* _road_map; 00042 TMuiEvalMap* _eval_map; 00043 TMutMCTrkMap* _mctrk_map; 00044 00046 PHTimeServer::timer _timer; 00047 }; 00048 00049 #endif /* __MMUIEVALO_H__ */