CMS 3D CMS Logo

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

#include <DQM/SiStripMonitorDigi/src/SiStripMonitorDigi.cc>

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

Classes

struct  DigiFailureMEs
 
struct  LayerMEs
 
struct  ModMEs
 
struct  SubDetMEs
 

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 &r, const edm::EventSetup &c) override
 
std::shared_ptr< bool > globalBeginLuminosityBlock (const edm::LuminosityBlock &lumi, const edm::EventSetup &iSetup) const override
 
void globalEndLuminosityBlock (const edm::LuminosityBlock &lumi, const edm::EventSetup &iSetup) override
 
 SiStripMonitorDigi (const edm::ParameterSet &)
 
 ~SiStripMonitorDigi () override
 
- Public Member Functions inherited from DQMOneEDAnalyzer< edm::LuminosityBlockCache< bool > >
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 hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndRuns () const final
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () 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
 
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)
 

Public Attributes

MonitorElementNumberOfFEDDigis = nullptr
 
std::string topFolderName_
 

Private Member Functions

void AddApvShotsToSubDet (const std::vector< APVShot > &, std::vector< APVShot > &)
 
bool AllDigis (const edm::EventSetup &es)
 
void bookLayer (DQMStore::IBooker &ibooker)
 
MonitorElementbookME1D (DQMStore::IBooker &ibooker, const char *ParameterSetLabel, const char *HistoName)
 
MonitorElementbookMETrend (DQMStore::IBooker &ibooker, const char *ParameterSetLabel, const char *HistoName)
 
void bookTrendMEs (DQMStore::IBooker &ibooker, const TString &name, int32_t layer, uint32_t id, std::string flag)
 
void createLayerMEs (DQMStore::IBooker &ibooker, std::string label, int ndet)
 
void createMEs (DQMStore::IBooker &ibooker, const edm::EventSetup &es)
 
void createModuleMEs (DQMStore::IBooker &ibooker, ModMEs &mod_single, uint32_t detid)
 
void createSubDetMEs (DQMStore::IBooker &ibooker, std::string label)
 
void createSubDetTH2 (DQMStore::IBooker &ibooker, std::string label)
 
void FillApvShotsMap (TkHistoMap *, const std::vector< APVShot > &, uint32_t id, int)
 
void fillDigiADCsMEs (int value, std::string name)
 
void fillME (MonitorElement *ME, float value1)
 
void fillME (MonitorElement *ME, float value1, float value2)
 
void fillME (MonitorElement *ME, float value1, float value2, float value3)
 
void fillME (MonitorElement *ME, float value1, float value2, float value3, float value4)
 
void fillTrend (MonitorElement *me, float value, float timeinorbit)
 
int getDigiSourceIndex (uint32_t id)
 
void ResetModuleMEs (uint32_t idet)
 

Private Attributes

edm::InputTag apvPhaseProducer_
 
edm::EDGetTokenT< APVCyclePhaseCollectionapvPhaseProducerToken_
 
bool calculate_strip_occupancy
 
edm::ParameterSet conf_
 
bool createTrendMEs
 
SiStripDCSStatusdcsStatus_
 
std::map< std::pair< std::string, int32_t >, bool > DetectedLayers
 
std::vector< const edm::DetSetVector< SiStripDigi > * > digi_detset_handles
 
DigiFailureMEs digiFailureMEs
 
std::map< uint32_t, ModMEsDigiMEs
 
std::vector< edm::InputTagdigiProducerList
 
std::vector< edm::EDGetTokenT< edm::DetSetVector< SiStripDigi > > > digiProducerTokenList
 
bool digitkhistomapon
 
int eventNb
 
int firstEvent
 
SiStripFolderOrganizer folder_organizer
 
bool globalsummaryapvshotson
 
bool globalswitchapvshotsApvon
 
bool globalswitchapvshotsonprof
 
bool globalswitchchargemedianapvshotson
 
bool globalswitchnapvshotson
 
bool globalswitchNDigisFEDID
 
bool globalswitchnstripsapvshotson
 
edm::EDGetTokenT< L1GlobalTriggerEvmReadoutRecordgtEvmToken_
 
edm::InputTag historyProducer_
 
edm::EDGetTokenT< EventWithHistoryhistoryProducerToken_
 
int ignoreFirstNLumisections_
 
int integrateNLumisections_
 
std::map< std::string, std::vector< uint32_t > > LayerDetMap
 
std::map< std::string, LayerMEsLayerMEsMap
 
bool layerswitchadccooleston
 
bool layerswitchadchotteston
 
bool layerswitchdigiadcprofon
 
bool layerswitchdigiadcson
 
bool layerswitchnumdigisapvon
 
bool layerswitchnumdigison
 
bool layerswitchnumdigisprofon
 
bool layerswitchstripoccupancyon
 
unsigned long long m_cacheID_
 
bool m_trendVs10LS
 
MonitorElementMedianChargeApvShotsGlobal
 
bool Mod_On_
 
std::vector< uint32_t > ModulesToBeExcluded_
 
bool moduleswitchadccooleston
 
bool moduleswitchadchotteston
 
bool moduleswitchdigiadcson
 
bool moduleswitchnumdigison
 
bool moduleswitchnumdigispstripon
 
bool moduleswitchstripoccupancyon
 
TString name
 
MonitorElementNApvApvShotsGlobal
 
MonitorElementNApvShotsGlobal
 
MonitorElementNApvShotsGlobalProf
 
int nFedTECm
 
int nFedTECp
 
int nFedTIB
 
int nFedTIDm
 
int nFedTIDp
 
int nFedTOB
 
bool reset_each_run
 
int runNb
 
int SBDeclaredAt
 
bool SBTransitionDone
 
bool select_all_detectors
 
bool shotschargehistomapon
 
bool shotshistomapon
 
bool shotsstripshistomapon
 
MonitorElementShotsVsTimeApvShotsGlobal
 
bool show_control_view
 
bool show_mechanical_structure_view
 
bool show_readout_view
 
edm::ESHandle< SiStripDetCablingSiStripDetCabling_
 
MonitorElementStripMultiplicityApvShotsGlobal
 
std::map< std::string, SubDetMEsSubDetMEsMap
 
std::map< std::string, std::string > SubDetPhasePartMap
 
bool subdetswitchapvcycleprofon
 
bool subdetswitchapvcycleth2on
 
bool subdetswitchapvshotsApvon
 
bool subdetswitchapvshotsonprof
 
bool subdetswitchchargemedianapvshotson
 
bool subdetswitchnapvshotson
 
bool subdetswitchnstripsapvshotson
 
bool subdetswitchtotdigifailureon
 
bool subdetswitchtotdigiprofon
 
std::unique_ptr< TkHistoMaptkmapdigi
 
std::unique_ptr< TkHistoMaptkmapMedianChargeApvshots
 
std::unique_ptr< TkHistoMaptkmapNApvshots
 
std::unique_ptr< TkHistoMaptkmapNstripApvshot
 
int TotalNShots
 
std::vector< float > vecSubDetTotDigiProfLS
 

Additional Inherited Members

- Public Types inherited from DQMOneEDAnalyzer< edm::LuminosityBlockCache< bool > >
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< edm::LuminosityBlockCache< bool > >
virtual void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &)=0
 
virtual void dqmEndRun (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>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
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::LuminosityBlockCache< bool > >
edm::EDPutTokenT< DQMTokenrunToken_
 

Detailed Description

Data Quality Monitoring source of the Silicon Strip Tracker. Produces histograms related to digis.

DQM/SiStripMonitorDigi/src/SiStripMonitorDigi.cc

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

Implementation: <Notes on="" implementation>="">

Definition at line 34 of file SiStripMonitorDigi.h.

Constructor & Destructor Documentation

◆ SiStripMonitorDigi()

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

Definition at line 49 of file SiStripMonitorDigi.cc.

50  : //dqmStore_(edm::Service<DQMStore>().operator->()),
51  conf_(iConfig),
53  show_readout_view(false),
54  show_control_view(false),
56  reset_each_run(false),
58  m_cacheID_(0) {
59  firstEvent = -1;
60  eventNb = 0;
61 
62  // Detector Partitions
63  SubDetPhasePartMap["TIB"] = "TI";
64  SubDetPhasePartMap["TID__MINUS"] = "TI";
65  SubDetPhasePartMap["TID__PLUS"] = "TI";
66  SubDetPhasePartMap["TOB"] = "TO";
67  SubDetPhasePartMap["TEC__MINUS"] = "TM";
68  SubDetPhasePartMap["TEC__PLUS"] = "TP";
69 
70  topFolderName_ = conf_.getParameter<std::string>("TopFolderName");
71 
72  // get Digi Producer List
73  digiProducerList = conf_.getParameter<std::vector<edm::InputTag> >("DigiProducersList");
74  for (auto const& tag : digiProducerList) {
76  }
77 
78  //get on/off option for every cluster from cfi
79  edm::ParameterSet ParametersNumberOfDigis = conf_.getParameter<edm::ParameterSet>("TH1NumberOfDigis");
80  layerswitchnumdigison = ParametersNumberOfDigis.getParameter<bool>("layerswitchon");
81  moduleswitchnumdigison = ParametersNumberOfDigis.getParameter<bool>("moduleswitchon");
82 
83  edm::ParameterSet ParametersNumberOfDigisPerStrip = conf_.getParameter<edm::ParameterSet>("TH1NumberOfDigisPerStrip");
84  moduleswitchnumdigispstripon = ParametersNumberOfDigisPerStrip.getParameter<bool>("moduleswitchon");
85 
86  edm::ParameterSet ParametersADCsHottestStrip = conf_.getParameter<edm::ParameterSet>("TH1ADCsHottestStrip");
87  layerswitchadchotteston = ParametersADCsHottestStrip.getParameter<bool>("layerswitchon");
88  moduleswitchadchotteston = ParametersADCsHottestStrip.getParameter<bool>("moduleswitchon");
89 
90  edm::ParameterSet ParametersADCsCoolestStrip = conf_.getParameter<edm::ParameterSet>("TH1ADCsCoolestStrip");
91  layerswitchadccooleston = ParametersADCsCoolestStrip.getParameter<bool>("layerswitchon");
92  moduleswitchadccooleston = ParametersADCsCoolestStrip.getParameter<bool>("moduleswitchon");
93 
94  edm::ParameterSet ParametersDigiADCs = conf_.getParameter<edm::ParameterSet>("TH1DigiADCs");
95  layerswitchdigiadcson = ParametersDigiADCs.getParameter<bool>("layerswitchon");
96  moduleswitchdigiadcson = ParametersDigiADCs.getParameter<bool>("moduleswitchon");
97 
98  edm::ParameterSet ParametersStripOccupancy = conf_.getParameter<edm::ParameterSet>("TH1StripOccupancy");
99  layerswitchstripoccupancyon = ParametersStripOccupancy.getParameter<bool>("layerswitchon");
100  moduleswitchstripoccupancyon = ParametersStripOccupancy.getParameter<bool>("moduleswitchon");
101 
102  edm::ParameterSet ParametersDigiProf = conf_.getParameter<edm::ParameterSet>("TProfNumberOfDigi");
103  layerswitchnumdigisprofon = ParametersDigiProf.getParameter<bool>("layerswitchon");
104 
105  edm::ParameterSet ParametersDigiADC = conf_.getParameter<edm::ParameterSet>("TProfDigiADC");
106  layerswitchdigiadcprofon = ParametersDigiProf.getParameter<bool>("layerswitchon");
107 
108  edm::ParameterSet ParametersTotDigiProf = conf_.getParameter<edm::ParameterSet>("TProfTotalNumberOfDigis");
109  subdetswitchtotdigiprofon = ParametersTotDigiProf.getParameter<bool>("subdetswitchon");
110 
111  edm::ParameterSet ParametersTotDigiFailure = conf_.getParameter<edm::ParameterSet>("TotalNumberOfDigisFailure");
112  subdetswitchtotdigifailureon = ParametersTotDigiFailure.getParameter<bool>("subdetswitchon");
113 
114  edm::ParameterSet ParametersDigiApvProf = conf_.getParameter<edm::ParameterSet>("TProfDigiApvCycle");
115  subdetswitchapvcycleprofon = ParametersDigiApvProf.getParameter<bool>("subdetswitchon");
116 
117  edm::ParameterSet ParametersDigiApvTH2 = conf_.getParameter<edm::ParameterSet>("TH2DigiApvCycle");
118  subdetswitchapvcycleth2on = ParametersDigiApvTH2.getParameter<bool>("subdetswitchon");
119 
120  edm::ParameterSet ParametersNApvShots = conf_.getParameter<edm::ParameterSet>("TH1NApvShots");
121  subdetswitchnapvshotson = ParametersNApvShots.getParameter<bool>("subdetswitchon");
122 
123  edm::ParameterSet ParametersNStripApvShots = conf_.getParameter<edm::ParameterSet>("TH1NStripsApvShots");
124  subdetswitchnstripsapvshotson = ParametersNStripApvShots.getParameter<bool>("subdetswitchon");
125 
126  edm::ParameterSet ParametersChargeMedianApvShots = conf_.getParameter<edm::ParameterSet>("TH1ChargeMedianApvShots");
127  subdetswitchchargemedianapvshotson = ParametersChargeMedianApvShots.getParameter<bool>("subdetswitchon");
128 
129  edm::ParameterSet ParametersApvNumberApvShots = conf_.getParameter<edm::ParameterSet>("TH1ApvNumApvShots");
130  subdetswitchapvshotsApvon = ParametersChargeMedianApvShots.getParameter<bool>("subdetswitchon");
131 
132  edm::ParameterSet ParametersNApvShotsProf = conf_.getParameter<edm::ParameterSet>("TProfNShotsVsTime");
133  subdetswitchapvshotsonprof = ParametersNApvShotsProf.getParameter<bool>("subdetswitchon");
134 
135  //Global Histograms
136 
137  edm::ParameterSet ParametersGlobalNApvShots = conf_.getParameter<edm::ParameterSet>("TH1NApvShots");
138  globalswitchnapvshotson = ParametersGlobalNApvShots.getParameter<bool>("globalswitchon");
139 
140  edm::ParameterSet ParametersGlobalNApvShotsProf = conf_.getParameter<edm::ParameterSet>("TProfGlobalNShots");
141  globalsummaryapvshotson = ParametersGlobalNApvShotsProf.getParameter<bool>("globalswitchon");
142 
143  edm::ParameterSet ParametersGlobalNStripApvShots = conf_.getParameter<edm::ParameterSet>("TH1NStripsApvShots");
144  globalswitchnstripsapvshotson = ParametersGlobalNStripApvShots.getParameter<bool>("globalswitchon");
145 
146  edm::ParameterSet ParametersGlobalApvNumApvShots = conf_.getParameter<edm::ParameterSet>("TH1ApvNumApvShots");
147  globalswitchapvshotsApvon = ParametersGlobalApvNumApvShots.getParameter<bool>("globalswitchon");
148 
149  edm::ParameterSet ParametersGlobalChargeMedianApvShots =
150  conf_.getParameter<edm::ParameterSet>("TH1ChargeMedianApvShots");
151  globalswitchchargemedianapvshotson = ParametersGlobalChargeMedianApvShots.getParameter<bool>("globalswitchon");
152 
153  edm::ParameterSet ParametersGlobalNApvShotsTimeProf = conf_.getParameter<edm::ParameterSet>("TProfNShotsVsTime");
154  globalswitchapvshotsonprof = ParametersGlobalNApvShotsTimeProf.getParameter<bool>("globalswitchon");
155 
156  edm::ParameterSet ParametersGlobalNDigisFEDID = conf_.getParameter<edm::ParameterSet>("TProfNDigisFED");
157  globalswitchNDigisFEDID = ParametersGlobalNDigisFEDID.getParameter<bool>("globalswitchon");
158 
159  //Digi and APV Shots Maps
160 
161  digitkhistomapon = conf_.getParameter<bool>("TkHistoMap_On");
162 
163  shotshistomapon = conf_.getParameter<bool>("TkHistoMapNApvShots_On");
164  shotsstripshistomapon = conf_.getParameter<bool>("TkHistoMapNStripApvShots_On");
165  shotschargehistomapon = conf_.getParameter<bool>("TkHistoMapMedianChargeApvShots_On");
166 
167  createTrendMEs = conf_.getParameter<bool>("CreateTrendMEs");
168  Mod_On_ = conf_.getParameter<bool>("Mod_On");
169  m_trendVs10LS = conf_.getParameter<bool>("TrendVs10LS");
170  // xLumiProf = conf_.getParameter<int>("xLumiProf");
171  // Event History Producer
172  historyProducer_ = conf_.getParameter<edm::InputTag>("HistoryProducer");
173  historyProducerToken_ = consumes<EventWithHistory>(conf_.getParameter<edm::InputTag>("HistoryProducer"));
174 
175  // Apv Phase Producer
176  apvPhaseProducer_ = conf_.getParameter<edm::InputTag>("ApvPhaseProducer");
177  apvPhaseProducerToken_ = consumes<APVCyclePhaseCollection>(conf_.getParameter<edm::InputTag>("ApvPhaseProducer"));
178 
179  gtEvmToken_ = consumes<L1GlobalTriggerEvmReadoutRecord>(edm::InputTag("gtEvmDigis"));
180 
181  // Create DCS Status
182  bool checkDCS = conf_.getParameter<bool>("UseDCSFiltering");
183  if (checkDCS)
185  else
186  dcsStatus_ = nullptr;
187 
188  //initialize boolean for the data-presence check (needed for TotalNumberOfDigisFailure histogram)
189  SBTransitionDone = false;
190  SBDeclaredAt = 0;
191  ignoreFirstNLumisections_ = TMath::Max(0, ParametersTotDigiFailure.getParameter<int32_t>("ignoreFirstNLumisections"));
192  integrateNLumisections_ = TMath::Max(1, ParametersTotDigiFailure.getParameter<int32_t>("integrateNLumisections"));
193  vecSubDetTotDigiProfLS.reserve(7);
194 }

References apvPhaseProducer_, apvPhaseProducerToken_, conf_, edm::EDConsumerBase::consumes(), edm::EDConsumerBase::consumesCollector(), createTrendMEs, dcsStatus_, digiProducerList, digiProducerTokenList, digitkhistomapon, eventNb, firstEvent, edm::ParameterSet::getParameter(), globalsummaryapvshotson, globalswitchapvshotsApvon, globalswitchapvshotsonprof, globalswitchchargemedianapvshotson, globalswitchnapvshotson, globalswitchNDigisFEDID, globalswitchnstripsapvshotson, gtEvmToken_, historyProducer_, historyProducerToken_, ignoreFirstNLumisections_, integrateNLumisections_, layerswitchadccooleston, layerswitchadchotteston, layerswitchdigiadcprofon, layerswitchdigiadcson, layerswitchnumdigison, layerswitchnumdigisprofon, layerswitchstripoccupancyon, m_trendVs10LS, Max(), Mod_On_, moduleswitchadccooleston, moduleswitchadchotteston, moduleswitchdigiadcson, moduleswitchnumdigison, moduleswitchnumdigispstripon, moduleswitchstripoccupancyon, SBDeclaredAt, SBTransitionDone, shotschargehistomapon, shotshistomapon, shotsstripshistomapon, AlCaHLTBitMon_QueryRunRegistry::string, SubDetPhasePartMap, subdetswitchapvcycleprofon, subdetswitchapvcycleth2on, subdetswitchapvshotsApvon, subdetswitchapvshotsonprof, subdetswitchchargemedianapvshotson, subdetswitchnapvshotson, subdetswitchnstripsapvshotson, subdetswitchtotdigifailureon, subdetswitchtotdigiprofon, GlobalPosition_Frontier_DevDB_cff::tag, topFolderName_, and vecSubDetTotDigiProfLS.

◆ ~SiStripMonitorDigi()

SiStripMonitorDigi::~SiStripMonitorDigi ( )
override

Definition at line 197 of file SiStripMonitorDigi.cc.

197  {
198  if (dcsStatus_)
199  delete dcsStatus_;
200 }

References dcsStatus_.

Member Function Documentation

◆ AddApvShotsToSubDet()

void SiStripMonitorDigi::AddApvShotsToSubDet ( const std::vector< APVShot > &  moduleShots,
std::vector< APVShot > &  subdetShots 
)
private

Definition at line 1328 of file SiStripMonitorDigi.cc.

1329  {
1330  for (uint i = 0; i < moduleShots.size(); i++) {
1331  subdetShots.push_back(moduleShots[i]);
1332  }
1333 }

References mps_fire::i, and parallelization::uint.

Referenced by analyze().

◆ AllDigis()

bool SiStripMonitorDigi::AllDigis ( const edm::EventSetup es)
private

◆ analyze()

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

Reimplemented from DQMOneEDAnalyzer< edm::LuminosityBlockCache< bool > >.

Definition at line 573 of file SiStripMonitorDigi.cc.

573  {
574  // Filter out events if DCS Event if requested
575  if (dcsStatus_ && !dcsStatus_->getStatus(iEvent, iSetup))
576  return;
577 
578  //Retrieve tracker topology from geometry
579  edm::ESHandle<TrackerTopology> tTopoHandle;
580  iSetup.get<TrackerTopologyRcd>().get(tTopoHandle);
581  const TrackerTopology* const tTopo = tTopoHandle.product();
582 
583  TotalNShots = 0;
584 
585  runNb = iEvent.id().run();
586  eventNb++;
587 
588  float iOrbitVar =
589  m_trendVs10LS ? iEvent.orbitNumber() / (10 * NORBITS_PER_LS) : iEvent.orbitNumber() / NORBITS_PER_LS;
590 
591  digi_detset_handles.clear();
592 
593  std::vector<edm::EDGetTokenT<edm::DetSetVector<SiStripDigi> > >::const_iterator iToken =
594  digiProducerTokenList.begin();
595  for (std::vector<edm::InputTag>::const_iterator iter = digiProducerList.begin(), iEnd = digiProducerList.end();
596  iter != iEnd;
597  ++iter, ++iToken) {
599  iEvent.getByToken(*iToken, digi_handle);
600  if (digi_handle.isValid())
601  digi_detset_handles.push_back(digi_handle.product());
602  }
603 
604  // initialise # of clusters to zero
605  for (std::map<std::string, SubDetMEs>::iterator iSubdet = SubDetMEsMap.begin(); iSubdet != SubDetMEsMap.end();
606  iSubdet++) {
607  iSubdet->second.totNDigis = 0;
608  iSubdet->second.SubDetApvShots.clear();
609  }
610 
611  std::map<int, int> FEDID_v_digisum;
612 
613  for (std::map<std::string, std::vector<uint32_t> >::const_iterator iterLayer = LayerDetMap.begin();
614  iterLayer != LayerDetMap.end();
615  iterLayer++) {
616  std::string layer_label = iterLayer->first;
617 
618  std::vector<uint32_t> layer_dets = iterLayer->second;
619  std::map<std::string, LayerMEs>::iterator iLayerME = LayerMEsMap.find(layer_label);
620 
621  //get Layer MEs
622  LayerMEs local_layermes;
623 
624  if (iLayerME == LayerMEsMap.end())
625  continue;
626  else
627  local_layermes = iLayerME->second;
628 
629  int largest_adc_layer = 0;
630  int smallest_adc_layer = 99999;
631 
632  int ndigi_layer = 0;
633 
634  uint16_t iDet = 0;
635 
636  std::string subdet_label = "";
637 
638  // loop over all modules in the layer
639  for (std::vector<uint32_t>::const_iterator iterDets = layer_dets.begin(); iterDets != layer_dets.end();
640  iterDets++) {
641  iDet++;
642 
643  // detid and type of ME
644  uint32_t detid = (*iterDets);
645 
646  // Get SubDet label once
647  if (subdet_label.empty())
648  subdet_label = folder_organizer.getSubDetFolderAndTag(detid, tTopo).second;
649 
650  // DetId and corresponding set of MEs
651 
652  std::map<uint32_t, ModMEs>::iterator pos = DigiMEs.find(detid);
653  ModMEs local_modmes = pos->second;
654 
655  // search digis of detid
656  int loc = getDigiSourceIndex(detid);
657 
658  int ndigi_det = 0;
659 
660  if (loc > -1) {
661  ndigi_det = (*(digi_detset_handles[loc]))[detid].size();
662 
664 
665  //Get all FED connections associated with given detID.
666  // All connections for a detid have same FED Id therefore one FEDID is associated with a given detID.
667  std::vector<const FedChannelConnection*> fedConnections = SiStripDetCabling_->getConnections(detid);
668 
669  // Filling FED Id associated clusters map.
670 
671  int good_fcc_index = -999;
672  for (unsigned int x = 0; x < fedConnections.size(); x++) {
673  if (fedConnections[x] != nullptr) {
674  good_fcc_index = x;
675  break;
676  }
677  }
678  if (fedConnections[good_fcc_index] != nullptr) {
679  int temp_fedid = fedConnections[good_fcc_index]->fedId();
680  if (FEDID_v_digisum.find(temp_fedid) != FEDID_v_digisum.end()) {
681  if (ndigi_det < 1000 && ndigi_det > 0) {
682  FEDID_v_digisum[temp_fedid] = FEDID_v_digisum.find(temp_fedid)->second + ndigi_det;
683  }
684  } else {
685  if (ndigi_det < 1000 && ndigi_det > 0) {
686  FEDID_v_digisum[temp_fedid] = ndigi_det;
687  }
688  }
689  } else {
690  edm::LogInfo("SiStripMonitorDigi")
691  << "SiStripMonitorDigi::analyze WARNING! no good connections for detid = " << detid << std::endl;
692  }
694 
695  APVShotFinder theShotFinder = APVShotFinder((*(digi_detset_handles[loc]))[detid]);
696  const std::vector<APVShot>& shots = theShotFinder.getShots();
697  AddApvShotsToSubDet(shots, SubDetMEsMap[subdet_label].SubDetApvShots);
698  if (shotshistomapon)
699  tkmapNApvshots->fill(detid, shots.size());
701  FillApvShotsMap(tkmapNstripApvshot.get(), shots, detid, 1);
703  FillApvShotsMap(tkmapMedianChargeApvshots.get(), shots, detid, 2);
704  }
705 
706  if (Mod_On_ && moduleswitchnumdigison && (local_modmes.NumberOfDigis != nullptr))
707  (local_modmes.NumberOfDigis)->Fill(ndigi_det);
708 
710  local_layermes.LayerNumberOfDigisProfile->Fill(iDet * 1.0, ndigi_det);
711 
712  if (digitkhistomapon)
713  tkmapdigi->fill(detid, ndigi_det);
714 
715  if (ndigi_det == 0)
716  continue; // no digis for this detid => jump to next step of loop
717 
718  const edm::DetSet<SiStripDigi>& digi_detset = (*(digi_detset_handles[loc]))[detid];
719 
720  ndigi_layer += ndigi_det;
721 
722  // ADCs
723  int largest_adc = (digi_detset.data.begin())->adc();
724  int smallest_adc = (digi_detset.data.begin())->adc();
725 
726  // Check if these parameters are really needed
727  float det_occupancy = 0.0;
728 
729  for (edm::DetSet<SiStripDigi>::const_iterator digiIter = digi_detset.data.begin();
730  digiIter != digi_detset.data.end();
731  digiIter++) {
732  int this_adc = digiIter->adc();
733 
734  if (this_adc > 0.0)
735  det_occupancy++;
736 
737  if (this_adc > largest_adc)
738  largest_adc = this_adc;
739  if (this_adc < smallest_adc)
740  smallest_adc = this_adc;
741 
742  if (Mod_On_ && moduleswitchnumdigispstripon && (local_modmes.NumberOfDigisPerStrip != nullptr) &&
743  (this_adc > 0.0))
744  (local_modmes.NumberOfDigisPerStrip)->Fill(digiIter->strip());
745 
746  if (Mod_On_ && moduleswitchdigiadcson && (local_modmes.DigiADCs != nullptr))
747  (local_modmes.DigiADCs)->Fill(static_cast<float>(this_adc));
748 
749  //Fill #ADCs for this digi at layer level
750  if (layerswitchdigiadcson) {
751  fillME(local_layermes.LayerDigiADCs, this_adc);
752  if (createTrendMEs)
753  fillTrend(local_layermes.LayerDigiADCsTrend, this_adc, iOrbitVar);
754  }
755 
757  local_layermes.LayerDigiADCProfile->Fill(iDet * 1.0, this_adc);
758 
759  } //end of loop over digis in this det
760 
761  // Occupancy
762  short nstrips = SiStripDetCabling_->nApvPairs(detid) * 2 * 128;
763  if (nstrips > 0 && det_occupancy > 0) {
764  det_occupancy = det_occupancy / nstrips;
765  if (Mod_On_ && moduleswitchstripoccupancyon && (local_modmes.StripOccupancy != nullptr))
766  (local_modmes.StripOccupancy)->Fill(det_occupancy);
768  fillME(local_layermes.LayerStripOccupancy, det_occupancy);
769  if (createTrendMEs)
770  fillTrend(local_layermes.LayerStripOccupancyTrend, det_occupancy, iOrbitVar);
771  }
772  }
773 
774  if (largest_adc > largest_adc_layer)
775  largest_adc_layer = largest_adc;
776  if (smallest_adc < smallest_adc_layer)
777  smallest_adc_layer = smallest_adc;
778 
779  // nr. of adcs for hottest strip
780  if (Mod_On_ && moduleswitchadchotteston && (local_modmes.ADCsHottestStrip != nullptr))
781  (local_modmes.ADCsHottestStrip)->Fill(static_cast<float>(largest_adc));
782 
783  // nr. of adcs for coolest strip
784  if (Mod_On_ && moduleswitchadccooleston && (local_modmes.ADCsCoolestStrip != nullptr))
785  (local_modmes.ADCsCoolestStrip)->Fill(static_cast<float>(smallest_adc));
786 
787  } //end of loop over DetIds
788 
789  if (layerswitchnumdigison) {
790  fillME(local_layermes.LayerNumberOfDigis, ndigi_layer);
791  if (createTrendMEs)
792  fillTrend(local_layermes.LayerNumberOfDigisTrend, ndigi_layer, iOrbitVar);
793  }
795  fillME(local_layermes.LayerADCsHottestStrip, largest_adc_layer);
796  if (createTrendMEs)
797  fillTrend(local_layermes.LayerADCsHottestStripTrend, largest_adc_layer, iOrbitVar);
798  }
800  fillME(local_layermes.LayerADCsCoolestStrip, smallest_adc_layer);
801  if (createTrendMEs)
802  fillTrend(local_layermes.LayerADCsCoolestStripTrend, smallest_adc_layer, iOrbitVar);
803  }
804 
805  std::map<std::string, SubDetMEs>::iterator iSubdet = SubDetMEsMap.find(subdet_label);
806  if (iSubdet != SubDetMEsMap.end()) {
807  iSubdet->second.totNDigis += ndigi_layer;
808  //std::cout << " totDigis" << iSubdet->second.totNDigis << " in " << subdet_label << std::endl;
809  }
810  }
811 
812  bool& isStableBeams = *luminosityBlockCache(iEvent.getLuminosityBlock().index());
814  //check Stable beams bit
816  iEvent.getByToken(gtEvmToken_, gtEvm_handle);
817  L1GlobalTriggerEvmReadoutRecord const* gtevm = gtEvm_handle.product();
818 
819  L1GtfeExtWord gtfeEvmExtWord;
820  if (gtevm) {
821  gtfeEvmExtWord = gtevm->gtfeWord();
822  } else
823  edm::LogInfo("DQMProvInfo") << " gtfeEvmWord inaccessible";
824 
825  /* mia: is there not a smarter way !?!?!?!? */
826  if (gtfeEvmExtWord.beamMode() == 11)
827  isStableBeams = true;
828  }
829 
830  for (std::map<std::string, SubDetMEs>::iterator it = SubDetMEsMap.begin(); it != SubDetMEsMap.end(); it++) {
832  if (strcmp(it->first.c_str(), "TEC__MINUS") == 0) {
833  digiFailureMEs.SubDetTotDigiProfLS->Fill(1, it->second.totNDigis);
834  } else if (strcmp(it->first.c_str(), "TEC__PLUS") == 0) {
835  digiFailureMEs.SubDetTotDigiProfLS->Fill(2, it->second.totNDigis);
836  } else if (strcmp(it->first.c_str(), "TIB") == 0) {
837  digiFailureMEs.SubDetTotDigiProfLS->Fill(3, it->second.totNDigis);
838  } else if (strcmp(it->first.c_str(), "TID__MINUS") == 0) {
839  digiFailureMEs.SubDetTotDigiProfLS->Fill(4, it->second.totNDigis);
840  } else if (strcmp(it->first.c_str(), "TID__PLUS") == 0) {
841  digiFailureMEs.SubDetTotDigiProfLS->Fill(5, it->second.totNDigis);
842  } else if (strcmp(it->first.c_str(), "TOB") == 0) {
843  digiFailureMEs.SubDetTotDigiProfLS->Fill(6, it->second.totNDigis);
844  }
845  }
846 
848  if (strcmp(it->first.c_str(), "TEC__MINUS") == 0) {
849  NApvShotsGlobalProf->Fill(1, it->second.SubDetApvShots.size());
850  } else if (strcmp(it->first.c_str(), "TEC__PLUS") == 0) {
851  NApvShotsGlobalProf->Fill(2, it->second.SubDetApvShots.size());
852  } else if (strcmp(it->first.c_str(), "TIB") == 0) {
853  NApvShotsGlobalProf->Fill(3, it->second.SubDetApvShots.size());
854  } else if (strcmp(it->first.c_str(), "TID__MINUS") == 0) {
855  NApvShotsGlobalProf->Fill(4, it->second.SubDetApvShots.size());
856  } else if (strcmp(it->first.c_str(), "TID__PLUS") == 0) {
857  NApvShotsGlobalProf->Fill(5, it->second.SubDetApvShots.size());
858  } else if (strcmp(it->first.c_str(), "TOB") == 0) {
859  NApvShotsGlobalProf->Fill(6, it->second.SubDetApvShots.size());
860  }
861  }
862 
863  SubDetMEs subdetmes = it->second;
864  std::string subdet = it->first;
865 
866  // Fill APV shots histograms for SubDet
867 
868  uint ShotsSize = subdetmes.SubDetApvShots.size();
869  TotalNShots += ShotsSize; //Counter for total Shots in the SiStrip Tracker
870 
872  subdetmes.SubDetNApvShotsTH1->Fill(ShotsSize); // N shots
874  subdetmes.SubDetNApvShotsProf->Fill(iOrbitVar, ShotsSize); //N shots vs time
875 
876  for (uint i = 0; i < ShotsSize;
877  ++i) { // Strip multiplicity, charge median and APV number distributions for APV shots
878 
880  subdetmes.SubDetNApvShotsNApvTH1->Fill(
881  (subdetmes.SubDetApvShots[i].apvNumber() + 1)); //APV are defined by 0 to 5 I want 1 to 6
883  NApvApvShotsGlobal->Fill((subdetmes.SubDetApvShots[i].apvNumber() + 1));
884 
886  subdetmes.SubDetNStripsApvShotsTH1->Fill(subdetmes.SubDetApvShots[i].nStrips());
888  StripMultiplicityApvShotsGlobal->Fill(subdetmes.SubDetApvShots[i].nStrips());
889 
891  subdetmes.SubDetChargeMedianApvShotsTH1->Fill(subdetmes.SubDetApvShots[i].median());
893  MedianChargeApvShotsGlobal->Fill(subdetmes.SubDetApvShots[i].median());
894  }
895 
897  subdetmes.SubDetTotDigiProf->Fill(iOrbitVar, subdetmes.totNDigis);
898  }
899 
904 
906  std::map<int, int>::iterator it;
907  for (it = FEDID_v_digisum.begin(); it != FEDID_v_digisum.end(); it++) {
908  NumberOfFEDDigis->Fill(it->first, it->second);
909  }
910  }
911 
912  // get EventHistory
913 
914  edm::Handle<EventWithHistory> event_history;
915  iEvent.getByToken(historyProducerToken_, event_history);
916 
917  // get Phase of APV
918  edm::Handle<APVCyclePhaseCollection> apv_phase_collection;
919  iEvent.getByToken(apvPhaseProducerToken_, apv_phase_collection);
920 
921  if (event_history.isValid() && !event_history.failedToGet() && apv_phase_collection.isValid() &&
922  !apv_phase_collection.failedToGet()) {
923  long long tbx = event_history->absoluteBX();
924 
925  for (std::map<std::string, SubDetMEs>::iterator it = SubDetMEsMap.begin(); it != SubDetMEsMap.end(); it++) {
926  SubDetMEs subdetmes;
927  std::string subdet = it->first;
928  subdetmes = it->second;
929 
930  int the_phase = APVCyclePhaseCollection::invalid;
931  long long tbx_corr = tbx;
932 
933  if (SubDetPhasePartMap.find(subdet) != SubDetPhasePartMap.end())
934  the_phase = apv_phase_collection->getPhase(SubDetPhasePartMap[subdet]);
937  the_phase = 30;
938  tbx_corr -= the_phase;
939 
941  subdetmes.SubDetDigiApvProf->Fill(tbx_corr % 70, subdetmes.totNDigis);
943  subdetmes.SubDetDigiApvTH2->Fill(tbx_corr % 70, subdetmes.totNDigis);
944  }
945  }
946 } //end of method analyze

References EventWithHistory::absoluteBX(), ecalMGPA::adc(), SiStripMonitorDigi::ModMEs::ADCsCoolestStrip, SiStripMonitorDigi::ModMEs::ADCsHottestStrip, AddApvShotsToSubDet(), apvPhaseProducerToken_, L1GtfeExtWord::beamMode(), createTrendMEs, edm::DetSet< T >::data, dcsStatus_, digi_detset_handles, SiStripMonitorDigi::ModMEs::DigiADCs, digiFailureMEs, DigiMEs, digiProducerList, digiProducerTokenList, digitkhistomapon, eventNb, edm::HandleBase::failedToGet(), dqm::impl::MonitorElement::Fill(), HcalObjRepresent::Fill(), FillApvShotsMap(), fillME(), fillTrend(), folder_organizer, edm::EventSetup::get(), get, SiStripDetCabling::getConnections(), getDigiSourceIndex(), APVCyclePhaseCollection::getPhase(), APVShotFinder::getShots(), SiStripDCSStatus::getStatus(), SiStripFolderOrganizer::getSubDetFolderAndTag(), globalsummaryapvshotson, globalswitchapvshotsApvon, globalswitchapvshotsonprof, globalswitchchargemedianapvshotson, globalswitchnapvshotson, globalswitchNDigisFEDID, globalswitchnstripsapvshotson, gtEvmToken_, L1GlobalTriggerEvmReadoutRecord::gtfeWord(), historyProducerToken_, mps_fire::i, iEvent, APVCyclePhaseCollection::invalid, edm::HandleBase::isValid(), SiStripMonitorDigi::LayerMEs::LayerADCsCoolestStrip, SiStripMonitorDigi::LayerMEs::LayerADCsCoolestStripTrend, SiStripMonitorDigi::LayerMEs::LayerADCsHottestStrip, SiStripMonitorDigi::LayerMEs::LayerADCsHottestStripTrend, LayerDetMap, SiStripMonitorDigi::LayerMEs::LayerDigiADCProfile, SiStripMonitorDigi::LayerMEs::LayerDigiADCs, SiStripMonitorDigi::LayerMEs::LayerDigiADCsTrend, LayerMEsMap, SiStripMonitorDigi::LayerMEs::LayerNumberOfDigis, SiStripMonitorDigi::LayerMEs::LayerNumberOfDigisProfile, SiStripMonitorDigi::LayerMEs::LayerNumberOfDigisTrend, SiStripMonitorDigi::LayerMEs::LayerStripOccupancy, SiStripMonitorDigi::LayerMEs::LayerStripOccupancyTrend, layerswitchadccooleston, layerswitchadchotteston, layerswitchdigiadcprofon, layerswitchdigiadcson, layerswitchnumdigison, layerswitchnumdigisprofon, layerswitchstripoccupancyon, m_trendVs10LS, genParticles_cff::map, MedianChargeApvShotsGlobal, Mod_On_, moduleswitchadccooleston, moduleswitchadchotteston, moduleswitchdigiadcson, moduleswitchnumdigison, moduleswitchnumdigispstripon, moduleswitchstripoccupancyon, APVCyclePhaseCollection::multiphase, NApvApvShotsGlobal, SiStripDetCabling::nApvPairs(), NApvShotsGlobal, NApvShotsGlobalProf, APVCyclePhaseCollection::nopartition, SiStripMonitorDigi::ModMEs::NumberOfDigis, SiStripMonitorDigi::ModMEs::NumberOfDigisPerStrip, NumberOfFEDDigis, edm::Handle< T >::product(), edm::ESHandle< T >::product(), runNb, shotschargehistomapon, shotshistomapon, shotsstripshistomapon, ShotsVsTimeApvShotsGlobal, SiStripDetCabling_, AlCaHLTBitMon_QueryRunRegistry::string, StripMultiplicityApvShotsGlobal, SiStripMonitorDigi::ModMEs::StripOccupancy, SiStripMonitorDigi::SubDetMEs::SubDetApvShots, SiStripMonitorDigi::SubDetMEs::SubDetChargeMedianApvShotsTH1, SiStripMonitorDigi::SubDetMEs::SubDetDigiApvProf, SiStripMonitorDigi::SubDetMEs::SubDetDigiApvTH2, SubDetMEsMap, SiStripMonitorDigi::SubDetMEs::SubDetNApvShotsNApvTH1, SiStripMonitorDigi::SubDetMEs::SubDetNApvShotsProf, SiStripMonitorDigi::SubDetMEs::SubDetNApvShotsTH1, SiStripMonitorDigi::SubDetMEs::SubDetNStripsApvShotsTH1, SubDetPhasePartMap, subdetswitchapvcycleprofon, subdetswitchapvcycleth2on, subdetswitchapvshotsApvon, subdetswitchapvshotsonprof, subdetswitchchargemedianapvshotson, subdetswitchnapvshotson, subdetswitchnstripsapvshotson, subdetswitchtotdigifailureon, subdetswitchtotdigiprofon, SiStripMonitorDigi::SubDetMEs::SubDetTotDigiProf, SiStripMonitorDigi::DigiFailureMEs::SubDetTotDigiProfLS, tkmapdigi, tkmapMedianChargeApvshots, tkmapNApvshots, tkmapNstripApvshot, TotalNShots, SiStripMonitorDigi::SubDetMEs::totNDigis, parallelization::uint, and x.

◆ bookHistograms()

void SiStripMonitorDigi::bookHistograms ( DQMStore::IBooker ibooker,
edm::Run const &  run,
edm::EventSetup const &  es 
)
override

Definition at line 202 of file SiStripMonitorDigi.cc.

202  {
204  unsigned long long cacheID = es.get<SiStripDetCablingRcd>().cacheIdentifier();
205  if (m_cacheID_ != cacheID) {
206  m_cacheID_ = cacheID;
207  edm::LogInfo("SiStripMonitorDigi") << "SiStripMonitorDigi::bookHistograms: "
208  << " Creating MEs for new Cabling ";
209  createMEs(ibooker, es);
210  }
211  } else if (reset_each_run) {
212  edm::LogInfo("SiStripMonitorDigi") << "SiStripMonitorDigi::bookHistograms: "
213  << " Resetting MEs ";
214  for (std::map<uint32_t, ModMEs>::const_iterator idet = DigiMEs.begin(); idet != DigiMEs.end(); idet++) {
215  ResetModuleMEs(idet->first);
216  }
217  }
218 }

References createMEs(), DigiMEs, edm::EventSetup::get(), m_cacheID_, reset_each_run, ResetModuleMEs(), and show_mechanical_structure_view.

◆ bookLayer()

void SiStripMonitorDigi::bookLayer ( DQMStore::IBooker ibooker)
private

◆ bookME1D()

SiStripMonitorDigi::MonitorElement * SiStripMonitorDigi::bookME1D ( DQMStore::IBooker ibooker,
const char *  ParameterSetLabel,
const char *  HistoName 
)
private

Definition at line 992 of file SiStripMonitorDigi.cc.

994  {
996  return ibooker.book1D(HistoName,
997  HistoName,
998  Parameters.getParameter<int32_t>("Nbinx"),
999  Parameters.getParameter<double>("xmin"),
1000  Parameters.getParameter<double>("xmax"));
1001 }

References conf_, and edm::ParameterSet::getParameter().

Referenced by createLayerMEs(), and createModuleMEs().

◆ bookMETrend()

SiStripMonitorDigi::MonitorElement * SiStripMonitorDigi::bookMETrend ( DQMStore::IBooker ibooker,
const char *  ParameterSetLabel,
const char *  HistoName 
)
private

Definition at line 966 of file SiStripMonitorDigi.cc.

968  {
969  edm::ParameterSet ParametersTrend = conf_.getParameter<edm::ParameterSet>("Trending");
970  MonitorElement* me =
971  ibooker.bookProfile(HistoName,
972  HistoName,
973  ParametersTrend.getParameter<int32_t>("Nbins"),
974  // 0,
975  ParametersTrend.getParameter<double>("xmin"),
976  ParametersTrend.getParameter<double>("xmax"),
977  // ParametersTrend.getParameter<int32_t>("Nbins"),
978  100, //that parameter should not be there !?
979  ParametersTrend.getParameter<double>("ymin"),
980  ParametersTrend.getParameter<double>("ymax"),
981  "");
982  if (!me)
983  return me;
984 
985  me->setAxisTitle("Lumisection", 1);
986  if (me->kind() == MonitorElement::Kind::TPROFILE)
987  me->getTH1()->SetCanExtend(TH1::kAllAxes);
988  return me;
989 }

References conf_, edm::ParameterSet::getParameter(), hlt_dqm_clientPB-live_cfg::me, and MonitorElementData::TPROFILE.

Referenced by createLayerMEs().

◆ bookTrendMEs()

void SiStripMonitorDigi::bookTrendMEs ( DQMStore::IBooker ibooker,
const TString &  name,
int32_t  layer,
uint32_t  id,
std::string  flag 
)
private

◆ createLayerMEs()

void SiStripMonitorDigi::createLayerMEs ( DQMStore::IBooker ibooker,
std::string  label,
int  ndet 
)
private

Definition at line 1067 of file SiStripMonitorDigi.cc.

1067  {
1068  std::map<std::string, LayerMEs>::iterator iLayerME = LayerMEsMap.find(label);
1069  if (iLayerME == LayerMEsMap.end()) {
1070  SiStripHistoId hidmanager;
1071  LayerMEs layerMEs;
1072  layerMEs.LayerNumberOfDigis = nullptr;
1073  layerMEs.LayerNumberOfDigisTrend = nullptr;
1074  layerMEs.LayerADCsHottestStrip = nullptr;
1075  layerMEs.LayerADCsHottestStripTrend = nullptr;
1076  layerMEs.LayerADCsCoolestStrip = nullptr;
1077  layerMEs.LayerADCsCoolestStripTrend = nullptr;
1078  layerMEs.LayerDigiADCs = nullptr;
1079  layerMEs.LayerDigiADCsTrend = nullptr;
1080  layerMEs.LayerStripOccupancy = nullptr;
1081  layerMEs.LayerStripOccupancyTrend = nullptr;
1082  layerMEs.LayerNumberOfDigisProfile = nullptr;
1083  layerMEs.LayerDigiADCProfile = nullptr;
1084 
1085  //#Digis
1086  if (layerswitchnumdigison) {
1087  layerMEs.LayerNumberOfDigis =
1088  bookME1D(ibooker,
1089  "TH1NumberOfDigis",
1090  hidmanager.createHistoLayer("Summary_TotalNumberOfDigis", "layer", label, "").c_str());
1091  if (createTrendMEs)
1092  layerMEs.LayerNumberOfDigisTrend =
1093  bookMETrend(ibooker,
1094  "TH1NumberOfDigis",
1095  hidmanager.createHistoLayer("Trend_NumberOfDigis", "layer", label, "").c_str());
1096  }
1097 
1098  //#ADCs for hottest strip
1100  layerMEs.LayerADCsHottestStrip =
1101  bookME1D(ibooker,
1102  "TH1ADCsHottestStrip",
1103  hidmanager.createHistoLayer("Summary_ADCsHottestStrip", "layer", label, "").c_str());
1104  if (createTrendMEs)
1105  layerMEs.LayerADCsHottestStripTrend =
1106  bookMETrend(ibooker,
1107  "TH1ADCsHottestStrip",
1108  hidmanager.createHistoLayer("Trend_ADCsHottestStrip", "layer", label, "").c_str());
1109  }
1110 
1111  //#ADCs for coolest strip
1113  layerMEs.LayerADCsCoolestStrip =
1114  bookME1D(ibooker,
1115  "TH1ADCsCoolestStrip",
1116  hidmanager.createHistoLayer("Summary_ADCsCoolestStrip", "layer", label, "").c_str());
1117  if (createTrendMEs)
1118  layerMEs.LayerADCsCoolestStripTrend =
1119  bookMETrend(ibooker,
1120  "TH1ADCsCoolestStrip",
1121  hidmanager.createHistoLayer("Trend_ADCsCoolestStrip", "layer", label, "").c_str());
1122  }
1123 
1124  //#ADCs for each digi
1125  if (layerswitchdigiadcson) {
1126  layerMEs.LayerDigiADCs =
1127  bookME1D(ibooker, "TH1DigiADCs", hidmanager.createHistoLayer("Summary_DigiADCs", "layer", label, "").c_str());
1128  if (createTrendMEs)
1129  layerMEs.LayerDigiADCsTrend = bookMETrend(
1130  ibooker, "TH1DigiADCs", hidmanager.createHistoLayer("Trend_DigiADCs", "layer", label, "").c_str());
1131  }
1132 
1133  //Strip Occupancy
1135  layerMEs.LayerStripOccupancy =
1136  bookME1D(ibooker,
1137  "TH1StripOccupancy",
1138  hidmanager.createHistoLayer("Summary_StripOccupancy", "layer", label, "").c_str());
1139  if (createTrendMEs)
1140  layerMEs.LayerStripOccupancyTrend =
1141  bookMETrend(ibooker,
1142  "TH1StripOccupancy",
1143  hidmanager.createHistoLayer("Trend_StripOccupancy", "layer", label, "").c_str());
1144  }
1145  // # of Digis
1147  std::string hid = hidmanager.createHistoLayer("NumberOfDigiProfile", "layer", label, "");
1148  layerMEs.LayerNumberOfDigisProfile = ibooker.bookProfile(hid, hid, ndets, 0.5, ndets + 0.5, 21, -0.5, 200.5);
1149  }
1150 
1151  // # of Digis
1153  std::string hid = hidmanager.createHistoLayer("DigiADCProfile", "layer", label, "");
1154  layerMEs.LayerDigiADCProfile = ibooker.bookProfile(hid, hid, ndets, 0.5, ndets + 0.5, 64, -0.5, 255.5);
1155  }
1156 
1157  LayerMEsMap[label] = layerMEs;
1158  }
1159 }

References bookME1D(), bookMETrend(), SiStripHistoId::createHistoLayer(), createTrendMEs, label, SiStripMonitorDigi::LayerMEs::LayerADCsCoolestStrip, SiStripMonitorDigi::LayerMEs::LayerADCsCoolestStripTrend, SiStripMonitorDigi::LayerMEs::LayerADCsHottestStrip, SiStripMonitorDigi::LayerMEs::LayerADCsHottestStripTrend, SiStripMonitorDigi::LayerMEs::LayerDigiADCProfile, SiStripMonitorDigi::LayerMEs::LayerDigiADCs, SiStripMonitorDigi::LayerMEs::LayerDigiADCsTrend, LayerMEsMap, SiStripMonitorDigi::LayerMEs::LayerNumberOfDigis, SiStripMonitorDigi::LayerMEs::LayerNumberOfDigisProfile, SiStripMonitorDigi::LayerMEs::LayerNumberOfDigisTrend, SiStripMonitorDigi::LayerMEs::LayerStripOccupancy, SiStripMonitorDigi::LayerMEs::LayerStripOccupancyTrend, layerswitchadccooleston, layerswitchadchotteston, layerswitchdigiadcprofon, layerswitchdigiadcson, layerswitchnumdigison, layerswitchnumdigisprofon, layerswitchstripoccupancyon, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by createMEs().

◆ createMEs()

void SiStripMonitorDigi::createMEs ( DQMStore::IBooker ibooker,
const edm::EventSetup es 
)
private

Definition at line 312 of file SiStripMonitorDigi.cc.

312  {
314  //Retrieve tracker topology from geometry
315  edm::ESHandle<TrackerTopology> tTopoHandle;
316  es.get<TrackerTopologyRcd>().get(tTopoHandle);
317  const TrackerTopology* const tTopo = tTopoHandle.product();
318  edm::ESHandle<TkDetMap> tkDetMapHandle;
319  es.get<TrackerTopologyRcd>().get(tkDetMapHandle);
320  const TkDetMap* tkDetMap = tkDetMapHandle.product();
321 
322  // take from eventSetup the SiStripDetCabling object - here will use SiStripDetControl later on
324 
325  // get list of active detectors from SiStripDetCabling
326  std::vector<uint32_t> activeDets;
327  activeDets.clear(); // just in case
329 
330  // remove any eventual zero elements - there should be none, but just in case
331  for (std::vector<uint32_t>::iterator idets = activeDets.begin(); idets != activeDets.end(); idets++) {
332  if (*idets == 0)
333  activeDets.erase(idets);
334  }
335 
336  // create SiStripFolderOrganizer
338 
339  // Create TkHistoMap for Digi and APV shots properies
340 
341  if (digitkhistomapon)
342  tkmapdigi = std::make_unique<TkHistoMap>(tkDetMap, ibooker, topFolderName_, "TkHMap_NumberOfDigi", 0.0, true);
343  if (shotshistomapon)
344  tkmapNApvshots = std::make_unique<TkHistoMap>(tkDetMap, ibooker, topFolderName_, "TkHMap_NApvShots", 0.0, true);
347  std::make_unique<TkHistoMap>(tkDetMap, ibooker, topFolderName_, "TkHMap_NStripApvShots", 0.0, true);
350  std::make_unique<TkHistoMap>(tkDetMap, ibooker, topFolderName_, "TkHMap_MedianChargeApvShots", 0.0, true);
351 
352  std::vector<uint32_t> tibDetIds;
353 
354  // loop over detectors and book MEs
355  edm::LogInfo("SiStripTkDQM|SiStripMonitorDigi") << "nr. of activeDets: " << activeDets.size();
356  for (std::vector<uint32_t>::const_iterator detid_iterator = activeDets.begin(); detid_iterator != activeDets.end();
357  detid_iterator++) {
358  uint32_t detid = (*detid_iterator);
359 
360  ModMEs local_modmes;
361 
362  local_modmes.NumberOfDigis = nullptr;
363  local_modmes.NumberOfDigisPerStrip = nullptr;
364  local_modmes.ADCsHottestStrip = nullptr;
365  local_modmes.ADCsCoolestStrip = nullptr;
366  local_modmes.DigiADCs = nullptr;
367  local_modmes.StripOccupancy = nullptr;
368 
369  if (Mod_On_) {
370  // set appropriate folder using SiStripFolderOrganizer
371  folder_organizer.setDetectorFolder(detid, tTopo); // pass the detid to this method
372  if (reset_each_run)
373  ResetModuleMEs(detid);
374  createModuleMEs(ibooker, local_modmes, detid);
375 
376  // append to DigiMEs
377  DigiMEs.insert(std::make_pair(detid, local_modmes));
378  }
379 
380  // Create Layer Level MEs if they are not created already
381  std::pair<std::string, int32_t> det_layer_pair = folder_organizer.GetSubDetAndLayer(detid, tTopo);
382  SiStripHistoId hidmanager;
383  std::string label = hidmanager.getSubdetid(detid, tTopo, false);
384 
385  // get detids for the layer
386  std::map<std::string, LayerMEs>::iterator iLayerME = LayerMEsMap.find(label);
387 
388  if (iLayerME == LayerMEsMap.end()) {
389  int32_t lnumber = det_layer_pair.second;
390  std::vector<uint32_t> layerDetIds;
391  if (det_layer_pair.first == "TIB") {
392  SiStripSubStructure::getTIBDetectors(activeDets, layerDetIds, tTopo, lnumber, 0, 0, 0);
393  } else if (det_layer_pair.first == "TOB") {
394  SiStripSubStructure::getTOBDetectors(activeDets, layerDetIds, tTopo, lnumber, 0, 0);
395  } else if (det_layer_pair.first == "TID" && lnumber > 0) {
396  SiStripSubStructure::getTIDDetectors(activeDets, layerDetIds, tTopo, 2, abs(lnumber), 0, 0);
397  } else if (det_layer_pair.first == "TID" && lnumber < 0) {
398  SiStripSubStructure::getTIDDetectors(activeDets, layerDetIds, tTopo, 1, abs(lnumber), 0, 0);
399  } else if (det_layer_pair.first == "TEC" && lnumber > 0) {
400  SiStripSubStructure::getTECDetectors(activeDets, layerDetIds, tTopo, 2, abs(lnumber), 0, 0, 0, 0);
401  } else if (det_layer_pair.first == "TEC" && lnumber < 0) {
402  SiStripSubStructure::getTECDetectors(activeDets, layerDetIds, tTopo, 1, abs(lnumber), 0, 0, 0, 0);
403  }
404 
405  LayerDetMap[label] = layerDetIds;
406 
407  // book Layer plots
408  folder_organizer.setLayerFolder(detid, tTopo, det_layer_pair.second);
409  createLayerMEs(ibooker, label, layerDetIds.size());
410  }
411 
412  // book sub-detector plots
413  auto sdet_pair = folder_organizer.getSubDetFolderAndTag(detid, tTopo);
414  if (SubDetMEsMap.find(sdet_pair.second) == SubDetMEsMap.end()) {
415  ibooker.setCurrentFolder(sdet_pair.first);
416  createSubDetMEs(ibooker, sdet_pair.second);
417  }
418 
419  } //end of loop over detectors
420 
421  //book some Summary histograms on APV shots in the MechanicalView
422 
423  ibooker.setCurrentFolder(topFolderName_ + "/MechanicalView/");
424 
426  const char* HistoName = "Summary Mean Apv shots for SubDets";
427  NApvShotsGlobalProf = ibooker.bookProfile(HistoName, HistoName, 6, 0.5, 6.5, 100, 0., 0., "");
434  NApvShotsGlobalProf->setAxisTitle(" mean APV shots # / evt", 2);
435  }
436 
437  //cumulative number of APV shots Vs Time
440  const char* HistoName = "NApv_Shots_vs_Time";
441  ShotsVsTimeApvShotsGlobal = ibooker.bookProfile(HistoName,
442  HistoName,
443  Parameters.getParameter<int32_t>("Nbins"),
444  Parameters.getParameter<double>("xmin"),
445  Parameters.getParameter<double>("xmax"),
446  200, //that parameter should not be there !?
447  Parameters.getParameter<double>("ymin"),
448  Parameters.getParameter<double>("ymax"),
449  "");
450  ShotsVsTimeApvShotsGlobal->setAxisTitle("Time (s)", 1);
451  ShotsVsTimeApvShotsGlobal->setAxisTitle("# Apv Shots", 2);
453  ShotsVsTimeApvShotsGlobal->getTH1()->SetCanExtend(TH1::kAllAxes);
454  }
455 
456  //cumulative number of Strips in APV shots
459  const char* HistoName = "Number_of_Strips_in_Apv_Shots";
461  HistoName,
462  Parameters.getParameter<int32_t>("Nbins"),
463  Parameters.getParameter<double>("xmin"),
464  Parameters.getParameter<double>("xmax"));
465  StripMultiplicityApvShotsGlobal->setAxisTitle("# strips in Apv Shots", 1);
466  }
467 
468  //cumulative number of APV shots
471  const char* HistoName = "Number_of_Apv_Shots";
472  NApvShotsGlobal = ibooker.book1D(HistoName,
473  HistoName,
474  Parameters.getParameter<int32_t>("Nbins"),
475  Parameters.getParameter<double>("xmin"),
476  Parameters.getParameter<double>("xmax"));
477  NApvShotsGlobal->setAxisTitle("# Apv Shots", 1);
478  }
479 
480  //cumulative Median Charge in APV shots
482  edm::ParameterSet Parameters = conf_.getParameter<edm::ParameterSet>("TH1ChargeMedianApvShots");
483  //dqmStore_->setCurrentFolder("SiStrip/MechanicalView/"+label);
484  const char* HistoName = "Apv_Shots_Charge_Median";
485  MedianChargeApvShotsGlobal = ibooker.book1D(HistoName,
486  HistoName,
487  Parameters.getParameter<int32_t>("Nbins"),
488  Parameters.getParameter<double>("xmin"),
489  Parameters.getParameter<double>("xmax"));
490  MedianChargeApvShotsGlobal->setAxisTitle("Apv Shots Charge Median (ADC)", 1);
491  }
492 
493  //cmulative APV number with shots
496  //dqmStore_->setCurrentFolder("SiStrip/MechanicalView/"+label);
497  const char* HistoName = "Apv_Shots_Apv_Number";
498  NApvApvShotsGlobal = ibooker.book1D(HistoName,
499  HistoName,
500  Parameters.getParameter<int32_t>("Nbins"),
501  Parameters.getParameter<double>("xmin"),
502  Parameters.getParameter<double>("xmax"));
503  NApvApvShotsGlobal->setAxisTitle("Apv Number", 1);
504  }
505 
507  // Number of digis per FED
508  edm::ParameterSet FEDDigi = conf_.getParameter<edm::ParameterSet>("TProfNDigisFED");
509  const char* HistoName = "NumberOfDigisinFED_v_FEDID";
510  //Using TProfile for average.
511  NumberOfFEDDigis = ibooker.bookProfile(HistoName,
512  HistoName,
513  FEDDigi.getParameter<int32_t>("Nbinsx"),
514  FEDDigi.getParameter<double>("xmin"),
515  FEDDigi.getParameter<double>("xmax"),
516  FEDDigi.getParameter<int32_t>("Nbinsy"),
517  FEDDigi.getParameter<double>("ymin"),
518  FEDDigi.getParameter<double>("ymax"),
519  "");
520  NumberOfFEDDigis->setAxisTitle("FED ID", 1);
521  NumberOfFEDDigis->setAxisTitle("Mean # of Digis in FED", 2);
522  }
523 
524  //
525  // Book new histogram to monitor digi in last LS
526  //
527 
530 
531  std::stringstream ss;
532 
534  ibooker.setCurrentFolder(ss.str());
535 
537  const char* HistoName = "NumberOfDigisInLastLS";
538  digiFailureMEs.SubDetTotDigiProfLS = ibooker.bookProfile(HistoName, HistoName, 6, 0.5, 6.5, 0., 0., "");
545  }
546 
548  std::string HistoName = "DataPresentInLS";
549  edm::ParameterSet Parameters = conf_.getParameter<edm::ParameterSet>("TotalNumberOfDigisFailure");
550 
552  HistoName,
553  Parameters.getParameter<int32_t>("Nbins"), //bins X
554  1, //xmin
555  Parameters.getParameter<int32_t>("Nbins") + 1, //xmax
556  6, //bins Y
557  0, //ymin
558  6); //ymax
559 
566  digiFailureMEs.SubDetDigiFailures2D->setAxisTitle("Luminosity Section");
567  }
568  } //end of if
569 
570 } //end of method

References funct::abs(), SiStripMonitorDigi::ModMEs::ADCsCoolestStrip, SiStripMonitorDigi::ModMEs::ADCsHottestStrip, SiStripDetCabling::addActiveDetectorsRawIds(), conf_, createLayerMEs(), createModuleMEs(), createSubDetMEs(), SiStripMonitorDigi::ModMEs::DigiADCs, digiFailureMEs, DigiMEs, digitkhistomapon, folder_organizer, edm::EventSetup::get(), get, SiStripFolderOrganizer::getLayerFolderName(), edm::ParameterSet::getParameter(), SiStripFolderOrganizer::GetSubDetAndLayer(), SiStripFolderOrganizer::getSubDetFolderAndTag(), SiStripHistoId::getSubdetid(), SiStripSubStructure::getTECDetectors(), dqm::impl::MonitorElement::getTH1(), SiStripSubStructure::getTIBDetectors(), SiStripSubStructure::getTIDDetectors(), SiStripSubStructure::getTOBDetectors(), globalsummaryapvshotson, globalswitchapvshotsApvon, globalswitchapvshotsonprof, globalswitchchargemedianapvshotson, globalswitchnapvshotson, globalswitchNDigisFEDID, globalswitchnstripsapvshotson, dqm::impl::MonitorElement::kind(), label, LayerDetMap, LayerMEsMap, MedianChargeApvShotsGlobal, Mod_On_, NApvApvShotsGlobal, NApvShotsGlobal, NApvShotsGlobalProf, SiStripMonitorDigi::ModMEs::NumberOfDigis, SiStripMonitorDigi::ModMEs::NumberOfDigisPerStrip, NumberOfFEDDigis, edm::ESHandle< T >::product(), reset_each_run, ResetModuleMEs(), dqm::impl::MonitorElement::setAxisTitle(), dqm::impl::MonitorElement::setBinLabel(), SiStripFolderOrganizer::setDetectorFolder(), SiStripFolderOrganizer::setLayerFolder(), shotschargehistomapon, shotshistomapon, shotsstripshistomapon, ShotsVsTimeApvShotsGlobal, show_mechanical_structure_view, SiStripDetCabling_, contentValuesCheck::ss, AlCaHLTBitMon_QueryRunRegistry::string, StripMultiplicityApvShotsGlobal, SiStripMonitorDigi::ModMEs::StripOccupancy, SiStripMonitorDigi::DigiFailureMEs::SubDetDigiFailures2D, SubDetMEsMap, subdetswitchtotdigifailureon, SiStripMonitorDigi::DigiFailureMEs::SubDetTotDigiProfLS, tkmapdigi, tkmapMedianChargeApvshots, tkmapNApvshots, tkmapNstripApvshot, topFolderName_, and MonitorElementData::TPROFILE.

Referenced by bookHistograms().

◆ createModuleMEs()

void SiStripMonitorDigi::createModuleMEs ( DQMStore::IBooker ibooker,
ModMEs mod_single,
uint32_t  detid 
)
private

Definition at line 1013 of file SiStripMonitorDigi.cc.

1013  {
1014  // use SistripHistoId for producing histogram id (and title)
1015  SiStripHistoId hidmanager;
1016  std::string hid;
1017 
1018  //nr. of digis per module
1019  if (moduleswitchnumdigison) {
1020  hid = hidmanager.createHistoId("NumberOfDigis", "det", detid);
1021  mod_single.NumberOfDigis = ibooker.book1D(hid, hid, 21, -0.5, 20.5);
1022  mod_single.NumberOfDigis->setAxisTitle("number of digis in one detector module");
1023  mod_single.NumberOfDigis->setStatOverflows(kTRUE); // over/underflows in Mean calculation
1024  }
1025 
1026  //nr. of digis per strip in module
1028  hid = hidmanager.createHistoId("NumberOfDigisPerStrip", "det", detid);
1029  short nstrips = SiStripDetCabling_->nApvPairs(detid) * 2 * 128;
1030  mod_single.NumberOfDigisPerStrip = ibooker.book1D(hid, hid, nstrips, -0.5, nstrips + 0.5);
1031  mod_single.NumberOfDigisPerStrip->setAxisTitle("number of (digis > 0) per strip");
1032  mod_single.NumberOfDigisPerStrip->setStatOverflows(kTRUE); // over/underflows in Mean calculation
1033  }
1034  //#ADCs for hottest strip
1036  hid = hidmanager.createHistoId("ADCsHottestStrip", "det", detid);
1037  mod_single.ADCsHottestStrip = bookME1D(ibooker, "TH1ADCsHottestStrip", hid.c_str());
1038  mod_single.ADCsHottestStrip->setAxisTitle("number of ADCs for hottest strip");
1039  }
1040 
1041  //#ADCs for coolest strip
1043  hid = hidmanager.createHistoId("ADCsCoolestStrip", "det", detid);
1044  mod_single.ADCsCoolestStrip = bookME1D(ibooker, "TH1ADCsCoolestStrip", hid.c_str());
1045  mod_single.ADCsCoolestStrip->setAxisTitle("number of ADCs for coolest strip");
1046  }
1047 
1048  //#ADCs for each digi
1049  if (moduleswitchdigiadcson) {
1050  hid = hidmanager.createHistoId("DigiADCs", "det", detid);
1051  mod_single.DigiADCs = bookME1D(ibooker, "TH1DigiADCs", hid.c_str());
1052  mod_single.DigiADCs->setAxisTitle("number of ADCs for each digi");
1053  }
1054 
1055  //Strip occupancy
1057  hid = hidmanager.createHistoId("StripOccupancy", "det", detid);
1058  mod_single.StripOccupancy = bookME1D(ibooker, "TH1StripOccupancy", hid.c_str());
1059  mod_single.StripOccupancy->setAxisTitle("strip occupancy");
1060  }
1061 }

References SiStripMonitorDigi::ModMEs::ADCsCoolestStrip, SiStripMonitorDigi::ModMEs::ADCsHottestStrip, bookME1D(), SiStripHistoId::createHistoId(), SiStripMonitorDigi::ModMEs::DigiADCs, moduleswitchadccooleston, moduleswitchadchotteston, moduleswitchdigiadcson, moduleswitchnumdigison, moduleswitchnumdigispstripon, moduleswitchstripoccupancyon, SiStripDetCabling::nApvPairs(), SiStripMonitorDigi::ModMEs::NumberOfDigis, SiStripMonitorDigi::ModMEs::NumberOfDigisPerStrip, dqm::impl::MonitorElement::setAxisTitle(), dqm::impl::MonitorElement::setStatOverflows(), SiStripDetCabling_, AlCaHLTBitMon_QueryRunRegistry::string, and SiStripMonitorDigi::ModMEs::StripOccupancy.

Referenced by createMEs().

◆ createSubDetMEs()

void SiStripMonitorDigi::createSubDetMEs ( DQMStore::IBooker ibooker,
std::string  label 
)
private

Definition at line 1163 of file SiStripMonitorDigi.cc.

1163  {
1164  SubDetMEs subdetMEs;
1165  subdetMEs.totNDigis = 0;
1166  subdetMEs.SubDetTotDigiProf = nullptr;
1167  subdetMEs.SubDetDigiApvProf = nullptr;
1168  subdetMEs.SubDetDigiApvTH2 = nullptr;
1169 
1170  subdetMEs.SubDetApvShots.clear();
1171  subdetMEs.SubDetNApvShotsTH1 = nullptr;
1172  subdetMEs.SubDetChargeMedianApvShotsTH1 = nullptr;
1173  subdetMEs.SubDetNStripsApvShotsTH1 = nullptr;
1174  subdetMEs.SubDetNApvShotsProf = nullptr;
1175 
1177 
1178  // Total Number of Digi - Profile
1180  edm::ParameterSet Parameters = conf_.getParameter<edm::ParameterSet>("TProfTotalNumberOfDigis");
1181  HistoName = "TotalNumberOfDigiProfile__" + label;
1182  subdetMEs.SubDetTotDigiProf = ibooker.bookProfile(HistoName,
1183  HistoName,
1184  Parameters.getParameter<int32_t>("Nbins"),
1185  Parameters.getParameter<double>("xmin"),
1186  Parameters.getParameter<double>("xmax"),
1187  100, //that parameter should not be there !?
1188  Parameters.getParameter<double>("ymin"),
1189  Parameters.getParameter<double>("ymax"),
1190  "");
1191  subdetMEs.SubDetTotDigiProf->setAxisTitle("Lumisection", 1);
1192 
1193  if (subdetMEs.SubDetTotDigiProf->kind() == MonitorElement::Kind::TPROFILE)
1194  subdetMEs.SubDetTotDigiProf->getTH1()->SetCanExtend(TH1::kAllAxes);
1195  }
1196 
1197  // Number of Digi vs Bx - Profile
1200  HistoName = "Digi_vs_ApvCycle__" + label;
1201  subdetMEs.SubDetDigiApvProf = ibooker.bookProfile(HistoName,
1202  HistoName,
1203  Parameters.getParameter<int32_t>("Nbins"),
1204  Parameters.getParameter<double>("xmin"),
1205  Parameters.getParameter<double>("xmax"),
1206  200, //that parameter should not be there !?
1207  Parameters.getParameter<double>("ymin"),
1208  Parameters.getParameter<double>("ymax"),
1209  "");
1210  subdetMEs.SubDetDigiApvProf->setAxisTitle("ApvCycle (Corrected Absolute Bx % 70)", 1);
1211  }
1212 
1213  // Number of Digi vs Bx - TH2
1216  //dqmStore_->setCurrentFolder("SiStrip/MechanicalView/"+label);
1217  HistoName = "Digi_vs_ApvCycle_2D__" + label;
1218  // Adjusting the scale for 2D histogram
1219  double h2ymax = 9999.0;
1220  double yfact = Parameters.getParameter<double>("yfactor");
1221  if (label.find("TIB") != std::string::npos)
1222  h2ymax = (6984. * 256.) * yfact;
1223  else if (label.find("TID") != std::string::npos)
1224  h2ymax = (2208. * 256.) * yfact;
1225  else if (label.find("TOB") != std::string::npos)
1226  h2ymax = (12906. * 256.) * yfact;
1227  else if (label.find("TEC") != std::string::npos)
1228  h2ymax = (7552. * 2. * 256.) * yfact;
1229  subdetMEs.SubDetDigiApvTH2 =
1230  ibooker.book2D(HistoName,
1231  HistoName,
1232  Parameters.getParameter<int32_t>("Nbins"),
1233  Parameters.getParameter<double>("xmin"),
1234  Parameters.getParameter<double>("xmax"),
1235  Parameters.getParameter<int32_t>("Nbinsy"), //it was 100 that parameter should not be there !?
1236  Parameters.getParameter<double>("ymin"),
1237  h2ymax);
1238  subdetMEs.SubDetDigiApvTH2->setAxisTitle("absolute Bx mod(70)", 1);
1239  }
1240 
1241  //Number of APV Shots
1244  //dqmStore_->setCurrentFolder("SiStrip/MechanicalView/"+label);
1245  HistoName = "Number_of_Apv_Shots_" + label;
1246  subdetMEs.SubDetNApvShotsTH1 = ibooker.book1D(HistoName,
1247  HistoName,
1248  Parameters.getParameter<int32_t>("Nbins"),
1249  Parameters.getParameter<double>("xmin"),
1250  Parameters.getParameter<double>("xmax"));
1251  subdetMEs.SubDetNApvShotsTH1->setAxisTitle("# Apv Shots", 1);
1252  }
1253 
1254  //Strip multiplicity of APV Shots
1257  //dqmStore_->setCurrentFolder("SiStrip/MechanicalView/"+label);
1258  HistoName = "Number_of_Strips_in_Apv_Shots_" + label;
1259  subdetMEs.SubDetNStripsApvShotsTH1 = ibooker.book1D(HistoName,
1260  HistoName,
1261  Parameters.getParameter<int32_t>("Nbins"),
1262  Parameters.getParameter<double>("xmin"),
1263  Parameters.getParameter<double>("xmax"));
1264  subdetMEs.SubDetNStripsApvShotsTH1->setAxisTitle("# strips in Apv Shots", 1);
1265  }
1266 
1267  //Charge median of APV Shots
1269  edm::ParameterSet Parameters = conf_.getParameter<edm::ParameterSet>("TH1ChargeMedianApvShots");
1270  //dqmStore_->setCurrentFolder("SiStrip/MechanicalView/"+label);
1271  HistoName = "Apv_Shots_Charge_Median_" + label;
1272  subdetMEs.SubDetChargeMedianApvShotsTH1 = ibooker.book1D(HistoName,
1273  HistoName,
1274  Parameters.getParameter<int32_t>("Nbins"),
1275  Parameters.getParameter<double>("xmin"),
1276  Parameters.getParameter<double>("xmax"));
1277  subdetMEs.SubDetChargeMedianApvShotsTH1->setAxisTitle("Apv Shots Charge Median (ADC)", 1);
1278  }
1279 
1282  //dqmStore_->setCurrentFolder("SiStrip/MechanicalView/"+label);
1283  HistoName = "Apv_Shots_Apv_Number_" + label;
1284  subdetMEs.SubDetNApvShotsNApvTH1 = ibooker.book1D(HistoName,
1285  HistoName,
1286  Parameters.getParameter<int32_t>("Nbins"),
1287  Parameters.getParameter<double>("xmin"),
1288  Parameters.getParameter<double>("xmax"));
1289  subdetMEs.SubDetNApvShotsNApvTH1->setAxisTitle("Apv Number", 1);
1290  }
1291 
1292  //APV Shots number Vs time
1295  HistoName = "NApv_Shots_vs_Time_" + label;
1296  subdetMEs.SubDetNApvShotsProf = ibooker.bookProfile(HistoName,
1297  HistoName,
1298  Parameters.getParameter<int32_t>("Nbins"),
1299  Parameters.getParameter<double>("xmin"),
1300  Parameters.getParameter<double>("xmax"),
1301  200, //that parameter should not be there !?
1302  Parameters.getParameter<double>("ymin"),
1303  Parameters.getParameter<double>("ymax"),
1304  "");
1305  subdetMEs.SubDetNApvShotsProf->setAxisTitle("Time (s)", 1);
1306  subdetMEs.SubDetNApvShotsProf->setAxisTitle("# Apv Shots", 2);
1307  if (subdetMEs.SubDetNApvShotsProf->kind() == MonitorElement::Kind::TPROFILE)
1308  subdetMEs.SubDetNApvShotsProf->getTH1()->SetCanExtend(TH1::kAllAxes);
1309  }
1310 
1311  SubDetMEsMap[label] = subdetMEs;
1312 }

References conf_, edm::ParameterSet::getParameter(), dqm::impl::MonitorElement::getTH1(), dqm::impl::MonitorElement::kind(), label, dqm::impl::MonitorElement::setAxisTitle(), AlCaHLTBitMon_QueryRunRegistry::string, SiStripMonitorDigi::SubDetMEs::SubDetApvShots, SiStripMonitorDigi::SubDetMEs::SubDetChargeMedianApvShotsTH1, SiStripMonitorDigi::SubDetMEs::SubDetDigiApvProf, SiStripMonitorDigi::SubDetMEs::SubDetDigiApvTH2, SubDetMEsMap, SiStripMonitorDigi::SubDetMEs::SubDetNApvShotsNApvTH1, SiStripMonitorDigi::SubDetMEs::SubDetNApvShotsProf, SiStripMonitorDigi::SubDetMEs::SubDetNApvShotsTH1, SiStripMonitorDigi::SubDetMEs::SubDetNStripsApvShotsTH1, subdetswitchapvcycleprofon, subdetswitchapvcycleth2on, subdetswitchapvshotsonprof, subdetswitchchargemedianapvshotson, subdetswitchnapvshotson, subdetswitchnstripsapvshotson, subdetswitchtotdigiprofon, SiStripMonitorDigi::SubDetMEs::SubDetTotDigiProf, SiStripMonitorDigi::SubDetMEs::totNDigis, and MonitorElementData::TPROFILE.

Referenced by createMEs().

◆ createSubDetTH2()

void SiStripMonitorDigi::createSubDetTH2 ( DQMStore::IBooker ibooker,
std::string  label 
)
private

◆ dqmBeginRun()

void SiStripMonitorDigi::dqmBeginRun ( const edm::Run r,
const edm::EventSetup c 
)
overridevirtual

Reimplemented from DQMOneEDAnalyzer< edm::LuminosityBlockCache< bool > >.

Definition at line 221 of file SiStripMonitorDigi.cc.

221  {
223  //get FED cabling to know if SiStrip is in DAQ or no
224  unsigned long long cacheID = es.get<SiStripDetCablingRcd>().cacheIdentifier();
225  if (m_cacheID_ != cacheID) {
226  m_cacheID_ = cacheID;
227  }
229  es.get<SiStripDetCablingRcd>().get(detCabling_);
230 
231  //nFEDConnected = 0;
232  nFedTIB = 0;
233  nFedTIDm = 0;
234  nFedTIDp = 0;
235  nFedTECm = 0;
236  nFedTECp = 0;
237  nFedTOB = 0;
238 
239  //const int siStripFedIdMin = FEDNumbering::MINSiStripFEDID;
240  //const int siStripFedIdMax = FEDNumbering::MAXSiStripFEDID;
241 
242  if (auto runInfoRec = es.tryToGet<RunInfoRcd>()) {
243  edm::ESHandle<RunInfo> sumFED;
244  runInfoRec->get(sumFED);
245 
246  if (sumFED.isValid()) {
247  std::vector<int> FedsInIds = sumFED->m_fed_in;
248  for (unsigned int it = 0; it < FedsInIds.size(); ++it) {
249  int fedID = FedsInIds[it];
250  // if(fedID>=siStripFedIdMin && fedID<=siStripFedIdMax) ++nFEDConnected;
251  /* mia: but is there not a smarter way !?!?!? */
252  if (fedID >= 50 && fedID <= 133)
253  ++nFedTIB;
254  if (fedID >= 134 && fedID <= 148)
255  ++nFedTIDm;
256  if (fedID >= 149 && fedID <= 163)
257  ++nFedTIDp;
258  if (fedID >= 164 && fedID <= 259)
259  ++nFedTECm;
260  if (fedID >= 260 && fedID <= 355)
261  ++nFedTECp;
262  if (fedID >= 356 && fedID <= 489)
263  ++nFedTOB;
264  }
265  }
266  }
267  }
268 }

References edm::EventSetup::get(), get, edm::ESHandleBase::isValid(), m_cacheID_, RunInfo::m_fed_in, nFedTECm, nFedTECp, nFedTIB, nFedTIDm, nFedTIDp, nFedTOB, subdetswitchtotdigifailureon, and edm::EventSetup::tryToGet().

◆ FillApvShotsMap()

void SiStripMonitorDigi::FillApvShotsMap ( TkHistoMap the_map,
const std::vector< APVShot > &  shots,
uint32_t  id,
int  mode 
)
private

Definition at line 1335 of file SiStripMonitorDigi.cc.

1335  {
1336  for (uint i = 0; i < shots.size(); i++) {
1337  if (mode == 1)
1338  the_map->fill(id, shots[i].nStrips()); //mode == 1 fill with strip multiplicity
1339  if (mode == 2)
1340  the_map->fill(id, shots[i].median()); // mode == 2 fill with charge median
1341  }
1342 }

References TkHistoMap::fill(), mps_fire::i, pfParticleNetPreprocessParams_cfi::median, ALCARECOPromptCalibProdSiPixelAli0T_cff::mode, me0TriggerPseudoDigis_cff::nStrips, and parallelization::uint.

Referenced by analyze().

◆ fillDigiADCsMEs()

void SiStripMonitorDigi::fillDigiADCsMEs ( int  value,
std::string  name 
)
private

◆ fillME() [1/4]

void SiStripMonitorDigi::fillME ( MonitorElement ME,
float  value1 
)
inlineprivate

Definition at line 102 of file SiStripMonitorDigi.h.

102  {
103  if (ME != nullptr)
104  ME->Fill(value1);
105  }

References HLT_2018_cff::value1.

Referenced by analyze().

◆ fillME() [2/4]

void SiStripMonitorDigi::fillME ( MonitorElement ME,
float  value1,
float  value2 
)
inlineprivate

Definition at line 106 of file SiStripMonitorDigi.h.

106  {
107  if (ME != nullptr)
108  ME->Fill(value1, value2);
109  }

References HLT_2018_cff::value1, and HLT_2018_cff::value2.

◆ fillME() [3/4]

void SiStripMonitorDigi::fillME ( MonitorElement ME,
float  value1,
float  value2,
float  value3 
)
inlineprivate

Definition at line 110 of file SiStripMonitorDigi.h.

110  {
111  if (ME != nullptr)
112  ME->Fill(value1, value2, value3);
113  }

References HLT_2018_cff::value1, and HLT_2018_cff::value2.

◆ fillME() [4/4]

void SiStripMonitorDigi::fillME ( MonitorElement ME,
float  value1,
float  value2,
float  value3,
float  value4 
)
inlineprivate

Definition at line 114 of file SiStripMonitorDigi.h.

114  {
115  if (ME != nullptr)
116  ME->Fill(value1, value2, value3, value4);
117  }

References HLT_2018_cff::value1, and HLT_2018_cff::value2.

◆ fillTrend()

void SiStripMonitorDigi::fillTrend ( MonitorElement me,
float  value,
float  timeinorbit 
)
private

Definition at line 1004 of file SiStripMonitorDigi.cc.

1004  {
1005  if (!me)
1006  return;
1007  me->Fill(timeinorbit, value);
1008 }

References hlt_dqm_clientPB-live_cfg::me.

Referenced by analyze().

◆ getDigiSourceIndex()

int SiStripMonitorDigi::getDigiSourceIndex ( uint32_t  id)
private

Definition at line 1316 of file SiStripMonitorDigi.cc.

1316  {
1317  int location = -1;
1318  for (unsigned int ival = 0; ival < digi_detset_handles.size(); ++ival) {
1320  if (isearch != digi_detset_handles[ival]->end()) {
1321  location = ival;
1322  break;
1323  }
1324  }
1325  return location;
1326 }

References digi_detset_handles, end, and EcalCondDBWriter_cfi::location.

Referenced by analyze().

◆ globalBeginLuminosityBlock()

std::shared_ptr< bool > SiStripMonitorDigi::globalBeginLuminosityBlock ( const edm::LuminosityBlock lumi,
const edm::EventSetup iSetup 
) const
override

Definition at line 271 of file SiStripMonitorDigi.cc.

272  {
273  bool isStableBeams = false;
274  return std::make_shared<bool>(isStableBeams);
275 }

◆ globalEndLuminosityBlock()

void SiStripMonitorDigi::globalEndLuminosityBlock ( const edm::LuminosityBlock lumi,
const edm::EventSetup iSetup 
)
override

Definition at line 278 of file SiStripMonitorDigi.cc.

278  {
279  unsigned int currentLS = lb.id().luminosityBlock();
280  const bool isStableBeams = luminosityBlockCache(lb.index());
281  if (subdetswitchtotdigifailureon && isStableBeams && !SBTransitionDone) {
282  SBDeclaredAt = (int)currentLS;
283  SBTransitionDone = true;
284  }
285 
286  if (subdetswitchtotdigifailureon && currentLS % integrateNLumisections_ == 0) {
287  int nFeds[6] = {96, 96, 84, 15, 15, 134}; // tec- , tec+ , tib , tid- , tid+ , tob
288  int nFedsConnected[6] = {nFedTECm, nFedTECp, nFedTIB, nFedTIDm, nFedTIDp, nFedTOB};
289 
291  for (int ibin = 1; ibin < 7; ibin++) {
292  //the vector now has the sum from previous integrateNLumisections_
293  //whereas digiFailureMEs.SubDetTotDigiProfLS now has sum for all LS upto now.
296 
297  float fillvalue = 2;
298  if (isStableBeams
299  // && (int)lb.id().luminosityBlock() > ignoreFirstNLumisections_ //ignore first X lumisections for HV rampup
300  && ((int)currentLS - SBDeclaredAt) > ignoreFirstNLumisections_ &&
301  (float)nFedsConnected[ibin - 1] / nFeds[ibin - 1] > 0.5 && value < 50.) {
302  fillvalue = 1.01;
303  }
304  //account for integrated LS: fill previous bins as well
305  for (int fillbin = (int)currentLS - integrateNLumisections_ + 1; fillbin <= (int)currentLS; fillbin++)
306  digiFailureMEs.SubDetDigiFailures2D->Fill(fillbin, ibin - 1, fillvalue);
307  }
308  }
309  }
310 }

References digiFailureMEs, dqm::impl::MonitorElement::Fill(), dqm::impl::MonitorElement::getBinContent(), edm::LuminosityBlockBase::id(), ignoreFirstNLumisections_, edm::LuminosityBlock::index(), createfilelist::int, integrateNLumisections_, edm::LuminosityBlockID::luminosityBlock(), nFedTECm, nFedTECp, nFedTIB, nFedTIDm, nFedTIDp, nFedTOB, SBDeclaredAt, SBTransitionDone, SiStripMonitorDigi::DigiFailureMEs::SubDetDigiFailures2D, subdetswitchtotdigifailureon, SiStripMonitorDigi::DigiFailureMEs::SubDetTotDigiProfLS, and vecSubDetTotDigiProfLS.

◆ ResetModuleMEs()

void SiStripMonitorDigi::ResetModuleMEs ( uint32_t  idet)
private

Definition at line 948 of file SiStripMonitorDigi.cc.

948  {
949  std::map<uint32_t, ModMEs>::iterator pos = DigiMEs.find(idet);
950  ModMEs mod_me = pos->second;
951 
953  mod_me.NumberOfDigis->Reset();
955  mod_me.NumberOfDigisPerStrip->Reset();
957  mod_me.ADCsHottestStrip->Reset();
959  mod_me.ADCsCoolestStrip->Reset();
961  mod_me.DigiADCs->Reset();
963  mod_me.StripOccupancy->Reset();
964 }

References SiStripMonitorDigi::ModMEs::ADCsCoolestStrip, SiStripMonitorDigi::ModMEs::ADCsHottestStrip, SiStripMonitorDigi::ModMEs::DigiADCs, DigiMEs, Mod_On_, moduleswitchadccooleston, moduleswitchadchotteston, moduleswitchdigiadcson, moduleswitchnumdigison, moduleswitchnumdigispstripon, moduleswitchstripoccupancyon, SiStripMonitorDigi::ModMEs::NumberOfDigis, SiStripMonitorDigi::ModMEs::NumberOfDigisPerStrip, dqm::impl::MonitorElement::Reset(), and SiStripMonitorDigi::ModMEs::StripOccupancy.

Referenced by bookHistograms(), and createMEs().

Member Data Documentation

◆ apvPhaseProducer_

edm::InputTag SiStripMonitorDigi::apvPhaseProducer_
private

Definition at line 225 of file SiStripMonitorDigi.h.

Referenced by SiStripMonitorDigi().

◆ apvPhaseProducerToken_

edm::EDGetTokenT<APVCyclePhaseCollection> SiStripMonitorDigi::apvPhaseProducerToken_
private

Definition at line 228 of file SiStripMonitorDigi.h.

Referenced by analyze(), and SiStripMonitorDigi().

◆ calculate_strip_occupancy

bool SiStripMonitorDigi::calculate_strip_occupancy
private

Definition at line 134 of file SiStripMonitorDigi.h.

◆ conf_

edm::ParameterSet SiStripMonitorDigi::conf_
private

◆ createTrendMEs

bool SiStripMonitorDigi::createTrendMEs
private

Definition at line 219 of file SiStripMonitorDigi.h.

Referenced by analyze(), createLayerMEs(), and SiStripMonitorDigi().

◆ dcsStatus_

SiStripDCSStatus* SiStripMonitorDigi::dcsStatus_
private

Definition at line 231 of file SiStripMonitorDigi.h.

Referenced by analyze(), SiStripMonitorDigi(), and ~SiStripMonitorDigi().

◆ DetectedLayers

std::map<std::pair<std::string, int32_t>, bool> SiStripMonitorDigi::DetectedLayers
private

Definition at line 145 of file SiStripMonitorDigi.h.

◆ digi_detset_handles

std::vector<const edm::DetSetVector<SiStripDigi>*> SiStripMonitorDigi::digi_detset_handles
private

Definition at line 146 of file SiStripMonitorDigi.h.

Referenced by analyze(), and getDigiSourceIndex().

◆ digiFailureMEs

DigiFailureMEs SiStripMonitorDigi::digiFailureMEs
private

Definition at line 141 of file SiStripMonitorDigi.h.

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

◆ DigiMEs

std::map<uint32_t, ModMEs> SiStripMonitorDigi::DigiMEs
private

Definition at line 133 of file SiStripMonitorDigi.h.

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

◆ digiProducerList

std::vector<edm::InputTag> SiStripMonitorDigi::digiProducerList
private

Definition at line 131 of file SiStripMonitorDigi.h.

Referenced by analyze(), and SiStripMonitorDigi().

◆ digiProducerTokenList

std::vector<edm::EDGetTokenT<edm::DetSetVector<SiStripDigi> > > SiStripMonitorDigi::digiProducerTokenList
private

Definition at line 130 of file SiStripMonitorDigi.h.

Referenced by analyze(), and SiStripMonitorDigi().

◆ digitkhistomapon

bool SiStripMonitorDigi::digitkhistomapon
private

Definition at line 214 of file SiStripMonitorDigi.h.

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

◆ eventNb

int SiStripMonitorDigi::eventNb
private

Definition at line 158 of file SiStripMonitorDigi.h.

Referenced by analyze(), and SiStripMonitorDigi().

◆ firstEvent

int SiStripMonitorDigi::firstEvent
private

◆ folder_organizer

SiStripFolderOrganizer SiStripMonitorDigi::folder_organizer
private

Definition at line 144 of file SiStripMonitorDigi.h.

Referenced by analyze(), and createMEs().

◆ globalsummaryapvshotson

bool SiStripMonitorDigi::globalsummaryapvshotson
private

Definition at line 162 of file SiStripMonitorDigi.h.

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

◆ globalswitchapvshotsApvon

bool SiStripMonitorDigi::globalswitchapvshotsApvon
private

Definition at line 196 of file SiStripMonitorDigi.h.

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

◆ globalswitchapvshotsonprof

bool SiStripMonitorDigi::globalswitchapvshotsonprof
private

Definition at line 194 of file SiStripMonitorDigi.h.

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

◆ globalswitchchargemedianapvshotson

bool SiStripMonitorDigi::globalswitchchargemedianapvshotson
private

Definition at line 195 of file SiStripMonitorDigi.h.

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

◆ globalswitchnapvshotson

bool SiStripMonitorDigi::globalswitchnapvshotson
private

Definition at line 192 of file SiStripMonitorDigi.h.

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

◆ globalswitchNDigisFEDID

bool SiStripMonitorDigi::globalswitchNDigisFEDID
private

Definition at line 197 of file SiStripMonitorDigi.h.

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

◆ globalswitchnstripsapvshotson

bool SiStripMonitorDigi::globalswitchnstripsapvshotson
private

Definition at line 193 of file SiStripMonitorDigi.h.

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

◆ gtEvmToken_

edm::EDGetTokenT<L1GlobalTriggerEvmReadoutRecord> SiStripMonitorDigi::gtEvmToken_
private

Definition at line 229 of file SiStripMonitorDigi.h.

Referenced by analyze(), and SiStripMonitorDigi().

◆ historyProducer_

edm::InputTag SiStripMonitorDigi::historyProducer_
private

Definition at line 224 of file SiStripMonitorDigi.h.

Referenced by SiStripMonitorDigi().

◆ historyProducerToken_

edm::EDGetTokenT<EventWithHistory> SiStripMonitorDigi::historyProducerToken_
private

Definition at line 227 of file SiStripMonitorDigi.h.

Referenced by analyze(), and SiStripMonitorDigi().

◆ ignoreFirstNLumisections_

int SiStripMonitorDigi::ignoreFirstNLumisections_
private

Definition at line 200 of file SiStripMonitorDigi.h.

Referenced by globalEndLuminosityBlock(), and SiStripMonitorDigi().

◆ integrateNLumisections_

int SiStripMonitorDigi::integrateNLumisections_
private

Definition at line 201 of file SiStripMonitorDigi.h.

Referenced by globalEndLuminosityBlock(), and SiStripMonitorDigi().

◆ LayerDetMap

std::map<std::string, std::vector<uint32_t> > SiStripMonitorDigi::LayerDetMap
private

Definition at line 137 of file SiStripMonitorDigi.h.

Referenced by analyze(), and createMEs().

◆ LayerMEsMap

std::map<std::string, LayerMEs> SiStripMonitorDigi::LayerMEsMap
private

Definition at line 138 of file SiStripMonitorDigi.h.

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

◆ layerswitchadccooleston

bool SiStripMonitorDigi::layerswitchadccooleston
private

Definition at line 167 of file SiStripMonitorDigi.h.

Referenced by analyze(), createLayerMEs(), and SiStripMonitorDigi().

◆ layerswitchadchotteston

bool SiStripMonitorDigi::layerswitchadchotteston
private

Definition at line 166 of file SiStripMonitorDigi.h.

Referenced by analyze(), createLayerMEs(), and SiStripMonitorDigi().

◆ layerswitchdigiadcprofon

bool SiStripMonitorDigi::layerswitchdigiadcprofon
private

Definition at line 171 of file SiStripMonitorDigi.h.

Referenced by analyze(), createLayerMEs(), and SiStripMonitorDigi().

◆ layerswitchdigiadcson

bool SiStripMonitorDigi::layerswitchdigiadcson
private

Definition at line 168 of file SiStripMonitorDigi.h.

Referenced by analyze(), createLayerMEs(), and SiStripMonitorDigi().

◆ layerswitchnumdigisapvon

bool SiStripMonitorDigi::layerswitchnumdigisapvon
private

Definition at line 165 of file SiStripMonitorDigi.h.

◆ layerswitchnumdigison

bool SiStripMonitorDigi::layerswitchnumdigison
private

Definition at line 164 of file SiStripMonitorDigi.h.

Referenced by analyze(), createLayerMEs(), and SiStripMonitorDigi().

◆ layerswitchnumdigisprofon

bool SiStripMonitorDigi::layerswitchnumdigisprofon
private

Definition at line 170 of file SiStripMonitorDigi.h.

Referenced by analyze(), createLayerMEs(), and SiStripMonitorDigi().

◆ layerswitchstripoccupancyon

bool SiStripMonitorDigi::layerswitchstripoccupancyon
private

Definition at line 169 of file SiStripMonitorDigi.h.

Referenced by analyze(), createLayerMEs(), and SiStripMonitorDigi().

◆ m_cacheID_

unsigned long long SiStripMonitorDigi::m_cacheID_
private

Definition at line 148 of file SiStripMonitorDigi.h.

Referenced by bookHistograms(), and dqmBeginRun().

◆ m_trendVs10LS

bool SiStripMonitorDigi::m_trendVs10LS
private

Definition at line 221 of file SiStripMonitorDigi.h.

Referenced by analyze(), and SiStripMonitorDigi().

◆ MedianChargeApvShotsGlobal

MonitorElement * SiStripMonitorDigi::MedianChargeApvShotsGlobal
private

Definition at line 153 of file SiStripMonitorDigi.h.

Referenced by analyze(), and createMEs().

◆ Mod_On_

bool SiStripMonitorDigi::Mod_On_
private

Definition at line 212 of file SiStripMonitorDigi.h.

Referenced by analyze(), createMEs(), ResetModuleMEs(), and SiStripMonitorDigi().

◆ ModulesToBeExcluded_

std::vector<uint32_t> SiStripMonitorDigi::ModulesToBeExcluded_
private

Definition at line 150 of file SiStripMonitorDigi.h.

◆ moduleswitchadccooleston

bool SiStripMonitorDigi::moduleswitchadccooleston
private

Definition at line 176 of file SiStripMonitorDigi.h.

Referenced by analyze(), createModuleMEs(), ResetModuleMEs(), and SiStripMonitorDigi().

◆ moduleswitchadchotteston

bool SiStripMonitorDigi::moduleswitchadchotteston
private

Definition at line 175 of file SiStripMonitorDigi.h.

Referenced by analyze(), createModuleMEs(), ResetModuleMEs(), and SiStripMonitorDigi().

◆ moduleswitchdigiadcson

bool SiStripMonitorDigi::moduleswitchdigiadcson
private

Definition at line 177 of file SiStripMonitorDigi.h.

Referenced by analyze(), createModuleMEs(), ResetModuleMEs(), and SiStripMonitorDigi().

◆ moduleswitchnumdigison

bool SiStripMonitorDigi::moduleswitchnumdigison
private

Definition at line 173 of file SiStripMonitorDigi.h.

Referenced by analyze(), createModuleMEs(), ResetModuleMEs(), and SiStripMonitorDigi().

◆ moduleswitchnumdigispstripon

bool SiStripMonitorDigi::moduleswitchnumdigispstripon
private

Definition at line 174 of file SiStripMonitorDigi.h.

Referenced by analyze(), createModuleMEs(), ResetModuleMEs(), and SiStripMonitorDigi().

◆ moduleswitchstripoccupancyon

bool SiStripMonitorDigi::moduleswitchstripoccupancyon
private

Definition at line 178 of file SiStripMonitorDigi.h.

Referenced by analyze(), createModuleMEs(), ResetModuleMEs(), and SiStripMonitorDigi().

◆ name

TString SiStripMonitorDigi::name
private

Definition at line 143 of file SiStripMonitorDigi.h.

Referenced by ElectronMVAID.ElectronMVAID::__call__(), FWLite.ElectronMVAID::__call__(), dirstructure.Directory::__create_pie_image(), DisplayManager.DisplayManager::__del__(), dqm_interfaces.DirID::__eq__(), dirstructure.Directory::__get_full_path(), dirstructure.Comparison::__get_img_name(), dataset.Dataset::__getDataType(), dataset.Dataset::__getFileInfoList(), dirstructure.Comparison::__make_image(), core.autovars.NTupleVariable::__repr__(), core.autovars.NTupleObjectType::__repr__(), core.autovars.NTupleObject::__repr__(), core.autovars.NTupleCollection::__repr__(), dirstructure.Directory::__repr__(), dqm_interfaces.DirID::__repr__(), dirstructure.Comparison::__repr__(), config.Service::__setattr__(), config.CFG::__str__(), counter.Counter::__str__(), average.Average::__str__(), FWLite.WorkingPoints::_reformat_cut_definitions(), core.autovars.NTupleObjectType::addSubObjects(), core.autovars.NTupleObjectType::addVariables(), core.autovars.NTupleObjectType::allVars(), dataset.CMSDataset::buildListOfFiles(), dataset.LocalDataset::buildListOfFiles(), dataset.CMSDataset::buildListOfFilesDBS(), dirstructure.Directory::calcStats(), validation.Sample::digest(), python.rootplot.utilities.Hist::divide(), python.rootplot.utilities.Hist::divide_wilson(), DisplayManager.DisplayManager::Draw(), TreeCrawler.Package::dump(), core.autovars.NTupleVariable::fillBranch(), core.autovars.NTupleObject::fillBranches(), core.autovars.NTupleCollection::fillBranchesScalar(), core.autovars.NTupleCollection::fillBranchesVector(), core.autovars.NTupleCollection::get_cpp_declaration(), core.autovars.NTupleCollection::get_cpp_wrapper_class(), core.autovars.NTupleCollection::get_py_wrapper_class(), utils.StatisticalTest::get_status(), production_tasks.Task::getname(), dataset.CMSDataset::getPrimaryDatasetEntries(), dataset.PrivateDataset::getPrimaryDatasetEntries(), VIDSelectorBase.VIDSelectorBase::initialize(), personalPlayback.Applet::log(), core.autovars.NTupleVariable::makeBranch(), core.autovars.NTupleObject::makeBranches(), core.autovars.NTupleCollection::makeBranchesScalar(), core.autovars.NTupleCollection::makeBranchesVector(), dirstructure.Directory::print_report(), dataset.BaseDataset::printInfo(), dataset.Dataset::printInfo(), production_tasks.MonitorJobs::run(), python.rootplot.utilities.Hist::TGraph(), python.rootplot.utilities.Hist::TH1F(), counter.Counter::write(), and average.Average::write().

◆ NApvApvShotsGlobal

MonitorElement * SiStripMonitorDigi::NApvApvShotsGlobal
private

Definition at line 153 of file SiStripMonitorDigi.h.

Referenced by analyze(), and createMEs().

◆ NApvShotsGlobal

MonitorElement* SiStripMonitorDigi::NApvShotsGlobal
private

Definition at line 153 of file SiStripMonitorDigi.h.

Referenced by analyze(), and createMEs().

◆ NApvShotsGlobalProf

MonitorElement * SiStripMonitorDigi::NApvShotsGlobalProf
private

Definition at line 153 of file SiStripMonitorDigi.h.

Referenced by analyze(), and createMEs().

◆ nFedTECm

int SiStripMonitorDigi::nFedTECm
private

Definition at line 208 of file SiStripMonitorDigi.h.

Referenced by dqmBeginRun(), and globalEndLuminosityBlock().

◆ nFedTECp

int SiStripMonitorDigi::nFedTECp
private

Definition at line 207 of file SiStripMonitorDigi.h.

Referenced by dqmBeginRun(), and globalEndLuminosityBlock().

◆ nFedTIB

int SiStripMonitorDigi::nFedTIB
private

Definition at line 204 of file SiStripMonitorDigi.h.

Referenced by dqmBeginRun(), and globalEndLuminosityBlock().

◆ nFedTIDm

int SiStripMonitorDigi::nFedTIDm
private

Definition at line 206 of file SiStripMonitorDigi.h.

Referenced by dqmBeginRun(), and globalEndLuminosityBlock().

◆ nFedTIDp

int SiStripMonitorDigi::nFedTIDp
private

Definition at line 205 of file SiStripMonitorDigi.h.

Referenced by dqmBeginRun(), and globalEndLuminosityBlock().

◆ nFedTOB

int SiStripMonitorDigi::nFedTOB
private

Definition at line 209 of file SiStripMonitorDigi.h.

Referenced by dqmBeginRun(), and globalEndLuminosityBlock().

◆ NumberOfFEDDigis

MonitorElement* SiStripMonitorDigi::NumberOfFEDDigis = nullptr

Definition at line 91 of file SiStripMonitorDigi.h.

Referenced by analyze(), and createMEs().

◆ reset_each_run

bool SiStripMonitorDigi::reset_each_run
private

Definition at line 134 of file SiStripMonitorDigi.h.

Referenced by bookHistograms(), and createMEs().

◆ runNb

int SiStripMonitorDigi::runNb
private

Definition at line 158 of file SiStripMonitorDigi.h.

Referenced by analyze().

◆ SBDeclaredAt

int SiStripMonitorDigi::SBDeclaredAt
private

Definition at line 202 of file SiStripMonitorDigi.h.

Referenced by globalEndLuminosityBlock(), and SiStripMonitorDigi().

◆ SBTransitionDone

bool SiStripMonitorDigi::SBTransitionDone
private

Definition at line 203 of file SiStripMonitorDigi.h.

Referenced by globalEndLuminosityBlock(), and SiStripMonitorDigi().

◆ select_all_detectors

bool SiStripMonitorDigi::select_all_detectors
private

Definition at line 134 of file SiStripMonitorDigi.h.

◆ shotschargehistomapon

bool SiStripMonitorDigi::shotschargehistomapon
private

Definition at line 217 of file SiStripMonitorDigi.h.

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

◆ shotshistomapon

bool SiStripMonitorDigi::shotshistomapon
private

Definition at line 215 of file SiStripMonitorDigi.h.

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

◆ shotsstripshistomapon

bool SiStripMonitorDigi::shotsstripshistomapon
private

Definition at line 216 of file SiStripMonitorDigi.h.

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

◆ ShotsVsTimeApvShotsGlobal

MonitorElement * SiStripMonitorDigi::ShotsVsTimeApvShotsGlobal
private

Definition at line 153 of file SiStripMonitorDigi.h.

Referenced by analyze(), and createMEs().

◆ show_control_view

bool SiStripMonitorDigi::show_control_view
private

Definition at line 134 of file SiStripMonitorDigi.h.

◆ show_mechanical_structure_view

bool SiStripMonitorDigi::show_mechanical_structure_view
private

Definition at line 134 of file SiStripMonitorDigi.h.

Referenced by bookHistograms(), and createMEs().

◆ show_readout_view

bool SiStripMonitorDigi::show_readout_view
private

Definition at line 134 of file SiStripMonitorDigi.h.

◆ SiStripDetCabling_

edm::ESHandle<SiStripDetCabling> SiStripMonitorDigi::SiStripDetCabling_
private

Definition at line 149 of file SiStripMonitorDigi.h.

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

◆ StripMultiplicityApvShotsGlobal

MonitorElement * SiStripMonitorDigi::StripMultiplicityApvShotsGlobal
private

Definition at line 153 of file SiStripMonitorDigi.h.

Referenced by analyze(), and createMEs().

◆ SubDetMEsMap

std::map<std::string, SubDetMEs> SiStripMonitorDigi::SubDetMEsMap
private

Definition at line 139 of file SiStripMonitorDigi.h.

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

◆ SubDetPhasePartMap

std::map<std::string, std::string> SiStripMonitorDigi::SubDetPhasePartMap
private

Definition at line 140 of file SiStripMonitorDigi.h.

Referenced by analyze(), and SiStripMonitorDigi().

◆ subdetswitchapvcycleprofon

bool SiStripMonitorDigi::subdetswitchapvcycleprofon
private

Definition at line 181 of file SiStripMonitorDigi.h.

Referenced by analyze(), createSubDetMEs(), and SiStripMonitorDigi().

◆ subdetswitchapvcycleth2on

bool SiStripMonitorDigi::subdetswitchapvcycleth2on
private

Definition at line 182 of file SiStripMonitorDigi.h.

Referenced by analyze(), createSubDetMEs(), and SiStripMonitorDigi().

◆ subdetswitchapvshotsApvon

bool SiStripMonitorDigi::subdetswitchapvshotsApvon
private

Definition at line 190 of file SiStripMonitorDigi.h.

Referenced by analyze(), and SiStripMonitorDigi().

◆ subdetswitchapvshotsonprof

bool SiStripMonitorDigi::subdetswitchapvshotsonprof
private

Definition at line 188 of file SiStripMonitorDigi.h.

Referenced by analyze(), createSubDetMEs(), and SiStripMonitorDigi().

◆ subdetswitchchargemedianapvshotson

bool SiStripMonitorDigi::subdetswitchchargemedianapvshotson
private

Definition at line 189 of file SiStripMonitorDigi.h.

Referenced by analyze(), createSubDetMEs(), and SiStripMonitorDigi().

◆ subdetswitchnapvshotson

bool SiStripMonitorDigi::subdetswitchnapvshotson
private

Definition at line 186 of file SiStripMonitorDigi.h.

Referenced by analyze(), createSubDetMEs(), and SiStripMonitorDigi().

◆ subdetswitchnstripsapvshotson

bool SiStripMonitorDigi::subdetswitchnstripsapvshotson
private

Definition at line 187 of file SiStripMonitorDigi.h.

Referenced by analyze(), createSubDetMEs(), and SiStripMonitorDigi().

◆ subdetswitchtotdigifailureon

bool SiStripMonitorDigi::subdetswitchtotdigifailureon
private

◆ subdetswitchtotdigiprofon

bool SiStripMonitorDigi::subdetswitchtotdigiprofon
private

Definition at line 180 of file SiStripMonitorDigi.h.

Referenced by analyze(), createSubDetMEs(), and SiStripMonitorDigi().

◆ tkmapdigi

std::unique_ptr<TkHistoMap> SiStripMonitorDigi::tkmapdigi
private

Definition at line 156 of file SiStripMonitorDigi.h.

Referenced by analyze(), and createMEs().

◆ tkmapMedianChargeApvshots

std::unique_ptr<TkHistoMap> SiStripMonitorDigi::tkmapMedianChargeApvshots
private

Definition at line 156 of file SiStripMonitorDigi.h.

Referenced by analyze(), and createMEs().

◆ tkmapNApvshots

std::unique_ptr<TkHistoMap> SiStripMonitorDigi::tkmapNApvshots
private

Definition at line 156 of file SiStripMonitorDigi.h.

Referenced by analyze(), and createMEs().

◆ tkmapNstripApvshot

std::unique_ptr<TkHistoMap> SiStripMonitorDigi::tkmapNstripApvshot
private

Definition at line 156 of file SiStripMonitorDigi.h.

Referenced by analyze(), and createMEs().

◆ topFolderName_

std::string SiStripMonitorDigi::topFolderName_

Definition at line 45 of file SiStripMonitorDigi.h.

Referenced by createMEs(), and SiStripMonitorDigi().

◆ TotalNShots

int SiStripMonitorDigi::TotalNShots
private

Definition at line 160 of file SiStripMonitorDigi.h.

Referenced by analyze().

◆ vecSubDetTotDigiProfLS

std::vector<float> SiStripMonitorDigi::vecSubDetTotDigiProfLS
private

Definition at line 223 of file SiStripMonitorDigi.h.

Referenced by globalEndLuminosityBlock(), and SiStripMonitorDigi().

SiStripHistoId::createHistoLayer
std::string createHistoLayer(std::string description, std::string id_type, std::string path, std::string flag)
Definition: SiStripHistoId.cc:51
edm::ESHandle::product
T const * product() const
Definition: ESHandle.h:86
edm::DetSetVector< SiStripDigi >
SiStripMonitorDigi::nFedTECp
int nFedTECp
Definition: SiStripMonitorDigi.h:207
SiStripDetCabling::addActiveDetectorsRawIds
void addActiveDetectorsRawIds(std::vector< uint32_t > &) const
Definition: SiStripDetCabling.cc:134
ecalMGPA::adc
constexpr int adc(sample_type sample)
get the ADC sample (12 bits)
Definition: EcalMGPASample.h:11
SiStripMonitorDigi::nFedTIB
int nFedTIB
Definition: SiStripMonitorDigi.h:204
SiStripDCSStatus
Definition: SiStripDCSStatus.h:19
mps_fire.i
i
Definition: mps_fire.py:355
SiStripMonitorDigi::layerswitchstripoccupancyon
bool layerswitchstripoccupancyon
Definition: SiStripMonitorDigi.h:169
SiStripMonitorDigi::nFedTOB
int nFedTOB
Definition: SiStripMonitorDigi.h:209
SiStripMonitorDigi::integrateNLumisections_
int integrateNLumisections_
Definition: SiStripMonitorDigi.h:201
SiStripMonitorDigi::moduleswitchadccooleston
bool moduleswitchadccooleston
Definition: SiStripMonitorDigi.h:176
SiStripMonitorDigi::SubDetPhasePartMap
std::map< std::string, std::string > SubDetPhasePartMap
Definition: SiStripMonitorDigi.h:140
edm::Handle::product
T const * product() const
Definition: Handle.h:70
SiStripSubStructure::getTIDDetectors
void getTIDDetectors(const std::vector< uint32_t > &inputDetRawIds, std::vector< uint32_t > &tidDetRawIds, const TrackerTopology *trackerTopology, uint32_t side=0, uint32_t wheel=0, uint32_t ring=0, uint32_t ster=0)
SiStripMonitorDigi::subdetswitchapvcycleth2on
bool subdetswitchapvcycleth2on
Definition: SiStripMonitorDigi.h:182
SiStripMonitorDigi::NumberOfFEDDigis
MonitorElement * NumberOfFEDDigis
Definition: SiStripMonitorDigi.h:91
SiStripSubStructure::getTIBDetectors
void getTIBDetectors(const std::vector< uint32_t > &inputDetRawIds, std::vector< uint32_t > &tibDetRawIds, const TrackerTopology *trackerTopology, uint32_t layer=0, uint32_t bkw_frw=0, uint32_t int_ext=0, uint32_t string=0)
APVCyclePhaseCollection::multiphase
Definition: APVCyclePhaseCollection.h:21
edm::DetSet< SiStripDigi >
SiStripMonitorDigi::SBDeclaredAt
int SBDeclaredAt
Definition: SiStripMonitorDigi.h:202
SiStripMonitorDigi::DigiMEs
std::map< uint32_t, ModMEs > DigiMEs
Definition: SiStripMonitorDigi.h:133
TrackerTopology
Definition: TrackerTopology.h:16
HLT_2018_cff.value1
value1
Definition: HLT_2018_cff.py:8549
pos
Definition: PixelAliasList.h:18
SiStripMonitorDigi::globalswitchapvshotsonprof
bool globalswitchapvshotsonprof
Definition: SiStripMonitorDigi.h:194
L1GlobalTriggerEvmReadoutRecord::gtfeWord
const L1GtfeExtWord gtfeWord() const
get / set GTFE word (record) in the GT readout record
Definition: L1GlobalTriggerEvmReadoutRecord.cc:249
ALCARECOPromptCalibProdSiPixelAli0T_cff.mode
mode
Definition: ALCARECOPromptCalibProdSiPixelAli0T_cff.py:96
edm::LogInfo
Definition: MessageLogger.h:254
SiStripMonitorDigi::reset_each_run
bool reset_each_run
Definition: SiStripMonitorDigi.h:134
SiStripMonitorDigi::MedianChargeApvShotsGlobal
MonitorElement * MedianChargeApvShotsGlobal
Definition: SiStripMonitorDigi.h:153
SiStripMonitorDigi::show_readout_view
bool show_readout_view
Definition: SiStripMonitorDigi.h:134
SiStripMonitorDigi::moduleswitchdigiadcson
bool moduleswitchdigiadcson
Definition: SiStripMonitorDigi.h:177
edm::EDConsumerBase::consumesCollector
ConsumesCollector consumesCollector()
Use a ConsumesCollector to gather consumes information from helper functions.
Definition: EDConsumerBase.cc:71
RunInfo::m_fed_in
std::vector< int > m_fed_in
Definition: RunInfo.h:25
dqm::legacy::MonitorElement
Definition: MonitorElement.h:461
SiStripMonitorDigi::moduleswitchnumdigison
bool moduleswitchnumdigison
Definition: SiStripMonitorDigi.h:173
SiStripMonitorDigi::firstEvent
int firstEvent
Definition: SiStripMonitorDigi.h:159
DDAxes::x
SiStripMonitorDigi::gtEvmToken_
edm::EDGetTokenT< L1GlobalTriggerEvmReadoutRecord > gtEvmToken_
Definition: SiStripMonitorDigi.h:229
SiStripMonitorDigi::nFedTIDm
int nFedTIDm
Definition: SiStripMonitorDigi.h:206
edm::Handle
Definition: AssociativeIterator.h:50
dqm::impl::MonitorElement::kind
Kind kind() const
Get the type of the monitor element.
Definition: MonitorElement.h:247
parallelization.uint
uint
Definition: parallelization.py:124
SiStripMonitorDigi::subdetswitchchargemedianapvshotson
bool subdetswitchchargemedianapvshotson
Definition: SiStripMonitorDigi.h:189
end
#define end
Definition: vmac.h:39
SiStripMonitorDigi::show_mechanical_structure_view
bool show_mechanical_structure_view
Definition: SiStripMonitorDigi.h:134
SiStripMonitorDigi::createTrendMEs
bool createTrendMEs
Definition: SiStripMonitorDigi.h:219
SiStripMonitorDigi::layerswitchdigiadcprofon
bool layerswitchdigiadcprofon
Definition: SiStripMonitorDigi.h:171
SiStripFolderOrganizer::GetSubDetAndLayer
std::pair< std::string, int32_t > GetSubDetAndLayer(const uint32_t &detid, const TrackerTopology *tTopo, bool ring_flag=false)
Definition: SiStripFolderOrganizer.cc:106
SiStripMonitorDigi::subdetswitchtotdigiprofon
bool subdetswitchtotdigiprofon
Definition: SiStripMonitorDigi.h:180
SiStripMonitorDigi::shotschargehistomapon
bool shotschargehistomapon
Definition: SiStripMonitorDigi.h:217
SiStripMonitorDigi::digi_detset_handles
std::vector< const edm::DetSetVector< SiStripDigi > * > digi_detset_handles
Definition: SiStripMonitorDigi.h:146
SiStripMonitorDigi::layerswitchnumdigisprofon
bool layerswitchnumdigisprofon
Definition: SiStripMonitorDigi.h:170
contentValuesCheck.ss
ss
Definition: contentValuesCheck.py:33
SiStripMonitorDigi::select_all_detectors
bool select_all_detectors
Definition: SiStripMonitorDigi.h:134
SiStripMonitorDigi::nFedTIDp
int nFedTIDp
Definition: SiStripMonitorDigi.h:205
SiStripMonitorDigi::apvPhaseProducer_
edm::InputTag apvPhaseProducer_
Definition: SiStripMonitorDigi.h:225
TkHistoMap::fill
void fill(DetId detid, float value)
Definition: TkHistoMap.cc:176
SiStripMonitorDigi::LayerMEsMap
std::map< std::string, LayerMEs > LayerMEsMap
Definition: SiStripMonitorDigi.h:138
edm::EventSetup::get
T get() const
Definition: EventSetup.h:73
SiStripMonitorDigi::vecSubDetTotDigiProfLS
std::vector< float > vecSubDetTotDigiProfLS
Definition: SiStripMonitorDigi.h:223
L1GlobalTriggerEvmReadoutRecord
Definition: L1GlobalTriggerEvmReadoutRecord.h:36
GlobalPosition_Frontier_DevDB_cff.tag
tag
Definition: GlobalPosition_Frontier_DevDB_cff.py:11
SiStripMonitorDigi::subdetswitchapvcycleprofon
bool subdetswitchapvcycleprofon
Definition: SiStripMonitorDigi.h:181
SiStripMonitorDigi::moduleswitchstripoccupancyon
bool moduleswitchstripoccupancyon
Definition: SiStripMonitorDigi.h:178
dqm::impl::MonitorElement::Fill
void Fill(long long x)
Definition: MonitorElement.h:290
SiStripMonitorDigi::createSubDetMEs
void createSubDetMEs(DQMStore::IBooker &ibooker, std::string label)
Definition: SiStripMonitorDigi.cc:1163
SiStripMonitorDigi::moduleswitchadchotteston
bool moduleswitchadchotteston
Definition: SiStripMonitorDigi.h:175
edm::ESHandle< TrackerTopology >
SiStripMonitorDigi::globalswitchNDigisFEDID
bool globalswitchNDigisFEDID
Definition: SiStripMonitorDigi.h:197
SiStripSubStructure::getTECDetectors
void getTECDetectors(const std::vector< uint32_t > &inputDetRawIds, std::vector< uint32_t > &tecDetRawIds, const TrackerTopology *trackerTopology, uint32_t side=0, uint32_t wheel=0, uint32_t petal_bkw_frw=0, uint32_t petal=0, uint32_t ring=0, uint32_t ster=0)
SiStripMonitorDigi::getDigiSourceIndex
int getDigiSourceIndex(uint32_t id)
Definition: SiStripMonitorDigi.cc:1316
SiStripMonitorDigi::globalswitchchargemedianapvshotson
bool globalswitchchargemedianapvshotson
Definition: SiStripMonitorDigi.h:195
TkDetMap
Definition: TkDetMap.h:175
SiStripMonitorDigi::historyProducer_
edm::InputTag historyProducer_
Definition: SiStripMonitorDigi.h:224
SiStripMonitorDigi::runNb
int runNb
Definition: SiStripMonitorDigi.h:158
SiStripMonitorDigi::NApvApvShotsGlobal
MonitorElement * NApvApvShotsGlobal
Definition: SiStripMonitorDigi.h:153
SiStripMonitorDigi::digiFailureMEs
DigiFailureMEs digiFailureMEs
Definition: SiStripMonitorDigi.h:141
SiStripMonitorDigi::NApvShotsGlobal
MonitorElement * NApvShotsGlobal
Definition: SiStripMonitorDigi.h:153
SiStripDetCablingRcd
Definition: SiStripDependentRecords.h:19
SiStripFolderOrganizer::getSubDetFolderAndTag
std::pair< const std::string, const char * > getSubDetFolderAndTag(const uint32_t &detid, const TrackerTopology *tTopo)
Definition: SiStripFolderOrganizer.cc:475
dqm::impl::MonitorElement::getTH1
virtual TH1 * getTH1()
Definition: MonitorElement.cc:969
SiStripMonitorDigi::globalswitchnapvshotson
bool globalswitchnapvshotson
Definition: SiStripMonitorDigi.h:192
SiStripMonitorDigi::fillME
void fillME(MonitorElement *ME, float value1)
Definition: SiStripMonitorDigi.h:102
SiStripMonitorDigi::layerswitchnumdigison
bool layerswitchnumdigison
Definition: SiStripMonitorDigi.h:164
RunInfoRcd
Definition: RunSummaryRcd.h:26
SiStripMonitorDigi::AddApvShotsToSubDet
void AddApvShotsToSubDet(const std::vector< APVShot > &, std::vector< APVShot > &)
Definition: SiStripMonitorDigi.cc:1328
SiStripMonitorDigi::bookME1D
MonitorElement * bookME1D(DQMStore::IBooker &ibooker, const char *ParameterSetLabel, const char *HistoName)
Definition: SiStripMonitorDigi.cc:992
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
SiStripMonitorDigi::globalsummaryapvshotson
bool globalsummaryapvshotson
Definition: SiStripMonitorDigi.h:162
SiStripMonitorDigi::tkmapNstripApvshot
std::unique_ptr< TkHistoMap > tkmapNstripApvshot
Definition: SiStripMonitorDigi.h:156
SiStripMonitorDigi::globalswitchapvshotsApvon
bool globalswitchapvshotsApvon
Definition: SiStripMonitorDigi.h:196
SiStripMonitorDigi::dcsStatus_
SiStripDCSStatus * dcsStatus_
Definition: SiStripMonitorDigi.h:231
edm::HandleBase::failedToGet
bool failedToGet() const
Definition: HandleBase.h:72
SiStripMonitorDigi::nFedTECm
int nFedTECm
Definition: SiStripMonitorDigi.h:208
edm::ParameterSet
Definition: ParameterSet.h:36
SiStripMonitorDigi::topFolderName_
std::string topFolderName_
Definition: SiStripMonitorDigi.h:45
SiStripMonitorDigi::digitkhistomapon
bool digitkhistomapon
Definition: SiStripMonitorDigi.h:214
SiStripMonitorDigi::StripMultiplicityApvShotsGlobal
MonitorElement * StripMultiplicityApvShotsGlobal
Definition: SiStripMonitorDigi.h:153
SiStripMonitorDigi::SubDetMEsMap
std::map< std::string, SubDetMEs > SubDetMEsMap
Definition: SiStripMonitorDigi.h:139
SiStripMonitorDigi::FillApvShotsMap
void FillApvShotsMap(TkHistoMap *, const std::vector< APVShot > &, uint32_t id, int)
Definition: SiStripMonitorDigi.cc:1335
SiStripMonitorDigi::show_control_view
bool show_control_view
Definition: SiStripMonitorDigi.h:134
edm::DetSetVector::const_iterator
collection_type::const_iterator const_iterator
Definition: DetSetVector.h:102
EventWithHistory::absoluteBX
long long absoluteBX(const unsigned int ev1) const
Definition: EventWithHistory.cc:292
SiStripMonitorDigi::SiStripDetCabling_
edm::ESHandle< SiStripDetCabling > SiStripDetCabling_
Definition: SiStripMonitorDigi.h:149
SiStripMonitorDigi::folder_organizer
SiStripFolderOrganizer folder_organizer
Definition: SiStripMonitorDigi.h:144
pfParticleNetPreprocessParams_cfi.median
median
Definition: pfParticleNetPreprocessParams_cfi.py:16
createfilelist.int
int
Definition: createfilelist.py:10
iEvent
int iEvent
Definition: GenABIO.cc:224
SiStripMonitorDigi::ShotsVsTimeApvShotsGlobal
MonitorElement * ShotsVsTimeApvShotsGlobal
Definition: SiStripMonitorDigi.h:153
SiStripMonitorDigi::apvPhaseProducerToken_
edm::EDGetTokenT< APVCyclePhaseCollection > apvPhaseProducerToken_
Definition: SiStripMonitorDigi.h:228
value
Definition: value.py:1
SiStripMonitorDigi::historyProducerToken_
edm::EDGetTokenT< EventWithHistory > historyProducerToken_
Definition: SiStripMonitorDigi.h:227
dqm::impl::MonitorElement::setBinLabel
virtual void setBinLabel(int bin, const std::string &label, int axis=1)
set bin label for x, y or z axis (axis=1, 2, 3 respectively)
Definition: MonitorElement.cc:771
cscdqm::HistoName
std::string HistoName
Definition: CSCDQM_HistoDef.h:32
SiStripMonitorDigi::LayerDetMap
std::map< std::string, std::vector< uint32_t > > LayerDetMap
Definition: SiStripMonitorDigi.h:137
SiStripMonitorDigi::SBTransitionDone
bool SBTransitionDone
Definition: SiStripMonitorDigi.h:203
Max
T Max(T a, T b)
Definition: MathUtil.h:44
SiStripMonitorDigi::DigiFailureMEs::SubDetDigiFailures2D
MonitorElement * SubDetDigiFailures2D
Definition: SiStripMonitorDigi.h:88
SiStripMonitorDigi::digiProducerTokenList
std::vector< edm::EDGetTokenT< edm::DetSetVector< SiStripDigi > > > digiProducerTokenList
Definition: SiStripMonitorDigi.h:130
SiStripMonitorDigi::m_cacheID_
unsigned long long m_cacheID_
Definition: SiStripMonitorDigi.h:148
get
#define get
SiStripHistoId::createHistoId
std::string createHistoId(std::string description, std::string id_type, uint32_t component_id)
Definition: SiStripHistoId.cc:26
HLT_2018_cff.value2
value2
Definition: HLT_2018_cff.py:8548
edm::ESHandleBase::isValid
bool isValid() const
Definition: ESHandle.h:44
HcalObjRepresent::Fill
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
Definition: HcalObjRepresent.h:1053
L1GtfeExtWord
Definition: L1GtfeExtWord.h:31
SiStripFolderOrganizer::setDetectorFolder
void setDetectorFolder(uint32_t rawdetid, const TrackerTopology *tTopo)
Definition: SiStripFolderOrganizer.cc:202
me0TriggerPseudoDigis_cff.nStrips
nStrips
1.2 is to make the matching window safely the two nearest strips 0.35 is the size of an ME0 chamber i...
Definition: me0TriggerPseudoDigis_cff.py:26
SiStripMonitorDigi::shotsstripshistomapon
bool shotsstripshistomapon
Definition: SiStripMonitorDigi.h:216
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
SiStripMonitorDigi::ignoreFirstNLumisections_
int ignoreFirstNLumisections_
Definition: SiStripMonitorDigi.h:200
SiStripHistoId
Definition: SiStripHistoId.h:25
APVCyclePhaseCollection::nopartition
Definition: APVCyclePhaseCollection.h:21
SiStripDCSStatus::getStatus
bool getStatus(edm::Event const &e, edm::EventSetup const &eSetup)
Definition: SiStripDCSStatus.cc:42
SiStripMonitorDigi::bookMETrend
MonitorElement * bookMETrend(DQMStore::IBooker &ibooker, const char *ParameterSetLabel, const char *HistoName)
Definition: SiStripMonitorDigi.cc:966
SiStripSubStructure::getTOBDetectors
void getTOBDetectors(const std::vector< uint32_t > &inputDetRawIds, std::vector< uint32_t > &tobDetRawIds, const TrackerTopology *trackerTopology, uint32_t layer=0, uint32_t bkw_frw=0, uint32_t rod=0)
SiStripMonitorDigi::eventNb
int eventNb
Definition: SiStripMonitorDigi.h:158
SiStripMonitorDigi::DigiFailureMEs::SubDetTotDigiProfLS
MonitorElement * SubDetTotDigiProfLS
Definition: SiStripMonitorDigi.h:87
APVShotFinder
Definition: APVShotFinder.h:16
SiStripFolderOrganizer::setLayerFolder
void setLayerFolder(uint32_t rawdetid, const TrackerTopology *tTopo, int32_t layer=0, bool ring_flag=false)
Definition: SiStripFolderOrganizer.cc:304
SiStripFolderOrganizer
Definition: SiStripFolderOrganizer.h:27
SiStripDetCabling::nApvPairs
const uint16_t nApvPairs(uint32_t det_id) const
Definition: SiStripDetCabling.cc:209
SiStripMonitorDigi::conf_
edm::ParameterSet conf_
Definition: SiStripMonitorDigi.h:129
ME
Definition: ME.h:11
SiStripMonitorDigi::layerswitchdigiadcson
bool layerswitchdigiadcson
Definition: SiStripMonitorDigi.h:168
SiStripMonitorDigi::globalswitchnstripsapvshotson
bool globalswitchnstripsapvshotson
Definition: SiStripMonitorDigi.h:193
SiStripMonitorDigi::shotshistomapon
bool shotshistomapon
Definition: SiStripMonitorDigi.h:215
SiStripHistoId::getSubdetid
std::string getSubdetid(uint32_t id, const TrackerTopology *tTopo, bool flag_ring)
Definition: SiStripHistoId.cc:82
edm::DetSet::data
collection_type data
Definition: DetSet.h:80
SiStripMonitorDigi::subdetswitchnapvshotson
bool subdetswitchnapvshotson
Definition: SiStripMonitorDigi.h:186
SiStripMonitorDigi::Mod_On_
bool Mod_On_
Definition: SiStripMonitorDigi.h:212
APVCyclePhaseCollection::getPhase
const int getPhase(const std::string partition) const
Definition: APVCyclePhaseCollection.cc:5
EcalCondDBWriter_cfi.location
location
Definition: EcalCondDBWriter_cfi.py:63
SiStripFolderOrganizer::getLayerFolderName
void getLayerFolderName(std::stringstream &ss, uint32_t rawdetid, const TrackerTopology *tTopo, bool ring_flag=false)
Definition: SiStripFolderOrganizer.cc:415
SiStripMonitorDigi::tkmapdigi
std::unique_ptr< TkHistoMap > tkmapdigi
Definition: SiStripMonitorDigi.h:156
SiStripMonitorDigi::subdetswitchapvshotsonprof
bool subdetswitchapvshotsonprof
Definition: SiStripMonitorDigi.h:188
SiStripMonitorDigi::tkmapNApvshots
std::unique_ptr< TkHistoMap > tkmapNApvshots
Definition: SiStripMonitorDigi.h:156
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
genParticles_cff.map
map
Definition: genParticles_cff.py:11
TrackerTopologyRcd
Definition: TrackerTopologyRcd.h:10
SiStripMonitorDigi::createLayerMEs
void createLayerMEs(DQMStore::IBooker &ibooker, std::string label, int ndet)
Definition: SiStripMonitorDigi.cc:1067
SiStripMonitorDigi::layerswitchadccooleston
bool layerswitchadccooleston
Definition: SiStripMonitorDigi.h:167
edm::EDConsumerBase::consumes
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
Definition: EDConsumerBase.h:126
SiStripMonitorDigi::ResetModuleMEs
void ResetModuleMEs(uint32_t idet)
Definition: SiStripMonitorDigi.cc:948
hlt_dqm_clientPB-live_cfg.me
me
Definition: hlt_dqm_clientPB-live_cfg.py:61
SiStripMonitorDigi::createModuleMEs
void createModuleMEs(DQMStore::IBooker &ibooker, ModMEs &mod_single, uint32_t detid)
Definition: SiStripMonitorDigi.cc:1013
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
SiStripMonitorDigi::subdetswitchapvshotsApvon
bool subdetswitchapvshotsApvon
Definition: SiStripMonitorDigi.h:190
SiStripMonitorDigi::NApvShotsGlobalProf
MonitorElement * NApvShotsGlobalProf
Definition: SiStripMonitorDigi.h:153
SiStripMonitorDigi::fillTrend
void fillTrend(MonitorElement *me, float value, float timeinorbit)
Definition: SiStripMonitorDigi.cc:1004
Parameters
vector< ParameterSet > Parameters
Definition: HLTMuonPlotter.cc:25
APVShotFinder::getShots
const std::vector< APVShot > & getShots() const
Definition: APVShotFinder.cc:69
SiStripMonitorDigi::m_trendVs10LS
bool m_trendVs10LS
Definition: SiStripMonitorDigi.h:221
APVCyclePhaseCollection::invalid
Definition: APVCyclePhaseCollection.h:21
MonitorElementData::Kind::TPROFILE
SiStripMonitorDigi::TotalNShots
int TotalNShots
Definition: SiStripMonitorDigi.h:160
SiStripMonitorDigi::subdetswitchtotdigifailureon
bool subdetswitchtotdigifailureon
Definition: SiStripMonitorDigi.h:184
dqm::impl::MonitorElement::setAxisTitle
virtual void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
Definition: MonitorElement.cc:800
dqm::impl::MonitorElement::getBinContent
virtual double getBinContent(int binx) const
get content of bin (1-D)
Definition: MonitorElement.cc:592
SiStripMonitorDigi::createMEs
void createMEs(DQMStore::IBooker &ibooker, const edm::EventSetup &es)
Definition: SiStripMonitorDigi.cc:312
L1GtfeExtWord::beamMode
const cms_uint16_t beamMode() const
Definition: L1GtfeExtWord.cc:215
edm::InputTag
Definition: InputTag.h:15
label
const char * label
Definition: PFTauDecayModeTools.cc:11
SiStripDetCabling::getConnections
const std::vector< const FedChannelConnection * > & getConnections(uint32_t det_id) const
Definition: SiStripDetCabling.cc:161
SiStripMonitorDigi::moduleswitchnumdigispstripon
bool moduleswitchnumdigispstripon
Definition: SiStripMonitorDigi.h:174
SiStripMonitorDigi::subdetswitchnstripsapvshotson
bool subdetswitchnstripsapvshotson
Definition: SiStripMonitorDigi.h:187
SiStripMonitorDigi::digiProducerList
std::vector< edm::InputTag > digiProducerList
Definition: SiStripMonitorDigi.h:131
SiStripMonitorDigi::tkmapMedianChargeApvshots
std::unique_ptr< TkHistoMap > tkmapMedianChargeApvshots
Definition: SiStripMonitorDigi.h:156
SiStripMonitorDigi::layerswitchadchotteston
bool layerswitchadchotteston
Definition: SiStripMonitorDigi.h:166
edm::DetSet::const_iterator
collection_type::const_iterator const_iterator
Definition: DetSet.h:31