56 if (!hltConfig.
init(iRun, iEventSetup,
"HLT", changed)) {
57 edm::LogInfo(
"DQMProvInfo") <<
"errorHltConfigExtraction" << std::endl;
59 }
else if (hltConfig.
size() <= 0) {
61 hltKey_ =
"error key of length 0";
143 "DCS HV Status and Beam Status per Lumisection",
234 unsigned int currentLSNumber =
event.id().luminosityBlock();
240 auto lhcFill =
static_cast<int>(tcdsData->getBST().getLhcFill());
241 beamMode_ =
static_cast<int>(tcdsData->getBST().getBeamMode());
242 auto momentum =
static_cast<int>(tcdsData->getBST().getBeamMomentum());
243 auto intensity1 =
static_cast<int>(tcdsData->getBST().getIntensityBeam1());
244 auto intensity2 =
static_cast<int>(tcdsData->getBST().getIntensityBeam2());
276 unsigned int currentLSNumber =
event.id().luminosityBlock();
289 if (dcsStatusCollection.
isValid() && !dcsStatusCollection->empty()) {
290 edm::LogInfo(
"DQMProvInfo") <<
"Using FED#735 for reading DCS bits" << std::endl;
292 }
else if (dcsRecord.
isValid()) {
293 edm::LogInfo(
"DQMProvInfo") <<
"Using softFED#1022 for reading DCS bits" << std::endl;
296 edm::LogError(
"DQMProvInfo") <<
"No DCS information found!" << std::endl;
303 edm::LogInfo(
"DQMProvInfo") <<
"Physics declared bit: " << physicsDeclared << std::endl;
307 if (physicsDeclared) {
331 event.getProcessParameterSet(processName, ps);
375 for (
auto const& dcsStatusItr : *dcsStatusCollection) {
380 dcsBits[vbin] =
true;
413 edm::LogInfo(
"DQMProvInfo") <<
"DCS status: 0x" << std::hex << dcsStatusItr.ready() <<
std::dec << std::endl;
437 for (
int vBin = 1; vBin <=
MAX_VBINS; vBin++) {
451 }
else if (value < current) {
462 for (
int ls = 1;
ls < currentLSNumber;
ls++) {
unsigned int size() const
number of trigger paths in trigger table
void fillSummaryMapBin(int ls, int bin, double value)
T getUntrackedParameter(std::string const &, T const &) const
MonitorElement * hBeamMode_
MonitorElement * bookFloat(TString const &name, FUNC onbooking=NOOP())
const edm::EventSetup & c
MonitorElement * hIntensity2_
MonitorElement * reportSummary_
void analyzeEventInfo(const edm::Event &e)
virtual void setCurrentFolder(std::string const &fullpath)
static const int VBIN_GEM_P
MonitorElement * hMomentum_
static const int VBIN_EE_P
MonitorElement * workingDir_
static const int VBIN_GEM_M
void fillDcsBitsFromDcsStatusCollection(const edm::Handle< DcsStatusCollection > &, bool *dcsBits)
edm::EDGetTokenT< DcsStatusCollection > dcsStatusCollection_
edm::EDGetTokenT< DCSRecord > dcsRecordToken_
static const int VBIN_VALID
const std::string & tableName() const
HLT ConfDB table name.
Class to contain DCS information from soft FED 1022.
MonitorElement * processId_
MonitorElement * hHltKey_
Log< level::Error, false > LogError
void blankAllLumiSections()
MonitorElement * versGlobaltag_
LuminosityBlockNumber_t luminosityBlock() const
static const int VBIN_CASTOR
static const int VBIN_HBHE_B
static const int VBIN_EE_M
MonitorElement * bookString(TString const &name, TString const &value, FUNC onbooking=NOOP())
static const int VBIN_HBHE_C
static const int VBIN_DT_0
static const int VBIN_TEC_P
void bookHistogramsEventInfo(DQMStore::IBooker &)
static const int VBIN_CSC_M
MonitorElement * versRuntype_
static const int VBIN_TOB
static const int VBIN_FPIX
static const int MAX_LUMIS
static const int VBIN_DT_M
static const int VBIN_MOMENTUM
void bookHistogramsProvInfo(DQMStore::IBooker &)
virtual void setBinLabel(int bin, const std::string &label, int axis=1)
set bin label for x, y or z axis (axis=1, 2, 3 respectively)
virtual double getBinContent(int binx) const
get content of bin (1-D)
void bookHistogramsLhcInfo(DQMStore::IBooker &)
void analyzeProvInfo(const edm::Event &e)
static const int MAX_MOMENTUM
void dqmBeginRun(const edm::Run &r, const edm::EventSetup &c) override
static const int MAX_VBINS
std::string subsystemname_
MonitorElement * hLhcFill_
std::string getReleaseVersion()
Log< level::Info, false > LogInfo
void fillDcsBitsFromDCSRecord(const DCSRecord &, bool *dcsBits)
static const int VBIN_STABLE_BEAM
static const int VBIN_TIBTID
void analyze(const edm::Event &e, const edm::EventSetup &c) override
static const int VBIN_EB_P
virtual void setBinContent(int binx, double content)
set content of bin (1-D)
ParameterSet const & getParameterSet(std::string const &) const
static const int VBIN_BPIX
bool init(const edm::Run &iRun, const edm::EventSetup &iSetup, const std::string &processName, bool &changed)
d'tor
void analyzeLhcInfo(const edm::Event &e)
MonitorElement * hIntensity1_
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
T getParameter(std::string const &) const
static const int VBIN_TE_M
MonitorElement * bookInt(TString const &name, FUNC onbooking=NOOP())
static const int VBIN_RPC
MonitorElement * versCMSSW_
MonitorElement * hIsCollisionsRun_
edm::EDGetTokenT< TCDSRecord > tcdsrecord_
static const int MAX_DCS_VBINS
static const int VBIN_ZDC
DQMProvInfo(const edm::ParameterSet &ps)
static const int VBIN_ES_P
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
static const int VBIN_CSC_P
bool isPhysicsDeclared(bool *dcsBits)
static const int VBIN_DT_P
static const int VBIN_ES_M
Log< level::Warning, false > LogWarning
std::string provinfofolder_
static const int MOMENTUM_OFFSET
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
void setupLumiSection(int ls)
MonitorElement * hostName_
bool highVoltageReady(const uint8_t partitionNumber) const
Return true if the high voltage of the given parition is ready.
static const int VBIN_HBHE_A
static const int VBIN_EB_M
MonitorElement * reportSummaryMap_
static const int VBIN_PHYSICS_DECLARED
virtual void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)