File indexing completed on 2023-03-17 10:55:32
0001 #ifndef DQM_L1TMONITORCLIENT_L1TGCTCLIENT_H
0002 #define DQM_L1TMONITORCLIENT_L1TGCTCLIENT_H
0003
0004 #include "FWCore/Framework/interface/Frameworkfwd.h"
0005 #include "FWCore/Framework/interface/Event.h"
0006 #include "FWCore/Framework/interface/MakerMacros.h"
0007 #include "DQMServices/Core/interface/DQMStore.h"
0008 #include "DQMServices/Core/interface/DQMEDHarvester.h"
0009
0010 #include <memory>
0011 #include <iostream>
0012 #include <fstream>
0013 #include <string>
0014 #include <vector>
0015 #include <map>
0016
0017 class L1TGCTClient : public DQMEDHarvester {
0018 public:
0019
0020 L1TGCTClient(const edm::ParameterSet &ps);
0021
0022
0023 ~L1TGCTClient() override;
0024
0025 protected:
0026 void dqmEndJob(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter) override;
0027 void dqmEndLuminosityBlock(DQMStore::IBooker &ibooker,
0028 DQMStore::IGetter &igetter,
0029 const edm::LuminosityBlock &lumiSeg,
0030 const edm::EventSetup &c) override;
0031
0032 private:
0033 void book(DQMStore::IBooker &ibooker);
0034 void processHistograms(DQMStore::IGetter &igetter);
0035
0036 void makeXProjection(TH2F *input, MonitorElement *output);
0037 void makeYProjection(TH2F *input, MonitorElement *output);
0038
0039 std::string monitorDir_;
0040 int counterLS_;
0041 int counterEvt_;
0042 int prescaleLS_;
0043 int prescaleEvt_;
0044
0045 bool m_runInEventLoop;
0046 bool m_runInEndLumi;
0047 bool m_runInEndRun;
0048 bool m_runInEndJob;
0049 bool m_stage1_layer2_;
0050
0051 std::string InputDir;
0052
0053 MonitorElement *l1GctIsoEmOccEta_;
0054 MonitorElement *l1GctIsoEmOccPhi_;
0055 MonitorElement *l1GctNonIsoEmOccEta_;
0056 MonitorElement *l1GctNonIsoEmOccPhi_;
0057 MonitorElement *l1GctAllJetsOccEta_;
0058 MonitorElement *l1GctAllJetsOccPhi_;
0059 MonitorElement *l1GctCenJetsOccEta_;
0060 MonitorElement *l1GctCenJetsOccPhi_;
0061 MonitorElement *l1GctForJetsOccEta_;
0062 MonitorElement *l1GctForJetsOccPhi_;
0063 MonitorElement *l1GctTauJetsOccEta_;
0064 MonitorElement *l1GctTauJetsOccPhi_;
0065 MonitorElement *l1GctIsoTauJetsOccEta_;
0066 MonitorElement *l1GctIsoTauJetsOccPhi_;
0067 };
0068
0069 #endif