CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
DQMFEDIntegrityClient Class Reference
Inheritance diagram for DQMFEDIntegrityClient:
edm::one::EDAnalyzer< edm::one::WatchRuns, edm::one::WatchLuminosityBlocks > edm::one::EDAnalyzerBase edm::EDConsumerBase

Public Types

typedef dqm::legacy::DQMStore DQMStore
 
typedef dqm::legacy::MonitorElement MonitorElement
 
- Public Types inherited from edm::one::EDAnalyzerBase
typedef EDAnalyzerBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 

Public Member Functions

 DQMFEDIntegrityClient (const edm::ParameterSet &)
 
 ~DQMFEDIntegrityClient () override=default
 
- Public Member Functions inherited from edm::one::EDAnalyzer< edm::one::WatchRuns, edm::one::WatchLuminosityBlocks >
 EDAnalyzer ()=default
 
 EDAnalyzer (const EDAnalyzer &)=delete
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
const EDAnalyzeroperator= (const EDAnalyzer &)=delete
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
- Public Member Functions inherited from edm::one::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDAnalyzerBase () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const *> *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const *> const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Protected Member Functions

void analyze (const edm::Event &e, const edm::EventSetup &c) override
 Analyze. More...
 
void beginJob () override
 
void beginLuminosityBlock (const edm::LuminosityBlock &l, const edm::EventSetup &c) override
 
void beginRun (const edm::Run &r, const edm::EventSetup &c) override
 
void endJob () override
 
void endLuminosityBlock (const edm::LuminosityBlock &l, const edm::EventSetup &c) override
 
void endRun (const edm::Run &r, const edm::EventSetup &c) override
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< Bconsumes (edm::InputTag tag) noexcept
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes ()
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag)
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
void resetItemsToGetFrom (BranchType iType)
 

Private Member Functions

void fillHistograms ()
 
void initialize ()
 

Private Attributes

DQMStoredbe_
 
MonitorElementFedEntries
 
MonitorElementFedFatal
 
std::string fedFolderName
 
MonitorElementFedNonFatal
 
bool fillInEventloop
 
bool fillOnEndJob
 
bool fillOnEndLumi
 
bool fillOnEndRun
 
std::string moduleName
 
int NBINS
 
edm::ParameterSet parameters_
 
MonitorElementreportSummary
 
MonitorElementreportSummaryContent [10]
 
MonitorElementreportSummaryMap
 
float SummaryContent [10]
 
float XMAX
 
float XMIN
 

Additional Inherited Members

- Static Public Member Functions inherited from edm::one::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Detailed Description

Definition at line 22 of file DQMFEDIntegrityClient.cc.

Member Typedef Documentation

◆ DQMStore

Definition at line 24 of file DQMFEDIntegrityClient.cc.

◆ MonitorElement

Definition at line 25 of file DQMFEDIntegrityClient.cc.

Constructor & Destructor Documentation

◆ DQMFEDIntegrityClient()

DQMFEDIntegrityClient::DQMFEDIntegrityClient ( const edm::ParameterSet ps)

Definition at line 76 of file DQMFEDIntegrityClient.cc.

References fedFolderName, fillInEventloop, fillOnEndJob, fillOnEndLumi, fillOnEndRun, edm::ParameterSet::getUntrackedParameter(), initialize(), moduleName, parameters_, and AlCaHLTBitMon_QueryRunRegistry::string.

76  {
77  parameters_ = ps;
78  initialize();
79  fillInEventloop = ps.getUntrackedParameter<bool>("fillInEventloop", false);
80  fillOnEndRun = ps.getUntrackedParameter<bool>("fillOnEndRun", false);
81  fillOnEndJob = ps.getUntrackedParameter<bool>("fillOnEndJob", false);
82  fillOnEndLumi = ps.getUntrackedParameter<bool>("fillOnEndLumi", true);
83  moduleName = ps.getUntrackedParameter<std::string>("moduleName", "FED");
84  fedFolderName = ps.getUntrackedParameter<std::string>("fedFolderName", "FEDIntegrity");
85 }
T getUntrackedParameter(std::string const &, T const &) const
edm::ParameterSet parameters_

◆ ~DQMFEDIntegrityClient()

DQMFEDIntegrityClient::~DQMFEDIntegrityClient ( )
overridedefault

Member Function Documentation

◆ analyze()

void DQMFEDIntegrityClient::analyze ( const edm::Event e,
const edm::EventSetup c 
)
overrideprotectedvirtual

Analyze.

Implements edm::one::EDAnalyzerBase.

Definition at line 205 of file DQMFEDIntegrityClient.cc.

References fillHistograms(), and fillInEventloop.

◆ beginJob()

void DQMFEDIntegrityClient::beginJob ( void  )
overrideprotectedvirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 92 of file DQMFEDIntegrityClient.cc.

References dqm::implementation::IBooker::book1D(), dqm::implementation::IBooker::book2D(), dqm::implementation::IBooker::bookFloat(), dbe_, FedEntries, FedFatal, fedFolderName, FedNonFatal, dqm::impl::MonitorElement::Fill(), mps_fire::i, moduleName, NBINS, Utilities::operator, reportSummary, reportSummaryContent, reportSummaryMap, dqm::impl::MonitorElement::setAxisTitle(), dqm::impl::MonitorElement::setBinLabel(), dqm::implementation::DQMStore::setCurrentFolder(), AlCaHLTBitMon_QueryRunRegistry::string, SummaryContent, XMAX, and XMIN.

92  {
93  NBINS = 850;
94  XMIN = 0.;
95  XMAX = 850.;
96 
98 
99  // ----------------------------------------------------------------------------------
100  std::string currentFolder = moduleName + "/" + fedFolderName;
101  dbe_->setCurrentFolder(currentFolder);
102 
103  FedEntries = dbe_->book1D("FedEntries", "FED Entries", NBINS, XMIN, XMAX);
104  FedFatal = dbe_->book1D("FedFatal", "FED Fatal Errors", NBINS, XMIN, XMAX);
105  FedNonFatal = dbe_->book1D("FedNonFatal", "FED Non Fatal Errors", NBINS, XMIN, XMAX);
106 
107  FedEntries->setAxisTitle("", 1);
108  FedFatal->setAxisTitle("", 1);
109  FedNonFatal->setAxisTitle("", 1);
110 
111  FedEntries->setAxisTitle("", 2);
112  FedFatal->setAxisTitle("", 2);
113  FedNonFatal->setAxisTitle("", 2);
114 
115  FedEntries->setBinLabel(11, "PIXEL", 1);
116  FedEntries->setBinLabel(221, "SIST", 1);
117  FedEntries->setBinLabel(606, "EE", 1);
118  FedEntries->setBinLabel(628, "EB", 1);
119  FedEntries->setBinLabel(651, "EE", 1);
120  FedEntries->setBinLabel(550, "ES", 1);
121  FedEntries->setBinLabel(716, "HCAL", 1);
122  FedEntries->setBinLabel(754, "CSC", 1);
123  FedEntries->setBinLabel(772, "DT", 1);
124  FedEntries->setBinLabel(791, "RPC", 1);
125  FedEntries->setBinLabel(804, "L1T", 1);
126 
127  FedFatal->setBinLabel(11, "PIXEL", 1);
128  FedFatal->setBinLabel(221, "SIST", 1);
129  FedFatal->setBinLabel(606, "EE", 1);
130  FedFatal->setBinLabel(628, "EB", 1);
131  FedFatal->setBinLabel(651, "EE", 1);
132  FedFatal->setBinLabel(550, "ES", 1);
133  FedFatal->setBinLabel(716, "HCAL", 1);
134  FedFatal->setBinLabel(754, "CSC", 1);
135  FedFatal->setBinLabel(772, "DT", 1);
136  FedFatal->setBinLabel(791, "RPC", 1);
137  FedFatal->setBinLabel(804, "L1T", 1);
138 
139  FedNonFatal->setBinLabel(11, "PIXEL", 1);
140  FedNonFatal->setBinLabel(221, "SIST", 1);
141  FedNonFatal->setBinLabel(606, "EE", 1);
142  FedNonFatal->setBinLabel(628, "EB", 1);
143  FedNonFatal->setBinLabel(651, "EE", 1);
144  FedNonFatal->setBinLabel(550, "ES", 1);
145  FedNonFatal->setBinLabel(716, "HCAL", 1);
146  FedNonFatal->setBinLabel(754, "CSC", 1);
147  FedNonFatal->setBinLabel(772, "DT", 1);
148  FedNonFatal->setBinLabel(791, "RPC", 1);
149  FedNonFatal->setBinLabel(804, "L1T", 1);
150 
151  //-----------------------------------------------------------------------------------
152  currentFolder = moduleName + "/EventInfo";
153  dbe_->setCurrentFolder(currentFolder);
154 
155  reportSummary = dbe_->bookFloat("reportSummary");
156 
157  int nSubsystems = 10;
158 
159  if (reportSummary)
160  reportSummary->Fill(1.);
161 
162  currentFolder = moduleName + "/EventInfo/reportSummaryContents";
163  dbe_->setCurrentFolder(currentFolder);
164 
165  reportSummaryContent[0] = dbe_->bookFloat("CSC FEDs");
166  reportSummaryContent[1] = dbe_->bookFloat("DT FEDs");
167  reportSummaryContent[2] = dbe_->bookFloat("EB FEDs");
168  reportSummaryContent[3] = dbe_->bookFloat("EE FEDs");
169  reportSummaryContent[4] = dbe_->bookFloat("ES FEDs");
170  reportSummaryContent[5] = dbe_->bookFloat("Hcal FEDs");
171  reportSummaryContent[6] = dbe_->bookFloat("L1T FEDs");
172  reportSummaryContent[7] = dbe_->bookFloat("Pixel FEDs");
173  reportSummaryContent[8] = dbe_->bookFloat("RPC FEDs");
174  reportSummaryContent[9] = dbe_->bookFloat("SiStrip FEDs");
175 
176  // initialize reportSummaryContents to 1
177  for (int i = 0; i < nSubsystems; ++i) {
178  SummaryContent[i] = 1.;
180  }
181 
182  currentFolder = moduleName + "/EventInfo";
183  dbe_->setCurrentFolder(currentFolder);
184 
185  reportSummaryMap = dbe_->book2D("reportSummaryMap", "FED Report Summary Map", 1, 1, 2, 10, 1, 11);
186 
189 
190  reportSummaryMap->setBinLabel(1, " ", 1);
191  reportSummaryMap->setBinLabel(10, "CSC", 2);
192  reportSummaryMap->setBinLabel(9, "DT", 2);
193  reportSummaryMap->setBinLabel(8, "EB", 2);
194  reportSummaryMap->setBinLabel(7, "EE", 2);
195  reportSummaryMap->setBinLabel(6, "ES", 2);
196  reportSummaryMap->setBinLabel(5, "Hcal", 2);
197  reportSummaryMap->setBinLabel(4, "L1T", 2);
198  reportSummaryMap->setBinLabel(3, "Pixel", 2);
199  reportSummaryMap->setBinLabel(2, "RPC", 2);
200  reportSummaryMap->setBinLabel(1, "SiStrip", 2);
201 }
MonitorElement * bookFloat(TString const &name, FUNC onbooking=NOOP())
Definition: DQMStore.h:80
void setCurrentFolder(std::string const &fullpath) override
Definition: DQMStore.h:646
void Fill(long long x)
MonitorElement * reportSummaryContent[10]
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)
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
Definition: DQMStore.h:212
MonitorElement * reportSummary
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98
MonitorElement * reportSummaryMap
virtual void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)

◆ beginLuminosityBlock()

void DQMFEDIntegrityClient::beginLuminosityBlock ( const edm::LuminosityBlock l,
const edm::EventSetup c 
)
overrideprotected

Definition at line 210 of file DQMFEDIntegrityClient.cc.

210 {}

◆ beginRun()

void DQMFEDIntegrityClient::beginRun ( const edm::Run r,
const edm::EventSetup c 
)
overrideprotected

Definition at line 203 of file DQMFEDIntegrityClient.cc.

203 {}

◆ endJob()

void DQMFEDIntegrityClient::endJob ( void  )
overrideprotectedvirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 372 of file DQMFEDIntegrityClient.cc.

References fillHistograms(), and fillOnEndJob.

◆ endLuminosityBlock()

void DQMFEDIntegrityClient::endLuminosityBlock ( const edm::LuminosityBlock l,
const edm::EventSetup c 
)
overrideprotected

Definition at line 212 of file DQMFEDIntegrityClient.cc.

References fillHistograms(), and fillOnEndLumi.

◆ endRun()

void DQMFEDIntegrityClient::endRun ( const edm::Run r,
const edm::EventSetup c 
)
overrideprotected

Definition at line 367 of file DQMFEDIntegrityClient.cc.

References fillHistograms(), and fillOnEndRun.

◆ fillHistograms()

void DQMFEDIntegrityClient::fillHistograms ( )
private

Definition at line 217 of file DQMFEDIntegrityClient.cc.

References newFWLiteAna::bin, submitPVResolutionJobs::count, dbe_, mps_splice::entry, FedEntries, FedFatal, fedFolderName, FedNonFatal, dqm::impl::MonitorElement::Fill(), dqm::implementation::IGetter::get(), dqm::legacy::MonitorElement::getTH1F(), createfilelist::int, dqmdumpme::k, hlt_dqm_clientPB-live_cfg::me, SiStripMonitorCluster_cfi::Nbins, reportSummary, reportSummaryContent, reportSummaryMap, dqm::impl::MonitorElement::setBinContent(), SummaryContent, and TrackerOfflineValidation_Dqm_cff::xmin.

Referenced by analyze(), endJob(), endLuminosityBlock(), and endRun().

217  {
218  // FED Entries
219 
220  std::vector<std::string> entries;
221  entries.push_back("CSC/" + fedFolderName + "/FEDEntries");
222  entries.push_back("DT/" + fedFolderName + "/FEDEntries");
223  entries.push_back("EcalBarrel/" + fedFolderName + "/FEDEntries");
224  entries.push_back("EcalEndcap/" + fedFolderName + "/FEDEntries");
225  entries.push_back("EcalPreshower/" + fedFolderName + "/FEDEntries");
226  entries.push_back("Hcal/" + fedFolderName + "/FEDEntries");
227  entries.push_back("L1T/" + fedFolderName + "/FEDEntries");
228  entries.push_back("Pixel/" + fedFolderName + "/FEDEntries");
229  entries.push_back("RPC/" + fedFolderName + "/FEDEntries");
230  entries.push_back("SiStrip/" + fedFolderName + "/FEDEntries");
231 
232  for (auto ent = entries.begin(); ent != entries.end(); ++ent) {
233  if (!(dbe_->get(*ent))) {
234  continue;
235  }
236 
237  MonitorElement* me = dbe_->get(*ent);
238  if (TH1F* rootHisto = me->getTH1F()) {
239  int Nbins = me->getNbinsX();
240  float entry = 0.;
241  int xmin = (int)rootHisto->GetXaxis()->GetXmin();
242  if (*ent == "L1T/" + fedFolderName + "/FEDEntries")
243  xmin = xmin + 800;
244  if (*ent == "DT/" + fedFolderName + "/FEDEntries")
245  xmin = 770; //Real DT FEDIDs are 1369-1371
246 
247  for (int bin = 1; bin <= Nbins; ++bin) {
248  int id = xmin + bin;
249  entry = rootHisto->GetBinContent(bin);
250  if (entry > 0.)
252  }
253  }
254  }
255 
256  // FED Fatal
257 
258  int nSubsystems = 10;
259 
260  std::vector<std::string> fatal;
261  fatal.push_back("CSC/" + fedFolderName + "/FEDFatal");
262  fatal.push_back("DT/" + fedFolderName + "/FEDFatal");
263  fatal.push_back("EcalBarrel/" + fedFolderName + "/FEDFatal");
264  fatal.push_back("EcalEndcap/" + fedFolderName + "/FEDFatal");
265  fatal.push_back("EcalPreshower/" + fedFolderName + "/FEDFatal");
266  fatal.push_back("Hcal/" + fedFolderName + "/FEDFatal");
267  fatal.push_back("L1T/" + fedFolderName + "/FEDFatal");
268  fatal.push_back("Pixel/" + fedFolderName + "/FEDFatal");
269  fatal.push_back("RPC/" + fedFolderName + "/FEDFatal");
270  fatal.push_back("SiStrip/" + fedFolderName + "/FEDFatal");
271 
272  int k = 0, count = 0;
273 
274  float sum = 0.;
275 
276  auto ent = entries.begin();
277  for (auto fat = fatal.begin(); fat != fatal.end(); ++fat) {
278  if (!(dbe_->get(*fat))) {
280  reportSummaryMap->setBinContent(1, nSubsystems - k, -1);
281  k++;
282  ent++;
283  continue;
284  }
285 
286  MonitorElement* me = dbe_->get(*fat);
287  MonitorElement* meNorm = dbe_->get(*ent);
288 
289  float entry = 0.;
290  float norm = 0.;
291 
292  if (TH1F* rootHisto = me->getTH1F()) {
293  if (TH1F* rootHistoNorm = meNorm->getTH1F()) {
294  int Nbins = me->getNbinsX();
295  int xmin = (int)rootHisto->GetXaxis()->GetXmin();
296  if (*fat == "L1T/" + fedFolderName + "/FEDFatal")
297  xmin = xmin + 800;
298  if (*fat == "DT/" + fedFolderName + "/FEDFatal")
299  xmin = 770; //Real DT FED IDs are 1369-1371
300 
301  float binentry = 0.;
302  for (int bin = 1; bin <= Nbins; ++bin) {
303  int id = xmin + bin;
304  binentry = rootHisto->GetBinContent(bin);
305  entry += binentry;
306  norm += rootHistoNorm->GetBinContent(bin);
307  FedFatal->setBinContent(id, binentry);
308  }
309  }
310  }
311 
312  if (norm > 0)
313  SummaryContent[k] = 1.0 - entry / norm;
315  if ((k == 2 || k == 3) // for EE and EB only show yellow when more than 1% errors.
316  && SummaryContent[k] >= 0.95 && SummaryContent[k] < 0.99)
317  SummaryContent[k] = 0.949;
318  reportSummaryMap->setBinContent(1, nSubsystems - k, SummaryContent[k]);
319  sum = sum + SummaryContent[k];
320 
321  k++;
322  ent++;
323  count++;
324  }
325 
326  if (count > 0)
327  reportSummary->Fill(sum / (float)count);
328 
329  // FED Non Fatal
330 
331  std::vector<std::string> nonfatal;
332  nonfatal.push_back("CSC/" + fedFolderName + "/FEDNonFatal");
333  nonfatal.push_back("DT/" + fedFolderName + "/FEDNonFatal");
334  nonfatal.push_back("EcalBarrel/" + fedFolderName + "/FEDNonFatal");
335  nonfatal.push_back("EcalEndcap/" + fedFolderName + "/FEDNonFatal");
336  nonfatal.push_back("EcalPreshower/" + fedFolderName + "/FEDNonFatal");
337  nonfatal.push_back("Hcal/" + fedFolderName + "/FEDNonFatal");
338  nonfatal.push_back("L1T/" + fedFolderName + "/FEDNonFatal");
339  nonfatal.push_back("Pixel/" + fedFolderName + "/FEDNonFatal");
340  nonfatal.push_back("RPC/" + fedFolderName + "/FEDNonFatal");
341  nonfatal.push_back("SiStrip/" + fedFolderName + "/FEDNonFatal");
342 
343  for (auto non = nonfatal.begin(); non != nonfatal.end(); ++non) {
344  if (!(dbe_->get(*non))) {
345  continue;
346  }
347 
348  MonitorElement* me = dbe_->get(*non);
349 
350  if (TH1F* rootHisto = me->getTH1F()) {
351  int Nbins = me->getNbinsX();
352  float entry = 0.;
353  int xmin = (int)rootHisto->GetXaxis()->GetXmin();
354  if (*non == "L1T/" + fedFolderName + "/FEDNonFatal")
355  xmin = xmin + 800;
356 
357  for (int bin = 1; bin <= Nbins; ++bin) {
358  int id = xmin + bin;
359  entry = rootHisto->GetBinContent(bin);
360  if (entry > 0.)
362  }
363  }
364  }
365 }
void Fill(long long x)
MonitorElement * reportSummaryContent[10]
virtual void setBinContent(int binx, double content)
set content of bin (1-D)
virtual TH1F * getTH1F() const
virtual MonitorElement * get(std::string const &fullpath) const
Definition: DQMStore.cc:712
MonitorElement * reportSummary
MonitorElement * reportSummaryMap

◆ initialize()

void DQMFEDIntegrityClient::initialize ( )
private

Definition at line 87 of file DQMFEDIntegrityClient.cc.

References dbe_, and Utilities::operator.

Referenced by DQMFEDIntegrityClient().

87  {
88  // get back-end interface
90 }

Member Data Documentation

◆ dbe_

DQMStore* DQMFEDIntegrityClient::dbe_
private

Definition at line 48 of file DQMFEDIntegrityClient.cc.

Referenced by beginJob(), fillHistograms(), and initialize().

◆ FedEntries

MonitorElement* DQMFEDIntegrityClient::FedEntries
private

Definition at line 56 of file DQMFEDIntegrityClient.cc.

Referenced by beginJob(), and fillHistograms().

◆ FedFatal

MonitorElement* DQMFEDIntegrityClient::FedFatal
private

Definition at line 57 of file DQMFEDIntegrityClient.cc.

Referenced by beginJob(), and fillHistograms().

◆ fedFolderName

std::string DQMFEDIntegrityClient::fedFolderName
private

Definition at line 69 of file DQMFEDIntegrityClient.cc.

Referenced by beginJob(), DQMFEDIntegrityClient(), and fillHistograms().

◆ FedNonFatal

MonitorElement* DQMFEDIntegrityClient::FedNonFatal
private

Definition at line 58 of file DQMFEDIntegrityClient.cc.

Referenced by beginJob(), and fillHistograms().

◆ fillInEventloop

bool DQMFEDIntegrityClient::fillInEventloop
private

Definition at line 64 of file DQMFEDIntegrityClient.cc.

Referenced by analyze(), and DQMFEDIntegrityClient().

◆ fillOnEndJob

bool DQMFEDIntegrityClient::fillOnEndJob
private

Definition at line 66 of file DQMFEDIntegrityClient.cc.

Referenced by DQMFEDIntegrityClient(), and endJob().

◆ fillOnEndLumi

bool DQMFEDIntegrityClient::fillOnEndLumi
private

Definition at line 67 of file DQMFEDIntegrityClient.cc.

Referenced by DQMFEDIntegrityClient(), and endLuminosityBlock().

◆ fillOnEndRun

bool DQMFEDIntegrityClient::fillOnEndRun
private

Definition at line 65 of file DQMFEDIntegrityClient.cc.

Referenced by DQMFEDIntegrityClient(), and endRun().

◆ moduleName

std::string DQMFEDIntegrityClient::moduleName
private

Definition at line 68 of file DQMFEDIntegrityClient.cc.

Referenced by beginJob(), and DQMFEDIntegrityClient().

◆ NBINS

int DQMFEDIntegrityClient::NBINS
private

Definition at line 52 of file DQMFEDIntegrityClient.cc.

Referenced by beginJob().

◆ parameters_

edm::ParameterSet DQMFEDIntegrityClient::parameters_
private

◆ reportSummary

MonitorElement* DQMFEDIntegrityClient::reportSummary
private

Definition at line 60 of file DQMFEDIntegrityClient.cc.

Referenced by beginJob(), and fillHistograms().

◆ reportSummaryContent

MonitorElement* DQMFEDIntegrityClient::reportSummaryContent[10]
private

Definition at line 61 of file DQMFEDIntegrityClient.cc.

Referenced by beginJob(), and fillHistograms().

◆ reportSummaryMap

MonitorElement* DQMFEDIntegrityClient::reportSummaryMap
private

Definition at line 62 of file DQMFEDIntegrityClient.cc.

Referenced by beginJob(), and fillHistograms().

◆ SummaryContent

float DQMFEDIntegrityClient::SummaryContent[10]
private

Definition at line 54 of file DQMFEDIntegrityClient.cc.

Referenced by beginJob(), and fillHistograms().

◆ XMAX

float DQMFEDIntegrityClient::XMAX
private

Definition at line 53 of file DQMFEDIntegrityClient.cc.

Referenced by beginJob().

◆ XMIN

float DQMFEDIntegrityClient::XMIN
private

Definition at line 53 of file DQMFEDIntegrityClient.cc.

Referenced by beginJob().