00001 #ifndef L1Trigger_RPCBasicTrigConfig_h 00002 #define L1Trigger_RPCBasicTrigConfig_h 00003 00004 #ifndef _STAND_ALONE 00005 #include "FWCore/MessageLogger/interface/MessageLogger.h" 00006 #endif //_STAND_ALONE 00007 00008 #include "L1Trigger/RPCTrigger/interface/RPCTriggerConfiguration.h" 00009 #include "L1Trigger/RPCTrigger/interface/RPCPacManager.h" 00010 #include "L1Trigger/RPCTrigger/interface/RPCConst.h" 00011 #include "L1Trigger/RPCTrigger/interface/RPCConst.h" 00012 //#include "L1Trigger/RPCTrigger/interface/RPCException.h" 00013 //--------------------------------------------------------------------------- 00014 class RPCBasicTrigConfig: public RPCTriggerConfiguration { 00015 public: 00016 RPCBasicTrigConfig(RPCPacManager<RPCPacData>* pacManager); 00017 00018 RPCBasicTrigConfig(); 00019 00021 virtual int getTCsCnt(); 00022 00024 virtual int getTBsInTC(); 00025 00028 virtual int getTowerNumOnTb(const RPCConst::l1RpcConeCrdnts& coneCrdnts); 00029 00031 virtual const RPCPacData* getPac(const RPCConst::l1RpcConeCrdnts& coneCrdnts) const; 00032 00034 virtual int getTCNum(const RPCConst::l1RpcConeCrdnts& coneCrdnts); 00035 00037 virtual int getTBNum(const RPCConst::l1RpcConeCrdnts& coneCrdnts); 00038 00040 virtual int getTowsCntOnTB(int tbNum); 00041 00045 virtual int towAddr2TowNum(int towAddr); 00046 00049 virtual int towNum2TowNum2Comp(int towNum); 00050 00051 private: 00052 static const int m_TRIGGER_CRATES_CNT; 00053 00054 static const int m_TB_IN_TC_CNT = 9; 00055 00056 static const int m_TOWER_ON_TB[2 * RPCConst::ITOW_MAX + 1 +1]; 00057 00058 static const int m_TOWERS_CNT_ON_TB[m_TB_IN_TC_CNT]; 00059 00060 static const int m_TB_NUM_FOR_TOWER[2 * RPCConst::ITOW_MAX + 1]; 00061 00062 static const int m_TOW_ADDR_2_TOW_NUM[36]; 00063 00064 RPCPacManager<RPCPacData>* m_PacManager; 00065 }; 00066 #endif