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 noexcept final
 
bool wantsGlobalRuns () const noexcept final
 
bool wantsInputProcessBlocks () const noexcept final
 
bool wantsProcessBlocks () const noexcept final
 
- Public Member Functions inherited from edm::one::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const noexcept
 
bool wantsStreamRuns () const noexcept
 
 ~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 const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESResolverIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESResolverIndex > 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
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, 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::ESRecordsToProductResolverIndices 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<Transition Tr = Transition::Event>
auto produces (std::string instanceName) noexcept
 declare what type of product will make and with which optional label More...
 
template<Transition B>
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)
 
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 ()
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces ()
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces ()
 
template<Transition Tr = Transition::Event>
auto produces () noexcept
 
ProducesCollector producesCollector ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< Bconsumes (edm::InputTag tag) noexcept
 
EDGetToken consumes (const TypeToGet &id, 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 ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes ()
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag)
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
void resetItemsToGetFrom (BranchType iType)
 

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
template<typename T >
using BranchAliasSetterT = ProductRegistryHelper::BranchAliasSetterT< T >
 
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 45 of file DTLocalTriggerBaseTask.h.

Constructor & Destructor Documentation

◆ DTLocalTriggerBaseTask()

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

Constructor.

Definition at line 53 of file DTLocalTriggerBaseTask.cc.

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().

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 }
edm::EDGetTokenT< L1MuDTChambPhContainer > m_tm_phiOut_Token
DTTrigGeomUtils * m_trigGeomUtils
#define LogTrace(id)
T getUntrackedParameter(std::string const &, T const &) const
std::vector< std::string > m_types
std::string & topFolder(std::string const &type)
Get the Top folder (different between Physics and TP and TM)
edm::EDGetTokenT< L1MuDTChambThContainer > m_tm_theta_Token
edm::EDGetTokenT< L1Phase2MuDTPhContainer > m_ab7_phi_Token
edm::EDGetTokenT< L1MuDTChambPhContainer > m_tm_phiIn_Token
edm::ESGetToken< DTGeometry, MuonGeometryRecord > muonGeomToken_

◆ ~DTLocalTriggerBaseTask()

DTLocalTriggerBaseTask::~DTLocalTriggerBaseTask ( )
override

Destructor.

Definition at line 88 of file DTLocalTriggerBaseTask.cc.

References LogTrace, m_nEvents, and m_trigGeomUtils.

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

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.

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().

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 }
Log< level::Info, true > LogVerbatim
edm::EDGetTokenT< L1MuDTChambPhContainer > m_tm_phiOut_Token
void runAB7Analysis(std::vector< L1Phase2MuDTPhDigi > const *phTrigs)
Run analysis on Phase2 readout for SliceTest.
The_Container const * getContainer() const
void Fill(long long x)
std::map< uint32_t, DTTPGCompareUnit > m_compMapIn
void runTMAnalysis(std::vector< L1MuDTChambPhDigi > const *phInTrigs, std::vector< L1MuDTChambPhDigi > const *phOutTrigs, std::vector< L1MuDTChambThDigi > const *thTrigs)
Run analysis on TM data.
Phi_Container const * getContainer() const
edm::EDGetTokenT< L1MuDTChambThContainer > m_tm_theta_Token
Segment_Container const * getContainer() const
edm::EDGetTokenT< L1Phase2MuDTPhContainer > m_ab7_phi_Token
bool isValid() const
Definition: HandleBase.h:70
edm::EDGetTokenT< L1MuDTChambPhContainer > m_tm_phiIn_Token
std::map< uint32_t, DTTPGCompareUnit > m_compMapOut

◆ 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.

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

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 }
#define LogTrace(id)
T getUntrackedParameter(std::string const &, T const &) const
std::map< uint32_t, std::map< std::string, MonitorElement * > > m_chamberHistos

◆ 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.

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

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 }
MonitorElement * bookFloat(TString const &name, FUNC onbooking=NOOP())
Definition: DQMStore.h:80
void bookHistos(DQMStore::IBooker &, const DTChamberId &chamb)
Book the histograms.
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:36

◆ bookHistos() [1/2]

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

Book the histograms.

Definition at line 176 of file DTLocalTriggerBaseTask.cc.

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, l1tnanotables_cff::maxBX, l1tnanotables_cff::minBX, DTTrigGeomUtils::phiRange(), HLTObjectMonitor_cfi::plotLabel, DetId::rawId(), nano_mu_digi_cff::rawId, nano_mu_digi_cff::sector, DTChamberId::sector(), dqm::implementation::NavigatorBase::setCurrentFolder(), setQLabels(), setQLabelsPh2(), setQLabelsTheta(), DTChamberId::station(), relativeConstraints::station, topFolder(), DTChamberId::wheel(), and makeMuonMisalignmentScenario::wheel.

Referenced by bookHistograms().

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")
239  else
241 
242  if (!m_tpMode && !(type == "AB7")) {
243  histoTag = type + "_BestQual" + plotLabel;
245  ibooker.book1D(histoTag + chTag, "Trigger quality of best primitives", 7, -0.5, 6.5);
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);
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);
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;
266  ibooker.book2D(histoTag + chTag, "Trigger quality vs local position", nBinsPh, minPh, maxPh, 7, -0.5, 6.5);
268 
269  if (plotLabel == "_Out" && !m_tpMode) {
270  histoTag = type + "_RPCBitvsQual" + plotLabel;
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;
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";
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 }
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:36
DTTrigGeomUtils * m_trigGeomUtils
#define LogTrace(id)
T getUntrackedParameter(std::string const &, T const &) const
std::vector< std::string > m_types
std::map< uint32_t, std::map< std::string, MonitorElement * > > m_chamberHistos
void phiRange(const DTChamberId &id, float &min, float &max, int &nbins, float step=15)
Compute phi range in local chamber coordinates.
std::string & topFolder(std::string const &type)
Get the Top folder (different between Physics and TP and TM)
void setQLabelsTheta(MonitorElement *me, short int iaxis)
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:221
void setQLabelsPh2(MonitorElement *me, short int iaxis)
void setQLabels(MonitorElement *me, short int iaxis)
Set Quality labels.
std::tuple< std::string, std::string, std::string > plotLabels
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98

◆ 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.

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

130  {
131  LogTrace("DTDQM|DTMonitorModule|DTLocalTriggerBaseTask") << "[DTLocalTriggerBaseTask]: BeginRun" << endl;
132 
133  geom = &context.getData(muonGeomToken_);
135 }
DTTrigGeomUtils * m_trigGeomUtils
#define LogTrace(id)
edm::ESGetToken< DTGeometry, MuonGeometryRecord > 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.

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

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 }
#define LogTrace(id)
std::map< uint32_t, DTTimeEvolutionHisto * > m_trendHistos
LuminosityBlockNumber_t luminosityBlock() const

◆ 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.

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

Referenced by analyze().

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 }
std::map< uint32_t, std::map< std::string, MonitorElement * > > m_chamberHistos

◆ 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.

References funct::abs(), nano_mu_digi_cff::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(), nano_mu_digi_cff::rawId, fileinputsource_cfi::sec, DTTrigGeomUtils::trigDir(), and DTTrigGeomUtils::trigPos().

Referenced by analyze().

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 }
float trigDir(const L1MuDTChambPhDigi *trig)
Return local direction (trigger RF) for a given trigger primitive.
DTTrigGeomUtils * m_trigGeomUtils
std::map< uint32_t, DTTPGCompareUnit > m_compMapIn
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
std::map< uint32_t, std::map< std::string, MonitorElement * > > m_chamberHistos
std::map< uint32_t, DTTPGCompareUnit > m_compMapOut
float trigPos(const L1MuDTChambPhDigi *trig)
Return local position (trigger RF) for a given trigger primitive.

◆ setQLabels()

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

Set Quality labels.

Definition at line 469 of file DTLocalTriggerBaseTask.cc.

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

Referenced by bookHistos().

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 }

◆ setQLabelsPh2()

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

Definition at line 511 of file DTLocalTriggerBaseTask.cc.

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

Referenced by bookHistos().

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 }

◆ setQLabelsTheta()

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

Definition at line 490 of file DTLocalTriggerBaseTask.cc.

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

Referenced by bookHistos().

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 }

◆ topFolder()

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

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

Definition at line 78 of file DTLocalTriggerBaseTask.h.

References m_baseFolder.

Referenced by bookHistos(), and DTLocalTriggerBaseTask().

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

Friends And Related Function Documentation

◆ DTMonitorModule

friend class DTMonitorModule
friend

Definition at line 46 of file DTLocalTriggerBaseTask.h.

Member Data Documentation

◆ geom

const DTGeometry* DTLocalTriggerBaseTask::geom
private

Definition at line 110 of file DTLocalTriggerBaseTask.h.

Referenced by dqmBeginRun().

◆ m_ab7_phi_Token

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

Definition at line 123 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), and DTLocalTriggerBaseTask().

◆ m_baseFolder

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

Definition at line 97 of file DTLocalTriggerBaseTask.h.

Referenced by topFolder().

◆ m_bestAccRange

int DTLocalTriggerBaseTask::m_bestAccRange
private

Definition at line 105 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 114 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), and runTMAnalysis().

◆ m_compMapOut

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

Definition at line 115 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), and runTMAnalysis().

◆ m_detailedAnalysis

bool DTLocalTriggerBaseTask::m_detailedAnalysis
private

Definition at line 99 of file DTLocalTriggerBaseTask.h.

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

◆ m_nEventMonitor

MonitorElement* DTLocalTriggerBaseTask::m_nEventMonitor
private

Definition at line 118 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), and bookHistograms().

◆ m_nEvents

int DTLocalTriggerBaseTask::m_nEvents
private

Definition at line 93 of file DTLocalTriggerBaseTask.h.

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

◆ m_nEventsInLS

int DTLocalTriggerBaseTask::m_nEventsInLS
private

Definition at line 94 of file DTLocalTriggerBaseTask.h.

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

◆ m_nLumis

int DTLocalTriggerBaseTask::m_nLumis
private

Definition at line 95 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 102 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), and DTLocalTriggerBaseTask().

◆ m_processTM

bool DTLocalTriggerBaseTask::m_processTM
private

Definition at line 101 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), and DTLocalTriggerBaseTask().

◆ m_targetBXTM

int DTLocalTriggerBaseTask::m_targetBXTM
private

Definition at line 104 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 120 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 121 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 122 of file DTLocalTriggerBaseTask.h.

Referenced by analyze(), and DTLocalTriggerBaseTask().

◆ m_tpMode

bool DTLocalTriggerBaseTask::m_tpMode
private

Definition at line 98 of file DTLocalTriggerBaseTask.h.

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

◆ m_trendHistos

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

Definition at line 117 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 112 of file DTLocalTriggerBaseTask.h.

Referenced by bookHistos(), and DTLocalTriggerBaseTask().

◆ muonGeomToken_

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

Definition at line 109 of file DTLocalTriggerBaseTask.h.

Referenced by dqmBeginRun().