CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Friends
DTLocalTriggerBaseTask Class Reference

#include <DTLocalTriggerBaseTask.h>

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

Public Member Functions

 DTLocalTriggerBaseTask (const edm::ParameterSet &ps)
 Constructor. More...
 
 ~DTLocalTriggerBaseTask () override
 Destructor. More...
 
- Public Member Functions inherited from DQMOneEDAnalyzer< edm::one::WatchLuminosityBlocks >
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
 
 EDProducer (const EDProducer &)=delete
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 
const EDProduceroperator= (const EDProducer &)=delete
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
- Public Member Functions inherited from edm::one::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDProducerBase () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
std::vector< bool > const & recordProvenanceList () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
TypeLabelList const & typeLabelList () const
 used by the fwk to register the list of products of this module More...
 
 ~ProducerBase () noexcept(false) override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase &&)=default
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const * > *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, 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
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Protected Member Functions

void analyze (const edm::Event &e, const edm::EventSetup &c) override
 Analyze. More...
 
void beginLuminosityBlock (const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &context) override
 To reset the MEs. More...
 
void dqmBeginRun (const edm::Run &, const edm::EventSetup &) override
 Beginrun. More...
 
void endLuminosityBlock (const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &context) override
 Perform trend plot operations. More...
 
- Protected Member Functions inherited from DQMOneEDAnalyzer< edm::one::WatchLuminosityBlocks >
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 = InEvent>
EDConsumerBaseAdaptor< B > consumes (edm::InputTag tag) noexcept
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes () noexcept
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag) noexcept
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 

Private Member Functions

void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
void bookHistos (DQMStore::IBooker &, const DTChamberId &chamb)
 Book the histograms. More...
 
void bookHistos (DQMStore::IBooker &, int wh)
 Book the histograms. More...
 
void runAB7Analysis (std::vector< L1Phase2MuDTPhDigi > const *phTrigs)
 Run analysis on Phase2 readout for SliceTest. More...
 
void runTMAnalysis (std::vector< L1MuDTChambPhDigi > const *phInTrigs, std::vector< L1MuDTChambPhDigi > const *phOutTrigs, std::vector< L1MuDTChambThDigi > const *thTrigs)
 Run analysis on TM data. More...
 
void setQLabels (MonitorElement *me, short int iaxis)
 Set Quality labels. More...
 
void setQLabelsPh2 (MonitorElement *me, short int iaxis)
 
void setQLabelsTheta (MonitorElement *me, short int iaxis)
 
std::string & topFolder (std::string const &type)
 Get the Top folder (different between Physics and TP and TM) More...
 

Private Attributes

const DTGeometrygeom
 
edm::EDGetTokenT< L1Phase2MuDTPhContainerm_ab7_phi_Token
 
std::string m_baseFolder [2]
 
int m_bestAccRange
 
std::map< uint32_t, std::map< std::string, MonitorElement * > > m_chamberHistos
 
std::map< uint32_t, DTTPGCompareUnitm_compMapIn
 
std::map< uint32_t, DTTPGCompareUnitm_compMapOut
 
bool m_detailedAnalysis
 
MonitorElementm_nEventMonitor
 
int m_nEvents
 
int m_nEventsInLS
 
int m_nLumis
 
edm::ParameterSet m_params
 
bool m_processAB7
 
bool m_processTM
 
int m_targetBXTM
 
edm::EDGetTokenT< L1MuDTChambPhContainerm_tm_phiIn_Token
 
edm::EDGetTokenT< L1MuDTChambPhContainerm_tm_phiOut_Token
 
edm::EDGetTokenT< L1MuDTChambThContainerm_tm_theta_Token
 
bool m_tpMode
 
std::map< uint32_t, DTTimeEvolutionHisto * > m_trendHistos
 
DTTrigGeomUtilsm_trigGeomUtils
 
std::vector< std::string > m_types
 
edm::ESGetToken< DTGeometry, MuonGeometryRecordmuonGeomToken_
 

Friends

class DTMonitorModule
 

Additional Inherited Members

- Public Types inherited from DQMOneEDAnalyzer< edm::one::WatchLuminosityBlocks >
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 Attributes inherited from DQMOneEDAnalyzer< edm::one::WatchLuminosityBlocks >
edm::EDPutTokenT< DQMTokenrunToken_
 

Detailed Description

Definition at line 48 of file DTLocalTriggerBaseTask.h.

Constructor & Destructor Documentation

◆ DTLocalTriggerBaseTask()

DTLocalTriggerBaseTask::DTLocalTriggerBaseTask ( const edm::ParameterSet ps)

Constructor.

Definition at line 53 of file DTLocalTriggerBaseTask.cc.

54  : m_nEvents(0), m_nLumis(0), m_trigGeomUtils(nullptr), muonGeomToken_(esConsumes<edm::Transition::BeginRun>()) {
55  LogTrace("DTDQM|DTMonitorModule|DTLocalTriggerBaseTask") << "[DTLocalTriggerBaseTask]: Constructor" << endl;
56 
57  m_tpMode = ps.getUntrackedParameter<bool>("testPulseMode");
58  m_detailedAnalysis = ps.getUntrackedParameter<bool>("detailedAnalysis");
59 
60  m_targetBXTM = ps.getUntrackedParameter<int>("targetBXTM");
61  m_bestAccRange = ps.getUntrackedParameter<int>("bestTrigAccRange");
62 
63  m_processTM = ps.getUntrackedParameter<bool>("processTM");
64  m_processAB7 = ps.getUntrackedParameter<bool>("processAB7");
65 
66  m_tm_phiIn_Token = consumes<L1MuDTChambPhContainer>(ps.getUntrackedParameter<InputTag>("inputTagTMphIn"));
67  m_tm_phiOut_Token = consumes<L1MuDTChambPhContainer>(ps.getUntrackedParameter<InputTag>("inputTagTMphOut"));
68  m_tm_theta_Token = consumes<L1MuDTChambThContainer>(ps.getUntrackedParameter<InputTag>("inputTagTMth"));
69  m_ab7_phi_Token = consumes<L1Phase2MuDTPhContainer>(ps.getUntrackedParameter<InputTag>("inputTagAB7"));
70 
71  if (m_processTM)
72  m_types.push_back("TM");
73 
74  if (m_processAB7)
75  m_types.push_back("AB7");
76 
77  if (m_tpMode) {
78  topFolder("TM") = "DT/11-LocalTriggerTP-TM/";
79  topFolder("AB7") = "DT/12-LocalTriggerTP-SliceTest/";
80  } else {
81  topFolder("TM") = "DT/03-LocalTrigger-TM/";
82  topFolder("AB7") = "DT/04-LocalTrigger-SliceTest/";
83  }
84 
85  m_params = ps;
86 }

References edm::ParameterSet::getUntrackedParameter(), LogTrace, m_ab7_phi_Token, m_bestAccRange, m_detailedAnalysis, m_params, m_processAB7, m_processTM, m_targetBXTM, m_tm_phiIn_Token, m_tm_phiOut_Token, m_tm_theta_Token, m_tpMode, m_types, and topFolder().

◆ ~DTLocalTriggerBaseTask()

DTLocalTriggerBaseTask::~DTLocalTriggerBaseTask ( )
override

Destructor.

Definition at line 88 of file DTLocalTriggerBaseTask.cc.

88  {
89  LogTrace("DTDQM|DTMonitorModule|DTLocalTriggerBaseTask")
90  << "[DTLocalTriggerBaseTask]: analyzed " << m_nEvents << " events" << endl;
91  if (m_trigGeomUtils)
92  delete m_trigGeomUtils;
93 }

References LogTrace, m_nEvents, and m_trigGeomUtils.

Member Function Documentation

◆ analyze()

void DTLocalTriggerBaseTask::analyze ( const edm::Event e,
const edm::EventSetup c 
)
overrideprotectedvirtual

Analyze.

Reimplemented from DQMOneEDAnalyzer< edm::one::WatchLuminosityBlocks >.

Definition at line 137 of file DTLocalTriggerBaseTask.cc.

137  {
138  m_nEvents++;
139  m_nEventsInLS++;
141 
142  m_compMapIn.clear();
143  m_compMapOut.clear();
144 
145  Handle<L1MuDTChambPhContainer> phiInTrigsTM;
146  Handle<L1MuDTChambPhContainer> phiOutTrigsTM;
147  Handle<L1MuDTChambThContainer> thetaTrigsTM;
149 
150  if (m_processTM) {
151  e.getByToken(m_tm_phiIn_Token, phiInTrigsTM);
152  e.getByToken(m_tm_phiOut_Token, phiOutTrigsTM);
153  e.getByToken(m_tm_theta_Token, thetaTrigsTM);
154 
155  if (phiInTrigsTM.isValid() && phiOutTrigsTM.isValid() && thetaTrigsTM.isValid()) {
156  runTMAnalysis(phiInTrigsTM->getContainer(), phiOutTrigsTM->getContainer(), thetaTrigsTM->getContainer());
157  } else {
158  LogVerbatim("DTDQM|DTMonitorModule|DTLocalTriggerBaseTask")
159  << "[DTLocalTriggerBaseTask]: one or more TM tokens not valid!" << endl;
160  return;
161  }
162  }
163 
164  if (m_processAB7) {
165  e.getByToken(m_ab7_phi_Token, phiTrigsAB7);
166 
167  if (phiTrigsAB7.isValid()) {
168  runAB7Analysis(phiTrigsAB7->getContainer());
169  } else {
170  LogVerbatim("DTDQM|DTMonitorModule|DTLocalTriggerBaseTask")
171  << "[DTLocalTriggerBaseTask]: AB7 token not valid!" << endl;
172  }
173  }
174 }

References MillePedeFileConverter_cfg::e, dqm::impl::MonitorElement::Fill(), L1Phase2MuDTPhContainer::getContainer(), L1MuDTChambPhContainer::getContainer(), L1MuDTChambThContainer::getContainer(), edm::HandleBase::isValid(), m_ab7_phi_Token, m_compMapIn, m_compMapOut, m_nEventMonitor, m_nEvents, m_nEventsInLS, m_processAB7, m_processTM, m_tm_phiIn_Token, m_tm_phiOut_Token, m_tm_theta_Token, runAB7Analysis(), and runTMAnalysis().

◆ beginLuminosityBlock()

void DTLocalTriggerBaseTask::beginLuminosityBlock ( const edm::LuminosityBlock lumiSeg,
const edm::EventSetup context 
)
overrideprotected

To reset the MEs.

Definition at line 109 of file DTLocalTriggerBaseTask.cc.

109  {
110  m_nEventsInLS = 0;
111  m_nLumis++;
112  int resetCycle = m_params.getUntrackedParameter<int>("ResetCycle");
113 
114  LogTrace("DTDQM|DTMonitorModule|DTLocalTriggerBaseTask")
115  << "[DTLocalTriggerBaseTask]: Begin of LS transition" << endl;
116 
117  if (m_nLumis % resetCycle == 0)
118  for (auto& histosInChamb : m_chamberHistos)
119  for (auto& histo : histosInChamb.second)
120  histo.second->Reset();
121 }

References edm::ParameterSet::getUntrackedParameter(), timingPdfMaker::histo, LogTrace, m_chamberHistos, m_nEventsInLS, m_nLumis, and m_params.

◆ bookHistograms()

void DTLocalTriggerBaseTask::bookHistograms ( DQMStore::IBooker ibooker,
edm::Run const &  iRun,
edm::EventSetup const &  context 
)
overrideprivatevirtual

Implements DQMOneEDAnalyzer< edm::one::WatchLuminosityBlocks >.

Definition at line 95 of file DTLocalTriggerBaseTask.cc.

97  {
98  ibooker.setCurrentFolder("DT/EventInfo/Counters");
99  m_nEventMonitor = ibooker.bookFloat("nProcessedEventsTrigger");
100  for (int wh = -2; wh < 3; ++wh) {
101  for (int stat = 1; stat < 5; ++stat) {
102  for (int sect = 1; sect < 13; ++sect) {
103  bookHistos(ibooker, DTChamberId(wh, stat, sect));
104  }
105  }
106  }
107 }

References dqm::implementation::IBooker::bookFloat(), bookHistos(), m_nEventMonitor, dqm::implementation::NavigatorBase::setCurrentFolder(), and edm_modernize_messagelogger::stat.

◆ bookHistos() [1/2]

void DTLocalTriggerBaseTask::bookHistos ( DQMStore::IBooker ibooker,
const DTChamberId chamb 
)
private

Book the histograms.

Definition at line 176 of file DTLocalTriggerBaseTask.cc.

176  {
177  uint32_t rawId = dtCh.rawId();
178 
179  stringstream wheel;
180  wheel << dtCh.wheel();
181  stringstream station;
182  station << dtCh.station();
183  stringstream sector;
184  sector << dtCh.sector();
185 
186  map<string, int> minBX;
187  map<string, int> maxBX;
188 
189  minBX["TM"] = m_params.getUntrackedParameter<int>("minBXTM");
190  maxBX["TM"] = m_params.getUntrackedParameter<int>("maxBXTM");
191  minBX["AB7"] = m_params.getUntrackedParameter<int>("minBXAB7");
192  maxBX["AB7"] = m_params.getUntrackedParameter<int>("maxBXAB7");
193 
194  string chTag = "_W" + wheel.str() + "_Sec" + sector.str() + "_St" + station.str();
195  string labelInOut = "";
196 
197  for (const auto& type : m_types) {
198  LogTrace("DTDQM|DTMonitorModule|DTLocalTriggerBaseTask")
199  << "[DTLocalTriggerBaseTask]: booking histos for " << topFolder(type) << "Wheel" << wheel.str() << "/Sector"
200  << sector.str() << "/Station" << station.str() << endl;
201 
202  if (type == "AB7" && (dtCh.wheel() != 2 || dtCh.sector() != 12))
203  continue;
204 
205  vector<string> plotLabels;
206  vector<string> folderLabels;
207 
208  if (type == "TM") {
209  plotLabels.push_back("_In");
210  plotLabels.push_back("_Out");
211  folderLabels.push_back("/LocalTriggerPhiIn");
212  folderLabels.push_back("/LocalTriggerPhiOut");
213  }
214  if (type == "AB7") {
215  plotLabels.push_back("");
216  folderLabels.push_back("/LocalTriggerPhi");
217  }
218 
219  for (size_t iLabel = 0; iLabel < plotLabels.size(); ++iLabel) {
220  // Book Phi View Related Plots
221 
222  auto plotLabel = plotLabels.at(iLabel);
223  ibooker.setCurrentFolder(topFolder(type) + "Wheel" + wheel.str() + "/Sector" + sector.str() + "/Station" +
224  station.str() + folderLabels.at(iLabel));
225 
226  int nQualities = type == "AB7" ? 11 : 7;
227 
228  string histoTag = type + "_BXvsQual" + plotLabel;
229  m_chamberHistos[rawId][histoTag] = ibooker.book2D(histoTag + chTag,
230  "BX vs trigger quality",
231  nQualities,
232  -0.5,
233  nQualities - 0.5,
234  (int)(maxBX[type] - minBX[type] + 1),
235  minBX[type] - .5,
236  maxBX[type] + .5);
237  if (type == "AB7")
238  setQLabelsPh2((m_chamberHistos[rawId])[histoTag], 1);
239  else
240  setQLabels((m_chamberHistos[rawId])[histoTag], 1);
241 
242  if (!m_tpMode && !(type == "AB7")) {
243  histoTag = type + "_BestQual" + plotLabel;
244  m_chamberHistos[rawId][histoTag] =
245  ibooker.book1D(histoTag + chTag, "Trigger quality of best primitives", 7, -0.5, 6.5);
246  setQLabels(m_chamberHistos[rawId][histoTag], 1);
247 
248  histoTag = type + "_Flag1stvsQual" + plotLabel;
249  m_chamberHistos[dtCh.rawId()][histoTag] =
250  ibooker.book2D(histoTag + chTag, "1st/2nd trig flag vs quality", 7, -0.5, 6.5, 2, -0.5, 1.5);
251  setQLabels(m_chamberHistos[rawId][histoTag], 1);
252 
253  histoTag = type + "_FlagUpDownvsQual" + plotLabel;
254  m_chamberHistos[dtCh.rawId()][histoTag] =
255  ibooker.book2D(histoTag + chTag, "Up/Down trig flag vs quality", 7, -0.5, 6.5, 2, -0.5, 1.5);
256  setQLabels(m_chamberHistos[rawId][histoTag], 1);
257  }
258 
259  if (type == "TM") {
260  float minPh, maxPh;
261  int nBinsPh;
262  m_trigGeomUtils->phiRange(dtCh, minPh, maxPh, nBinsPh);
263 
264  histoTag = type + "_QualvsPhirad" + plotLabel;
265  m_chamberHistos[rawId][histoTag] =
266  ibooker.book2D(histoTag + chTag, "Trigger quality vs local position", nBinsPh, minPh, maxPh, 7, -0.5, 6.5);
267  setQLabels(m_chamberHistos[rawId][histoTag], 2);
268 
269  if (plotLabel == "_Out" && !m_tpMode) {
270  histoTag = type + "_RPCBitvsQual" + plotLabel;
271  m_chamberHistos[rawId][histoTag] =
272  ibooker.book2D(histoTag + chTag, "RPC bit vs DT trigger quality", 9, -1.5, 7.5, 3, -0.5, 2.5);
273  //setQLabels((m_chamberHistos[dtCh.rawId()])[histoTag], 2);
274  }
275 
276  if (m_detailedAnalysis && !m_tpMode) {
277  histoTag = type + "_QualvsPhibend" + plotLabel;
278  m_chamberHistos[rawId][histoTag] =
279  ibooker.book2D(histoTag + chTag, "Trigger quality vs local direction", 200, -40., 40., 7, -0.5, 6.5);
280  setQLabels((m_chamberHistos[dtCh.rawId()])[histoTag], 2);
281  }
282  }
283  }
284 
285  // Book Theta View Related Plots
286  ibooker.setCurrentFolder(topFolder(type) + "Wheel" + wheel.str() + "/Sector" + sector.str() + "/Station" +
287  station.str() + "/LocalTriggerTheta");
288 
289  string histoTag = "";
290  if (type == "TM" && dtCh.station() != 4) {
291  histoTag = type + "_PositionvsBX";
292  m_chamberHistos[rawId][histoTag] = ibooker.book2D(histoTag + chTag,
293  "Theta trigger position vs BX",
294  (int)(maxBX[type] - minBX[type] + 1),
295  minBX[type] - .5,
296  maxBX[type] + .5,
297  7,
298  -0.5,
299  6.5);
300  histoTag = type + "_PositionvsQual";
301  m_chamberHistos[rawId][histoTag] =
302  ibooker.book2D(histoTag + chTag, "Theta trigger position vs quality", 3, 0.5, 3.5, 7, -0.5, 6.5);
304  histoTag = type + "_ThetaBXvsQual";
305  m_chamberHistos[rawId][histoTag] = ibooker.book2D(histoTag + chTag,
306  "BX vs trigger quality",
307  3,
308  0.5,
309  3.5,
310  (int)(maxBX[type] - minBX[type] + 1),
311  minBX[type] - .5,
312  maxBX[type] + .5);
314  }
315  }
316 }

References dqm::implementation::IBooker::book1D(), dqm::implementation::IBooker::book2D(), edm::ParameterSet::getUntrackedParameter(), dtResolutionTest_cfi::histoTag, LogTrace, m_chamberHistos, m_detailedAnalysis, m_params, m_tpMode, m_trigGeomUtils, m_types, simKBmtfStubs_cfi::maxBX, simKBmtfStubs_cfi::minBX, DTTrigGeomUtils::phiRange(), HLTObjectMonitor_cfi::plotLabel, DetId::rawId(), DTChamberId::sector(), dqm::implementation::NavigatorBase::setCurrentFolder(), setQLabels(), setQLabelsPh2(), setQLabelsTheta(), DTChamberId::station(), relativeConstraints::station, topFolder(), DTChamberId::wheel(), and makeMuonMisalignmentScenario::wheel.

Referenced by bookHistograms().

◆ bookHistos() [2/2]

void DTLocalTriggerBaseTask::bookHistos ( DQMStore::IBooker ,
int  wh 
)
private

Book the histograms.

◆ dqmBeginRun()

void DTLocalTriggerBaseTask::dqmBeginRun ( const edm::Run run,
const edm::EventSetup context 
)
overrideprotectedvirtual

Beginrun.

Reimplemented from DQMOneEDAnalyzer< edm::one::WatchLuminosityBlocks >.

Definition at line 130 of file DTLocalTriggerBaseTask.cc.

130  {
131  LogTrace("DTDQM|DTMonitorModule|DTLocalTriggerBaseTask") << "[DTLocalTriggerBaseTask]: BeginRun" << endl;
132 
133  geom = &context.getData(muonGeomToken_);
135 }

References visDQMUpload::context, geom, LogTrace, m_trigGeomUtils, and muonGeomToken_.

◆ endLuminosityBlock()

void DTLocalTriggerBaseTask::endLuminosityBlock ( const edm::LuminosityBlock lumiSeg,
const edm::EventSetup context 
)
overrideprotected

Perform trend plot operations.

Definition at line 123 of file DTLocalTriggerBaseTask.cc.

123  {
124  LogTrace("DTDQM|DTMonitorModule|DTLocalTriggerBaseTask") << "[DTLocalTriggerBaseTask]: End of LS transition" << endl;
125 
126  for (auto& trendHisto : m_trendHistos)
127  trendHisto.second->updateTimeSlot(lumiSeg.luminosityBlock(), m_nEventsInLS);
128 }

References LogTrace, edm::LuminosityBlockBase::luminosityBlock(), m_nEventsInLS, and m_trendHistos.

◆ runAB7Analysis()

void DTLocalTriggerBaseTask::runAB7Analysis ( std::vector< L1Phase2MuDTPhDigi > const *  phTrigs)
private

Run analysis on Phase2 readout for SliceTest.

Definition at line 451 of file DTLocalTriggerBaseTask.cc.

451  {
452  vector<L1Phase2MuDTPhDigi>::const_iterator iph = phTrigs->begin();
453  vector<L1Phase2MuDTPhDigi>::const_iterator iphe = phTrigs->end();
454  for (; iph != iphe; ++iph) {
455  int wh = iph->whNum();
456  int sec = iph->scNum() + 1; // B(O)MTF->DT Convention
457  int st = iph->stNum();
458  int qual = iph->quality();
459  int bx = iph->bxNum();
460 
461  DTChamberId dtChId(wh, st, sec);
462  uint32_t rawId = dtChId.rawId();
463 
464  map<string, MonitorElement*>& innerME = m_chamberHistos[rawId];
465  innerME["AB7_BXvsQual"]->Fill(qual, bx);
466  }
467 }

References l1GtPatternGenerator_cfi::bx, m_chamberHistos, DetId::rawId(), and fileinputsource_cfi::sec.

Referenced by analyze().

◆ runTMAnalysis()

void DTLocalTriggerBaseTask::runTMAnalysis ( std::vector< L1MuDTChambPhDigi > const *  phInTrigs,
std::vector< L1MuDTChambPhDigi > const *  phOutTrigs,
std::vector< L1MuDTChambThDigi > const *  thTrigs 
)
private

Run analysis on TM data.

Definition at line 318 of file DTLocalTriggerBaseTask.cc.

320  {
321  vector<L1MuDTChambPhDigi>::const_iterator iph = phInTrigs->begin();
322  vector<L1MuDTChambPhDigi>::const_iterator iphe = phInTrigs->end();
323 
324  for (; iph != iphe; ++iph) {
325  int wh = iph->whNum();
326  int sec = iph->scNum() + 1; // B(O)MTF->DT Convention
327  int st = iph->stNum();
328  int qual = iph->code();
329  int is1st = iph->Ts2Tag() ? 1 : 0;
330  int bx = iph->bxNum() - is1st;
331  int updown = iph->UpDownTag();
332 
333  if (qual < 0 || qual > 6)
334  continue; // Check that quality is in a valid range
335 
336  DTChamberId dtChId(wh, st, sec);
337  uint32_t rawId = dtChId.rawId();
338 
339  float pos = m_trigGeomUtils->trigPos(&(*iph));
340  float dir = m_trigGeomUtils->trigDir(&(*iph));
341 
342  if (abs(bx - m_targetBXTM) <= m_bestAccRange && m_compMapIn[rawId].qualTM() <= qual)
343  m_compMapIn[rawId].setTM(qual, bx);
344 
345  map<string, MonitorElement*>& innerME = m_chamberHistos[rawId];
346  if (m_tpMode) {
347  innerME["TM_BXvsQual_In"]->Fill(qual, bx); // SM BX vs Qual Phi view (1st tracks)
348  innerME["TM_QualvsPhirad_In"]->Fill(pos, qual); // SM Qual vs radial angle Phi view
349  } else {
350  innerME["TM_BXvsQual_In"]->Fill(qual, bx); // SM BX vs Qual Phi view (1st tracks)
351  innerME["TM_Flag1stvsQual_In"]->Fill(qual, is1st); // SM Qual 1st/2nd track flag Phi view
352  innerME["TM_FlagUpDownvsQual_In"]->Fill(qual, updown); // SM Qual Up/Down track flag Phi view
353  if (!is1st)
354  innerME["TM_QualvsPhirad_In"]->Fill(pos, qual); // SM Qual vs radial angle Phi view ONLY for 1st tracks
355  if (m_detailedAnalysis) {
356  innerME["TM_QualvsPhibend_In"]->Fill(dir, qual); // SM Qual vs bending Phi view
357  }
358  }
359  }
360 
361  iph = phOutTrigs->begin();
362  iphe = phOutTrigs->end();
363 
364  for (; iph != iphe; ++iph) {
365  int wh = iph->whNum();
366  int sec = iph->scNum() + 1; // B(O)MTF->DT Convention
367  int st = iph->stNum();
368  int qual = iph->code();
369  int is1st = iph->Ts2Tag() ? 1 : 0;
370  int rpcBit = iph->RpcBit();
371  int bx = iph->bxNum() - is1st;
372  int updown = iph->UpDownTag();
373  if (qual < 0 || qual > 6)
374  continue; // Check that quality is in a valid range
375 
376  DTChamberId dtChId(wh, st, sec);
377  uint32_t rawId = dtChId.rawId();
378 
379  float pos = m_trigGeomUtils->trigPos(&(*iph));
380  float dir = m_trigGeomUtils->trigDir(&(*iph));
381 
382  if (abs(bx - m_targetBXTM) <= m_bestAccRange && m_compMapOut[rawId].qualTM() <= qual)
383  m_compMapOut[rawId].setTM(qual, bx);
384 
385  map<string, MonitorElement*>& innerME = m_chamberHistos[rawId];
386  if (m_tpMode) {
387  innerME["TM_BXvsQual_Out"]->Fill(qual, bx); // SM BX vs Qual Phi view (1st tracks)
388  innerME["TM_QualvsPhirad_Out"]->Fill(pos, qual); // SM Qual vs radial angle Phi view
389  } else {
390  innerME["TM_BXvsQual_Out"]->Fill(qual, bx); // SM BX vs Qual Phi view (1st tracks)
391  innerME["TM_RPCBitvsQual_Out"]->Fill(qual, rpcBit); // SM RPC bitvs Qual Phi view
392  innerME["TM_Flag1stvsQual_Out"]->Fill(qual, is1st); // SM Qual 1st/2nd track flag Phi view
393  innerME["TM_FlagUpDownvsQual_Out"]->Fill(qual, updown); // SM Qual Up/Down track flag Phi view
394 
395  if (!is1st)
396  innerME["TM_QualvsPhirad_Out"]->Fill(pos, qual); // SM Qual vs radial angle Phi view ONLY for 1st tracks
397  if (m_detailedAnalysis) {
398  innerME["TM_QualvsPhibend_Out"]->Fill(dir, qual); // SM Qual vs bending Phi view
399  }
400  }
401  }
402 
403  vector<L1MuDTChambThDigi>::const_iterator ith = thTrigs->begin();
404  vector<L1MuDTChambThDigi>::const_iterator ithe = thTrigs->end();
405 
406  for (; ith != ithe; ++ith) {
407  int wh = ith->whNum();
408  int sec = ith->scNum() + 1; // B(O)MTF -> DT Convention
409  int st = ith->stNum();
410  int bx = ith->bxNum();
411 
412  int thcode[7];
413 
414  for (int pos = 0; pos < 7; pos++) {
415  thcode[pos] = ith->code(pos);
416  if (ith->position(pos) == 0 && ith->quality(pos) == 1)
417  thcode[pos] = 3;
418  }
419 
420  DTChamberId dtChId(wh, st, sec);
421  uint32_t rawId = dtChId.rawId();
422 
423  map<string, MonitorElement*>& innerME = m_chamberHistos[rawId];
424 
425  for (int pos = 0; pos < 7; pos++)
426  if (thcode[pos] > 0) { //Fired
427  innerME["TM_PositionvsBX"]->Fill(bx, pos); // SM BX vs Position Theta view
428  innerME["TM_PositionvsQual"]->Fill(thcode[pos], pos); //code = pos + qual; so 0, 1, 2 for 0, L, H resp.
429  innerME["TM_ThetaBXvsQual"]->Fill(thcode[pos], bx); //code = pos + qual; so 0, 1, 2 for 0, L, H resp.
430  }
431  }
432  // Fill Quality plots with best TM triggers (phi view In)
433  if (!m_tpMode) {
434  for (auto& comp : m_compMapIn) {
435  int bestQual = comp.second.qualTM();
436  if (bestQual > -1)
437  m_chamberHistos[comp.first]["TM_BestQual_In"]->Fill(bestQual); // SM Best Qual Trigger Phi view
438  }
439  }
440 
441  // Fill Quality plots with best TM triggers (phi view Out)
442  if (!m_tpMode) {
443  for (auto& comp : m_compMapOut) {
444  int bestQual = comp.second.qualTM();
445  if (bestQual > -1)
446  m_chamberHistos[comp.first]["TM_BestQual_Out"]->Fill(bestQual); // SM Best Qual Trigger Phi view
447  }
448  }
449 }

References funct::abs(), l1GtPatternGenerator_cfi::bx, AlCaHLTBitMon_QueryRunRegistry::comp, DeadROC_duringRun::dir, m_bestAccRange, m_chamberHistos, m_compMapIn, m_compMapOut, m_detailedAnalysis, m_targetBXTM, m_tpMode, m_trigGeomUtils, DetId::rawId(), fileinputsource_cfi::sec, DTTrigGeomUtils::trigDir(), and DTTrigGeomUtils::trigPos().

Referenced by analyze().

◆ setQLabels()

void DTLocalTriggerBaseTask::setQLabels ( MonitorElement me,
short int  iaxis 
)
private

Set Quality labels.

Definition at line 469 of file DTLocalTriggerBaseTask.cc.

469  {
470  TH1* histo = me->getTH1();
471  if (!histo)
472  return;
473 
474  TAxis* axis = nullptr;
475  if (iaxis == 1) {
476  axis = histo->GetXaxis();
477  } else if (iaxis == 2) {
478  axis = histo->GetYaxis();
479  }
480  if (!axis)
481  return;
482 
483  string labels[7] = {"LI", "LO", "HI", "HO", "LL", "HL", "HH"};
484  int istart = axis->GetXmin() < -1 ? 2 : 1;
485  for (int i = 0; i < 7; i++) {
486  axis->SetBinLabel(i + istart, labels[i].c_str());
487  }
488 }

References timingPdfMaker::histo, mps_fire::i, SummaryClient_cfi::labels, and hlt_dqm_clientPB-live_cfg::me.

Referenced by bookHistos().

◆ setQLabelsPh2()

void DTLocalTriggerBaseTask::setQLabelsPh2 ( MonitorElement me,
short int  iaxis 
)
private

Definition at line 511 of file DTLocalTriggerBaseTask.cc.

511  {
512  TH1* histo = me->getTH1();
513  if (!histo)
514  return;
515 
516  TAxis* axis = nullptr;
517  if (iaxis == 1) {
518  axis = histo->GetXaxis();
519  } else if (iaxis == 2) {
520  axis = histo->GetYaxis();
521  }
522  if (!axis)
523  return;
524 
525  string labels[11] = {"", "L only", "L multiple", "H only", "H multiple", "3+2", "LL", "4+2", "HL", "HH", ""};
526  int istart = axis->GetXmin() < -1 ? 2 : 1;
527  for (int i = 0; i < 11; i++) {
528  axis->SetBinLabel(i + istart, labels[i].c_str());
529  }
530 }

References timingPdfMaker::histo, mps_fire::i, SummaryClient_cfi::labels, and hlt_dqm_clientPB-live_cfg::me.

Referenced by bookHistos().

◆ setQLabelsTheta()

void DTLocalTriggerBaseTask::setQLabelsTheta ( MonitorElement me,
short int  iaxis 
)
private

Definition at line 490 of file DTLocalTriggerBaseTask.cc.

490  {
491  TH1* histo = me->getTH1();
492  if (!histo)
493  return;
494 
495  TAxis* axis = nullptr;
496  if (iaxis == 1) {
497  axis = histo->GetXaxis();
498  } else if (iaxis == 2) {
499  axis = histo->GetYaxis();
500  }
501  if (!axis)
502  return;
503 
504  string labels[3] = {"L", "H", "err"};
505  int istart = axis->GetXmin() < -1 ? 2 : 1;
506  for (int i = 0; i < 3; i++) {
507  axis->SetBinLabel(i + istart, labels[i].c_str());
508  }
509 }

References timingPdfMaker::histo, mps_fire::i, SummaryClient_cfi::labels, and hlt_dqm_clientPB-live_cfg::me.

Referenced by bookHistos().

◆ topFolder()

std::string& DTLocalTriggerBaseTask::topFolder ( std::string const &  type)
inlineprivate

Get the Top folder (different between Physics and TP and TM)

Definition at line 81 of file DTLocalTriggerBaseTask.h.

81 { return m_baseFolder[type == "TM"]; }

References m_baseFolder.

Referenced by bookHistos(), and DTLocalTriggerBaseTask().

Friends And Related Function Documentation

◆ DTMonitorModule

friend class DTMonitorModule
friend

Definition at line 49 of file DTLocalTriggerBaseTask.h.

Member Data Documentation

◆ geom

const DTGeometry* DTLocalTriggerBaseTask::geom
private

Definition at line 113 of file DTLocalTriggerBaseTask.h.

Referenced by dqmBeginRun().

◆ m_ab7_phi_Token

edm::EDGetTokenT<L1Phase2MuDTPhContainer> DTLocalTriggerBaseTask::m_ab7_phi_Token
private

Definition at line 126 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), and DTLocalTriggerBaseTask().

◆ m_baseFolder

std::string DTLocalTriggerBaseTask::m_baseFolder[2]
private

Definition at line 100 of file DTLocalTriggerBaseTask.h.

Referenced by topFolder().

◆ m_bestAccRange

int DTLocalTriggerBaseTask::m_bestAccRange
private

Definition at line 108 of file DTLocalTriggerBaseTask.h.

Referenced by DTLocalTriggerBaseTask(), and runTMAnalysis().

◆ m_chamberHistos

std::map<uint32_t, std::map<std::string, MonitorElement*> > DTLocalTriggerBaseTask::m_chamberHistos
private

◆ m_compMapIn

std::map<uint32_t, DTTPGCompareUnit> DTLocalTriggerBaseTask::m_compMapIn
private

Definition at line 117 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), and runTMAnalysis().

◆ m_compMapOut

std::map<uint32_t, DTTPGCompareUnit> DTLocalTriggerBaseTask::m_compMapOut
private

Definition at line 118 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), and runTMAnalysis().

◆ m_detailedAnalysis

bool DTLocalTriggerBaseTask::m_detailedAnalysis
private

Definition at line 102 of file DTLocalTriggerBaseTask.h.

Referenced by bookHistos(), DTLocalTriggerBaseTask(), and runTMAnalysis().

◆ m_nEventMonitor

MonitorElement* DTLocalTriggerBaseTask::m_nEventMonitor
private

Definition at line 121 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), and bookHistograms().

◆ m_nEvents

int DTLocalTriggerBaseTask::m_nEvents
private

Definition at line 96 of file DTLocalTriggerBaseTask.h.

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

◆ m_nEventsInLS

int DTLocalTriggerBaseTask::m_nEventsInLS
private

Definition at line 97 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), beginLuminosityBlock(), and endLuminosityBlock().

◆ m_nLumis

int DTLocalTriggerBaseTask::m_nLumis
private

Definition at line 98 of file DTLocalTriggerBaseTask.h.

Referenced by beginLuminosityBlock().

◆ m_params

edm::ParameterSet DTLocalTriggerBaseTask::m_params
private

◆ m_processAB7

bool DTLocalTriggerBaseTask::m_processAB7
private

Definition at line 105 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), and DTLocalTriggerBaseTask().

◆ m_processTM

bool DTLocalTriggerBaseTask::m_processTM
private

Definition at line 104 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), and DTLocalTriggerBaseTask().

◆ m_targetBXTM

int DTLocalTriggerBaseTask::m_targetBXTM
private

Definition at line 107 of file DTLocalTriggerBaseTask.h.

Referenced by DTLocalTriggerBaseTask(), and runTMAnalysis().

◆ m_tm_phiIn_Token

edm::EDGetTokenT<L1MuDTChambPhContainer> DTLocalTriggerBaseTask::m_tm_phiIn_Token
private

Definition at line 123 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), and DTLocalTriggerBaseTask().

◆ m_tm_phiOut_Token

edm::EDGetTokenT<L1MuDTChambPhContainer> DTLocalTriggerBaseTask::m_tm_phiOut_Token
private

Definition at line 124 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), and DTLocalTriggerBaseTask().

◆ m_tm_theta_Token

edm::EDGetTokenT<L1MuDTChambThContainer> DTLocalTriggerBaseTask::m_tm_theta_Token
private

Definition at line 125 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), and DTLocalTriggerBaseTask().

◆ m_tpMode

bool DTLocalTriggerBaseTask::m_tpMode
private

Definition at line 101 of file DTLocalTriggerBaseTask.h.

Referenced by bookHistos(), DTLocalTriggerBaseTask(), and runTMAnalysis().

◆ m_trendHistos

std::map<uint32_t, DTTimeEvolutionHisto*> DTLocalTriggerBaseTask::m_trendHistos
private

Definition at line 120 of file DTLocalTriggerBaseTask.h.

Referenced by endLuminosityBlock().

◆ m_trigGeomUtils

DTTrigGeomUtils* DTLocalTriggerBaseTask::m_trigGeomUtils
private

◆ m_types

std::vector<std::string> DTLocalTriggerBaseTask::m_types
private

Definition at line 115 of file DTLocalTriggerBaseTask.h.

Referenced by bookHistos(), and DTLocalTriggerBaseTask().

◆ muonGeomToken_

edm::ESGetToken<DTGeometry, MuonGeometryRecord> DTLocalTriggerBaseTask::muonGeomToken_
private

Definition at line 112 of file DTLocalTriggerBaseTask.h.

Referenced by dqmBeginRun().

SummaryClient_cfi.labels
labels
Definition: SummaryClient_cfi.py:61
AlCaHLTBitMon_QueryRunRegistry.comp
string comp
Definition: AlCaHLTBitMon_QueryRunRegistry.py:249
simKBmtfStubs_cfi.minBX
minBX
Definition: simKBmtfStubs_cfi.py:9
mps_fire.i
i
Definition: mps_fire.py:428
DTTrigGeomUtils::trigDir
float trigDir(const L1MuDTChambPhDigi *trig)
Return local direction (trigger RF) for a given trigger primitive.
Definition: DTTrigGeomUtils.cc:138
DTLocalTriggerBaseTask::setQLabels
void setQLabels(MonitorElement *me, short int iaxis)
Set Quality labels.
Definition: DTLocalTriggerBaseTask.cc:469
DTLocalTriggerBaseTask::m_detailedAnalysis
bool m_detailedAnalysis
Definition: DTLocalTriggerBaseTask.h:102
dqm::implementation::IBooker::bookFloat
MonitorElement * bookFloat(TString const &name, FUNC onbooking=NOOP())
Definition: DQMStore.h:80
DTLocalTriggerBaseTask::setQLabelsPh2
void setQLabelsPh2(MonitorElement *me, short int iaxis)
Definition: DTLocalTriggerBaseTask.cc:511
DTLocalTriggerBaseTask::m_chamberHistos
std::map< uint32_t, std::map< std::string, MonitorElement * > > m_chamberHistos
Definition: DTLocalTriggerBaseTask.h:119
DTLocalTriggerBaseTask::m_tpMode
bool m_tpMode
Definition: DTLocalTriggerBaseTask.h:101
DTLocalTriggerBaseTask::runTMAnalysis
void runTMAnalysis(std::vector< L1MuDTChambPhDigi > const *phInTrigs, std::vector< L1MuDTChambPhDigi > const *phOutTrigs, std::vector< L1MuDTChambThDigi > const *thTrigs)
Run analysis on TM data.
Definition: DTLocalTriggerBaseTask.cc:318
DTLocalTriggerBaseTask::m_compMapIn
std::map< uint32_t, DTTPGCompareUnit > m_compMapIn
Definition: DTLocalTriggerBaseTask.h:117
relativeConstraints.station
station
Definition: relativeConstraints.py:67
DTLocalTriggerBaseTask::m_tm_phiIn_Token
edm::EDGetTokenT< L1MuDTChambPhContainer > m_tm_phiIn_Token
Definition: DTLocalTriggerBaseTask.h:123
pos
Definition: PixelAliasList.h:18
l1GtPatternGenerator_cfi.bx
bx
Definition: l1GtPatternGenerator_cfi.py:18
dqm::implementation::NavigatorBase::setCurrentFolder
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:32
timingPdfMaker.histo
histo
Definition: timingPdfMaker.py:278
DTTrigGeomUtils::trigPos
float trigPos(const L1MuDTChambPhDigi *trig)
Return local position (trigger RF) for a given trigger primitive.
Definition: DTTrigGeomUtils.cc:98
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
DTLocalTriggerBaseTask::m_processAB7
bool m_processAB7
Definition: DTLocalTriggerBaseTask.h:105
HLTObjectMonitor_cfi.plotLabel
plotLabel
Definition: HLTObjectMonitor_cfi.py:46
edm::Handle< L1MuDTChambPhContainer >
L1MuDTChambPhContainer::getContainer
Phi_Container const * getContainer() const
Definition: L1MuDTChambPhContainer.cc:41
DTLocalTriggerBaseTask::m_trendHistos
std::map< uint32_t, DTTimeEvolutionHisto * > m_trendHistos
Definition: DTLocalTriggerBaseTask.h:120
DTLocalTriggerBaseTask::m_nEventMonitor
MonitorElement * m_nEventMonitor
Definition: DTLocalTriggerBaseTask.h:121
visDQMUpload.context
context
Definition: visDQMUpload.py:37
DTLocalTriggerBaseTask::geom
const DTGeometry * geom
Definition: DTLocalTriggerBaseTask.h:113
DTLocalTriggerBaseTask::m_tm_theta_Token
edm::EDGetTokenT< L1MuDTChambThContainer > m_tm_theta_Token
Definition: DTLocalTriggerBaseTask.h:125
DTLocalTriggerBaseTask::m_nEvents
int m_nEvents
Definition: DTLocalTriggerBaseTask.h:96
DTLocalTriggerBaseTask::topFolder
std::string & topFolder(std::string const &type)
Get the Top folder (different between Physics and TP and TM)
Definition: DTLocalTriggerBaseTask.h:81
DTLocalTriggerBaseTask::bookHistos
void bookHistos(DQMStore::IBooker &, const DTChamberId &chamb)
Book the histograms.
Definition: DTLocalTriggerBaseTask.cc:176
DTLocalTriggerBaseTask::m_compMapOut
std::map< uint32_t, DTTPGCompareUnit > m_compMapOut
Definition: DTLocalTriggerBaseTask.h:118
DTLocalTriggerBaseTask::m_targetBXTM
int m_targetBXTM
Definition: DTLocalTriggerBaseTask.h:107
DTLocalTriggerBaseTask::m_nLumis
int m_nLumis
Definition: DTLocalTriggerBaseTask.h:98
edm::LuminosityBlockBase::luminosityBlock
LuminosityBlockNumber_t luminosityBlock() const
Definition: LuminosityBlockBase.h:40
dqm::impl::MonitorElement::Fill
void Fill(long long x)
Definition: MonitorElement.h:290
DTLocalTriggerBaseTask::m_params
edm::ParameterSet m_params
Definition: DTLocalTriggerBaseTask.h:110
DTLocalTriggerBaseTask::m_bestAccRange
int m_bestAccRange
Definition: DTLocalTriggerBaseTask.h:108
DTTrigGeomUtils::phiRange
void phiRange(const DTChamberId &id, float &min, float &max, int &nbins, float step=15)
Compute phi range in local chamber coordinates.
Definition: DTTrigGeomUtils.cc:67
DTLocalTriggerBaseTask::runAB7Analysis
void runAB7Analysis(std::vector< L1Phase2MuDTPhDigi > const *phTrigs)
Run analysis on Phase2 readout for SliceTest.
Definition: DTLocalTriggerBaseTask.cc:451
DTLocalTriggerBaseTask::m_processTM
bool m_processTM
Definition: DTLocalTriggerBaseTask.h:104
L1Phase2MuDTPhContainer::getContainer
Segment_Container const * getContainer() const
Definition: L1Phase2MuDTPhContainer.cc:41
type
type
Definition: SiPixelVCal_PayloadInspector.cc:39
dtResolutionTest_cfi.histoTag
histoTag
Definition: dtResolutionTest_cfi.py:21
makeMuonMisalignmentScenario.wheel
wheel
Definition: makeMuonMisalignmentScenario.py:319
L1MuDTChambThContainer::getContainer
The_Container const * getContainer() const
Definition: L1MuDTChambThContainer.cc:41
DTLocalTriggerBaseTask::muonGeomToken_
edm::ESGetToken< DTGeometry, MuonGeometryRecord > muonGeomToken_
Definition: DTLocalTriggerBaseTask.h:112
simKBmtfStubs_cfi.maxBX
maxBX
Definition: simKBmtfStubs_cfi.py:10
DTLocalTriggerBaseTask::m_baseFolder
std::string m_baseFolder[2]
Definition: DTLocalTriggerBaseTask.h:100
fileinputsource_cfi.sec
sec
Definition: fileinputsource_cfi.py:94
edm::LogVerbatim
Log< level::Info, true > LogVerbatim
Definition: MessageLogger.h:128
DTTrigGeomUtils
Definition: DTTrigGeomUtils.h:21
dqm::implementation::IBooker::book2D
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
Definition: DQMStore.h:177
DTLocalTriggerBaseTask::m_nEventsInLS
int m_nEventsInLS
Definition: DTLocalTriggerBaseTask.h:97
DTLocalTriggerBaseTask::m_trigGeomUtils
DTTrigGeomUtils * m_trigGeomUtils
Definition: DTLocalTriggerBaseTask.h:111
DTLocalTriggerBaseTask::m_tm_phiOut_Token
edm::EDGetTokenT< L1MuDTChambPhContainer > m_tm_phiOut_Token
Definition: DTLocalTriggerBaseTask.h:124
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
DTChamberId
Definition: DTChamberId.h:14
LogTrace
#define LogTrace(id)
Definition: MessageLogger.h:234
hlt_dqm_clientPB-live_cfg.me
me
Definition: hlt_dqm_clientPB-live_cfg.py:61
edm_modernize_messagelogger.stat
stat
Definition: edm_modernize_messagelogger.py:27
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
DTLocalTriggerBaseTask::m_types
std::vector< std::string > m_types
Definition: DTLocalTriggerBaseTask.h:115
DTLocalTriggerBaseTask::setQLabelsTheta
void setQLabelsTheta(MonitorElement *me, short int iaxis)
Definition: DTLocalTriggerBaseTask.cc:490
edm::InputTag
Definition: InputTag.h:15
PVValHelper::plotLabels
std::tuple< std::string, std::string, std::string > plotLabels
Definition: PVValidationHelpers.h:123
dqm::implementation::IBooker::book1D
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98
DTLocalTriggerBaseTask::m_ab7_phi_Token
edm::EDGetTokenT< L1Phase2MuDTPhContainer > m_ab7_phi_Token
Definition: DTLocalTriggerBaseTask.h:126
DeadROC_duringRun.dir
dir
Definition: DeadROC_duringRun.py:23
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37