CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch9/src/L1Trigger/GlobalTrigger/interface/L1GtCaloCondition.h

Go to the documentation of this file.
00001 #ifndef GlobalTrigger_L1GtCaloCondition_h
00002 #define GlobalTrigger_L1GtCaloCondition_h
00003 
00020 // system include files
00021 #include <iosfwd>
00022 #include <string>
00023 
00024 // user include files
00025 //   base classes
00026 #include "L1Trigger/GlobalTrigger/interface/L1GtConditionEvaluation.h"
00027 
00028 // forward declarations
00029 class L1GtCondition;
00030 class L1GtCaloTemplate;
00031 
00032 class L1GctCand;
00033 
00034 class L1GlobalTriggerPSB;
00035 
00036 // class declaration
00037 class L1GtCaloCondition : public L1GtConditionEvaluation
00038 {
00039 
00040 public:
00041 
00044     L1GtCaloCondition();
00045 
00047     L1GtCaloCondition(const L1GtCondition*, const L1GlobalTriggerPSB*,
00048             const int nrL1NoIsoEG,
00049             const int nrL1IsoEG,
00050             const int nrL1CenJet,
00051             const int nrL1ForJet,
00052             const int nrL1TauJet,
00053             const int ifCaloEtaNumberBits);
00054 
00055     // copy constructor
00056     L1GtCaloCondition(const L1GtCaloCondition&);
00057 
00058     // destructor
00059     virtual ~L1GtCaloCondition();
00060 
00061     // assign operator
00062     L1GtCaloCondition& operator=(const L1GtCaloCondition&);
00063 
00064 public:
00065 
00067      const bool evaluateCondition() const;
00068 
00070      void print(std::ostream& myCout) const;
00071 
00072 public:
00073 
00075     inline const L1GtCaloTemplate* gtCaloTemplate() const {
00076         return m_gtCaloTemplate;
00077     }
00078 
00079     void setGtCaloTemplate(const L1GtCaloTemplate*);
00080 
00082     inline const int gtIfCaloEtaNumberBits() const {
00083         return m_ifCaloEtaNumberBits;
00084     }
00085 
00086     void setGtIfCaloEtaNumberBits(const int&);
00087 
00089     inline const L1GlobalTriggerPSB* gtPSB() const {
00090         return m_gtPSB;
00091     }
00092 
00093     void setGtPSB(const L1GlobalTriggerPSB*);
00094 
00095 private:
00096 
00098     void copy(const L1GtCaloCondition& cp);
00099 
00101     const L1GctCand* getCandidate(const int indexCand) const;
00102 
00104     const bool
00105         checkObjectParameter(const int iCondition, const L1GctCand& cand) const;
00106 
00107 private:
00108 
00110     const L1GtCaloTemplate* m_gtCaloTemplate;
00111 
00113     const L1GlobalTriggerPSB* m_gtPSB;
00114 
00116     int m_ifCaloEtaNumberBits;
00117 
00118 };
00119 
00120 #endif