CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
HGCalDigiValidation Class Reference
Inheritance diagram for HGCalDigiValidation:
DQMEDAnalyzer edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >

Classes

struct  digiInfo
 

Public Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
void dqmBeginRun (const edm::Run &, const edm::EventSetup &) override
 
 HGCalDigiValidation (const edm::ParameterSet &)
 
 ~HGCalDigiValidation () override
 
- Public Member Functions inherited from DQMEDAnalyzer
void accumulate (edm::Event const &event, edm::EventSetup const &setup) final
 
void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
void beginStream (edm::StreamID id) final
 
 DQMEDAnalyzer ()
 
void endLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void endRun (edm::Run const &run, edm::EventSetup const &setup) final
 
virtual bool getCanSaveByLumi ()
 
- Public Member Functions inherited from edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >
 EDProducer ()=default
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndRuns () const final
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
- Static Public Member Functions inherited from DQMEDAnalyzer
static void globalEndJob (DQMEDAnalyzerGlobalCache const *)
 
static void globalEndLuminosityBlockProduce (edm::LuminosityBlock &lumi, edm::EventSetup const &setup, LuminosityBlockContext const *context)
 
static void globalEndRunProduce (edm::Run &run, edm::EventSetup const &setup, RunContext const *context)
 
static std::unique_ptr< DQMEDAnalyzerGlobalCacheinitializeGlobalCache (edm::ParameterSet const &)
 

Private Member Functions

template<class T1 , class T2 >
void digiValidation (const T1 &detId, const T2 *geom, int layer, uint16_t adc, double charge, bool mode, bool threshold)
 
void fillDigiInfo ()
 
void fillDigiInfo (digiInfo &hinfo)
 
void fillOccupancyMap (std::map< int, int > &OccupancyMap, int layer)
 

Private Attributes

std::vector< MonitorElement * > ADC_
 
std::vector< MonitorElement * > DigiOccupancy_Minus_
 
std::vector< MonitorElement * > DigiOccupancy_Plus_
 
std::vector< MonitorElement * > DigiOccupancy_XY_
 
edm::EDGetToken digiSource_
 
int firstLayer_
 
bool ifHCAL_
 
bool ifNose_
 
int layers_
 
MonitorElementMeanDigiOccupancy_Minus_
 
MonitorElementMeanDigiOccupancy_Plus_
 
std::string nameDetector_
 
std::map< int, int > OccupancyMap_minus_
 
std::map< int, int > OccupancyMap_plus_
 
int SampleIndx_
 
std::vector< MonitorElement * > TOA_
 
std::vector< MonitorElement * > TOT_
 
int verbosity_
 

Additional Inherited Members

- Public Types inherited from DQMEDAnalyzer
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- Public Types inherited from edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >
typedef CacheContexts< T... > CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T... > HasAbility
 
typedef CacheTypes::LuminosityBlockCache LuminosityBlockCache
 
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 
- Protected Member Functions inherited from DQMEDAnalyzer
uint64_t meId () const
 
- Protected Attributes inherited from DQMEDAnalyzer
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 
unsigned int streamId_
 

Detailed Description

Definition at line 54 of file HGCalDigiValidation.cc.

Constructor & Destructor Documentation

◆ HGCalDigiValidation()

HGCalDigiValidation::HGCalDigiValidation ( const edm::ParameterSet iConfig)
explicit

Definition at line 103 of file HGCalDigiValidation.cc.

104  : nameDetector_(iConfig.getParameter<std::string>("DetectorName")),
105  ifNose_(iConfig.getParameter<bool>("ifNose")),
106  ifHCAL_(iConfig.getParameter<bool>("ifHCAL")),
107  verbosity_(iConfig.getUntrackedParameter<int>("Verbosity", 0)),
108  SampleIndx_(iConfig.getUntrackedParameter<int>("SampleIndx", 0)),
109  firstLayer_(1) {
110  auto temp = iConfig.getParameter<edm::InputTag>("DigiSource");
111  if ((nameDetector_ == "HGCalEESensitive") || (nameDetector_ == "HGCalHESiliconSensitive") ||
112  (nameDetector_ == "HGCalHEScintillatorSensitive") || (nameDetector_ == "HGCalHFNoseSensitive")) {
113  digiSource_ = consumes<HGCalDigiCollection>(temp);
114  } else if (nameDetector_ == "HCal") {
115  if (ifHCAL_)
116  digiSource_ = consumes<QIE11DigiCollection>(temp);
117  else
118  digiSource_ = consumes<HGCalDigiCollection>(temp);
119  } else {
120  throw cms::Exception("BadHGCDigiSource") << "HGCal DetectorName given as " << nameDetector_ << " must be: "
121  << "\"HGCalEESensitive\", \"HGCalHESiliconSensitive\", "
122  << "\"HGCalHEScintillatorSensitive\", \"HGCalHFNoseSensitive\", "
123  << "or \"HCal\"!";
124  }
125 }

References digiSource_, Exception, edm::ParameterSet::getParameter(), ifHCAL_, nameDetector_, and groupFilesInBlocks::temp.

◆ ~HGCalDigiValidation()

HGCalDigiValidation::~HGCalDigiValidation ( )
inlineoverride

Definition at line 68 of file HGCalDigiValidation.cc.

68 {}

Member Function Documentation

◆ analyze()

void HGCalDigiValidation::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
overridevirtual

Reimplemented from DQMEDAnalyzer.

Definition at line 138 of file HGCalDigiValidation.cc.

138  {
139  OccupancyMap_plus_.clear();
140  OccupancyMap_minus_.clear();
141 
142  const HGCalGeometry* geom0(nullptr);
143  const CaloGeometry* geom1(nullptr);
144  int geomType(0);
145  if (nameDetector_ == "HCal") {
147  iSetup.get<CaloGeometryRecord>().get(geom);
148  if (!geom.isValid())
149  edm::LogVerbatim("HGCalValidation") << "HGCalDigiValidation: Cannot get "
150  << "valid Geometry Object for " << nameDetector_;
151  geom1 = geom.product();
152  } else {
155  if (!geom.isValid())
156  edm::LogVerbatim("HGCalValidation") << "HGCalDigiValidation: Cannot get "
157  << "valid Geometry Object for " << nameDetector_;
158  geom0 = geom.product();
159  HGCalGeometryMode::GeometryMode mode = geom0->topology().geomMode();
161  geomType = 1;
163  geomType = 2;
164  if (nameDetector_ == "HGCalHFNoseSensitive")
165  geomType = 3;
166  }
167 
168  unsigned int ntot(0), nused(0);
169  if ((nameDetector_ == "HGCalEESensitive") || (nameDetector_ == "HGCalHFNoseSensitive")) {
170  //HGCalEE
171  edm::Handle<HGCalDigiCollection> theHGCEEDigiContainers;
172  iEvent.getByToken(digiSource_, theHGCEEDigiContainers);
173  if (theHGCEEDigiContainers.isValid()) {
174  if (verbosity_ > 0)
175  edm::LogVerbatim("HGCalValidation")
176  << nameDetector_ << " with " << theHGCEEDigiContainers->size() << " element(s)";
177  for (const auto& it : *(theHGCEEDigiContainers.product())) {
178  ntot++;
179  nused++;
180  DetId detId = it.id();
181  int layer = ((geomType == 0) ? HGCalDetId(detId).layer()
182  : (geomType == 1) ? HGCSiliconDetId(detId).layer() : HFNoseDetId(detId).layer());
183  const HGCSample& hgcSample = it.sample(SampleIndx_);
184  uint16_t gain = hgcSample.toa();
185  uint16_t adc = hgcSample.data();
186  double charge = gain;
187  bool totmode = hgcSample.mode();
188  bool zerothreshold = hgcSample.threshold();
189  digiValidation(detId, geom0, layer, adc, charge, totmode, zerothreshold);
190  }
191  fillDigiInfo();
192  } else {
193  edm::LogVerbatim("HGCalValidation") << "DigiCollection handle does not "
194  << "exist for " << nameDetector_;
195  }
196  } else if ((nameDetector_ == "HGCalHESiliconSensitive") || (nameDetector_ == "HGCalHEScintillatorSensitive")) {
197  //HGCalHE
198  edm::Handle<HGCalDigiCollection> theHGCHEDigiContainers;
199  iEvent.getByToken(digiSource_, theHGCHEDigiContainers);
200  if (theHGCHEDigiContainers.isValid()) {
201  if (verbosity_ > 0)
202  edm::LogVerbatim("HGCalValidation")
203  << nameDetector_ << " with " << theHGCHEDigiContainers->size() << " element(s)";
204  for (const auto& it : *(theHGCHEDigiContainers.product())) {
205  ntot++;
206  nused++;
207  DetId detId = it.id();
208  int layer = ((geomType == 0)
209  ? HGCalDetId(detId).layer()
210  : ((geomType == 1) ? HGCSiliconDetId(detId).layer() : HGCScintillatorDetId(detId).layer()));
211  const HGCSample& hgcSample = it.sample(SampleIndx_);
212  uint16_t gain = hgcSample.toa();
213  uint16_t adc = hgcSample.data();
214  double charge = gain;
215  bool totmode = hgcSample.mode();
216  bool zerothreshold = hgcSample.threshold();
217  digiValidation(detId, geom0, layer, adc, charge, totmode, zerothreshold);
218  }
219  fillDigiInfo();
220  } else {
221  edm::LogVerbatim("HGCalValidation") << "DigiCollection handle does not "
222  << "exist for " << nameDetector_;
223  }
224  } else if ((nameDetector_ == "HCal") && (!ifHCAL_)) {
225  //HGCalBH
226  edm::Handle<HGCalDigiCollection> theHGCBHDigiContainers;
227  iEvent.getByToken(digiSource_, theHGCBHDigiContainers);
228  if (theHGCBHDigiContainers.isValid()) {
229  if (verbosity_ > 0)
230  edm::LogVerbatim("HGCalValidation")
231  << nameDetector_ << " with " << theHGCBHDigiContainers->size() << " element(s)";
232  for (const auto& it : *(theHGCBHDigiContainers.product())) {
233  ntot++;
234  nused++;
235  HcalDetId detId = it.id();
236  int layer = detId.depth();
237  const HGCSample& hgcSample = it.sample(SampleIndx_);
238  uint16_t gain = hgcSample.toa();
239  uint16_t adc = hgcSample.data();
240  double charge = gain;
241  bool totmode = hgcSample.mode();
242  bool zerothreshold = hgcSample.threshold();
243  digiValidation(detId, geom1, layer, adc, charge, totmode, zerothreshold);
244  }
245  fillDigiInfo();
246  } else {
247  edm::LogWarning("HGCalValidation") << "DigiCollection handle does not "
248  << "exist for " << nameDetector_;
249  }
250  } else if (nameDetector_ == "HCal") {
251  //HE
252  edm::Handle<QIE11DigiCollection> theHEDigiContainers;
253  iEvent.getByToken(digiSource_, theHEDigiContainers);
254  if (theHEDigiContainers.isValid()) {
255  if (verbosity_ > 0)
256  edm::LogVerbatim("HGCalValidation")
257  << nameDetector_ << " with " << theHEDigiContainers->size() << " element(s)";
258  edm::ESHandle<HcalDbService> conditions;
259  iSetup.get<HcalDbRecord>().get(conditions);
260 
261  for (const auto& it : *(theHEDigiContainers.product())) {
262  QIE11DataFrame df(it);
263  HcalDetId detId = (df.id());
264  ntot++;
265  if (detId.subdet() == HcalEndcap) {
266  nused++;
268  const HcalQIECoder* channelCoder = conditions->getHcalCoder(detId);
269  const HcalQIEShape* shape = conditions->getHcalShape(channelCoder);
270  HcalCoderDb coder(*channelCoder, *shape);
271  CaloSamples tool;
272  coder.adc2fC(df, tool);
273  int layer = detId.depth();
274  uint16_t adc = (df)[SampleIndx_].adc();
275  int capid = (df)[SampleIndx_].capid();
276  double charge = (tool[SampleIndx_] - calibrations.pedestal(capid));
277  bool totmode = false;
278  bool zerothreshold = false;
279  digiValidation(detId, geom1, layer, adc, charge, totmode, zerothreshold);
280  }
281  }
282  fillDigiInfo();
283  } else {
284  edm::LogWarning("HGCalValidation") << "DigiCollection handle does not "
285  << "exist for " << nameDetector_;
286  }
287  } else {
288  edm::LogWarning("HGCalValidation") << "invalid detector name !! " << nameDetector_;
289  }
290  if (verbosity_ > 0)
291  edm::LogVerbatim("HGCalValidation") << "Event " << iEvent.id().event() << " with " << ntot << " total and " << nused
292  << " used digis";
293 }

References ecalMGPA::adc(), HcalCoderDb::adc2fC(), AlignmentProducer_cff::calibrations, ALCARECOTkAlJpsiMuMu_cff::charge, HGCSample::data(), HcalDetId::depth(), digiSource_, digiValidation(), fillDigiInfo(), PedestalClient_cfi::gain, relativeConstraints::geom, motionPolicyChamber::geom0, geometryDiff::geom1, edm::EventSetup::get(), get, HcalDbService::getHcalCalibrations(), HcalDbService::getHcalCoder(), HcalDbService::getHcalShape(), HcalEndcap, HGCalGeometryMode::Hexagon8, HGCalGeometryMode::Hexagon8Full, QIE11DataFrame::id(), iEvent, ifHCAL_, edm::HandleBase::isValid(), HGCalDetId::layer(), HGCScintillatorDetId::layer(), HFNoseDetId::layer(), HGCSiliconDetId::layer(), HGCSample::mode(), ALCARECOPromptCalibProdSiPixelAli0T_cff::mode, nameDetector_, OccupancyMap_minus_, OccupancyMap_plus_, edm::Handle< T >::product(), SampleIndx_, edm::SortedCollection< T, SORT >::size(), edm::DataFrameContainer::size(), HcalDetId::subdet(), HGCSample::threshold(), HGCSample::toa(), HGCalGeometryMode::Trapezoid, and verbosity_.

◆ bookHistograms()

void HGCalDigiValidation::bookHistograms ( DQMStore::IBooker iB,
edm::Run const &  ,
edm::EventSetup const &   
)
overridevirtual

Implements DQMEDAnalyzer.

Definition at line 381 of file HGCalDigiValidation.cc.

381  {
382  iB.setCurrentFolder("HGCAL/HGCalDigisV/" + nameDetector_);
383 
384  std::ostringstream histoname;
385  for (int il = 0; il < layers_; ++il) {
386  int ilayer = firstLayer_ + il;
387  auto istr1 = std::to_string(ilayer);
388  while (istr1.size() < 2) {
389  istr1.insert(0, "0");
390  }
391  histoname.str("");
392  histoname << "TOA_"
393  << "layer_" << istr1;
394  TOA_.push_back(iB.book1D(histoname.str().c_str(), "toa_", 1024, 0, 1024));
395 
396  histoname.str("");
397  histoname << "ADC_"
398  << "layer_" << istr1;
399  ADC_.push_back(iB.book1D(histoname.str().c_str(), "ADCDigiOccupancy", 1024, 0, 1024));
400 
401  histoname.str("");
402  histoname << "TOT_"
403  << "layer_" << istr1;
404  TOT_.push_back(iB.book1D(histoname.str().c_str(), "TOTDigiOccupancy", 4096, 0, 4096));
405 
406  histoname.str("");
407  histoname << "DigiOccupancy_XY_"
408  << "layer_" << istr1;
409  DigiOccupancy_XY_.push_back(iB.book2D(histoname.str().c_str(), "DigiOccupancy", 50, -500, 500, 50, -500, 500));
410 
411  histoname.str("");
412  histoname << "DigiOccupancy_Plus_"
413  << "layer_" << istr1;
414  DigiOccupancy_Plus_.push_back(iB.book1D(histoname.str().c_str(), "DigiOccupancy +z", 100, 0, 1000));
415  histoname.str("");
416  histoname << "DigiOccupancy_Minus_"
417  << "layer_" << istr1;
418  DigiOccupancy_Minus_.push_back(iB.book1D(histoname.str().c_str(), "DigiOccupancy -z", 100, 0, 1000));
419  }
420 
421  histoname.str("");
422  histoname << "SUMOfDigiOccupancy_Plus";
423  MeanDigiOccupancy_Plus_ = iB.book1D(histoname.str().c_str(), "SUMOfDigiOccupancy_Plus", layers_, -0.5, layers_ - 0.5);
424  histoname.str("");
425  histoname << "SUMOfRecDigiOccupancy_Minus";
427  iB.book1D(histoname.str().c_str(), "SUMOfDigiOccupancy_Minus", layers_, -0.5, layers_ - 0.5);
428 }

References ADC_, dqm::implementation::IBooker::book1D(), dqm::implementation::IBooker::book2D(), DigiOccupancy_Minus_, DigiOccupancy_Plus_, DigiOccupancy_XY_, firstLayer_, layers_, MeanDigiOccupancy_Minus_, MeanDigiOccupancy_Plus_, nameDetector_, dqm::implementation::NavigatorBase::setCurrentFolder(), TOA_, and TOT_.

◆ digiValidation()

template<class T1 , class T2 >
void HGCalDigiValidation::digiValidation ( const T1 &  detId,
const T2 *  geom,
int  layer,
uint16_t  adc,
double  charge,
bool  mode,
bool  threshold 
)
private

Definition at line 296 of file HGCalDigiValidation.cc.

297  {
298  if (verbosity_ > 1)
299  edm::LogVerbatim("HGCalValidation") << std::hex << detId.rawId() << std::dec << " " << detId.rawId();
300  DetId id1 = DetId(detId.rawId());
301  const GlobalPoint& global1 = geom->getPosition(id1);
302 
303  if (verbosity_ > 1)
304  edm::LogVerbatim("HGCalValidation") << " adc = " << adc << " toa = " << charge;
305 
306  digiInfo hinfo;
307  hinfo.x = global1.x();
308  hinfo.y = global1.y();
309  hinfo.z = global1.z();
310  hinfo.adc = adc;
311  hinfo.charge = charge;
312  hinfo.layer = layer - firstLayer_;
313  hinfo.mode = mode;
314  hinfo.threshold = threshold;
315 
316  if (verbosity_ > 1)
317  edm::LogVerbatim("HGCalValidation") << "gx = " << hinfo.x << " gy = " << hinfo.y << " gz = " << hinfo.z;
318 
319  if (global1.eta() > 0)
321  else
323 
325 }

References ecalMGPA::adc(), ALCARECOTkAlJpsiMuMu_cff::charge, TauDecayModes::dec, fillDigiInfo(), fillOccupancyMap(), firstLayer_, relativeConstraints::geom, globals_cff::id1, ALCARECOPromptCalibProdSiPixelAli0T_cff::mode, OccupancyMap_minus_, OccupancyMap_plus_, remoteMonitoring_LED_IterMethod_cfg::threshold, and verbosity_.

Referenced by analyze().

◆ dqmBeginRun()

void HGCalDigiValidation::dqmBeginRun ( const edm::Run ,
const edm::EventSetup iSetup 
)
overridevirtual

Reimplemented from DQMEDAnalyzer.

Definition at line 361 of file HGCalDigiValidation.cc.

361  {
362  if (nameDetector_ == "HCal") {
364  iSetup.get<HcalRecNumberingRecord>().get(pHRNDC);
365  const HcalDDDRecConstants* hcons = &(*pHRNDC);
366  layers_ = hcons->getMaxDepth(1);
367  } else {
369  iSetup.get<IdealGeometryRecord>().get(nameDetector_, pHGDC);
370  const HGCalDDDConstants& hgcons_ = (*pHGDC);
371  layers_ = hgcons_.layers(true);
372  firstLayer_ = hgcons_.firstLayer();
373  }
374 
375  if (verbosity_ > 0)
376  edm::LogVerbatim("HGCalValidation") << "current DQM directory: "
377  << "HGCAL/HGCalDigisV/" << nameDetector_ << " layer = " << layers_
378  << " with the first one at " << firstLayer_;
379 }

References HGCalDDDConstants::firstLayer(), firstLayer_, edm::EventSetup::get(), get, HcalDDDRecConstants::getMaxDepth(), HGCalDDDConstants::layers(), layers_, nameDetector_, and verbosity_.

◆ fillDescriptions()

void HGCalDigiValidation::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 127 of file HGCalDigiValidation.cc.

127  {
129  desc.add<std::string>("DetectorName", "HGCalEESensitive");
130  desc.add<edm::InputTag>("DigiSource", edm::InputTag("hgcalDigis", "EE"));
131  desc.add<bool>("ifNose", false);
132  desc.add<bool>("ifHCAL", false);
133  desc.addUntracked<int>("Verbosity", 0);
134  desc.addUntracked<int>("SampleIndx", 2); // central bx
135  descriptions.add("hgcalDigiValidationEEDefault", desc);
136 }

References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::add(), edm::ParameterSetDescription::addUntracked(), HLT_2018_cff::InputTag, and AlCaHLTBitMon_QueryRunRegistry::string.

◆ fillDigiInfo() [1/2]

void HGCalDigiValidation::fillDigiInfo ( )
private

Definition at line 348 of file HGCalDigiValidation.cc.

348  {
349  for (const auto& itr : OccupancyMap_plus_) {
350  int layer = itr.first;
351  int occupancy = itr.second;
352  DigiOccupancy_Plus_.at(layer)->Fill(occupancy);
353  }
354  for (const auto& itr : OccupancyMap_minus_) {
355  int layer = itr.first;
356  int occupancy = itr.second;
357  DigiOccupancy_Minus_.at(layer)->Fill(occupancy);
358  }
359 }

References DigiOccupancy_Minus_, DigiOccupancy_Plus_, OccupancyMap_minus_, and OccupancyMap_plus_.

Referenced by analyze(), and digiValidation().

◆ fillDigiInfo() [2/2]

void HGCalDigiValidation::fillDigiInfo ( digiInfo hinfo)
private

Definition at line 334 of file HGCalDigiValidation.cc.

334  {
335  int ilayer = hinfo.layer;
336  TOA_.at(ilayer)->Fill(hinfo.charge);
337 
338  if (hinfo.mode) {
339  TOT_.at(ilayer)->Fill(hinfo.adc);
340  }
341 
342  if (!hinfo.mode && hinfo.threshold) {
343  ADC_.at(ilayer)->Fill(hinfo.adc);
344  DigiOccupancy_XY_.at(ilayer)->Fill(hinfo.x, hinfo.y);
345  }
346 }

References ADC_, DigiOccupancy_XY_, TOA_, and TOT_.

◆ fillOccupancyMap()

void HGCalDigiValidation::fillOccupancyMap ( std::map< int, int > &  OccupancyMap,
int  layer 
)
private

Definition at line 327 of file HGCalDigiValidation.cc.

327  {
328  if (OccupancyMap.find(layer) != OccupancyMap.end())
329  OccupancyMap[layer]++;
330  else
331  OccupancyMap[layer] = 1;
332 }

Referenced by digiValidation().

Member Data Documentation

◆ ADC_

std::vector<MonitorElement*> HGCalDigiValidation::ADC_
private

Definition at line 95 of file HGCalDigiValidation.cc.

Referenced by bookHistograms(), and fillDigiInfo().

◆ DigiOccupancy_Minus_

std::vector<MonitorElement*> HGCalDigiValidation::DigiOccupancy_Minus_
private

Definition at line 98 of file HGCalDigiValidation.cc.

Referenced by bookHistograms(), and fillDigiInfo().

◆ DigiOccupancy_Plus_

std::vector<MonitorElement*> HGCalDigiValidation::DigiOccupancy_Plus_
private

Definition at line 97 of file HGCalDigiValidation.cc.

Referenced by bookHistograms(), and fillDigiInfo().

◆ DigiOccupancy_XY_

std::vector<MonitorElement*> HGCalDigiValidation::DigiOccupancy_XY_
private

Definition at line 94 of file HGCalDigiValidation.cc.

Referenced by bookHistograms(), and fillDigiInfo().

◆ digiSource_

edm::EDGetToken HGCalDigiValidation::digiSource_
private

Definition at line 85 of file HGCalDigiValidation.cc.

Referenced by analyze(), and HGCalDigiValidation().

◆ firstLayer_

int HGCalDigiValidation::firstLayer_
private

Definition at line 88 of file HGCalDigiValidation.cc.

Referenced by bookHistograms(), digiValidation(), and dqmBeginRun().

◆ ifHCAL_

bool HGCalDigiValidation::ifHCAL_
private

Definition at line 86 of file HGCalDigiValidation.cc.

Referenced by analyze(), and HGCalDigiValidation().

◆ ifNose_

bool HGCalDigiValidation::ifNose_
private

Definition at line 86 of file HGCalDigiValidation.cc.

◆ layers_

int HGCalDigiValidation::layers_
private

Definition at line 88 of file HGCalDigiValidation.cc.

Referenced by bookHistograms(), and dqmBeginRun().

◆ MeanDigiOccupancy_Minus_

MonitorElement* HGCalDigiValidation::MeanDigiOccupancy_Minus_
private

Definition at line 100 of file HGCalDigiValidation.cc.

Referenced by bookHistograms().

◆ MeanDigiOccupancy_Plus_

MonitorElement* HGCalDigiValidation::MeanDigiOccupancy_Plus_
private

Definition at line 99 of file HGCalDigiValidation.cc.

Referenced by bookHistograms().

◆ nameDetector_

std::string HGCalDigiValidation::nameDetector_
private

Definition at line 84 of file HGCalDigiValidation.cc.

Referenced by analyze(), bookHistograms(), dqmBeginRun(), and HGCalDigiValidation().

◆ OccupancyMap_minus_

std::map<int, int> HGCalDigiValidation::OccupancyMap_minus_
private

Definition at line 91 of file HGCalDigiValidation.cc.

Referenced by analyze(), digiValidation(), and fillDigiInfo().

◆ OccupancyMap_plus_

std::map<int, int> HGCalDigiValidation::OccupancyMap_plus_
private

Definition at line 90 of file HGCalDigiValidation.cc.

Referenced by analyze(), digiValidation(), and fillDigiInfo().

◆ SampleIndx_

int HGCalDigiValidation::SampleIndx_
private

Definition at line 87 of file HGCalDigiValidation.cc.

Referenced by analyze().

◆ TOA_

std::vector<MonitorElement*> HGCalDigiValidation::TOA_
private

Definition at line 93 of file HGCalDigiValidation.cc.

Referenced by bookHistograms(), and fillDigiInfo().

◆ TOT_

std::vector<MonitorElement*> HGCalDigiValidation::TOT_
private

Definition at line 96 of file HGCalDigiValidation.cc.

Referenced by bookHistograms(), and fillDigiInfo().

◆ verbosity_

int HGCalDigiValidation::verbosity_
private

Definition at line 87 of file HGCalDigiValidation.cc.

Referenced by analyze(), digiValidation(), and dqmBeginRun().

ecalMGPA::adc
constexpr int adc(sample_type sample)
get the ADC sample (12 bits)
Definition: EcalMGPASample.h:11
edm::ParameterSetDescription::add
ParameterDescriptionBase * add(U const &iLabel, T const &value)
Definition: ParameterSetDescription.h:95
HGCalDigiValidation::MeanDigiOccupancy_Plus_
MonitorElement * MeanDigiOccupancy_Plus_
Definition: HGCalDigiValidation.cc:99
edm::Handle::product
T const * product() const
Definition: Handle.h:70
HGCalDigiValidation::SampleIndx_
int SampleIndx_
Definition: HGCalDigiValidation.cc:87
HGCalDigiValidation::layers_
int layers_
Definition: HGCalDigiValidation.cc:88
HGCalDDDConstants::firstLayer
int firstLayer() const
Definition: HGCalDDDConstants.h:51
CaloGeometryRecord
Definition: CaloGeometryRecord.h:30
HGCalDigiValidation::DigiOccupancy_Minus_
std::vector< MonitorElement * > DigiOccupancy_Minus_
Definition: HGCalDigiValidation.cc:98
HFNoseDetId::layer
int layer() const
get the layer #
Definition: HFNoseDetId.h:56
globals_cff.id1
id1
Definition: globals_cff.py:32
ALCARECOPromptCalibProdSiPixelAli0T_cff.mode
mode
Definition: ALCARECOPromptCalibProdSiPixelAli0T_cff.py:96
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
HGCalDigiValidation::ifHCAL_
bool ifHCAL_
Definition: HGCalDigiValidation.cc:86
HGCalDigiValidation::MeanDigiOccupancy_Minus_
MonitorElement * MeanDigiOccupancy_Minus_
Definition: HGCalDigiValidation.cc:100
edm::SortedCollection::size
size_type size() const
Definition: SortedCollection.h:215
AlignmentProducer_cff.calibrations
calibrations
Definition: AlignmentProducer_cff.py:59
HcalDetId::depth
constexpr int depth() const
get the tower depth
Definition: HcalDetId.h:164
hinfo
Definition: TauTagValidation.h:55
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
HFNoseDetId
Definition: HFNoseDetId.h:22
edm::Handle
Definition: AssociativeIterator.h:50
groupFilesInBlocks.temp
list temp
Definition: groupFilesInBlocks.py:142
HGCalDetId::layer
int layer() const
get the layer #
Definition: HGCalDetId.h:46
HGCSiliconDetId
Definition: HGCSiliconDetId.h:22
HcalDbService::getHcalShape
const HcalQIEShape * getHcalShape(const HcalGenericDetId &fId) const
Definition: HcalDbService.cc:326
HGCalDDDConstants
Definition: HGCalDDDConstants.h:25
HcalDbService::getHcalCalibrations
const HcalCalibrations & getHcalCalibrations(const HcalGenericDetId &fId) const
Definition: HcalDbService.cc:65
HGCScintillatorDetId::layer
int layer() const
get the layer #
Definition: HGCScintillatorDetId.h:47
HcalDbService::getHcalCoder
const HcalQIECoder * getHcalCoder(const HcalGenericDetId &fId) const
Definition: HcalDbService.cc:319
DetId
Definition: DetId.h:17
CaloGeometry
Definition: CaloGeometry.h:21
HGCalGeometryMode::Trapezoid
Definition: HGCalGeometryMode.h:25
edm::EventSetup::get
T get() const
Definition: EventSetup.h:73
edm::ConfigurationDescriptions::add
void add(std::string const &label, ParameterSetDescription const &psetDescription)
Definition: ConfigurationDescriptions.cc:57
HGCalDigiValidation::nameDetector_
std::string nameDetector_
Definition: HGCalDigiValidation.cc:84
edm::ESHandle< CaloGeometry >
relativeConstraints.geom
geom
Definition: relativeConstraints.py:72
HGCalDigiValidation::OccupancyMap_minus_
std::map< int, int > OccupancyMap_minus_
Definition: HGCalDigiValidation.cc:91
HGCalDigiValidation::digiValidation
void digiValidation(const T1 &detId, const T2 *geom, int layer, uint16_t adc, double charge, bool mode, bool threshold)
Definition: HGCalDigiValidation.cc:296
HGCSample
wrapper for a data word
Definition: HGCSample.h:13
Point3DBase< float, GlobalTag >
HcalCalibrations
Definition: HcalCalibrations.h:9
HGCalGeometry
Definition: HGCalGeometry.h:30
HcalRecNumberingRecord
Definition: HcalRecNumberingRecord.h:23
HGCalDigiValidation::verbosity_
int verbosity_
Definition: HGCalDigiValidation.cc:87
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
edm::LogWarning
Definition: MessageLogger.h:141
ALCARECOTkAlJpsiMuMu_cff.charge
charge
Definition: ALCARECOTkAlJpsiMuMu_cff.py:47
edm::ParameterSetDescription::addUntracked
ParameterDescriptionBase * addUntracked(U const &iLabel, T const &value)
Definition: ParameterSetDescription.h:100
HLT_2018_cff.InputTag
InputTag
Definition: HLT_2018_cff.py:79016
HGCalGeometryMode::Hexagon8Full
Definition: HGCalGeometryMode.h:25
HGCalDDDConstants::layers
unsigned int layers(bool reco) const
Definition: HGCalDDDConstants.cc:558
HcalDetId::subdet
constexpr HcalSubdetector subdet() const
get the subdetector
Definition: HcalDetId.h:138
HGCalGeometryMode::GeometryMode
GeometryMode
Definition: HGCalGeometryMode.h:25
HGCalDigiValidation::fillDigiInfo
void fillDigiInfo()
Definition: HGCalDigiValidation.cc:348
HcalDetId
Definition: HcalDetId.h:12
iEvent
int iEvent
Definition: GenABIO.cc:224
HGCalDigiValidation::ADC_
std::vector< MonitorElement * > ADC_
Definition: HGCalDigiValidation.cc:95
edm::LogVerbatim
Definition: MessageLogger.h:297
HGCalDigiValidation::DigiOccupancy_Plus_
std::vector< MonitorElement * > DigiOccupancy_Plus_
Definition: HGCalDigiValidation.cc:97
CaloSamples
Definition: CaloSamples.h:14
itr
std::vector< std::pair< float, float > >::iterator itr
Definition: HGCDigitizer.cc:28
get
#define get
motionPolicyChamber.geom0
geom0
Definition: motionPolicyChamber.py:83
HGCalDigiValidation::DigiOccupancy_XY_
std::vector< MonitorElement * > DigiOccupancy_XY_
Definition: HGCalDigiValidation.cc:94
HcalQIECoder
Definition: HcalQIECoder.h:20
HGCSample::toa
uint16_t toa() const
Definition: HGCSample.h:69
HGCalDigiValidation::TOT_
std::vector< MonitorElement * > TOT_
Definition: HGCalDigiValidation.cc:96
PedestalClient_cfi.gain
gain
Definition: PedestalClient_cfi.py:37
HGCSample::mode
bool mode() const
Definition: HGCSample.h:67
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
HGCalDetId
Definition: HGCalDetId.h:8
HcalEndcap
Definition: HcalAssistant.h:34
HGCScintillatorDetId
Definition: HGCScintillatorDetId.h:21
HGCalDigiValidation::ifNose_
bool ifNose_
Definition: HGCalDigiValidation.cc:86
QIE11DataFrame
Definition: QIE11DataFrame.h:11
Exception
Definition: hltDiff.cc:246
HGCalDigiValidation::fillOccupancyMap
void fillOccupancyMap(std::map< int, int > &OccupancyMap, int layer)
Definition: HGCalDigiValidation.cc:327
geometryDiff.geom1
geom1
Definition: geometryDiff.py:30
HcalQIEShape
Definition: HcalQIEShape.h:17
HGCalGeometryMode::Hexagon8
Definition: HGCalGeometryMode.h:25
HcalCoderDb
Definition: HcalCoderDb.h:15
HGCalDigiValidation::TOA_
std::vector< MonitorElement * > TOA_
Definition: HGCalDigiValidation.cc:93
HcalDDDRecConstants::getMaxDepth
int getMaxDepth(const int &type) const
Definition: HcalDDDRecConstants.h:88
HcalDDDRecConstants
Definition: HcalDDDRecConstants.h:23
HGCSample::threshold
bool threshold() const
Definition: HGCSample.h:66
HGCSample::data
uint16_t data() const
Definition: HGCSample.h:70
HGCalDigiValidation::digiSource_
edm::EDGetToken digiSource_
Definition: HGCalDigiValidation.cc:85
HcalDbRecord
Definition: HcalDbRecord.h:30
HGCalDigiValidation::OccupancyMap_plus_
std::map< int, int > OccupancyMap_plus_
Definition: HGCalDigiValidation.cc:90
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
remoteMonitoring_LED_IterMethod_cfg.threshold
threshold
Definition: remoteMonitoring_LED_IterMethod_cfg.py:426
TauDecayModes.dec
dec
Definition: TauDecayModes.py:143
HGCalDigiValidation::firstLayer_
int firstLayer_
Definition: HGCalDigiValidation.cc:88
edm::InputTag
Definition: InputTag.h:15
IdealGeometryRecord
Definition: IdealGeometryRecord.h:27
edm::DataFrameContainer::size
size_type size() const
Definition: DataFrameContainer.h:162
HGCSiliconDetId::layer
int layer() const
get the layer #
Definition: HGCSiliconDetId.h:57