CMS 3D CMS Logo

SiPixelRawDataErrorSource.cc
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: SiPixelMonitorRawData
4 // Class: SiPixelRawDataErrorSource
5 //
22 //
23 // Original Author: Andrew York
24 //
26 // Framework
29 // DQM Framework
33 
34 // Geometry
40 // DataFormats
48 //
49 #include <cstdlib>
50 #include <string>
51 
52 using namespace std;
53 using namespace edm;
54 
56  : conf_(iConfig),
57  src_(consumes<DetSetVector<SiPixelRawDataError>>(conf_.getParameter<edm::InputTag>("src"))),
58  saveFile(conf_.getUntrackedParameter<bool>("saveFile", false)),
59  isPIB(conf_.getUntrackedParameter<bool>("isPIB", false)),
60  slowDown(conf_.getUntrackedParameter<bool>("slowDown", false)),
61  reducedSet(conf_.getUntrackedParameter<bool>("reducedSet", false)),
62  modOn(conf_.getUntrackedParameter<bool>("modOn", true)),
63  ladOn(conf_.getUntrackedParameter<bool>("ladOn", false)),
64  bladeOn(conf_.getUntrackedParameter<bool>("bladeOn", false)),
65  isUpgrade(conf_.getUntrackedParameter<bool>("isUpgrade", false)) {
66  firstRun = true;
67  LogInfo("PixelDQM") << "SiPixelRawDataErrorSource::SiPixelRawDataErrorSource:"
68  " Got DQM BackEnd interface"
69  << endl;
70  topFolderName_ = conf_.getParameter<std::string>("TopFolderName");
71  inputSourceToken_ = consumes<FEDRawDataCollection>(conf_.getUntrackedParameter<string>("inputSource", "source"));
72 }
73 
75  // do anything here that needs to be done at desctruction time
76  // (e.g. close files, deallocate resources etc.)
77  LogInfo("PixelDQM") << "SiPixelRawDataErrorSource::~SiPixelRawDataErrorSource: Destructor" << endl;
78 }
79 
81  LogInfo("PixelDQM") << " SiPixelRawDataErrorSource::beginRun - Initialisation ... " << std::endl;
82  LogInfo("PixelDQM") << "Mod/Lad/Blade " << modOn << "/" << ladOn << "/" << bladeOn << std::endl;
83 
84  if (firstRun) {
85  eventNo = 0;
86 
87  firstRun = false;
88  }
89 
90  // Build map
91  buildStructure(iSetup);
92 }
93 
94 void SiPixelRawDataErrorSource::bookHistograms(DQMStore::IBooker &iBooker,
95  edm::Run const &,
96  edm::EventSetup const &iSetup) {
97  // Book Monitoring Elements
98  bookMEs(iBooker);
99 }
100 
101 //------------------------------------------------------------------
102 // Method called for every event
103 //------------------------------------------------------------------
105  eventNo++;
106  // check feds in readout
107  if (eventNo == 1) {
108  // check if any Pixel FED is in readout:
109  edm::Handle<FEDRawDataCollection> rawDataHandle;
110  iEvent.getByToken(inputSourceToken_, rawDataHandle);
111  if (!rawDataHandle.isValid()) {
112  edm::LogInfo("SiPixelRawDataErrorSource") << "inputsource is empty";
113  } else {
114  const FEDRawDataCollection &rawDataCollection = *rawDataHandle;
115  for (int i = 0; i != 40; i++) {
116  if (rawDataCollection.FEDData(i).size() && rawDataCollection.FEDData(i).data())
117  fedcounter->setBinContent(i + 1, 1);
118  }
119  }
120  }
121  // get input data
123  iEvent.getByToken(src_, input);
124  if (!input.isValid())
125  return;
126 
127  int lumiSection = (int)iEvent.luminosityBlock();
128 
129  int nEventBPIXModuleErrors = 0;
130  int nEventFPIXModuleErrors = 0;
131  int nEventBPIXFEDErrors = 0;
132  int nEventFPIXFEDErrors = 0;
133  int nErrors = 0;
134 
135  std::map<uint32_t, SiPixelRawDataErrorModule *>::iterator struct_iter;
136  std::map<uint32_t, SiPixelRawDataErrorModule *>::iterator struct_iter2;
137  for (struct_iter = thePixelStructure.begin(); struct_iter != thePixelStructure.end(); struct_iter++) {
138  int numberOfModuleErrors = (*struct_iter).second->fill(*input, &meMapFEDs_, modOn, ladOn, bladeOn);
139  if (DetId((*struct_iter).first).subdetId() == static_cast<int>(PixelSubdetector::PixelBarrel))
140  nEventBPIXModuleErrors = nEventBPIXModuleErrors + numberOfModuleErrors;
141  if (DetId((*struct_iter).first).subdetId() == static_cast<int>(PixelSubdetector::PixelEndcap))
142  nEventFPIXModuleErrors = nEventFPIXModuleErrors + numberOfModuleErrors;
143  // cout<<"NErrors: "<<nEventBPIXModuleErrors<<"
144  // "<<nEventFPIXModuleErrors<<endl;
145  nErrors = nErrors + numberOfModuleErrors;
146  // if(nErrors>0) cout<<"MODULES: nErrors: "<<nErrors<<endl;
147  }
148  for (struct_iter2 = theFEDStructure.begin(); struct_iter2 != theFEDStructure.end(); struct_iter2++) {
149  int numberOfFEDErrors = (*struct_iter2).second->fillFED(*input, &meMapFEDs_);
150  if ((*struct_iter2).first <= 31)
151  nEventBPIXFEDErrors = nEventBPIXFEDErrors + numberOfFEDErrors; // (*struct_iter2).first >= 0, since
152  // (*struct_iter2).first is unsigned
153  if ((*struct_iter2).first >= 32 && (*struct_iter2).first <= 39)
154  nEventFPIXFEDErrors = nEventFPIXFEDErrors + numberOfFEDErrors;
155  // cout<<"NFEDErrors: "<<nEventBPIXFEDErrors<<"
156  // "<<nEventFPIXFEDErrors<<endl;
157  nErrors = nErrors + numberOfFEDErrors;
158  // if(nErrors>0) cout<<"FEDS: nErrors: "<<nErrors<<endl;
159  }
160  if (byLumiErrors) {
162  // cout<<"NErrors: "<<nEventBPIXModuleErrors<<" "<<nEventFPIXModuleErrors<<"
163  // "<<nEventBPIXFEDErrors<<" "<<nEventFPIXFEDErrors<<endl;
164  if (nEventBPIXModuleErrors + nEventBPIXFEDErrors > 0)
165  byLumiErrors->Fill(0, 1.);
166  if (nEventFPIXModuleErrors + nEventFPIXFEDErrors > 0)
167  byLumiErrors->Fill(1, 1.);
168  // cout<<"histo: "<<byLumiErrors->getBinContent(0)<<"
169  // "<<byLumiErrors->getBinContent(1)<<"
170  // "<<byLumiErrors->getBinContent(2)<<endl;
171  }
172 
173  // Rate of errors per lumi section:
174  if (errorRate)
175  errorRate->Fill(lumiSection, nErrors);
176 
177  // slow down...
178  if (slowDown)
179  usleep(100000);
180 }
181 
182 //------------------------------------------------------------------
183 // Build data structure
184 //------------------------------------------------------------------
186  LogInfo("PixelDQM") << " SiPixelRawDataErrorSource::buildStructure";
187 
189  edm::ESHandle<TrackerTopology> tTopoHandle;
190 
191  iSetup.get<TrackerDigiGeometryRecord>().get(pDD);
192  iSetup.get<TrackerTopologyRcd>().get(tTopoHandle);
193 
194  const TrackerTopology *pTT = tTopoHandle.product();
195 
196  LogVerbatim("PixelDQM") << " *** Geometry node for TrackerGeom is " << &(*pDD) << std::endl;
197  LogVerbatim("PixelDQM") << " *** I have " << pDD->detsPXB().size() << " barrel pixel detectors" << std::endl;
198  LogVerbatim("PixelDQM") << " *** I have " << pDD->detsPXF().size() << " endcap pixel detectors" << std::endl;
199  // LogVerbatim ("PixelDQM") << " *** I have " << pDD->detTypes().size() <<"
200  // types"<<std::endl;
201 
202  for (TrackerGeometry::DetContainer::const_iterator it = pDD->detsPXB().begin(); it != pDD->detsPXB().end(); it++) {
203  const GeomDetUnit *geoUnit = dynamic_cast<const GeomDetUnit *>(*it);
204  // check if it is a detUnit
205  if (geoUnit == nullptr)
206  LogError("PixelDQM") << "Pixel GeomDet is not a GeomDetUnit!" << std::endl;
207  const PixelGeomDetUnit *pixDet = dynamic_cast<const PixelGeomDetUnit *>(geoUnit);
208  int nrows = (pixDet->specificTopology()).nrows();
209  int ncols = (pixDet->specificTopology()).ncolumns();
210 
211  if (isPIB)
212  continue;
213  DetId detId = (*it)->geographicalId();
214  LogDebug("PixelDQM") << " ---> Adding Barrel Module " << detId.rawId() << endl;
215  uint32_t id = detId();
216  SiPixelRawDataErrorModule *theModule = new SiPixelRawDataErrorModule(id, ncols, nrows);
217  thePixelStructure.insert(pair<uint32_t, SiPixelRawDataErrorModule *>(id, theModule));
218  }
219 
220  for (TrackerGeometry::DetContainer::const_iterator it = pDD->detsPXF().begin(); it != pDD->detsPXF().end(); it++) {
221  const GeomDetUnit *geoUnit = dynamic_cast<const GeomDetUnit *>(*it);
222  // check if it is a detUnit
223  if (geoUnit == nullptr)
224  LogError("PixelDQM") << "Pixel GeomDet is not a GeomDetUnit!" << std::endl;
225  const PixelGeomDetUnit *pixDet = dynamic_cast<const PixelGeomDetUnit *>(geoUnit);
226  int nrows = (pixDet->specificTopology()).nrows();
227  int ncols = (pixDet->specificTopology()).ncolumns();
228 
229  DetId detId = (*it)->geographicalId();
230  LogDebug("PixelDQM") << " ---> Adding Endcap Module " << detId.rawId() << endl;
231  uint32_t id = detId();
232  SiPixelRawDataErrorModule *theModule = new SiPixelRawDataErrorModule(id, ncols, nrows);
233 
235  int disk = PixelEndcapName(DetId(id), pTT, isUpgrade).diskName();
236  int blade = PixelEndcapName(DetId(id), pTT, isUpgrade).bladeName();
237  int panel = PixelEndcapName(DetId(id), pTT, isUpgrade).pannelName();
239 
240  char sside[80];
241  sprintf(sside, "HalfCylinder_%i", side);
242  char sdisk[80];
243  sprintf(sdisk, "Disk_%i", disk);
244  char sblade[80];
245  sprintf(sblade, "Blade_%02i", blade);
246  char spanel[80];
247  sprintf(spanel, "Panel_%i", panel);
248  char smodule[80];
249  sprintf(smodule, "Module_%i", module);
250  std::string side_str = sside;
251  std::string disk_str = sdisk;
252  bool mask = side_str.find("HalfCylinder_1") != string::npos || side_str.find("HalfCylinder_2") != string::npos ||
253  side_str.find("HalfCylinder_4") != string::npos || disk_str.find("Disk_2") != string::npos;
254  // clutch to take all of FPIX, but no BPIX:
255  mask = false;
256  if (isPIB && mask)
257  continue;
258 
259  thePixelStructure.insert(pair<uint32_t, SiPixelRawDataErrorModule *>(id, theModule));
260  }
261 
262  LogDebug("PixelDQM") << " ---> Adding Module for Additional Errors " << endl;
264 
265  fedIds.first = 0;
266  fedIds.second = 39;
267 
268  for (int fedId = fedIds.first; fedId <= fedIds.second; fedId++) {
269  // std::cout<<"Adding FED module: "<<fedId<<std::endl;
270  uint32_t id = static_cast<uint32_t>(fedId);
272  theFEDStructure.insert(pair<uint32_t, SiPixelRawDataErrorModule *>(id, theModule));
273  }
274 
275  LogInfo("PixelDQM") << " *** Pixel Structure Size " << thePixelStructure.size() << endl;
276 }
277 //------------------------------------------------------------------
278 // Book MEs
279 //------------------------------------------------------------------
280 void SiPixelRawDataErrorSource::bookMEs(DQMStore::IBooker &iBooker) {
281  iBooker.setCurrentFolder(topFolderName_ + "/EventInfo/DAQContents");
282  char title0[80];
283  sprintf(title0, "FED isPresent;FED ID;isPresent");
284  fedcounter = iBooker.book1D("fedcounter", title0, 40, -0.5, 39.5);
285  iBooker.setCurrentFolder(topFolderName_ + "/AdditionalPixelErrors");
286  char title[80];
287  sprintf(title, "By-LumiSection Error counters");
288  {
289  auto scope = DQMStore::IBooker::UseLumiScope(iBooker);
290  byLumiErrors = iBooker.book1D("byLumiErrors", title, 2, 0., 2.);
291  }
292  char title1[80];
293  sprintf(title1, "Errors per LumiSection;LumiSection;NErrors");
294  errorRate = iBooker.book1D("errorRate", title1, 5000, 0., 5000.);
295 
296  std::map<uint32_t, SiPixelRawDataErrorModule *>::iterator struct_iter;
297  std::map<uint32_t, SiPixelRawDataErrorModule *>::iterator struct_iter2;
298 
299  SiPixelFolderOrganizer theSiPixelFolder(false);
300 
301  for (struct_iter = thePixelStructure.begin(); struct_iter != thePixelStructure.end(); struct_iter++) {
303 
304  if (modOn) {
305  if (!theSiPixelFolder.setModuleFolder(iBooker, (*struct_iter).first, 0, isUpgrade)) {
306  // std::cout<<"PIB! not booking histograms for non-PIB
307  // modules!"<<std::endl;
308  if (!isPIB)
309  throw cms::Exception("LogicError") << "[SiPixelRawDataErrorSource::bookMEs] Creation of DQM folder "
310  "failed";
311  }
312  }
313 
314  if (ladOn) {
315  if (!theSiPixelFolder.setModuleFolder(iBooker, (*struct_iter).first, 1, isUpgrade)) {
316  LogDebug("PixelDQM") << "PROBLEM WITH LADDER-FOLDER\n";
317  }
318  }
319 
320  if (bladeOn) {
321  if (!theSiPixelFolder.setModuleFolder(iBooker, (*struct_iter).first, 4, isUpgrade)) {
322  LogDebug("PixelDQM") << "PROBLEM WITH BLADE-FOLDER\n";
323  }
324  }
325 
326  } // for loop
327 
328  for (struct_iter2 = theFEDStructure.begin(); struct_iter2 != theFEDStructure.end(); struct_iter2++) {
330  if (!theSiPixelFolder.setFedFolder(iBooker, (*struct_iter2).first)) {
331  throw cms::Exception("LogicError") << "[SiPixelRawDataErrorSource::bookMEs] Creation of DQM folder "
332  "failed";
333  }
334  }
335 
336  // Booking FED histograms
337  std::string hid;
338  // Get collection name and instantiate Histo Id builder
340  SiPixelHistogramId *theHistogramId = new SiPixelHistogramId(src.label());
341 
342  for (uint32_t id = 0; id < 40; id++) {
343  char temp[50];
344  sprintf(temp, (topFolderName_ + "/AdditionalPixelErrors/FED_%d").c_str(), id);
345  iBooker.cd(temp);
346  // Types of errors
347  hid = theHistogramId->setHistoId("errorType", id);
348  meErrorType_[id] = iBooker.book1D(hid, "Type of errors", 15, 24.5, 39.5);
349  meErrorType_[id]->setAxisTitle("Type of errors", 1);
350  // Number of errors
351  hid = theHistogramId->setHistoId("NErrors", id);
352  meNErrors_[id] = iBooker.book1D(hid, "Number of errors", 36, 0., 36.);
353  meNErrors_[id]->setAxisTitle("Number of errors", 1);
354  // Type of FIFO full (errorType = 28). FIFO 1 is 1-5 (where fullType =
355  // channel of FIFO 1), fullType = 6 signifies FIFO 2 nearly full, 7
356  // signifies trigger FIFO nearly full, 8 indicates an unexpected result
357  hid = theHistogramId->setHistoId("fullType", id);
358  meFullType_[id] = iBooker.book1D(hid, "Type of FIFO full", 7, 0.5, 7.5);
359  meFullType_[id]->setAxisTitle("FIFO type", 1);
360  // For error type 30, the type of problem encoded in the TBM trailer
361  // 0 = stack full, 1 = Pre-cal issued, 2 = clear trigger counter, 3 = sync
362  // trigger, 4 = sync trigger error, 5 = reset ROC, 6 = reset TBM, 7 = no
363  // token bit pass
364  hid = theHistogramId->setHistoId("TBMMessage", id);
365  meTBMMessage_[id] = iBooker.book1D(hid, "TBM trailer message", 8, -0.5, 7.5);
366  meTBMMessage_[id]->setAxisTitle("TBM message", 1);
367  // For error type 30, the type of problem encoded in the TBM error trailer 0
368  // = none 1 = data stream too long, 2 = FSM errors, 3 = invalid # of ROCs, 4
369  // = multiple
370  hid = theHistogramId->setHistoId("TBMType", id);
371  meTBMType_[id] = iBooker.book1D(hid, "Type of TBM trailer", 5, -0.5, 4.5);
372  meTBMType_[id]->setAxisTitle("TBM Type", 1);
373  // For error type 31, the event number of the TBM header with the error
374  hid = theHistogramId->setHistoId("EvtNbr", id);
375  meEvtNbr_[id] = iBooker.book1D(hid, "Event number", 1, 0, 1);
376  // For errorType = 34, datastream size according to error word
377  hid = theHistogramId->setHistoId("evtSize", id);
378  meEvtSize_[id] = iBooker.book1D(hid, "Event size", 1, 0, 1);
379  //
380  hid = theHistogramId->setHistoId("FedChNErr", id);
381  meFedChNErr_[id] = iBooker.book1D(hid, "Number of errors per FED channel", 37, 0, 37);
382  meFedChNErr_[id]->setAxisTitle("FED channel", 1);
383  //
384  hid = theHistogramId->setHistoId("FedChLErr", id);
385  meFedChLErr_[id] = iBooker.book1D(hid, "Last error per FED channel", 37, 0, 37);
386  meFedChLErr_[id]->setAxisTitle("FED channel", 1);
387  //
388  hid = theHistogramId->setHistoId("FedETypeNErr", id);
389  meFedETypeNErr_[id] = iBooker.book1D(hid, "Number of errors per type", 21, 0, 21);
390  meFedETypeNErr_[id]->setAxisTitle("Error type", 1);
391  }
392  // Add the booked histograms to the histogram map for booking
393  meMapFEDs_["meErrorType_"] = meErrorType_;
394  meMapFEDs_["meNErrors_"] = meNErrors_;
395  meMapFEDs_["meFullType_"] = meFullType_;
396  meMapFEDs_["meTBMMessage_"] = meTBMMessage_;
397  meMapFEDs_["meTBMType_"] = meTBMType_;
398  meMapFEDs_["meEvtNbr_"] = meEvtNbr_;
399  meMapFEDs_["meEvtSize_"] = meEvtSize_;
400  meMapFEDs_["meFedChNErr_"] = meFedChNErr_;
401  meMapFEDs_["meFedChLErr_"] = meFedChLErr_;
402  meMapFEDs_["meFedETypeNErr_"] = meFedETypeNErr_;
403 
404  // cout<<"...leaving SiPixelRawDataErrorSource::bookMEs now! "<<endl;
405 }
406 
FEDNumbering.h
edm::ESHandle::product
T const * product() const
Definition: ESHandle.h:86
edm::DetSetVector
Definition: DetSetVector.h:61
hgcalPlots.ncols
ncols
Definition: hgcalPlots.py:105
SiPixelRawDataErrorSource::meFedETypeNErr_
MonitorElement * meFedETypeNErr_[40]
Definition: SiPixelRawDataErrorSource.h:97
SiPixelRawDataErrorSource::meFedChLErr_
MonitorElement * meFedChLErr_[40]
Definition: SiPixelRawDataErrorSource.h:96
electrons_cff.bool
bool
Definition: electrons_cff.py:372
mps_fire.i
i
Definition: mps_fire.py:355
PixelSubdetector.h
SiPixelRawDataErrorSource::firstRun
bool firstRun
Definition: SiPixelRawDataErrorSource.h:82
input
static const std::string input
Definition: EdmProvDump.cc:48
PixelBarrelName.h
MessageLogger.h
SiPixelRawDataErrorSource::meErrorType_
MonitorElement * meErrorType_[40]
Definition: SiPixelRawDataErrorSource.h:87
funct::false
false
Definition: Factorize.h:34
PixelSubdetector::PixelEndcap
Definition: PixelSubdetector.h:11
TrackerGeometry.h
GeomDet
Definition: GeomDet.h:27
PixelSubdetector::PixelBarrel
Definition: PixelSubdetector.h:11
PixelTopology.h
SiPixelRawDataError
Pixel error – collection of errors and error information.
Definition: SiPixelRawDataError.h:19
SiPixelFolderOrganizer::setModuleFolder
bool setModuleFolder(const uint32_t &rawdetid=0, int type=0, bool isUpgrade=false)
Set folder name for a module or plaquette.
Definition: SiPixelFolderOrganizer.cc:27
SiPixelRawDataErrorSource::buildStructure
virtual void buildStructure(edm::EventSetup const &)
Definition: SiPixelRawDataErrorSource.cc:185
SiPixelOfflineDQM_source_cff.reducedSet
reducedSet
Definition: SiPixelOfflineDQM_source_cff.py:8
edm::Run
Definition: Run.h:45
SiPixelRawDataErrorSource::analyze
void analyze(const edm::Event &, const edm::EventSetup &) override
Definition: SiPixelRawDataErrorSource.cc:104
FEDRawDataCollection
Definition: FEDRawDataCollection.h:18
edm
HLT enums.
Definition: AlignableModifier.h:19
TrackerTopology
Definition: TrackerTopology.h:16
SiPixelRawDataErrorSource::meTBMMessage_
MonitorElement * meTBMMessage_[40]
Definition: SiPixelRawDataErrorSource.h:90
SiPixelRawDataErrorSource::eventNo
int eventNo
Definition: SiPixelRawDataErrorSource.h:79
SiPixelRawDataErrorSource::thePixelStructure
std::map< uint32_t, SiPixelRawDataErrorModule * > thePixelStructure
Definition: SiPixelRawDataErrorSource.h:80
edm::LogInfo
Definition: MessageLogger.h:254
SiPixelRawDataErrorSource::topFolderName_
std::string topFolderName_
Definition: SiPixelRawDataErrorSource.h:70
DQMStore.h
SiPixelHistogramId.h
PixelEndcapName::halfCylinder
HalfCylinder halfCylinder() const
Definition: PixelEndcapName.h:42
SiPixelRawDataErrorSource::fedcounter
MonitorElement * fedcounter
Definition: SiPixelRawDataErrorSource.h:85
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
fed_dqm_sourceclient-live_cfg.saveFile
saveFile
Definition: fed_dqm_sourceclient-live_cfg.py:54
SiPixelRawDataErrorSource::SiPixelRawDataErrorSource
SiPixelRawDataErrorSource(const edm::ParameterSet &conf)
Definition: SiPixelRawDataErrorSource.cc:55
PixelEndcapName::pannelName
int pannelName() const
pannel id
Definition: PixelEndcapName.h:51
edm::Handle
Definition: AssociativeIterator.h:50
groupFilesInBlocks.temp
list temp
Definition: groupFilesInBlocks.py:142
PixelEndcapName::bladeName
int bladeName() const
blade id
Definition: PixelEndcapName.h:48
FEDRawData::data
const unsigned char * data() const
Return a const pointer to the beginning of the data buffer.
Definition: FEDRawData.cc:24
SiPixelRawDataErrorSource::theFEDStructure
std::map< uint32_t, SiPixelRawDataErrorModule * > theFEDStructure
Definition: SiPixelRawDataErrorSource.h:81
SiPixelRawDataErrorSource::~SiPixelRawDataErrorSource
~SiPixelRawDataErrorSource() override
Definition: SiPixelRawDataErrorSource.cc:74
SiPixelRawDataErrorSource::conf_
edm::ParameterSet conf_
Definition: SiPixelRawDataErrorSource.h:67
SiPixelOfflineDQM_source_cff.ladOn
ladOn
Definition: SiPixelOfflineDQM_source_cff.py:37
TrackerGeometry::detsPXB
const DetContainer & detsPXB() const
Definition: TrackerGeometry.cc:171
DetId
Definition: DetId.h:17
SiPixelRawDataErrorSource::slowDown
bool slowDown
Definition: SiPixelRawDataErrorSource.h:73
TrackerTopologyRcd.h
PixelEndcapName
Definition: PixelEndcapName.h:16
edm::EventSetup::get
T get() const
Definition: EventSetup.h:73
DEFINE_FWK_MODULE
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:16
SiPixelRawDataErrorSource::modOn
bool modOn
Definition: SiPixelRawDataErrorSource.h:75
SiPixelOfflineDQM_source_cff.bladeOn
bladeOn
Definition: SiPixelOfflineDQM_source_cff.py:38
FEDNumbering::MAXSiPixelFEDID
Definition: FEDNumbering.h:28
SiPixelRawDataErrorSource::meTBMType_
MonitorElement * meTBMType_[40]
Definition: SiPixelRawDataErrorSource.h:91
SiPixelRawDataErrorSource::bookMEs
virtual void bookMEs(DQMStore::IBooker &)
Definition: SiPixelRawDataErrorSource.cc:280
Service.h
PixelGeomDetUnit
Definition: PixelGeomDetUnit.h:15
TrackerDigiGeometryRecord
Definition: TrackerDigiGeometryRecord.h:15
dqm::impl::MonitorElement::Fill
void Fill(long long x)
Definition: MonitorElement.h:290
edm::ESHandle< TrackerGeometry >
SiPixelRawDataErrorSource
Definition: SiPixelRawDataErrorSource.h:52
TrackerGeometry::detsPXF
const DetContainer & detsPXF() const
Definition: TrackerGeometry.cc:173
SiPixelOfflineDQM_source_cff.modOn
modOn
online/offline RawDataErrors
Definition: SiPixelOfflineDQM_source_cff.py:36
SiPixelRawDataErrorSource::byLumiErrors
MonitorElement * byLumiErrors
Definition: SiPixelRawDataErrorSource.h:83
FEDRawDataCollection::FEDData
const FEDRawData & FEDData(int fedid) const
retrieve data for fed
Definition: FEDRawDataCollection.cc:19
DetId::subdetId
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum)
Definition: DetId.h:48
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
SiPixelRawDataErrorSource::errorRate
MonitorElement * errorRate
Definition: SiPixelRawDataErrorSource.h:84
funct::true
true
Definition: Factorize.h:173
TrackerDigiGeometryRecord.h
LogDebug
#define LogDebug(id)
Definition: MessageLogger.h:670
SiPixelHistogramId
Definition: SiPixelHistogramId.h:25
edm::ParameterSet
Definition: ParameterSet.h:36
edm::LogError
Definition: MessageLogger.h:183
TrackRefitter_38T_cff.src
src
Definition: TrackRefitter_38T_cff.py:24
SiPixelRawDataErrorSource::ladOn
bool ladOn
Definition: SiPixelRawDataErrorSource.h:76
PixelGeomDetUnit::specificTopology
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
Definition: PixelGeomDetUnit.cc:17
createfilelist.int
int
Definition: createfilelist.py:10
iEvent
int iEvent
Definition: GenABIO.cc:224
edm::LogVerbatim
Definition: MessageLogger.h:297
SiPixelOfflineDQM_source_cff.isPIB
isPIB
Definition: SiPixelOfflineDQM_source_cff.py:6
dqm::implementation::IBooker::UseLumiScope
UseScope< MonitorElementData::Scope::LUMI > UseLumiScope
Definition: DQMStore.h:463
SiPixelRawDataErrorSource::bladeOn
bool bladeOn
Definition: SiPixelRawDataErrorSource.h:77
edm::EventSetup
Definition: EventSetup.h:57
l1tstage2_dqm_sourceclient-live_cfg.fedId
fedId
Definition: l1tstage2_dqm_sourceclient-live_cfg.py:88
module
Definition: vlib.h:198
get
#define get
FEDRawData::size
size_t size() const
Lenght of the data buffer in bytes.
Definition: FEDRawData.h:45
SiPixelRawDataErrorSource::meEvtSize_
MonitorElement * meEvtSize_[40]
Definition: SiPixelRawDataErrorSource.h:93
FEDNumbering::MINSiPixelFEDID
Definition: FEDNumbering.h:27
alignCSCRings.r
r
Definition: alignCSCRings.py:93
SiPixelRawDataErrorSource::meNErrors_
MonitorElement * meNErrors_[40]
Definition: SiPixelRawDataErrorSource.h:88
overlapproblemtsosanalyzer_cfi.title
title
Definition: overlapproblemtsosanalyzer_cfi.py:7
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
fed_dqm_sourceclient-live_cfg.slowDown
slowDown
Definition: fed_dqm_sourceclient-live_cfg.py:55
dqm::impl::MonitorElement::setBinContent
virtual void setBinContent(int binx, double content)
set content of bin (1-D)
Definition: MonitorElement.cc:691
SiPixelRawDataErrorSource::meFullType_
MonitorElement * meFullType_[40]
Definition: SiPixelRawDataErrorSource.h:89
std
Definition: JetResolutionObject.h:76
DetId::rawId
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
PixelEndcapName::HalfCylinder
HalfCylinder
Definition: PixelEndcapName.h:18
PixelEndcapName::diskName
int diskName() const
disk id
Definition: PixelEndcapName.h:45
SiPixelRawDataErrorModule
Definition: SiPixelRawDataErrorModule.h:29
SiPixelRawDataErrorSource::meEvtNbr_
MonitorElement * meEvtNbr_[40]
Definition: SiPixelRawDataErrorSource.h:92
DetId.h
triggerObjects_cff.id
id
Definition: triggerObjects_cff.py:31
SiPixelRawDataErrorSource::src_
edm::EDGetTokenT< edm::DetSetVector< SiPixelRawDataError > > src_
Definition: SiPixelRawDataErrorSource.h:68
Exception
Definition: hltDiff.cc:246
SiPixelRawDataErrorSource.h
SiPixelFolderOrganizer
Definition: SiPixelFolderOrganizer.h:26
SiPixelRawDataErrorSource::isPIB
bool isPIB
Definition: SiPixelRawDataErrorSource.h:72
PixelGeomDetUnit.h
SiPixelRawDataErrorSource::bookHistograms
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: SiPixelRawDataErrorSource.cc:94
L1TStage2BMTF_cff.fedIds
fedIds
Definition: L1TStage2BMTF_cff.py:10
SiPixelRawDataErrorSource::inputSourceToken_
edm::EDGetTokenT< FEDRawDataCollection > inputSourceToken_
Definition: SiPixelRawDataErrorSource.h:69
SiPixelRawDataErrorSource::dqmBeginRun
void dqmBeginRun(const edm::Run &, edm::EventSetup const &) override
Definition: SiPixelRawDataErrorSource.cc:80
PixelEndcapNameUpgrade.h
SiPixelFolderOrganizer::setFedFolder
bool setFedFolder(const uint32_t FedId)
Set folder name for a FED (used in the case of errors without detId)
Definition: SiPixelFolderOrganizer.cc:402
SiPixelFolderOrganizer.h
PixelEndcapName::plaquetteName
int plaquetteName() const
plaquetteId (in pannel)
Definition: PixelEndcapName.h:54
TrackerTopologyRcd
Definition: TrackerTopologyRcd.h:10
SiPixelRawDataErrorSource::isUpgrade
bool isUpgrade
Definition: SiPixelRawDataErrorSource.h:78
SiPixelOfflineDQM_client_cff.isUpgrade
isUpgrade
Definition: SiPixelOfflineDQM_client_cff.py:19
PixelBarrelNameUpgrade.h
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
edm::Event
Definition: Event.h:73
dqm::impl::MonitorElement::setAxisTitle
virtual void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
Definition: MonitorElement.cc:800
edm::InputTag
Definition: InputTag.h:15
SiPixelRawDataErrorSource::meFedChNErr_
MonitorElement * meFedChNErr_[40]
Definition: SiPixelRawDataErrorSource.h:95
SiPixelRawDataErrorSource::meMapFEDs_
std::map< std::string, MonitorElement ** > meMapFEDs_
Definition: SiPixelRawDataErrorSource.h:99
PixelEndcapName.h