Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:21:40

0001 #ifndef L1Trigger_RPCTriggerCrate_h
0002 #define L1Trigger_RPCTriggerCrate_h
0003 //#define LOCALDEBUG
0004 /** \class RPCTriggerCrate
0005   * Class describing the Trigger Crate. In one Trigger Crate thera are
0006   * Trigger Boards fro one sector.
0007   * \author Karol Bunkowski (Warsaw)
0008   */
0009 
0010 #ifndef _STAND_ALONE
0011 #include "FWCore/MessageLogger/interface/MessageLogger.h"
0012 #endif  // _STAND_ALONE
0013 
0014 #include <vector>
0015 
0016 #include "L1Trigger/RPCTrigger/interface/RPCTBMuon.h"
0017 #include "L1Trigger/RPCTrigger/interface/RPCTriggerBoard.h"
0018 #include "L1Trigger/RPCTrigger/interface/RPCTCGhostBusterSorter.h"
0019 
0020 //---------------------------------------------------------------------------
0021 class RPCTriggerCrate {
0022 public:
0023   RPCTriggerCrate(RPCTriggerConfiguration* triggerConfig, int tcNum);
0024 
0025   /** Runs RPCTriggerBoard::runCone() for every TB. Cheks, if any non empty muons were found*/
0026   void runCone(const RPCLogCone& cone);
0027 
0028   /** If in runCone() any muons were found,
0029     * runs RPCTriggerBoard::runTBGB() for every TB.
0030     * Then runs RPCTCGhostBusterSorter::run(). */
0031   L1RpcTBMuonsVec runTCGBSorter();
0032 
0033 private:
0034   int m_TCNumber;  //!< The number of this TriggerCrate (0 - 11)
0035 
0036   RPCTriggerConfiguration* m_TriggerConfig;
0037 
0038   std::vector<RPCTriggerBoard> m_TBsVec;  //!< Here TB belonging to thie TC are stored.
0039 
0040   RPCTCGhostBusterSorter m_TCGhostBusterSorter;
0041 
0042   bool m_WasMuon;
0043 };
0044 #endif