00001 //------------------------------------------------- 00002 // 00017 // 00018 //-------------------------------------------------- 00019 #ifndef L1MUDT_ERS_H 00020 #define L1MUDT_ERS_H 00021 00022 //--------------- 00023 // C++ Headers -- 00024 //--------------- 00025 00026 #include <utility> 00027 00028 //---------------------- 00029 // Base Class Headers -- 00030 //---------------------- 00031 00032 #include "L1Trigger/DTTrackFinder/interface/L1AbstractProcessor.h" 00033 00034 //------------------------------------ 00035 // Collaborating Class Declarations -- 00036 //------------------------------------ 00037 00038 class L1MuDTTrackSegPhi; 00039 class L1MuDTSEU; 00040 00041 // --------------------- 00042 // -- Class Interface -- 00043 // --------------------- 00044 00045 class L1MuDTERS : public L1AbstractProcessor { 00046 00047 public: 00048 00050 L1MuDTERS(const L1MuDTSEU& ); 00051 00053 virtual ~L1MuDTERS(); 00054 00056 virtual void run(); 00057 00059 virtual void reset(); 00060 00062 inline unsigned int quality(int id) const { return m_quality[id]; } 00063 00065 inline unsigned short int address(int id) const { return m_address[id]; } 00066 00068 std::pair<const L1MuDTTrackSegPhi*, const L1MuDTTrackSegPhi*> ts(int id) const; 00069 00070 private: 00071 00072 const L1MuDTSEU& m_seu; 00073 00074 unsigned short int m_quality[2]; //@@ 1 bit 00075 unsigned short int m_address[2]; //@@ 4 bits 00076 00077 const L1MuDTTrackSegPhi* m_start[2]; 00078 const L1MuDTTrackSegPhi* m_target[2]; 00079 00080 }; 00081 00082 #endif