CMS 3D CMS Logo

CMSSW_4_4_3_patch1/src/L1Trigger/GlobalMuonTrigger/src/L1MuGMTCancelOutUnit.h

Go to the documentation of this file.
00001 //-------------------------------------------------
00002 //
00032 //
00033 //   $Date: 2007/03/23 18:51:35 $
00034 //   $Revision: 1.2 $
00035 //
00036 //   Author :
00037 //   H. Sakulin            CERN EP 
00038 //
00039 //   Migrated to CMSSW:
00040 //   I. Mikulec
00041 //
00042 //--------------------------------------------------
00043 #ifndef L1TriggerGlobalMuonTrigger_L1MuGMTCancelOutUnit_h
00044 #define L1TriggerGlobalMuonTrigger_L1MuGMTCancelOutUnit_h
00045 
00046 //---------------
00047 // C++ Headers --
00048 //---------------
00049 
00050 #include <vector>
00051 
00052 //----------------------
00053 // Base Class Headers --
00054 //----------------------
00055 
00056 //------------------------------------
00057 // Collaborating Class Declarations --
00058 //------------------------------------
00059 
00060 #include "L1Trigger/GlobalMuonTrigger/src/L1MuGMTMatcher.h"
00061 
00062 class L1MuGlobalMuonTrigger;
00063 
00064 //              ---------------------
00065 //              -- Class Interface --
00066 //              ---------------------
00067 
00068 
00069 class L1MuGMTCancelOutUnit {
00070 
00071   public:
00073     L1MuGMTCancelOutUnit(const L1MuGlobalMuonTrigger& gmt, int id);
00074 
00076     virtual ~L1MuGMTCancelOutUnit();
00077 
00079     void run();
00080     
00082     void reset();
00083 
00085     void print();
00086     
00088     inline int id() const { return m_id; } 
00089 
00091     const bool cancelMyChipMuon(int idx) const { return m_MyChipCancelbits[idx]; }
00092 
00094     const bool cancelOtherChipMuon(int idx) const { return m_OtherChipCancelbits[idx]; }
00095      
00096   private:
00097     void decide();
00098    
00099   private:
00100 
00101     const L1MuGlobalMuonTrigger& m_gmt;
00102     int m_id;
00103 
00104     L1MuGMTMatcher m_matcher;
00105     std::vector<bool> m_MyChipCancelbits;
00106     std::vector<bool> m_OtherChipCancelbits;
00107 };
00108   
00109 #endif