00001 #ifndef GlobalTrigger_L1GtHfBitCountsCondition_h 00002 #define GlobalTrigger_L1GtHfBitCountsCondition_h 00003 00020 // system include files 00021 #include <iosfwd> 00022 00023 // user include files 00024 // base classes 00025 #include "L1Trigger/GlobalTrigger/interface/L1GtConditionEvaluation.h" 00026 00027 // forward declarations 00028 class L1GtCondition; 00029 class L1GtHfBitCountsTemplate; 00030 00031 class L1GlobalTriggerPSB; 00032 00033 // class declaration 00034 class L1GtHfBitCountsCondition : public L1GtConditionEvaluation 00035 { 00036 00037 public: 00038 00041 L1GtHfBitCountsCondition(); 00042 00044 L1GtHfBitCountsCondition(const L1GtCondition*, const L1GlobalTriggerPSB*); 00045 00046 // copy constructor 00047 L1GtHfBitCountsCondition(const L1GtHfBitCountsCondition&); 00048 00049 // destructor 00050 virtual ~L1GtHfBitCountsCondition(); 00051 00052 // assign operator 00053 L1GtHfBitCountsCondition& operator=(const L1GtHfBitCountsCondition&); 00054 00055 public: 00056 00058 const bool evaluateCondition() const; 00059 00061 void print(std::ostream& myCout) const; 00062 00063 public: 00064 00066 inline const L1GtHfBitCountsTemplate* gtHfBitCountsTemplate() const { 00067 return m_gtHfBitCountsTemplate; 00068 } 00069 00070 void setGtHfBitCountsTemplate(const L1GtHfBitCountsTemplate*); 00071 00073 inline const L1GlobalTriggerPSB* gtPSB() const { 00074 return m_gtPSB; 00075 } 00076 00077 void setGtPSB(const L1GlobalTriggerPSB*); 00078 00079 private: 00080 00082 void copy(const L1GtHfBitCountsCondition& cp); 00083 00084 private: 00085 00087 const L1GtHfBitCountsTemplate* m_gtHfBitCountsTemplate; 00088 00090 const L1GlobalTriggerPSB* m_gtPSB; 00091 00092 }; 00093 00094 #endif