File indexing completed on 2023-03-17 10:55:54
0001 #ifndef DQM_RPCMonitorClient_DQMDaqInfo_H
0002 #define DQM_RPCMonitorClient_DQMDaqInfo_H
0003
0004 #include "DQMServices/Core/interface/DQMEDHarvester.h"
0005 #include "DQMServices/Core/interface/DQMStore.h"
0006 #include "CondFormats/RunInfo/interface/RunInfo.h"
0007 #include "CondFormats/DataRecord/interface/RunSummaryRcd.h"
0008
0009 #include <utility>
0010
0011 class RPCDaqInfo : public DQMEDHarvester {
0012 public:
0013 explicit RPCDaqInfo(const edm::ParameterSet &);
0014 ~RPCDaqInfo() override = default;
0015
0016 protected:
0017 void beginJob() override;
0018 void dqmEndLuminosityBlock(DQMStore::IBooker &,
0019 DQMStore::IGetter &,
0020 edm::LuminosityBlock const &,
0021 edm::EventSetup const &) override;
0022 void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override;
0023
0024 private:
0025 void myBooker(DQMStore::IBooker &);
0026
0027 edm::ESGetToken<RunInfo, RunInfoRcd> runInfoToken_;
0028
0029 bool init_;
0030
0031 MonitorElement *DaqFraction_;
0032 MonitorElement *DaqMap_;
0033 constexpr static int nWheels_ = 5;
0034 MonitorElement *daqWheelFractions[nWheels_];
0035 constexpr static int nDisks_ = 10;
0036 MonitorElement *daqDiskFractions[nDisks_];
0037
0038 std::pair<int, int> FEDRange_;
0039
0040 int numberOfDisks_, NumberOfFeds_;
0041 };
0042
0043 #endif