File indexing completed on 2023-03-17 10:55:12
0001
0002 #ifndef L1TGCT_H
0003 #define L1TGCT_H
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036
0037
0038
0039
0040
0041
0042
0043
0044
0045
0046
0047
0048
0049
0050
0051
0052
0053
0054
0055
0056
0057
0058
0059
0060
0061
0062
0063
0064
0065
0066
0067
0068
0069
0070
0071
0072
0073
0074
0075
0076
0077
0078
0079
0080
0081
0082
0083
0084
0085
0086
0087
0088
0089
0090
0091
0092 #include <memory>
0093 #include <unistd.h>
0094
0095 #include <iostream>
0096 #include <fstream>
0097 #include <vector>
0098
0099
0100 #include "FWCore/Framework/interface/Frameworkfwd.h"
0101
0102 #include "FWCore/Framework/interface/Event.h"
0103 #include "FWCore/Framework/interface/MakerMacros.h"
0104
0105 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0106
0107 #include "FWCore/ServiceRegistry/interface/Service.h"
0108
0109
0110 #include "DQMServices/Core/interface/DQMStore.h"
0111 #include "DataFormats/L1GlobalCaloTrigger/interface/L1GctCollections.h"
0112 #include "DQMServices/Core/interface/DQMEDAnalyzer.h"
0113
0114
0115
0116
0117
0118 class L1TGCT : public DQMEDAnalyzer {
0119 public:
0120
0121 L1TGCT(const edm::ParameterSet& ps);
0122
0123
0124 ~L1TGCT() override;
0125
0126 protected:
0127
0128 void analyze(const edm::Event& e, const edm::EventSetup& c) override;
0129
0130 void bookHistograms(DQMStore::IBooker& ibooker, edm::Run const&, edm::EventSetup const&) override;
0131
0132 private:
0133
0134
0135 std::string monitorDir_;
0136
0137
0138 MonitorElement* triggerType_;
0139
0140
0141 MonitorElement* l1GctAllJetsEtEtaPhi_;
0142 MonitorElement* l1GctCenJetsEtEtaPhi_;
0143 MonitorElement* l1GctForJetsEtEtaPhi_;
0144 MonitorElement* l1GctTauJetsEtEtaPhi_;
0145 MonitorElement* l1GctIsoTauJetsEtEtaPhi_;
0146 MonitorElement* l1GctIsoEmRankEtaPhi_;
0147 MonitorElement* l1GctNonIsoEmRankEtaPhi_;
0148
0149 MonitorElement* l1GctAllJetsOccEtaPhi_;
0150 MonitorElement* l1GctCenJetsOccEtaPhi_;
0151 MonitorElement* l1GctForJetsOccEtaPhi_;
0152 MonitorElement* l1GctTauJetsOccEtaPhi_;
0153 MonitorElement* l1GctIsoTauJetsOccEtaPhi_;
0154 MonitorElement* l1GctIsoEmOccEtaPhi_;
0155 MonitorElement* l1GctNonIsoEmOccEtaPhi_;
0156
0157 MonitorElement* l1GctCenJetsRank_;
0158 MonitorElement* l1GctForJetsRank_;
0159 MonitorElement* l1GctTauJetsRank_;
0160 MonitorElement* l1GctIsoTauJetsRank_;
0161 MonitorElement* l1GctIsoEmRank_;
0162 MonitorElement* l1GctNonIsoEmRank_;
0163
0164 MonitorElement* l1GctAllJetsOccRankBx_;
0165 MonitorElement* l1GctAllEmOccRankBx_;
0166
0167
0168 MonitorElement* l1GctEtMiss_;
0169 MonitorElement* l1GctEtMissPhi_;
0170 MonitorElement* l1GctEtMissOf_;
0171 MonitorElement* l1GctEtMissOccBx_;
0172 MonitorElement* l1GctHtMiss_;
0173 MonitorElement* l1GctHtMissPhi_;
0174 MonitorElement* l1GctHtMissOf_;
0175 MonitorElement* l1GctHtMissOccBx_;
0176 MonitorElement* l1GctEtMissHtMissCorr_;
0177 MonitorElement* l1GctEtMissHtMissCorrPhi_;
0178 MonitorElement* l1GctEtTotal_;
0179 MonitorElement* l1GctEtTotalOf_;
0180 MonitorElement* l1GctEtTotalOccBx_;
0181 MonitorElement* l1GctEtHad_;
0182 MonitorElement* l1GctEtHadOf_;
0183 MonitorElement* l1GctEtHadOccBx_;
0184 MonitorElement* l1GctEtTotalEtHadCorr_;
0185
0186
0187 MonitorElement* l1GctHFRing1PosEtaNegEta_;
0188 MonitorElement* l1GctHFRing2PosEtaNegEta_;
0189 MonitorElement* l1GctHFRing1TowerCountPosEtaNegEta_;
0190 MonitorElement* l1GctHFRing2TowerCountPosEtaNegEta_;
0191 MonitorElement* l1GctHFRing1TowerCountPosEta_;
0192 MonitorElement* l1GctHFRing1TowerCountNegEta_;
0193 MonitorElement* l1GctHFRing2TowerCountPosEta_;
0194 MonitorElement* l1GctHFRing2TowerCountNegEta_;
0195 MonitorElement* l1GctHFRing1ETSumPosEta_;
0196 MonitorElement* l1GctHFRing1ETSumNegEta_;
0197 MonitorElement* l1GctHFRing2ETSumPosEta_;
0198 MonitorElement* l1GctHFRing2ETSumNegEta_;
0199 MonitorElement* l1GctHFRingRatioPosEta_;
0200 MonitorElement* l1GctHFRingRatioNegEta_;
0201 MonitorElement* l1GctHFRingETSumOccBx_;
0202 MonitorElement* l1GctHFRingTowerCountOccBx_;
0203
0204 int nev_;
0205 std::string outputFile_;
0206 bool verbose_;
0207 bool monitorDaemon_;
0208 std::ofstream logFile_;
0209
0210 edm::InputTag gctCenJetsSource_;
0211 edm::InputTag gctForJetsSource_;
0212 edm::InputTag gctTauJetsSource_;
0213 edm::InputTag gctIsoTauJetsSource_;
0214 edm::InputTag gctEnergySumsSource_;
0215 edm::InputTag gctIsoEmSource_;
0216 edm::InputTag gctNonIsoEmSource_;
0217
0218
0219 bool m_stage1_layer2_;
0220 int filterTriggerType_;
0221
0222
0223 edm::EDGetTokenT<L1GctEmCandCollection> gctIsoEmSourceToken_;
0224 edm::EDGetTokenT<L1GctEmCandCollection> gctNonIsoEmSourceToken_;
0225 edm::EDGetTokenT<L1GctJetCandCollection> gctCenJetsSourceToken_;
0226 edm::EDGetTokenT<L1GctJetCandCollection> gctForJetsSourceToken_;
0227 edm::EDGetTokenT<L1GctJetCandCollection> gctTauJetsSourceToken_;
0228 edm::EDGetTokenT<L1GctJetCandCollection> gctIsoTauJetsSourceToken_;
0229 edm::EDGetTokenT<L1GctHFRingEtSumsCollection> gctEnergySumsSourceToken_;
0230 edm::EDGetTokenT<L1GctHFBitCountsCollection> l1HFCountsToken_;
0231 edm::EDGetTokenT<L1GctEtMissCollection> l1EtMissToken_;
0232 edm::EDGetTokenT<L1GctHtMissCollection> l1HtMissToken_;
0233 edm::EDGetTokenT<L1GctEtHadCollection> l1EtHadToken_;
0234 edm::EDGetTokenT<L1GctEtTotalCollection> l1EtTotalToken_;
0235 };
0236
0237 #endif