CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes
SiStripMonitorPedestals Class Reference

#include <SiStripMonitorPedestals.h>

Inheritance diagram for SiStripMonitorPedestals:
DQMOneEDAnalyzer<> edm::one::EDProducer< edm::EndRunProducer, edm::one::WatchRuns, edm::Accumulator, Args... > edm::one::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Classes

struct  ModMEs
 

Public Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
void dqmEndRun (edm::Run const &run, edm::EventSetup const &eSetup) override
 
void endJob () override
 
 SiStripMonitorPedestals (const edm::ParameterSet &)
 
 ~SiStripMonitorPedestals () override
 
- Public Member Functions inherited from DQMOneEDAnalyzer<>
void accumulate (edm::Event const &event, edm::EventSetup const &setup) override
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
 DQMOneEDAnalyzer ()
 
void endRun (edm::Run const &, edm::EventSetup const &) final
 
void endRunProduce (edm::Run &run, edm::EventSetup const &setup) final
 
virtual bool getCanSaveByLumi ()
 
- Public Member Functions inherited from edm::one::EDProducer< edm::EndRunProducer, edm::one::WatchRuns, edm::Accumulator, Args... >
 EDProducer ()=default
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
- Public Member Functions inherited from edm::one::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDProducerBase () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
std::vector< bool > const & recordProvenanceList () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
TypeLabelList const & typeLabelList () const
 used by the fwk to register the list of products of this module More...
 
 ~ProducerBase () noexcept(false) 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 &&)=default
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
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::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Member Functions

void createMEs (DQMStore::IBooker &, edm::EventSetup const &eSetup)
 
void fillCondDBMEs (edm::EventSetup const &eSetup)
 
void resetMEs (uint32_t idet)
 

Private Attributes

bool analyzed
 
ApvAnalysisFactoryapvFactory_
 
edm::ParameterSet conf_
 
edm::ESHandle< SiStripDetCablingdetcabling
 
edm::EDGetTokenT< edm::DetSetVector< SiStripRawDigi > > digiToken_
 
DQMStoredqmStore_
 
bool firstEvent
 
unsigned long long m_cacheID_
 
int16_t nEvInit_
 
int16_t nEvTot_
 
int16_t nEvUpdate_
 
int nIteration_
 
int NumCMstripsInGroup_
 
std::string outPutFileName
 
std::map< uint32_t, ModMEsPedMEs
 
edm::ParameterSet pedsPSet_
 
std::string runTypeFlag_
 
int16_t signalCutPeds_
 
int theEventInitNumber_
 
int theEventIterNumber_
 

Static Private Attributes

static const std::string RunMode1 = "ConDBPlotsOnly"
 
static const std::string RunMode2 = "CalculatedPlotsOnly"
 
static const std::string RunMode3 = "AllPlots"
 

Additional Inherited Members

- Public Types inherited from DQMOneEDAnalyzer<>
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- Public Types inherited from edm::one::EDProducerBase
typedef EDProducerBase ModuleType
 
- Public Types inherited from edm::ProducerBase
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex > >
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::one::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Member Functions inherited from DQMOneEDAnalyzer<>
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &)
 
- Protected Member Functions inherited from edm::ProducerBase
template<class ProductType >
BranchAliasSetterT< ProductType > produces ()
 declare what type of product will make and with which optional label More...
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces ()
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces ()
 
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<BranchType B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<Transition B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
ProducesCollector producesCollector ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< B > consumes (edm::InputTag tag) noexcept
 
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<Transition Tr = Transition::Event>
constexpr auto esConsumes () noexcept
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag) noexcept
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
- Protected Attributes inherited from DQMOneEDAnalyzer<>
edm::EDPutTokenT< DQMTokenrunToken_
 

Detailed Description

Description: <one line="" class="" summary>="">

Usage: <usage>

Definition at line 54 of file SiStripMonitorPedestals.h.

Constructor & Destructor Documentation

◆ SiStripMonitorPedestals()

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

Definition at line 53 of file SiStripMonitorPedestals.cc.

55  conf_(iConfig),
56  pedsPSet_(iConfig.getParameter<edm::ParameterSet>("PedestalsPSet")),
57  analyzed(false),
58  firstEvent(true),
59  signalCutPeds_(4),
60  nEvTot_(0),
61  nIteration_(0),
62  apvFactory_(nullptr),
63  m_cacheID_(0) {
64  // retrieve producer name of input StripDigiCollection
66  std::string digiType = "VirginRaw";
67  digiToken_ = consumes<edm::DetSetVector<SiStripRawDigi>>(edm::InputTag(digiProducer, digiType));
68 
69  edm::LogInfo("SiStripMonitorPedestals") << "SiStripMonitorPedestals "
70  << " Constructing....... ";
71 
72  theEventInitNumber_ = pedsPSet_.getParameter<int>("NumberOfEventsForInit");
73  theEventIterNumber_ = pedsPSet_.getParameter<int>("NumberOfEventsForIteration");
74  NumCMstripsInGroup_ = pedsPSet_.getParameter<int>("NumCMstripsInGroup");
75  runTypeFlag_ = conf_.getParameter<std::string>("RunTypeFlag");
76 }

References conf_, EcnaPython_AdcPeg12_S1_10_R170298_1_0_150_Dee0::digiProducer, digiToken_, edm::ParameterSet::getParameter(), HLT_FULL_cff::InputTag, NumCMstripsInGroup_, pedsPSet_, runTypeFlag_, AlCaHLTBitMon_QueryRunRegistry::string, theEventInitNumber_, and theEventIterNumber_.

◆ ~SiStripMonitorPedestals()

SiStripMonitorPedestals::~SiStripMonitorPedestals ( )
override

Definition at line 80 of file SiStripMonitorPedestals.cc.

80  {
81  edm::LogInfo("SiStripMonitorPedestals") << "SiStripMonitorPedestals "
82  << " Destructing...... ";
83  if (apvFactory_) {
84  delete apvFactory_;
85  }
86 }

References apvFactory_.

Member Function Documentation

◆ analyze()

void SiStripMonitorPedestals::analyze ( const edm::Event iEvent,
const edm::EventSetup eSetup 
)
overridevirtual

Reimplemented from DQMOneEDAnalyzer<>.

Definition at line 273 of file SiStripMonitorPedestals.cc.

273  {
274  edm::LogInfo("SiStripMonitorPedestals")
275  << "SiStripMonitorPedestals::analyze: Run " << iEvent.id().run() << " Event " << iEvent.id().event();
276 
278 
280  return;
281 
282  // Increment # of Events
283  nEvTot_++;
284 
285  // get DigiCollection object from Event
287  // you have a collection as there are all the digis for the event for every
288  // detector
289  iEvent.getByToken(digiToken_, digi_collection);
290 
291  // Increase the number of iterations ...
293  nIteration_++;
294 
295  // loop over all MEs
296  for (std::map<uint32_t, ModMEs>::const_iterator i = PedMEs.begin(); i != PedMEs.end(); i++) {
297  uint32_t detid = i->first;
298  ModMEs local_modmes = i->second;
299  // get iterators for digis belonging to one DetId, it is an iterator, i.e.
300  // one element of the vector
301  std::vector<edm::DetSet<SiStripRawDigi>>::const_iterator digis = digi_collection->find(detid);
302  if (digis == digi_collection->end() || digis->data.empty() || digis->data.size() > 768) {
303  if (digis == digi_collection->end()) {
304  edm::LogError("SiStripMonitorPedestals") << " SiStripMonitorPedestals::analyze: Event " << nEvTot_ << " DetId "
305  << detid << " at the end of Digi Collection!!!";
306  } else {
307  edm::LogError("SiStripMonitorPedestals") << " [SiStripMonitorPedestals::analyze: Event " << nEvTot_ << " DetId "
308  << detid << " # of Digis " << digis->data.size();
309  }
310  std::vector<const FedChannelConnection *> fed_conns = detcabling->getConnections(detid);
311  bool firstchannel(true);
312  for (unsigned int k = 0; k < fed_conns.size(); k++) {
313  if (fed_conns[k] && fed_conns[k]->isConnected()) {
314  if (firstchannel) {
315  edm::LogError("SiStripMonitorPedestals") << " SiStripMonitorPedestals::analyze: Fed Id "
316  << fed_conns[k]->fedId() << " Channel " << fed_conns[k]->fedCh();
317  firstchannel = false;
318  } else
319  edm::LogError("SiStripMonitorPedestals")
320  << " SiStripMonitorPedestals::analyze: Channel " << fed_conns[k]->fedCh();
321  }
322  }
323  std::cout << std::endl;
324  continue;
325  }
326 
327  if (digis->data.empty()) {
328  edm::LogError("MonitorDigi_tmp") << "[SiStripRawDigiToRaw::createFedBuffers] Zero digis found!";
329  }
330  uint32_t id = detid;
331  // cout <<"Data size "<<digis->data.size()<<endl;
332  apvFactory_->update(id, (*digis));
333 
335  if (local_modmes.CMDistribution != nullptr) {
336  std::vector<float> tmp;
337  tmp.clear();
339  // unpacking the info looking at the right topology
340  int numberCMBlocks = int(128. / NumCMstripsInGroup_);
341  int ibin = 0;
342  for (std::vector<float>::const_iterator iped = tmp.begin(); iped != tmp.end(); iped++) {
343  int iapv = int(ibin / numberCMBlocks);
344  (local_modmes.CMDistribution)->Fill(iapv, static_cast<float>(*iped));
345  ibin++;
346  }
347  }
348  if (local_modmes.CMSlopeDistribution != nullptr) {
349  std::vector<float> tmp;
350  tmp.clear();
351  int iapv = 0;
353  for (std::vector<float>::const_iterator it = tmp.begin(); it != tmp.end(); it++) {
354  (local_modmes.CMSlopeDistribution)->Fill(iapv, static_cast<float>(*it));
355  iapv++;
356  }
357  }
358  }
359 
360  // asking for the status
362  std::vector<float> tmp;
363  tmp.clear();
365  if (local_modmes.PedsPerStrip != nullptr) {
366  int numberOfApvs = int(tmp.size() / 128.);
367  for (int i = 0; i < numberOfApvs; i++) {
368  std::vector<float> myPedPerApv;
369  apvFactory_->getPedestal(id, i, myPedPerApv);
370  float avarage = 0;
371  avarage = std::accumulate(myPedPerApv.begin(), myPedPerApv.end(), avarage);
372  avarage = avarage / 128.;
373  (local_modmes.PedsEvolution)->setBinContent(i + 1, nIteration_, avarage);
374  }
375  int ibin = 0;
376 
377  for (std::vector<float>::const_iterator iped = tmp.begin(); iped != tmp.end(); iped++) {
378  int napv = int(ibin / 128.);
379  ibin++;
380  float last_value = (local_modmes.PedsPerStrip)->getBinContent(ibin);
381  if (last_value != 0.) {
382  (local_modmes.PedsPerStrip)->setBinContent(ibin, (static_cast<float>(*iped) + last_value) / 2.);
383  } else {
384  (local_modmes.PedsPerStrip)->setBinContent(ibin, static_cast<float>(*iped));
385  }
386  (local_modmes.PedsDistribution)->Fill(napv, static_cast<float>(*iped));
387  }
388  }
389 
390  if (local_modmes.CMSubNoisePerStrip != nullptr && local_modmes.CMSubNoiseProfile != nullptr) {
391  tmp.clear();
392  apvFactory_->getNoise(id, tmp);
393  int ibin = 0;
394  for (std::vector<float>::const_iterator iped = tmp.begin(); iped != tmp.end(); iped++) {
395  ibin++;
396  (local_modmes.CMSubNoiseProfile)->Fill(static_cast<double>(ibin * 1.), static_cast<float>(*iped));
397 
398  float last_value = (local_modmes.CMSubNoisePerStrip)->getBinContent(ibin);
399  if (last_value != 0.) {
400  (local_modmes.CMSubNoisePerStrip)->setBinContent(ibin, (static_cast<float>(*iped) + last_value) / 2.);
401  } else {
402  (local_modmes.CMSubNoisePerStrip)->setBinContent(ibin, static_cast<float>(*iped));
403  }
404  }
405  }
406 
407  if (local_modmes.RawNoisePerStrip != nullptr && local_modmes.RawNoiseProfile != nullptr) {
408  tmp.clear();
410  int ibin = 0;
411  for (std::vector<float>::const_iterator iped = tmp.begin(); iped != tmp.end(); iped++) {
412  ibin++;
413  (local_modmes.RawNoiseProfile)->Fill(static_cast<double>(ibin * 1.), static_cast<float>(*iped));
414  float last_value = (local_modmes.RawNoisePerStrip)->getBinContent(ibin);
415  if (last_value != 0.) {
416  (local_modmes.RawNoisePerStrip)->setBinContent(ibin, (static_cast<float>(*iped) + last_value) / 2.);
417  } else {
418  (local_modmes.RawNoisePerStrip)->setBinContent(ibin, static_cast<float>(*iped));
419  }
420  }
421  }
422 
423  if (local_modmes.NoisyStrips != nullptr) {
425  apvFactory_->getMask(id, temp);
426  int ibin = 0;
427  for (TkApvMask::MaskType::const_iterator iped = temp.begin(); iped != temp.end(); iped++) {
428  ibin++;
429 
430  if (nIteration_ < 2) {
431  if (*iped == 1)
432  (local_modmes.NoisyStrips)->Fill(ibin, 3.);
433  if (*iped == 2)
434  (local_modmes.NoisyStrips)->Fill(ibin, 4.);
435  if (*iped == 0)
436  (local_modmes.NoisyStrips)->Fill(ibin, 0.);
437  } else {
438  (local_modmes.NoisyStrips)->Fill(ibin, static_cast<float>(*iped));
439  (local_modmes.NoisyStripDistribution)->Fill(static_cast<float>(*iped));
440  }
441  }
442  }
443  }
444  }
445  if (firstEvent)
446  firstEvent = false;
447 }

References apvFactory_, SiStripMonitorPedestals::ModMEs::CMDistribution, SiStripMonitorPedestals::ModMEs::CMSlopeDistribution, SiStripMonitorPedestals::ModMEs::CMSubNoisePerStrip, SiStripMonitorPedestals::ModMEs::CMSubNoiseProfile, gather_cfg::cout, detcabling, digiToken_, HcalObjRepresent::Fill(), firstEvent, edm::EventSetup::get(), get, ApvAnalysisFactory::getCommonMode(), ApvAnalysisFactory::getCommonModeSlope(), SiStripDetCabling::getConnections(), ApvAnalysisFactory::getMask(), ApvAnalysisFactory::getNoise(), ApvAnalysisFactory::getPedestal(), ApvAnalysisFactory::getRawNoise(), mps_fire::i, iEvent, createfilelist::int, dqmdumpme::k, nEvTot_, nIteration_, SiStripMonitorPedestals::ModMEs::NoisyStripDistribution, SiStripMonitorPedestals::ModMEs::NoisyStrips, NumCMstripsInGroup_, PedMEs, SiStripMonitorPedestals::ModMEs::PedsDistribution, SiStripMonitorPedestals::ModMEs::PedsEvolution, SiStripMonitorPedestals::ModMEs::PedsPerStrip, SiStripMonitorPedestals::ModMEs::RawNoisePerStrip, SiStripMonitorPedestals::ModMEs::RawNoiseProfile, RunMode2, RunMode3, runTypeFlag_, groupFilesInBlocks::temp, theEventInitNumber_, theEventIterNumber_, createJobs::tmp, and ApvAnalysisFactory::update().

◆ bookHistograms()

void SiStripMonitorPedestals::bookHistograms ( DQMStore::IBooker ibooker,
edm::Run const &  run,
edm::EventSetup const &  eSetup 
)
overridevirtual

Implements DQMOneEDAnalyzer<>.

Definition at line 91 of file SiStripMonitorPedestals.cc.

93  {
94  unsigned long long cacheID = eSetup.get<SiStripDetCablingRcd>().cacheIdentifier();
95  if (m_cacheID_ != cacheID) {
96  m_cacheID_ = cacheID;
97  eSetup.get<SiStripDetCablingRcd>().get(detcabling);
98  edm::LogInfo("SiStripMonitorPedestals") << "SiStripMonitorPedestals::bookHistograms: "
99  << " Creating MEs for new Cabling ";
100  createMEs(ibooker, eSetup);
101  }
102 
104  fillCondDBMEs(eSetup);
105 }

References createMEs(), detcabling, fillCondDBMEs(), edm::EventSetup::get(), get, m_cacheID_, RunMode1, RunMode3, and runTypeFlag_.

◆ createMEs()

void SiStripMonitorPedestals::createMEs ( DQMStore::IBooker ibooker,
edm::EventSetup const &  eSetup 
)
private

Definition at line 110 of file SiStripMonitorPedestals.cc.

110  {
111  // Retrieve tracker topology from geometry
112  edm::ESHandle<TrackerTopology> tTopoHandle;
113  es.get<TrackerTopologyRcd>().get(tTopoHandle);
114  const TrackerTopology *const tTopo = tTopoHandle.product();
115 
116  std::vector<uint32_t> SelectedDetIds;
117 
118  // ApvAnalysisFactory
119  if (apvFactory_) {
120  delete apvFactory_;
121  }
123 
124  detcabling->addActiveDetectorsRawIds(SelectedDetIds);
125 
126  // use SistripHistoId for producing histogram id (and title)
127  SiStripHistoId hidmanager;
128  // create SiStripFolderOrganizer
129  SiStripFolderOrganizer folder_organizer;
130 
131  edm::LogInfo("SiStripMonitorPedestals") << "SiStripMonitorPedestals::createMEs: "
132  << "Number of Detector Present in cabling " << SelectedDetIds.size();
133 
134  for (std::vector<uint32_t>::const_iterator idetid = SelectedDetIds.begin(), iEnd = SelectedDetIds.end();
135  idetid != iEnd;
136  ++idetid) {
137  uint32_t detid = *idetid;
138 
139  // Check consistency in DetId
140  if (detid == 0 || detid == 0xFFFFFFFF) {
141  edm::LogError("SiStripMonitorPedestals") << "SiStripMonitorPedestals::createMEs: "
142  << "Wrong DetId !!!!!! " << detid << " Neglecting !!!!!! ";
143  continue;
144  }
145 
146  unsigned int apv_pairs = detcabling->nApvPairs(detid);
147 
148  // Check consistency in Apv numbers
149  if (apv_pairs < 1 || apv_pairs > 3) {
150  edm::LogError("SiStripMonitorPedestals") << "SiStripMonitorPedestals::createMEs: Wrong APV Pairs => detId "
151  << detid << " APV pairs " << apv_pairs << " Neglecting !!!!!! ";
152  continue;
153  }
154  unsigned int napvs = apv_pairs * 2;
155  unsigned int nStrip = napvs * 128;
156 
157  bool newDetId = apvFactory_->instantiateApvs(detid, napvs);
158 
159  if (newDetId) {
160  ModMEs local_modmes;
161  local_modmes.PedsPerStrip = nullptr;
162  local_modmes.PedsDistribution = nullptr;
163  local_modmes.PedsEvolution = nullptr;
164  local_modmes.CMSubNoisePerStrip = nullptr;
165  local_modmes.RawNoisePerStrip = nullptr;
166  local_modmes.CMSubNoiseProfile = nullptr;
167  local_modmes.RawNoiseProfile = nullptr;
168  local_modmes.NoisyStrips = nullptr;
169  local_modmes.NoisyStripDistribution = nullptr;
170  local_modmes.CMDistribution = nullptr;
171  local_modmes.CMSlopeDistribution = nullptr;
172  local_modmes.PedsPerStripDB = nullptr;
173  local_modmes.CMSubNoisePerStripDB = nullptr;
174  local_modmes.BadStripsDB = nullptr;
175 
176  std::string hid;
177  // set appropriate folder using SiStripFolderOrganizer
178  folder_organizer.setDetectorFolder(detid, tTopo); // pass the detid to this method
179 
180  // if the deid already exists in the map, then reset MEs otherwise create
181  // them
182  resetMEs(detid);
183 
185  // Pedestals histos
186  hid = hidmanager.createHistoId("PedestalFromCondDB", "det", detid);
187  local_modmes.PedsPerStripDB =
188  ibooker.book1D(hid, hid, nStrip, 0.5, nStrip + 0.5); // to modify the size binning
189  (local_modmes.PedsPerStripDB)->setAxisTitle("Pedestal from CondDB(ADC) vs Strip Number", 1);
190 
191  hid = hidmanager.createHistoId("NoiseFromCondDB", "det", detid);
192  local_modmes.CMSubNoisePerStripDB = ibooker.book1D(hid, hid, nStrip, 0.5, nStrip + 0.5);
193  (local_modmes.CMSubNoisePerStripDB)->setAxisTitle("CMSubNoise from CondDB(ADC) vs Strip Number", 1);
194 
195  hid = hidmanager.createHistoId("BadStripFlagCondDB", "det", detid);
196  local_modmes.BadStripsDB = ibooker.book2D(hid, hid, nStrip, 0.5, nStrip + 0.5, 6, -0.5, 5.5);
197  (local_modmes.BadStripsDB)->setAxisTitle("Strip Flag from CondDB(ADC) vs Strip Number", 1);
198  }
200  // Pedestals histos
201  hid = hidmanager.createHistoId("PedsPerStrip", "det", detid);
202  local_modmes.PedsPerStrip = ibooker.book1D(hid, hid, nStrip, 0.5, nStrip + 0.5); // to modify the size binning
203  (local_modmes.PedsPerStrip)->setAxisTitle("Pedestal (ADC) vs Strip Number ", 1);
204 
205  hid = hidmanager.createHistoId("PedsDistribution", "det", detid);
206  local_modmes.PedsDistribution = ibooker.book2D(hid,
207  hid,
208  napvs,
209  -0.5,
210  napvs - 0.5,
211  300,
212  200,
213  500); // to modify the size binning
214  (local_modmes.PedsDistribution)->setAxisTitle("Apv Number", 1);
215  (local_modmes.PedsDistribution)->setAxisTitle("Mean Pedestal Value (ADC)", 2);
216 
217  hid = hidmanager.createHistoId("PedsEvolution", "det", detid);
218  local_modmes.PedsEvolution = ibooker.book2D(hid,
219  hid,
220  napvs,
221  -0.5,
222  napvs - 0.5,
223  50,
224  0.,
225  50.); // to modify the size binning
226  (local_modmes.PedsEvolution)->setAxisTitle("Apv Number", 1);
227  (local_modmes.PedsEvolution)->setAxisTitle("Iteration Number", 2);
228 
229  // Noise histos
230  hid = hidmanager.createHistoId("CMSubNoisePerStrip", "det", detid);
231  local_modmes.CMSubNoisePerStrip = ibooker.book1D(hid, hid, nStrip, 0.5, nStrip + 0.5);
232  (local_modmes.CMSubNoisePerStrip)->setAxisTitle("CMSubNoise (ADC) vs Strip Number", 1);
233 
234  hid = hidmanager.createHistoId("RawNoisePerStrip", "det", detid);
235  local_modmes.RawNoisePerStrip = ibooker.book1D(hid, hid, nStrip, 0.5, nStrip + 0.5);
236  (local_modmes.RawNoisePerStrip)->setAxisTitle("RawNoise(ADC) vs Strip Number", 1);
237 
238  hid = hidmanager.createHistoId("CMSubNoiseProfile", "det", detid);
239  local_modmes.CMSubNoiseProfile = ibooker.bookProfile(hid, hid, nStrip, 0.5, nStrip + 0.5, 100, 0., 100.);
240  (local_modmes.CMSubNoiseProfile)->setAxisTitle("Mean of CMSubNoise (ADC) vs Strip Number", 1);
241 
242  hid = hidmanager.createHistoId("RawNoiseProfile", "det", detid);
243  local_modmes.RawNoiseProfile = ibooker.bookProfile(hid, hid, nStrip, 0.5, nStrip + 0.5, 100, 0., 100.);
244  (local_modmes.RawNoiseProfile)->setAxisTitle("Mean of RawNoise (ADC) vs Strip Number", 1);
245 
246  hid = hidmanager.createHistoId("NoisyStrips", "det", detid);
247  local_modmes.NoisyStrips = ibooker.book2D(hid, hid, nStrip, 0.5, nStrip + 0.5, 6, -0.5, 5.5);
248  (local_modmes.NoisyStrips)->setAxisTitle("Strip Number", 1);
249  (local_modmes.NoisyStrips)->setAxisTitle("Flag Value", 2);
250 
251  hid = hidmanager.createHistoId("NoisyStripDistribution", "det", detid);
252  local_modmes.NoisyStripDistribution = ibooker.book1D(hid, hid, 11, -0.5, 10.5);
253  (local_modmes.NoisyStripDistribution)->setAxisTitle("Flag Value", 1);
254 
255  // Common Mode histos
256  hid = hidmanager.createHistoId("CMDistribution", "det", detid);
257  local_modmes.CMDistribution = ibooker.book2D(hid, hid, napvs, -0.5, napvs - 0.5, 150, -15., 15.);
258  (local_modmes.CMDistribution)->setAxisTitle("Common Mode (ADC) vs APV Number", 1);
259 
260  hid = hidmanager.createHistoId("CMSlopeDistribution", "det", detid);
261  local_modmes.CMSlopeDistribution = ibooker.book2D(hid, hid, napvs, -0.5, napvs - 0.5, 100, -0.05, 0.05);
262  (local_modmes.CMSlopeDistribution)->setAxisTitle("Common Mode Slope vs APV Number", 1);
263  }
264  // data from CondDB
265  // append to PedMEs
266  PedMEs.insert(std::make_pair(detid, local_modmes));
267  } // newDetId
268  }
269  edm::LogInfo("SiStripMonitorPedestals")
270  << "SiStripMonitorPedestals::createMEs: Number of DETS used " << PedMEs.size();
271 }

References SiStripDetCabling::addActiveDetectorsRawIds(), apvFactory_, SiStripMonitorPedestals::ModMEs::BadStripsDB, dqm::implementation::IBooker::book1D(), dqm::implementation::IBooker::book2D(), dqm::implementation::IBooker::bookProfile(), SiStripMonitorPedestals::ModMEs::CMDistribution, SiStripMonitorPedestals::ModMEs::CMSlopeDistribution, SiStripMonitorPedestals::ModMEs::CMSubNoisePerStrip, SiStripMonitorPedestals::ModMEs::CMSubNoisePerStripDB, SiStripMonitorPedestals::ModMEs::CMSubNoiseProfile, SiStripHistoId::createHistoId(), detcabling, edm::EventSetup::get(), get, ApvAnalysisFactory::instantiateApvs(), SiStripDetCabling::nApvPairs(), SiStripMonitorPedestals::ModMEs::NoisyStripDistribution, SiStripMonitorPedestals::ModMEs::NoisyStrips, PedMEs, SiStripMonitorPedestals::ModMEs::PedsDistribution, SiStripMonitorPedestals::ModMEs::PedsEvolution, SiStripMonitorPedestals::ModMEs::PedsPerStrip, SiStripMonitorPedestals::ModMEs::PedsPerStripDB, pedsPSet_, edm::ESHandle< T >::product(), SiStripMonitorPedestals::ModMEs::RawNoisePerStrip, SiStripMonitorPedestals::ModMEs::RawNoiseProfile, resetMEs(), RunMode1, RunMode2, RunMode3, runTypeFlag_, SiStripFolderOrganizer::setDetectorFolder(), and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by bookHistograms().

◆ dqmEndRun()

void SiStripMonitorPedestals::dqmEndRun ( edm::Run const &  run,
edm::EventSetup const &  eSetup 
)
overridevirtual

Reimplemented from DQMOneEDAnalyzer<>.

Definition at line 451 of file SiStripMonitorPedestals.cc.

451  {
452  bool outputMEsInRootFile = conf_.getParameter<bool>("OutputMEsInRootFile");
453  if (outputMEsInRootFile) {
456  }
457 }

References conf_, dqmStore_, edm::ParameterSet::getParameter(), outPutFileName, dqm::implementation::DQMStore::save(), and AlCaHLTBitMon_QueryRunRegistry::string.

◆ endJob()

void SiStripMonitorPedestals::endJob ( void  )
overridevirtual

Reimplemented from edm::one::EDProducerBase.

Definition at line 461 of file SiStripMonitorPedestals.cc.

461  {
462  edm::LogInfo("SiStripMonitorPedestals") << "SiStripMonitorPedestals::EndJob: "
463  << " Finishing!! ";
464 }

◆ fillCondDBMEs()

void SiStripMonitorPedestals::fillCondDBMEs ( edm::EventSetup const &  eSetup)
private

Definition at line 495 of file SiStripMonitorPedestals.cc.

495  {
496  // get Pedestal and Noise ES handle
497  edm::ESHandle<SiStripPedestals> pedestalHandle;
498  edm::ESHandle<SiStripNoises> noiseHandle;
499  edm::ESHandle<SiStripQuality> qualityHandle;
500 
501  eSetup.get<SiStripPedestalsRcd>().get(pedestalHandle);
502  eSetup.get<SiStripNoisesRcd>().get(noiseHandle);
503  std::string quality_label = conf_.getParameter<std::string>("StripQualityLabel");
504  eSetup.get<SiStripQualityRcd>().get(quality_label, qualityHandle);
505 
506  for (std::map<uint32_t, ModMEs>::const_iterator i = PedMEs.begin(); i != PedMEs.end(); i++) {
507  uint32_t detid = i->first;
508  ModMEs local_modmes = i->second;
509  edm::LogInfo("SiStripMonitorPedestals") << " SiStripMonitorPedestals::analyze: "
510  << " Get Ped/Noise/Bad Strips from CondDb for DetId " << detid;
511  int nStrip = detcabling->nApvPairs(detid) * 256;
512  // Get range of pedestal and noise for the detid
513  SiStripNoises::Range noiseRange = noiseHandle->getRange(detid);
514  SiStripPedestals::Range pedRange = pedestalHandle->getRange(detid);
515  SiStripQuality::Range qualityRange = qualityHandle->getRange(detid);
516 
517  for (int istrip = 0; istrip < nStrip; ++istrip) {
518  try {
519  // Fill Pedestals
520  (local_modmes.PedsPerStripDB)->Fill(istrip + 1, pedestalHandle->getPed(istrip, pedRange));
521  } catch (cms::Exception &e) {
522  edm::LogError("SiStripMonitorPedestals") << "[SiStripMonitorPedestals::analyze] cms::Exception accessing "
523  "SiStripPedestalsService_.getPedestal("
524  << detid << "," << istrip << ") : "
525  << " " << e.what();
526  }
527  try {
528  // Fill Noises
529  (local_modmes.CMSubNoisePerStripDB)->Fill(istrip + 1, noiseHandle->getNoise(istrip, noiseRange));
530 
531  } catch (cms::Exception &e) {
532  edm::LogError("SiStripMonitorPedestals") << "[SiStripMonitorPedestals::analyze] cms::Exception accessing "
533  "SiStripNoiseService_.getNoise("
534  << detid << "," << istrip << ") : "
535  << " " << e.what();
536  }
537  try {
538  // Fill BadStripsNoise
539  (local_modmes.BadStripsDB)->Fill(istrip + 1, qualityHandle->IsStripBad(qualityRange, istrip) ? 1. : 0.);
540 
541  } catch (cms::Exception &e) {
542  edm::LogError("SiStripMonitorPedestals") << "[SiStripMonitorPedestals::analyze] cms::Exception accessing "
543  "SiStripNoiseService_.getDisable("
544  << detid << "," << istrip << ") : "
545  << " " << e.what();
546  }
547  } // close istrip loop
548  }
549 }

References SiStripMonitorPedestals::ModMEs::BadStripsDB, SiStripMonitorPedestals::ModMEs::CMSubNoisePerStripDB, conf_, detcabling, MillePedeFileConverter_cfg::e, HcalObjRepresent::Fill(), edm::EventSetup::get(), get, SiStripNoises::getNoise(), edm::ParameterSet::getParameter(), SiStripPedestals::getPed(), SiStripNoises::getRange(), SiStripPedestals::getRange(), SiStripBadStrip::getRange(), mps_fire::i, SiStripQuality::IsStripBad(), SiStripDetCabling::nApvPairs(), PedMEs, SiStripMonitorPedestals::ModMEs::PedsPerStripDB, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by bookHistograms().

◆ resetMEs()

void SiStripMonitorPedestals::resetMEs ( uint32_t  idet)
private

Definition at line 468 of file SiStripMonitorPedestals.cc.

468  {
469  std::map<uint32_t, ModMEs>::iterator pos = PedMEs.find(idet);
470  if (pos != PedMEs.end()) {
471  ModMEs mod_me = pos->second;
472 
474  mod_me.PedsPerStripDB->Reset();
475  mod_me.CMSubNoisePerStripDB->Reset();
476  mod_me.BadStripsDB->Reset();
477  }
479  mod_me.PedsPerStrip->Reset();
480  mod_me.PedsDistribution->Reset();
481  mod_me.PedsEvolution->Reset();
482  mod_me.CMSubNoisePerStrip->Reset();
483  mod_me.RawNoisePerStrip->Reset();
484  mod_me.CMSubNoiseProfile->Reset();
485  mod_me.RawNoiseProfile->Reset();
486  mod_me.NoisyStrips->Reset();
487  mod_me.CMDistribution->Reset();
488  mod_me.CMSlopeDistribution->Reset();
489  }
490  }
491 }

References SiStripMonitorPedestals::ModMEs::BadStripsDB, SiStripMonitorPedestals::ModMEs::CMDistribution, SiStripMonitorPedestals::ModMEs::CMSlopeDistribution, SiStripMonitorPedestals::ModMEs::CMSubNoisePerStrip, SiStripMonitorPedestals::ModMEs::CMSubNoisePerStripDB, SiStripMonitorPedestals::ModMEs::CMSubNoiseProfile, SiStripMonitorPedestals::ModMEs::NoisyStrips, PedMEs, SiStripMonitorPedestals::ModMEs::PedsDistribution, SiStripMonitorPedestals::ModMEs::PedsEvolution, SiStripMonitorPedestals::ModMEs::PedsPerStrip, SiStripMonitorPedestals::ModMEs::PedsPerStripDB, SiStripMonitorPedestals::ModMEs::RawNoisePerStrip, SiStripMonitorPedestals::ModMEs::RawNoiseProfile, dqm::impl::MonitorElement::Reset(), RunMode1, RunMode2, RunMode3, and runTypeFlag_.

Referenced by createMEs().

Member Data Documentation

◆ analyzed

bool SiStripMonitorPedestals::analyzed
private

Definition at line 97 of file SiStripMonitorPedestals.h.

◆ apvFactory_

ApvAnalysisFactory* SiStripMonitorPedestals::apvFactory_
private

Definition at line 106 of file SiStripMonitorPedestals.h.

Referenced by analyze(), createMEs(), and ~SiStripMonitorPedestals().

◆ conf_

edm::ParameterSet SiStripMonitorPedestals::conf_
private

Definition at line 93 of file SiStripMonitorPedestals.h.

Referenced by dqmEndRun(), fillCondDBMEs(), and SiStripMonitorPedestals().

◆ detcabling

edm::ESHandle<SiStripDetCabling> SiStripMonitorPedestals::detcabling
private

Definition at line 95 of file SiStripMonitorPedestals.h.

Referenced by analyze(), bookHistograms(), createMEs(), and fillCondDBMEs().

◆ digiToken_

edm::EDGetTokenT<edm::DetSetVector<SiStripRawDigi> > SiStripMonitorPedestals::digiToken_
private

Definition at line 65 of file SiStripMonitorPedestals.h.

Referenced by analyze(), and SiStripMonitorPedestals().

◆ dqmStore_

DQMStore* SiStripMonitorPedestals::dqmStore_
private

Definition at line 92 of file SiStripMonitorPedestals.h.

Referenced by dqmEndRun().

◆ firstEvent

bool SiStripMonitorPedestals::firstEvent
private

◆ m_cacheID_

unsigned long long SiStripMonitorPedestals::m_cacheID_
private

Definition at line 112 of file SiStripMonitorPedestals.h.

Referenced by bookHistograms().

◆ nEvInit_

int16_t SiStripMonitorPedestals::nEvInit_
private

Definition at line 104 of file SiStripMonitorPedestals.h.

◆ nEvTot_

int16_t SiStripMonitorPedestals::nEvTot_
private

Definition at line 103 of file SiStripMonitorPedestals.h.

Referenced by analyze().

◆ nEvUpdate_

int16_t SiStripMonitorPedestals::nEvUpdate_
private

Definition at line 101 of file SiStripMonitorPedestals.h.

◆ nIteration_

int SiStripMonitorPedestals::nIteration_
private

Definition at line 105 of file SiStripMonitorPedestals.h.

Referenced by analyze().

◆ NumCMstripsInGroup_

int SiStripMonitorPedestals::NumCMstripsInGroup_
private

Definition at line 109 of file SiStripMonitorPedestals.h.

Referenced by analyze(), and SiStripMonitorPedestals().

◆ outPutFileName

std::string SiStripMonitorPedestals::outPutFileName
private

Definition at line 111 of file SiStripMonitorPedestals.h.

Referenced by dqmEndRun().

◆ PedMEs

std::map<uint32_t, ModMEs> SiStripMonitorPedestals::PedMEs
private

Definition at line 94 of file SiStripMonitorPedestals.h.

Referenced by analyze(), createMEs(), fillCondDBMEs(), and resetMEs().

◆ pedsPSet_

edm::ParameterSet SiStripMonitorPedestals::pedsPSet_
private

Definition at line 96 of file SiStripMonitorPedestals.h.

Referenced by createMEs(), and SiStripMonitorPedestals().

◆ RunMode1

const std::string SiStripMonitorPedestals::RunMode1 = "ConDBPlotsOnly"
staticprivate

Definition at line 114 of file SiStripMonitorPedestals.h.

Referenced by bookHistograms(), createMEs(), and resetMEs().

◆ RunMode2

const std::string SiStripMonitorPedestals::RunMode2 = "CalculatedPlotsOnly"
staticprivate

Definition at line 115 of file SiStripMonitorPedestals.h.

Referenced by analyze(), createMEs(), and resetMEs().

◆ RunMode3

const std::string SiStripMonitorPedestals::RunMode3 = "AllPlots"
staticprivate

Definition at line 116 of file SiStripMonitorPedestals.h.

Referenced by analyze(), bookHistograms(), createMEs(), and resetMEs().

◆ runTypeFlag_

std::string SiStripMonitorPedestals::runTypeFlag_
private

◆ signalCutPeds_

int16_t SiStripMonitorPedestals::signalCutPeds_
private

Definition at line 102 of file SiStripMonitorPedestals.h.

◆ theEventInitNumber_

int SiStripMonitorPedestals::theEventInitNumber_
private

Definition at line 107 of file SiStripMonitorPedestals.h.

Referenced by analyze(), and SiStripMonitorPedestals().

◆ theEventIterNumber_

int SiStripMonitorPedestals::theEventIterNumber_
private

Definition at line 108 of file SiStripMonitorPedestals.h.

Referenced by analyze(), and SiStripMonitorPedestals().

edm::ESHandle::product
T const * product() const
Definition: ESHandle.h:86
SiStripDetCabling::addActiveDetectorsRawIds
void addActiveDetectorsRawIds(std::vector< uint32_t > &) const
Definition: SiStripDetCabling.cc:134
ApvAnalysisFactory::getNoise
void getNoise(uint32_t det_id, int apvNumber, ApvAnalysis::PedestalType &noise)
Definition: ApvAnalysisFactory.cc:230
mps_fire.i
i
Definition: mps_fire.py:428
SiStripBadStrip::getRange
const Range getRange(const uint32_t detID) const
Definition: SiStripBadStrip.cc:27
SiStripMonitorPedestals::resetMEs
void resetMEs(uint32_t idet)
Definition: SiStripMonitorPedestals.cc:468
TkApvMask::MaskType
std::vector< StripMaskType > MaskType
Definition: TkApvMask.h:15
SiStripPedestals::Range
std::pair< ContainerIterator, ContainerIterator > Range
Definition: SiStripPedestals.h:51
EcnaPython_AdcPeg12_S1_10_R170298_1_0_150_Dee0.digiProducer
digiProducer
Definition: EcnaPython_AdcPeg12_S1_10_R170298_1_0_150_Dee0.py:50
TrackerTopology
Definition: TrackerTopology.h:16
gather_cfg.cout
cout
Definition: gather_cfg.py:144
pos
Definition: PixelAliasList.h:18
HLT_FULL_cff.InputTag
InputTag
Definition: HLT_FULL_cff.py:89287
SiStripMonitorPedestals::RunMode1
static const std::string RunMode1
Definition: SiStripMonitorPedestals.h:114
SiStripMonitorPedestals::firstEvent
bool firstEvent
Definition: SiStripMonitorPedestals.h:98
SiStripMonitorPedestals::pedsPSet_
edm::ParameterSet pedsPSet_
Definition: SiStripMonitorPedestals.h:96
SiStripMonitorPedestals::digiToken_
edm::EDGetTokenT< edm::DetSetVector< SiStripRawDigi > > digiToken_
Definition: SiStripMonitorPedestals.h:65
SiStripMonitorPedestals::signalCutPeds_
int16_t signalCutPeds_
Definition: SiStripMonitorPedestals.h:102
edm::LogInfo
Log< level::Info, false > LogInfo
Definition: MessageLogger.h:125
SiStripNoises::getRange
const Range getRange(const uint32_t detID) const
Definition: SiStripNoises.cc:34
SiStripMonitorPedestals::runTypeFlag_
std::string runTypeFlag_
Definition: SiStripMonitorPedestals.h:110
createJobs.tmp
tmp
align.sh
Definition: createJobs.py:716
ApvAnalysisFactory::getPedestal
void getPedestal(uint32_t det_id, int apvNumber, ApvAnalysis::PedestalType &peds)
Definition: ApvAnalysisFactory.cc:198
edm::Handle
Definition: AssociativeIterator.h:50
groupFilesInBlocks.temp
list temp
Definition: groupFilesInBlocks.py:142
SiStripPedestalsRcd
Definition: SiStripCondDataRecords.h:43
SiStripNoisesRcd
Definition: SiStripCondDataRecords.h:40
SiStripMonitorPedestals::theEventIterNumber_
int theEventIterNumber_
Definition: SiStripMonitorPedestals.h:108
Utilities.operator
operator
Definition: Utilities.py:24
ApvAnalysisFactory::instantiateApvs
bool instantiateApvs(uint32_t det_id, int numberOfApvs)
Definition: ApvAnalysisFactory.cc:57
ApvAnalysisFactory::update
void update(uint32_t det_id, const edm::DetSet< SiStripRawDigi > &in)
Definition: ApvAnalysisFactory.cc:171
SiStripBadStrip::Range
std::pair< ContainerIterator, ContainerIterator > Range
Definition: SiStripBadStrip.h:53
edm::EventSetup::get
T get() const
Definition: EventSetup.h:80
SiStripNoises::Range
std::pair< ContainerIterator, ContainerIterator > Range
Definition: SiStripNoises.h:47
ApvAnalysisFactory
Definition: ApvAnalysisFactory.h:22
SiStripQualityRcd
Definition: SiStripDependentRecords.h:55
edm::ESHandle< TrackerTopology >
dqm::implementation::IBooker::bookProfile
MonitorElement * bookProfile(TString const &name, TString const &title, int nchX, double lowX, double highX, int, double lowY, double highY, char const *option="s", FUNC onbooking=NOOP())
Definition: DQMStore.h:322
ApvAnalysisFactory::getMask
void getMask(uint32_t det_id, TkApvMask::MaskType &tmp)
Definition: ApvAnalysisFactory.cc:324
dqmdumpme.k
k
Definition: dqmdumpme.py:60
SiStripDetCablingRcd
Definition: SiStripDependentRecords.h:19
dqm::implementation::DQMStore::save
DQM_DEPRECATED void save(std::string const &filename, std::string const &path="")
Definition: DQMStore.cc:761
SiStripMonitorPedestals::dqmStore_
DQMStore * dqmStore_
Definition: SiStripMonitorPedestals.h:92
SiStripMonitorPedestals::apvFactory_
ApvAnalysisFactory * apvFactory_
Definition: SiStripMonitorPedestals.h:106
SiStripQuality::IsStripBad
bool IsStripBad(const uint32_t &detid, const short &strip) const
Definition: SiStripQuality.cc:623
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
SiStripPedestals::getRange
const Range getRange(const uint32_t &detID) const
Definition: SiStripPedestals.cc:28
edm::ParameterSet
Definition: ParameterSet.h:47
SiStripMonitorPedestals::NumCMstripsInGroup_
int NumCMstripsInGroup_
Definition: SiStripMonitorPedestals.h:109
SiStripMonitorPedestals::nIteration_
int nIteration_
Definition: SiStripMonitorPedestals.h:105
SiStripMonitorPedestals::analyzed
bool analyzed
Definition: SiStripMonitorPedestals.h:97
ApvAnalysisFactory::getRawNoise
void getRawNoise(uint32_t det_id, int apvNumber, ApvAnalysis::PedestalType &noise)
Definition: ApvAnalysisFactory.cc:265
edm::Service
Definition: Service.h:30
createfilelist.int
int
Definition: createfilelist.py:10
iEvent
int iEvent
Definition: GenABIO.cc:224
SiStripMonitorPedestals::conf_
edm::ParameterSet conf_
Definition: SiStripMonitorPedestals.h:93
SiStripMonitorPedestals::RunMode3
static const std::string RunMode3
Definition: SiStripMonitorPedestals.h:116
edm::LogError
Log< level::Error, false > LogError
Definition: MessageLogger.h:123
get
#define get
SiStripHistoId::createHistoId
std::string createHistoId(std::string description, std::string id_type, uint32_t component_id)
Definition: SiStripHistoId.cc:26
HcalObjRepresent::Fill
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
Definition: HcalObjRepresent.h:1053
SiStripFolderOrganizer::setDetectorFolder
void setDetectorFolder(uint32_t rawdetid, const TrackerTopology *tTopo)
Definition: SiStripFolderOrganizer.cc:202
SiStripMonitorPedestals::theEventInitNumber_
int theEventInitNumber_
Definition: SiStripMonitorPedestals.h:107
SiStripHistoId
Definition: SiStripHistoId.h:25
SiStripMonitorPedestals::m_cacheID_
unsigned long long m_cacheID_
Definition: SiStripMonitorPedestals.h:112
dqm::implementation::IBooker::book2D
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:177
SiStripMonitorPedestals::RunMode2
static const std::string RunMode2
Definition: SiStripMonitorPedestals.h:115
SiStripFolderOrganizer
Definition: SiStripFolderOrganizer.h:27
SiStripDetCabling::nApvPairs
const uint16_t nApvPairs(uint32_t det_id) const
Definition: SiStripDetCabling.cc:209
SiStripMonitorPedestals::outPutFileName
std::string outPutFileName
Definition: SiStripMonitorPedestals.h:111
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
SiStripMonitorPedestals::createMEs
void createMEs(DQMStore::IBooker &, edm::EventSetup const &eSetup)
Definition: SiStripMonitorPedestals.cc:110
ApvAnalysisFactory::getCommonMode
void getCommonMode(uint32_t det_id, ApvAnalysis::PedestalType &tmp)
Definition: ApvAnalysisFactory.cc:311
cms::Exception
Definition: Exception.h:70
TrackerTopologyRcd
Definition: TrackerTopologyRcd.h:10
SiStripPedestals::getPed
float getPed(const uint16_t &strip, const Range &range) const
Definition: SiStripPedestals.cc:51
SiStripMonitorPedestals::detcabling
edm::ESHandle< SiStripDetCabling > detcabling
Definition: SiStripMonitorPedestals.h:95
SiStripNoises::getNoise
static float getNoise(uint16_t strip, const Range &range)
Definition: SiStripNoises.h:73
SiStripMonitorPedestals::PedMEs
std::map< uint32_t, ModMEs > PedMEs
Definition: SiStripMonitorPedestals.h:94
SiStripMonitorPedestals::nEvTot_
int16_t nEvTot_
Definition: SiStripMonitorPedestals.h:103
SiStripDetCabling::getConnections
const std::vector< const FedChannelConnection * > & getConnections(uint32_t det_id) const
Definition: SiStripDetCabling.cc:161
dqm::implementation::IBooker::book1D
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98
ApvAnalysisFactory::getCommonModeSlope
void getCommonModeSlope(uint32_t det_id, ApvAnalysis::PedestalType &tmp)
Definition: ApvAnalysisFactory.cc:375
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
SiStripMonitorPedestals::fillCondDBMEs
void fillCondDBMEs(edm::EventSetup const &eSetup)
Definition: SiStripMonitorPedestals.cc:495