File indexing completed on 2024-04-06 12:20:29
0001 #ifndef L1Trigger_L1TGlobal_CaloCondition_h
0002 #define L1Trigger_L1TGlobal_CaloCondition_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020 #include <iosfwd>
0021 #include <string>
0022
0023
0024
0025 #include "L1Trigger/L1TGlobal/interface/ConditionEvaluation.h"
0026
0027
0028 class GlobalCondition;
0029 class CaloTemplate;
0030
0031 namespace l1t {
0032
0033 class L1Candidate;
0034
0035 class GlobalBoard;
0036
0037
0038 class CaloCondition : public ConditionEvaluation {
0039 public:
0040
0041
0042 CaloCondition();
0043
0044
0045 CaloCondition(const GlobalCondition*,
0046 const GlobalBoard*,
0047 const int nrL1EG,
0048 const int nrL1Jet,
0049 const int nrL1Tau,
0050 const int ifCaloEtaNumberBits);
0051
0052
0053 CaloCondition(const CaloCondition&);
0054
0055
0056 ~CaloCondition() override;
0057
0058
0059 CaloCondition& operator=(const CaloCondition&);
0060
0061 public:
0062
0063 const bool evaluateCondition(const int bxEval) const override;
0064
0065
0066 void print(std::ostream& myCout) const override;
0067
0068 public:
0069
0070 inline const CaloTemplate* gtCaloTemplate() const { return m_gtCaloTemplate; }
0071
0072 void setGtCaloTemplate(const CaloTemplate*);
0073
0074
0075 inline const GlobalBoard* getuGtB() const { return m_uGtB; }
0076
0077 void setuGtB(const GlobalBoard*);
0078
0079
0080 inline const int gtIfCaloEtaNumberBits() const { return m_ifCaloEtaNumberBits; }
0081
0082 void setGtIfCaloEtaNumberBits(const int&);
0083
0084
0085 inline const int gtCorrParDeltaPhiNrBins() const { return m_corrParDeltaPhiNrBins; }
0086
0087 void setGtCorrParDeltaPhiNrBins(const int&);
0088
0089 private:
0090
0091 void copy(const CaloCondition& cp);
0092
0093
0094 const l1t::L1Candidate* getCandidate(const int bx, const int indexCand) const;
0095
0096
0097 const bool checkObjectParameter(const int iCondition, const l1t::L1Candidate& cand, const unsigned int index) const;
0098
0099 private:
0100
0101 const CaloTemplate* m_gtCaloTemplate;
0102
0103
0104 const GlobalBoard* m_uGtB;
0105
0106
0107 int m_ifCaloEtaNumberBits;
0108
0109
0110 unsigned int m_corrParDeltaPhiNrBins;
0111 };
0112
0113 }
0114 #endif