CMS 3D CMS Logo

SiPixelTemplateHelper.h
Go to the documentation of this file.
1 #ifndef CONDCORE_SIPIXELPLUGINS_SIPIXELTEMPLATEHELPER_H
2 #define CONDCORE_SIPIXELPLUGINS_SIPIXELTEMPLATEHELPER_H
3 
14 
15 #include <type_traits>
16 #include <memory>
17 #include <sstream>
18 #include <fmt/printf.h>
19 #include <boost/range/adaptor/indexed.hpp>
20 
21 // include ROOT
22 #include "TH2F.h"
23 #include "TH1F.h"
24 #include "TLegend.h"
25 #include "TCanvas.h"
26 #include "TLine.h"
27 #include "TStyle.h"
28 #include "TLatex.h"
29 #include "TPave.h"
30 #include "TPaveStats.h"
31 #include "TGaxis.h"
32 
33 namespace templateHelper {
34 
35  //************************************************
36  // Display of Template/GenError Titles
37  // *************************************************/
38  template <class PayloadType, class StoreType, class TransientType>
40  : public cond::payloadInspector::PlotImage<PayloadType, cond::payloadInspector::SINGLE_IOV> {
41  public:
43  : cond::payloadInspector::PlotImage<PayloadType, cond::payloadInspector::SINGLE_IOV>(
44  "Table of SiPixelTemplate/GenError titles") {
45  if constexpr (std::is_same_v<PayloadType, SiPixelGenErrorDBObject>) {
46  isTemplate_ = false;
47  label_ = "SiPixelGenErrorDBObject_PayloadInspector";
48  } else {
49  isTemplate_ = true;
50  label_ = "SiPixelTemplateDBObject_PayloadInspector";
51  }
52  }
53 
54  bool fill() override {
55  auto tag = cond::payloadInspector::PlotBase::getTag<0>();
56  auto iov = tag.iovs.front();
57  auto tagname = tag.name;
58  std::vector<StoreType> thePixelTemp_;
59  std::shared_ptr<PayloadType> payload = this->fetchPayload(std::get<1>(iov));
60 
61  std::string IOVsince = std::to_string(std::get<0>(iov));
62 
63  if (payload.get()) {
64  if (!TransientType::pushfile(*payload, thePixelTemp_)) {
65  throw cms::Exception(label_) << "\nERROR:" << (isTemplate_ ? "Templates" : "GenErrors")
66  << " not filled correctly."
67  << " Check the conditions. Using "
68  << (isTemplate_ ? "SiPixelTemplateDBObject" : "SiPixelGenErrorDBObject")
69  << " version " << payload->version() << "\n\n";
70  }
71 
72  unsigned int mapsize = thePixelTemp_.size();
73  float pitch = 1. / (mapsize * 1.1);
74 
75  float y, x1, x2;
76  std::vector<float> y_x1, y_x2, y_line;
77  std::vector<std::string> s_x1, s_x2, s_x3;
78 
79  // starting table at y=1.0 (top of the canvas)
80  // first column is at 0.02, second column at 0.32 NDC
81  y = 1.0;
82  x1 = 0.02;
83  x2 = x1 + 0.30;
84 
85  y -= pitch;
86  y_x1.push_back(y);
87  s_x1.push_back(Form("#scale[1.2]{%s}", (isTemplate_ ? "Template ID" : "GenError ID")));
88  y_x2.push_back(y);
89  s_x2.push_back(Form("#scale[1.2]{#color[4]{%s} in IOV: #color[4]{%s}}", tagname.c_str(), IOVsince.c_str()));
90 
91  y -= pitch / 2.;
92  y_line.push_back(y);
93 
94  for (const auto& element : thePixelTemp_) {
95  y -= pitch;
96  y_x1.push_back(y);
97  s_x1.push_back(std::to_string(element.head.ID));
98 
99  y_x2.push_back(y);
100  s_x2.push_back(Form("#color[2]{%s}", element.head.title));
101 
102  y_line.push_back(y - (pitch / 2.));
103  }
104 
105  const auto& c_title = fmt::sprintf("%s titles", (isTemplate_ ? "Template" : "GenError"));
106  TCanvas canvas(c_title.c_str(), c_title.c_str(), 2000, std::max(y_x1.size(), y_x2.size()) * 40);
107  TLatex l;
108  // Draw the columns titles
109  l.SetTextAlign(12);
110 
111  float newpitch = 1 / (std::max(y_x1.size(), y_x2.size()) * 1.1);
112  float factor = newpitch / pitch;
113  l.SetTextSize(newpitch - 0.002);
114  canvas.cd();
115  for (unsigned int i = 0; i < y_x1.size(); i++) {
116  l.DrawLatexNDC(x1, 1 - (1 - y_x1[i]) * factor, s_x1[i].c_str());
117  }
118 
119  for (unsigned int i = 0; i < y_x2.size(); i++) {
120  l.DrawLatexNDC(x2, 1 - (1 - y_x2[i]) * factor, s_x2[i].c_str());
121  }
122 
123  canvas.cd();
124  canvas.Update();
125 
126  TLine lines[y_line.size()];
127  unsigned int iL = 0;
128  for (const auto& line : y_line) {
129  lines[iL] = TLine(gPad->GetUxmin(), 1 - (1 - line) * factor, gPad->GetUxmax(), 1 - (1 - line) * factor);
130  lines[iL].SetLineWidth(1);
131  lines[iL].SetLineStyle(9);
132  lines[iL].SetLineColor(2);
133  lines[iL].Draw("same");
134  iL++;
135  }
136 
138  canvas.SaveAs(fileName.c_str());
139 
140  } // if payload.get()
141  return true;
142  }
143 
144  protected:
147  };
148 
149  /************************************************
150  // header plotting
151  *************************************************/
152  template <class PayloadType, class StoreType, class TransientType>
153  class SiPixelHeaderTable : public cond::payloadInspector::PlotImage<PayloadType, cond::payloadInspector::SINGLE_IOV> {
154  public:
156  : cond::payloadInspector::PlotImage<PayloadType, cond::payloadInspector::SINGLE_IOV>(
157  "SiPixel CPE Conditions Header summary") {
158  if constexpr (std::is_same_v<PayloadType, SiPixelGenErrorDBObject>) {
159  isTemplate_ = false;
160  label_ = "SiPixelGenErrorDBObject_PayloadInspector";
161  } else {
162  isTemplate_ = true;
163  label_ = "SiPixelTemplateDBObject_PayloadInspector";
164  }
165  }
166 
167  bool fill() override {
168  gStyle->SetHistMinimumZero(); // will display zero as zero in the text map
169  gStyle->SetPalette(kMint); // for the ghost plot (colored BPix and FPix bins)
170 
171  auto tag = cond::payloadInspector::PlotBase::getTag<0>();
172  auto iov = tag.iovs.front();
173  auto tagname = tag.name;
174  std::vector<StoreType> thePixelTemp_;
175  std::shared_ptr<PayloadType> payload = this->fetchPayload(std::get<1>(iov));
176 
177  if (payload.get()) {
178  if (!TransientType::pushfile(*payload, thePixelTemp_)) {
179  throw cms::Exception(label_) << "\nERROR:" << (isTemplate_ ? "Templates" : "GenErrors")
180  << " not filled correctly."
181  << " Check the conditions. Using "
182  << (isTemplate_ ? "SiPixelTemplateDBObject" : "SiPixelGenErrorDBObject")
183  << payload->version() << "\n\n";
184  }
185 
186  // store the map of ID / interesting quantities
187  TransientType templ(thePixelTemp_);
188  TCanvas canvas("Header Summary", "Header summary", 1400, 1000);
189  canvas.cd();
190 
191  unsigned int tempSize = thePixelTemp_.size();
192 
193  canvas.SetTopMargin(0.07);
194  canvas.SetBottomMargin(0.06);
195  canvas.SetLeftMargin(0.17);
196  canvas.SetRightMargin(0.03);
197  canvas.Modified();
198  canvas.SetGrid();
199 
200  auto h2_Header = std::make_unique<TH2F>("Header", ";;", tempSize, 0, tempSize, 12, 0., 12.);
201  auto h2_ghost = std::make_unique<TH2F>("ghost", ";;", tempSize, 0, tempSize, 12, 0., 12.);
202  h2_Header->SetStats(false);
203  h2_ghost->SetStats(false);
204 
205  int tempVersion = -999;
206 
207  for (const auto& theTemp : thePixelTemp_ | boost::adaptors::indexed(1)) {
208  auto tempValue = theTemp.value();
209  auto idx = theTemp.index();
210  float uH = -99.;
211  if (tempValue.head.Bfield != 0.) {
212  uH = roundoff(tempValue.head.lorxwidth / tempValue.head.zsize / tempValue.head.Bfield, 4);
213  }
214 
215  // clang-format off
216  h2_Header->SetBinContent(idx, 12, tempValue.head.ID);
217  h2_Header->SetBinContent(idx, 11, tempValue.head.Bfield);
218  h2_Header->SetBinContent(idx, 10, uH);
219  h2_Header->SetBinContent(idx, 9, tempValue.head.xsize);
220  h2_Header->SetBinContent(idx, 8, tempValue.head.ysize);
221  h2_Header->SetBinContent(idx, 7, tempValue.head.zsize);
222  h2_Header->SetBinContent(idx, 6, tempValue.head.NTy);
223  h2_Header->SetBinContent(idx, 5, tempValue.head.NTyx);
224  h2_Header->SetBinContent(idx, 4, tempValue.head.NTxx);
225  h2_Header->SetBinContent(idx, 3, tempValue.head.Dtype);
226  h2_Header->SetBinContent(idx, 2, tempValue.head.qscale);
227  h2_Header->SetBinContent(idx, 1, tempValue.head.Vbias);
228  // clang-format on
229 
230  h2_Header->GetYaxis()->SetBinLabel(12, (isTemplate_ ? "TemplateID" : "GenErrorID"));
231  h2_Header->GetYaxis()->SetBinLabel(11, "B-field [T]");
232  h2_Header->GetYaxis()->SetBinLabel(10, "#mu_{H} [1/T]");
233  h2_Header->GetYaxis()->SetBinLabel(9, "x-size [#mum]");
234  h2_Header->GetYaxis()->SetBinLabel(8, "y-size [#mum]");
235  h2_Header->GetYaxis()->SetBinLabel(7, "z-size [#mum]");
236  h2_Header->GetYaxis()->SetBinLabel(6, "NTy");
237  h2_Header->GetYaxis()->SetBinLabel(5, "NTyx");
238  h2_Header->GetYaxis()->SetBinLabel(4, "NTxx");
239  h2_Header->GetYaxis()->SetBinLabel(3, "DetectorType");
240  h2_Header->GetYaxis()->SetBinLabel(2, "qScale");
241  h2_Header->GetYaxis()->SetBinLabel(1, "VBias [V]");
242  h2_Header->GetXaxis()->SetBinLabel(idx, "");
243 
244  for (unsigned int iy = 1; iy <= 12; iy++) {
245  if (tempValue.head.Dtype != 0 || uH < 0) {
246  h2_ghost->SetBinContent(idx, iy, 1);
247  } else {
248  h2_ghost->SetBinContent(idx, iy, -1);
249  }
250  h2_ghost->GetYaxis()->SetBinLabel(iy, h2_Header->GetYaxis()->GetBinLabel(iy));
251  h2_ghost->GetXaxis()->SetBinLabel(idx, "");
252  }
253 
254  if (tempValue.head.templ_version != tempVersion) {
255  tempVersion = tempValue.head.templ_version;
256  }
257  }
258 
259  h2_Header->GetXaxis()->LabelsOption("h");
260  h2_Header->GetXaxis()->SetNdivisions(500 + tempSize, false);
261  h2_Header->GetYaxis()->SetLabelSize(0.05);
262  h2_Header->SetMarkerSize(1.5);
263 
264  h2_ghost->GetXaxis()->LabelsOption("h");
265  h2_ghost->GetXaxis()->SetNdivisions(500 + tempSize, false);
266  h2_ghost->GetYaxis()->SetLabelSize(0.05);
267 
268  canvas.cd();
269  h2_ghost->Draw("col");
270  h2_Header->Draw("TEXTsame");
271 
272  TPaveText ksPt(0, 0, 0.88, 0.04, "NDC");
273  ksPt.SetBorderSize(0);
274  ksPt.SetFillColor(0);
275  const char* textToAdd = Form("%s Version: #color[2]{%i}. Payload hash: #color[2]{%s}",
276  (isTemplate_ ? "Template" : "GenError"),
277  tempVersion,
278  (std::get<1>(iov)).c_str());
279  ksPt.AddText(textToAdd);
280  ksPt.Draw();
281 
282  auto ltx = TLatex();
283  ltx.SetTextFont(62);
284  ltx.SetTextSize(0.040);
285  ltx.SetTextAlign(11);
286  ltx.DrawLatexNDC(
287  gPad->GetLeftMargin(),
288  1 - gPad->GetTopMargin() + 0.01,
289  ("#color[4]{" + tagname + "}, IOV: #color[4]{" + std::to_string(std::get<0>(iov)) + "}").c_str());
290 
292  canvas.SaveAs(fileName.c_str());
293  }
294  return true;
295  }
296 
297  float roundoff(float value, unsigned char prec) {
298  float pow_10 = pow(10.0f, (float)prec);
299  return round(value * pow_10) / pow_10;
300  }
301 
302  protected:
305  };
306 
307  //***********************************************
308  // TH2Poly Map of IDs
309  //***********************************************/
310  template <class PayloadType, SiPixelPI::DetType myType>
311  class SiPixelIDs : public cond::payloadInspector::PlotImage<PayloadType, cond::payloadInspector::SINGLE_IOV> {
312  public:
313  SiPixelIDs()
314  : cond::payloadInspector::PlotImage<PayloadType, cond::payloadInspector::SINGLE_IOV>(
315  "SiPixelMap of Template / GenError ID Values") {
316  if constexpr (std::is_same_v<PayloadType, SiPixelGenErrorDBObject>) {
317  isTemplate_ = false;
318  label_ = "SiPixelGenErrorDBObject_PayloadInspector";
319  } else {
320  isTemplate_ = true;
321  label_ = "SiPixelTemplateDBObject_PayloadInspector";
322  }
323  }
324 
325  bool fill() override {
326  gStyle->SetPalette(kRainBow);
327 
328  auto tag = cond::payloadInspector::PlotBase::getTag<0>();
329  auto iov = tag.iovs.front();
330  std::shared_ptr<PayloadType> payload = this->fetchPayload(std::get<1>(iov));
331 
332  std::string barrelName_ = fmt::sprintf("%sIDsBarrel", (isTemplate_ ? "template" : "genError"));
333  std::string endcapName_ = fmt::sprintf("%sIDsForward", (isTemplate_ ? "template" : "genError"));
334  std::string title_ = fmt::sprintf("%s IDs", (isTemplate_ ? "template" : "genError"));
335 
336  if (payload.get()) {
337  // Book the TH2Poly
338  Phase1PixelMaps theMaps("text");
339  if (myType == SiPixelPI::t_barrel) {
340  // book the barrel bins of the TH2Poly
341  theMaps.bookBarrelHistograms(barrelName_, title_.c_str(), title_.c_str());
342  } else if (myType == SiPixelPI::t_forward) {
343  // book the forward bins of the TH2Poly
344  theMaps.bookForwardHistograms(endcapName_, title_.c_str(), title_.c_str());
345  }
346 
347  std::map<unsigned int, short> templMap;
348  if constexpr (std::is_same_v<PayloadType, SiPixelGenErrorDBObject>) {
349  templMap = payload->getGenErrorIDs();
350  } else {
351  templMap = payload->getTemplateIDs();
352  }
353 
354  if (templMap.size() == SiPixelPI::phase0size || templMap.size() > SiPixelPI::phase1size) {
356  << "There are " << templMap.size()
357  << " DetIds in this payload. SiPixelIDs maps are not supported for non-Phase1 Pixel geometries !";
358  TCanvas canvas("Canv", "Canv", 1200, 1000);
359  SiPixelPI::displayNotSupported(canvas, templMap.size());
361  canvas.SaveAs(fileName.c_str());
362  return false;
363  } else {
364  if (templMap.size() < SiPixelPI::phase1size) {
365  edm::LogWarning(label_) << "\n ********* WARNING! ********* \n There are " << templMap.size()
366  << " DetIds in this payload !"
367  << "\n **************************** \n";
368  }
369  }
370 
371  /*
372  std::vector<unsigned int> detids;
373  std::transform(templMap.begin(),
374  templMap.end(),
375  std::back_inserter(detids),
376  [](const std::map<unsigned int, short>::value_type& pair) { return pair.first; });
377  */
378 
379  for (auto const& entry : templMap) {
380  COUT << "DetID: " << entry.first << fmt::sprintf("%s ID ", (isTemplate_ ? "Template" : "GenError"))
381  << entry.second << std::endl;
382  auto detid = DetId(entry.first);
383  if ((detid.subdetId() == PixelSubdetector::PixelBarrel) && (myType == SiPixelPI::t_barrel)) {
384  theMaps.fillBarrelBin(barrelName_, entry.first, entry.second);
385  } else if ((detid.subdetId() == PixelSubdetector::PixelEndcap) && (myType == SiPixelPI::t_forward)) {
386  theMaps.fillForwardBin(endcapName_, entry.first, entry.second);
387  }
388  }
389 
390  theMaps.beautifyAllHistograms();
391 
392  TCanvas canvas("Canv", "Canv", (myType == SiPixelPI::t_barrel) ? 1200 : 1500, 1000);
393  if (myType == SiPixelPI::t_barrel) {
394  theMaps.drawBarrelMaps(barrelName_, canvas);
395  } else if (myType == SiPixelPI::t_forward) {
396  theMaps.drawForwardMaps(endcapName_, canvas);
397  }
398 
399  canvas.cd();
400 
402  canvas.SaveAs(fileName.c_str());
403  }
404  return true;
405  }
406 
407  protected:
410  };
411 
412  /************************************************
413  Full Pixel Tracker Map class
414  *************************************************/
415  template <class PayloadType, class StoreType, class TransientType>
417  : public cond::payloadInspector::PlotImage<PayloadType, cond::payloadInspector::SINGLE_IOV> {
418  public:
420  : cond::payloadInspector::PlotImage<PayloadType, cond::payloadInspector::SINGLE_IOV>(
421  "SiPixel CPE conditions Map of IDs") {
422  if constexpr (std::is_same_v<PayloadType, SiPixelGenErrorDBObject>) {
423  isTemplate_ = false;
424  label_ = "SiPixelGenErrorDBObject_PayloadInspector";
425  } else {
426  isTemplate_ = true;
427  label_ = "SiPixelTemplateDBObject_PayloadInspector";
428  }
429  }
430 
431  bool fill() override {
432  gStyle->SetPalette(1);
433  auto tag = cond::payloadInspector::PlotBase::getTag<0>();
434  auto iov = tag.iovs.front();
435  std::vector<StoreType> thePixelTemp_;
436  std::shared_ptr<PayloadType> payload = this->fetchPayload(std::get<1>(iov));
437 
438  std::string payloadString = (isTemplate_ ? "Templates" : "GenErrors");
439 
440  if (payload.get()) {
441  if (!TransientType::pushfile(*payload, thePixelTemp_)) {
442  throw cms::Exception(label_) << "\nERROR: " << payloadString
443  << " not filled correctly. Check the conditions. Using "
444  << (isTemplate_ ? "SiPixelTemplateDBObject" : "SiPixelGenErrorDBObject")
445  << payload->version() << "\n\n";
446  }
447 
448  Phase1PixelSummaryMap fullMap("", fmt::sprintf("%s IDs", payloadString), fmt::sprintf("%s ID", payloadString));
449  fullMap.createTrackerBaseMap();
450 
451  std::map<unsigned int, short> templMap;
452  if constexpr (std::is_same_v<PayloadType, SiPixelGenErrorDBObject>) {
453  templMap = payload->getGenErrorIDs();
454  } else {
455  templMap = payload->getTemplateIDs();
456  }
457 
458  for (const auto& entry : templMap) {
459  fullMap.fillTrackerMap(entry.first, entry.second);
460  }
461 
462  if (templMap.size() == SiPixelPI::phase0size || templMap.size() > SiPixelPI::phase1size) {
464  << "There are " << templMap.size()
465  << " DetIds in this payload. SiPixelIDs maps are not supported for non-Phase1 Pixel geometries !";
466  TCanvas canvas("Canv", "Canv", 1200, 1000);
467  SiPixelPI::displayNotSupported(canvas, templMap.size());
469  canvas.SaveAs(fileName.c_str());
470  return false;
471  } else {
472  if (templMap.size() < SiPixelPI::phase1size) {
473  edm::LogWarning(label_) << "\n ********* WARNING! ********* \n There are " << templMap.size()
474  << " DetIds in this payload !"
475  << "\n **************************** \n";
476  }
477  }
478 
479  TCanvas canvas("Canv", "Canv", 3000, 2000);
480  fullMap.printTrackerMap(canvas);
481 
482  //fmt::sprintf("#color[2]{%s, IOV %i}",tag.name,std::get<0>(iov));
483 
484  auto ltx = TLatex();
485  ltx.SetTextFont(62);
486  ltx.SetTextSize(0.025);
487  ltx.SetTextAlign(11);
488  ltx.DrawLatexNDC(
489  gPad->GetLeftMargin() + 0.01,
490  gPad->GetBottomMargin() + 0.01,
491  ("#color[4]{" + tag.name + "}, IOV: #color[4]{" + std::to_string(std::get<0>(iov)) + "}").c_str());
492 
494  canvas.SaveAs(fileName.c_str());
495  }
496  return true;
497  }
498 
499  protected:
502  };
503 
504 } // namespace templateHelper
505 
506 #endif
templateHelper::SiPixelIDs
Definition: SiPixelTemplateHelper.h:310
svgfig.canvas
def canvas(*sub, **attr)
Definition: svgfig.py:482
cond::payloadInspector::PlotImage< PayloadType, cond::payloadInspector::SINGLE_IOV >::m_imageFileName
std::string m_imageFileName
Definition: PayloadInspector.h:910
mps_fire.i
i
Definition: mps_fire.py:428
SiPixelPI::t_barrel
Definition: SiPixelPayloadInspectorHelper.h:574
templateHelper::SiPixelIDs::fill
bool fill() override
Definition: SiPixelTemplateHelper.h:324
PixelSubdetector.h
templateHelper::SiPixelHeaderTable::label_
std::string label_
Definition: SiPixelTemplateHelper.h:304
PixelSubdetector::PixelEndcap
Definition: PixelSubdetector.h:11
PixelSubdetector::PixelBarrel
Definition: PixelSubdetector.h:11
templateHelper::SiPixelHeaderTable
Definition: SiPixelTemplateHelper.h:152
f
double f[11][100]
Definition: MuScleFitUtils.cc:78
templateHelper::SiPixelFullPixelIDMap::isTemplate_
bool isTemplate_
Definition: SiPixelTemplateHelper.h:499
templateHelper::SiPixelIDs::isTemplate_
bool isTemplate_
Definition: SiPixelTemplateHelper.h:407
Phase1PixelMaps::bookBarrelHistograms
void bookBarrelHistograms(const std::string &currentHistoName, const char *what, const char *zaxis)
Definition: Phase1PixelMaps.cc:30
testProducerWithPsetDescEmpty_cfi.x2
x2
Definition: testProducerWithPsetDescEmpty_cfi.py:28
mps_splice.entry
entry
Definition: mps_splice.py:68
PayloadInspector.h
Phase1PixelMaps::beautifyAllHistograms
void beautifyAllHistograms()
Definition: Phase1PixelMaps.cc:288
templateHelper::SiPixelIDs::label_
std::string label_
Definition: SiPixelTemplateHelper.h:408
templateHelper::SiPixelHeaderTable::roundoff
float roundoff(float value, unsigned char prec)
Definition: SiPixelTemplateHelper.h:297
Phase1PixelSummaryMap.h
cond::payloadInspector::PlotImage< PayloadType, cond::payloadInspector::SINGLE_IOV >::PlotImage
PlotImage(const std::string &title)
Definition: PayloadInspector.h:897
MillePedeFileConverter_cfg.fileName
fileName
Definition: MillePedeFileConverter_cfg.py:32
SiPixelPI::displayNotSupported
void displayNotSupported(TCanvas &canv, const unsigned int size)
Definition: SiPixelPayloadInspectorHelper.h:782
templateHelper::SiPixelFullPixelIDMap::SiPixelFullPixelIDMap
SiPixelFullPixelIDMap()
Definition: SiPixelTemplateHelper.h:418
templateHelper::SiPixelTitles_Display::isTemplate_
bool isTemplate_
Definition: SiPixelTemplateHelper.h:145
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
SiPixelPI::phase0size
static const unsigned int phase0size
Definition: SiPixelPayloadInspectorHelper.h:42
PayloadInspectorModule.h
heavyIonCSV_trainingSettings.idx
idx
Definition: heavyIonCSV_trainingSettings.py:5
Phase1PixelMaps::fillForwardBin
void fillForwardBin(const std::string &currentHistoName, unsigned int id, double value)
Definition: Phase1PixelMaps.cc:269
DetId
Definition: DetId.h:17
templateHelper::SiPixelTitles_Display
Definition: SiPixelTemplateHelper.h:39
testProducerWithPsetDescEmpty_cfi.x1
x1
Definition: testProducerWithPsetDescEmpty_cfi.py:33
SiPixelTemplate.h
templateHelper::SiPixelHeaderTable::SiPixelHeaderTable
SiPixelHeaderTable()
Definition: SiPixelTemplateHelper.h:155
Phase1PixelMaps::fillBarrelBin
void fillBarrelBin(const std::string &currentHistoName, unsigned int id, double value)
Definition: Phase1PixelMaps.cc:252
DQMScaleToClient_cfi.factor
factor
Definition: DQMScaleToClient_cfi.py:8
jets_cff.payload
payload
Definition: jets_cff.py:32
Phase1PixelMaps
Definition: Phase1PixelMaps.h:31
Phase1PixelMaps.h
cond
Definition: plugin.cc:23
Time.h
SiPixelTemplateDBObject.h
groupFilesInBlocks.lines
lines
Definition: groupFilesInBlocks.py:95
makeGlobalPositionRcd_cfg.tag
tag
Definition: makeGlobalPositionRcd_cfg.py:6
SiStripPI::max
Definition: SiStripPayloadInspectorHelper.h:169
Phase1PixelSummaryMap
Definition: Phase1PixelSummaryMap.h:56
SiPixelPI::phase1size
static const unsigned int phase1size
Definition: SiPixelPayloadInspectorHelper.h:43
Phase1PixelMaps::bookForwardHistograms
void bookForwardHistograms(const std::string &currentHistoName, const char *what, const char *zaxis)
Definition: Phase1PixelMaps.cc:75
cond::payloadInspector::PlotImage< PayloadType, cond::payloadInspector::SINGLE_IOV >::fetchPayload
std::shared_ptr< PayloadType > fetchPayload(const cond::Hash &payloadHash)
Definition: PayloadInspector.h:905
templateHelper::SiPixelHeaderTable::fill
bool fill() override
Definition: SiPixelTemplateHelper.h:167
templateHelper::SiPixelIDs::SiPixelIDs
SiPixelIDs()
Definition: SiPixelTemplateHelper.h:312
value
Definition: value.py:1
templateHelper::SiPixelHeaderTable::isTemplate_
bool isTemplate_
Definition: SiPixelTemplateHelper.h:303
edm::LogError
Log< level::Error, false > LogError
Definition: MessageLogger.h:123
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
createPayload.tagname
tagname
Definition: createPayload.py:183
cmsLHEtoEOSManager.l
l
Definition: cmsLHEtoEOSManager.py:204
templateHelper::SiPixelFullPixelIDMap::label_
std::string label_
Definition: SiPixelTemplateHelper.h:500
COUT
#define COUT
Definition: PVValidationHelpers.h:13
SiPixelPI::t_forward
Definition: SiPixelPayloadInspectorHelper.h:574
templateHelper
Definition: SiPixelTemplateHelper.h:33
SiPixelGenErrorDBObject.h
templateHelper::SiPixelTitles_Display::fill
bool fill() override
Definition: SiPixelTemplateHelper.h:54
templateHelper::SiPixelTitles_Display::label_
std::string label_
Definition: SiPixelTemplateHelper.h:146
templateHelper::SiPixelFullPixelIDMap::fill
bool fill() override
Definition: SiPixelTemplateHelper.h:430
Exception
Definition: hltDiff.cc:245
cond::payloadInspector::PlotImage
Definition: PayloadInspector.h:894
templateHelper::SiPixelTitles_Display::SiPixelTitles_Display
SiPixelTitles_Display()
Definition: SiPixelTemplateHelper.h:42
Phase1PixelMaps::drawForwardMaps
void drawForwardMaps(const std::string &currentHistoName, TCanvas &canvas, const char *drawOption=nullptr)
Definition: Phase1PixelMaps.cc:366
funct::pow
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:29
SiPixelPayloadInspectorHelper.h
Phase1PixelSummaryMap::fillTrackerMap
bool fillTrackerMap(unsigned int id, double value)
Definition: Phase1PixelSummaryMap.cc:143
Phase1PixelSummaryMap::printTrackerMap
void printTrackerMap(TCanvas &canvas)
Definition: Phase1PixelSummaryMap.cc:84
cond::payloadInspector::SINGLE_IOV
Definition: PayloadInspector.h:295
Phase1PixelMaps::drawBarrelMaps
void drawBarrelMaps(const std::string &currentHistoName, TCanvas &canvas, const char *drawOption=nullptr)
Definition: Phase1PixelMaps.cc:336
templateHelper::SiPixelFullPixelIDMap
Definition: SiPixelTemplateHelper.h:414
mps_splice.line
line
Definition: mps_splice.py:76
Phase1PixelSummaryMap::createTrackerBaseMap
void createTrackerBaseMap()
Definition: Phase1PixelSummaryMap.cc:33