File indexing completed on 2021-02-14 13:10:46
0001 #ifndef DQM_L1TMONITORCLIENT_L1TDTTPG_H
0002 #define DQM_L1TMONITORCLIENT_L1TDTTPG_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 "FWCore/Framework/interface/EDAnalyzer.h"
0008 #include "DQMServices/Core/interface/DQMStore.h"
0009 #include "DQMServices/Core/interface/DQMEDHarvester.h"
0010
0011 #include <memory>
0012 #include <iostream>
0013 #include <fstream>
0014 #include <string>
0015 #include <vector>
0016 #include <map>
0017 #include <TH1F.h>
0018 #include <TH2F.h>
0019 #include <TProfile2D.h>
0020
0021 class L1TDTTPGClient : public DQMEDHarvester {
0022 public:
0023
0024 L1TDTTPGClient(const edm::ParameterSet &ps);
0025
0026
0027 ~L1TDTTPGClient() override;
0028
0029 protected:
0030 void dqmEndJob(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter) override;
0031
0032 private:
0033 void initialize();
0034 void makeRatioHisto(DQMStore::IGetter &igetter, MonitorElement *ratioME, std::string &nName, std::string &dName);
0035 void setMapPhLabel(MonitorElement *me);
0036 void setMapThLabel(MonitorElement *me);
0037 TH1F *get1DHisto(std::string meName, DQMStore::IGetter &igetter);
0038 TH2F *get2DHisto(std::string meName, DQMStore::IGetter &igetter);
0039 TProfile2D *get2DProfile(std::string meName, DQMStore::IGetter &igetter);
0040 TProfile *get1DProfile(std::string meName, DQMStore::IGetter &igetter);
0041
0042 edm::ParameterSet parameters_;
0043 std::string monitorName_;
0044 std::string input_dir_;
0045 std::string output_dir_;
0046 int counterLS_;
0047 int counterEvt_;
0048 int prescaleLS_;
0049 int prescaleEvt_;
0050
0051
0052
0053 MonitorElement *dttpgphmapcorrf;
0054 MonitorElement *dttpgphmap2ndf;
0055 MonitorElement *dttpgphmapbxf[3];
0056 MonitorElement *dttpgthmaphf;
0057 MonitorElement *dttpgthmapbxf[3];
0058 };
0059
0060 #endif