File indexing completed on 2025-01-14 23:16:58
0001 #ifndef L1Trigger_L1TGlobal_CorrCondition_h
0002 #define L1Trigger_L1TGlobal_CorrCondition_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019 #include <iosfwd>
0020 #include <string>
0021
0022
0023
0024 #include "L1Trigger/L1TGlobal/interface/ConditionEvaluation.h"
0025 #include "L1Trigger/L1TGlobal/interface/GlobalScales.h"
0026
0027
0028 class GlobalCondition;
0029 class CorrelationTemplate;
0030
0031 namespace l1t {
0032
0033 class L1Candidate;
0034
0035 class GlobalBoard;
0036
0037
0038 class CorrCondition : public ConditionEvaluation {
0039 public:
0040
0041
0042 CorrCondition();
0043
0044
0045 CorrCondition(const GlobalCondition*,
0046 const GlobalCondition*,
0047 const GlobalCondition*,
0048 const GlobalBoard*,
0049 const GlobalScales*);
0050
0051
0052 CorrCondition(const CorrCondition&);
0053
0054
0055 ~CorrCondition() override;
0056
0057
0058 CorrCondition& operator=(const CorrCondition&);
0059
0060 public:
0061
0062 const bool evaluateCondition(const int bxEval) const override;
0063
0064
0065 void print(std::ostream& myCout) const override;
0066
0067 public:
0068 inline const CorrelationTemplate* gtCorrelationTemplate() const { return m_gtCorrelationTemplate; }
0069 void setGtCorrelationTemplate(const CorrelationTemplate*);
0070
0071 inline const GlobalBoard* getuGtB() const { return m_uGtB; }
0072 void setuGtB(const GlobalBoard*);
0073
0074 inline const GlobalScales* getScales() const { return m_gtScales; }
0075 void setScales(const GlobalScales*);
0076
0077
0078
0079
0080
0081
0082
0083
0084
0085
0086
0087
0088
0089
0090
0091
0092
0093 private:
0094
0095 void copy(const CorrCondition& cp);
0096
0097
0098 const l1t::L1Candidate* getCandidate(const int bx, const int indexCand) const;
0099
0100
0101 const bool checkObjectParameter(const int iCondition, const l1t::L1Candidate& cand) const;
0102
0103 private:
0104
0105 const CorrelationTemplate* m_gtCorrelationTemplate;
0106
0107
0108 const GlobalCondition* m_gtCond0;
0109 const GlobalCondition* m_gtCond1;
0110
0111
0112 const GlobalBoard* m_uGtB;
0113
0114 const GlobalScales* m_gtScales;
0115
0116
0117
0118
0119
0120
0121
0122
0123 };
0124
0125 }
0126 #endif