CMS 3D CMS Logo

DTLocalTriggerTask.h
Go to the documentation of this file.
1 #ifndef DTLocalTriggerTask_H
2 #define DTLocalTriggerTask_H
3 
4 /*
5  * \file DTLocalTriggerTask.h
6  *
7  * \author M. Zanetti - INFN Padova
8  *
9 */
10 
16 
19 
22 
25 
27 
34 
35 #include <vector>
36 #include <string>
37 #include <map>
38 
39 class DTGeometry;
40 class DTTrigGeomUtils;
41 class DTChamberId;
42 class DTRecSegment4D;
43 class DTLocalTrigger;
44 class L1MuDTChambPhDigi;
46 
47 typedef std::array<std::array<std::array<int, 13>, 5>, 6> DTArr3int;
48 typedef std::array<std::array<std::array<const L1MuDTChambPhDigi*, 15>, 5>, 6> DTArr3PhDigi;
49 typedef std::array<std::array<std::array<const L1MuDTChambThDigi*, 15>, 5>, 6> DTArr3ThDigi;
50 typedef std::array<std::array<std::array<const DTLocalTrigger*, 15>, 5>, 6> DTArr3LocalTrigger;
51 typedef std::array<std::array<std::array<int, 2>, 13>, 6> DTArr3mapInt;
52 
53 class DTLocalTriggerTask : public DQMOneEDAnalyzer<edm::one::WatchLuminosityBlocks> {
54  friend class DTMonitorModule;
55 
56 public:
59 
61  ~DTLocalTriggerTask() override;
62 
63 protected:
65  void dqmBeginRun(const edm::Run&, const edm::EventSetup&) override;
66 
68 
69  void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
71 
74 
77 
79  void setQLabels(MonitorElement* me, short int iaxis);
80  void setQLabelsTheta(MonitorElement* me, short int iaxis);
81 
83  void runTMAnalysis(std::vector<L1MuDTChambPhDigi> const* phTrigs, std::vector<L1MuDTChambThDigi> const* thTrigs);
84 
87 
89  void analyze(const edm::Event& e, const edm::EventSetup& c) override;
90 
92  void beginLuminosityBlock(const edm::LuminosityBlock& lumiSeg, const edm::EventSetup& context) override;
93  void endLuminosityBlock(const edm::LuminosityBlock& lumiSeg, const edm::EventSetup& context) final {}
94 
96  void triggerSource(const edm::Event& e);
97 
100 
101  const int wheelArrayShift = 3;
102 
103 private:
109 
110  bool useTM, useSEG;
112  int nevents;
113  bool tpMode;
115  bool doTMTheta;
117 
123  bool track_ok[6][5][15];
124 
129  std::map<uint32_t, std::map<std::string, MonitorElement*> > digiHistos;
130  std::map<int, std::map<std::string, MonitorElement*> > wheelHistos;
131 
133 
135 };
136 
137 #endif
138 
139 /* Local Variables: */
140 /* show-trailing-whitespace: t */
141 /* truncate-lines: t */
142 /* End: */
DTGeometry
Definition: DTGeometry.h:28
DTLocalTriggerTask::iphbest
DTArr3PhDigi iphbest
Definition: DTLocalTriggerTask.h:121
DTRecSegment4D
Definition: DTRecSegment4D.h:23
Handle.h
DTLocalTriggerTask::beginLuminosityBlock
void beginLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &context) override
To reset the MEs.
Definition: DTLocalTriggerTask.cc:180
DTLocalTriggerTask::tmTh_Token_
edm::EDGetTokenT< L1MuDTChambThContainer > tmTh_Token_
Definition: DTLocalTriggerTask.h:105
DTLocalTriggerTask::bookBarrelHistos
void bookBarrelHistos(DQMStore::IBooker &, std::string histoTag)
Book the histograms.
Definition: DTLocalTriggerTask.cc:233
DTLocalTriggerCollection.h
ESHandle.h
edm::LuminosityBlock
Definition: LuminosityBlock.h:50
DTLocalTriggerTask::muonGeomToken_
edm::ESGetToken< DTGeometry, MuonGeometryRecord > muonGeomToken_
Definition: DTLocalTriggerTask.h:126
edm::Run
Definition: Run.h:45
printsummarytable.folder
folder
Definition: printsummarytable.py:7
DTLocalTriggerTask::track_ok
bool track_ok[6][5][15]
Definition: DTLocalTriggerTask.h:123
edm::EDGetTokenT< L1MuDTChambPhContainer >
LuminosityBlock.h
DTLocalTriggerTask::~DTLocalTriggerTask
~DTLocalTriggerTask() override
Destructor.
Definition: DTLocalTriggerTask.cc:65
DQMOneEDAnalyzer
Definition: DQMOneEDAnalyzer.h:20
DQMStore.h
dqm::legacy::MonitorElement
Definition: MonitorElement.h:462
EDAnalyzer.h
DTLocalTriggerTask::useTM
bool useTM
Definition: DTLocalTriggerTask.h:110
DTLocalTrigger
Definition: DTLocalTrigger.h:15
L1MuDTChambThContainer.h
DTArr3ThDigi
std::array< std::array< std::array< const L1MuDTChambThDigi *, 15 >, 5 >, 6 > DTArr3ThDigi
Definition: DTLocalTriggerTask.h:49
edm::Handle< DTRecSegment4DCollection >
DTLocalTriggerTask::triggerSource
void triggerSource(const edm::Event &e)
Get the L1A source.
Definition: DTLocalTriggerTask.cc:696
DTLocalTriggerTask::seg_Token_
edm::EDGetTokenT< DTRecSegment4DCollection > seg_Token_
Definition: DTLocalTriggerTask.h:107
DTLocalTriggerTask::doTMTheta
bool doTMTheta
Definition: DTLocalTriggerTask.h:115
DTLocalTriggerTask::DTMonitorModule
friend class DTMonitorModule
Definition: DTLocalTriggerTask.h:54
DQMOneEDAnalyzer.h
LTCDigi.h
visDQMUpload.context
context
Definition: visDQMUpload.py:37
DTLocalTriggerTask::bookHistograms
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Book the histograms.
Definition: DTLocalTriggerTask.cc:79
DTLocalTriggerTask::parameters
edm::ParameterSet parameters
Definition: DTLocalTriggerTask.h:125
MakerMacros.h
DTLocalTriggerTask::bookWheelHistos
void bookWheelHistos(DQMStore::IBooker &, int wh, std::string histoTag)
Book the histograms.
Definition: DTLocalTriggerTask.cc:398
DTLocalTriggerTask::dqmBeginRun
void dqmBeginRun(const edm::Run &, const edm::EventSetup &) override
Beginrun.
Definition: DTLocalTriggerTask.cc:73
DTLocalTriggerTask::topFolder
std::string & topFolder()
Get the Top folder (different between Physics and TP and TM)
Definition: DTLocalTriggerTask.h:99
Service.h
DTLocalTriggerTask::DTLocalTriggerTask
DTLocalTriggerTask(const edm::ParameterSet &ps)
Constructor.
Definition: DTLocalTriggerTask.cc:33
DTArr3mapInt
std::array< std::array< std::array< int, 2 >, 13 >, 6 > DTArr3mapInt
Definition: DTLocalTriggerTask.h:51
DTLocalTriggerTask::detailedAnalysis
bool detailedAnalysis
Definition: DTLocalTriggerTask.h:116
DTLocalTriggerTask::isLocalRun
bool isLocalRun
Definition: DTLocalTriggerTask.h:134
DTLocalTriggerTask::bookHistos
void bookHistos(DQMStore::IBooker &, const DTChamberId &dtCh, std::string folder, std::string histoTag)
Definition: DTLocalTriggerTask.cc:243
DTLocalTriggerTask::wheelArrayShift
const int wheelArrayShift
Definition: DTLocalTriggerTask.h:101
DTLocalTriggerTask::nevents
int nevents
Definition: DTLocalTriggerTask.h:112
DTLocalTriggerTask::endLuminosityBlock
void endLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &context) final
Definition: DTLocalTriggerTask.h:93
DTLocalTriggerTask::baseFolderTM
std::string baseFolderTM
Definition: DTLocalTriggerTask.h:114
DTLocalTriggerTask::tpMode
bool tpMode
Definition: DTLocalTriggerTask.h:113
edm::ParameterSet
Definition: ParameterSet.h:47
Event.h
DTLocalTriggerTask::setQLabels
void setQLabels(MonitorElement *me, short int iaxis)
Set Quality labels.
Definition: DTLocalTriggerTask.cc:654
DTLocalTriggerTask
Definition: DTLocalTriggerTask.h:53
dtResolutionTest_cfi.histoTag
histoTag
Definition: dtResolutionTest_cfi.py:21
DTLocalTriggerTask::trigsrc
std::string trigsrc
Definition: DTLocalTriggerTask.h:111
DTLocalTriggerTask::wheelHistos
std::map< int, std::map< std::string, MonitorElement * > > wheelHistos
Definition: DTLocalTriggerTask.h:130
edm::EventSetup
Definition: EventSetup.h:58
L1MuDTChambPhContainer.h
edm::ESGetToken< DTGeometry, MuonGeometryRecord >
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
InputTag.h
DTLocalTriggerTask::tm_IDDataErrorPlot
MonitorElement * tm_IDDataErrorPlot
Definition: DTLocalTriggerTask.h:132
DTLocalTriggerTask::useSEG
bool useSEG
Definition: DTLocalTriggerTask.h:110
DTLocalTriggerTask::digiHistos
std::map< uint32_t, std::map< std::string, MonitorElement * > > digiHistos
Definition: DTLocalTriggerTask.h:129
DTLocalTriggerTask::setQLabelsTheta
void setQLabelsTheta(MonitorElement *me, short int iaxis)
Definition: DTLocalTriggerTask.cc:675
DTLocalTriggerTask::analyze
void analyze(const edm::Event &e, const edm::EventSetup &c) override
Analyze.
Definition: DTLocalTriggerTask.cc:195
DTArr3PhDigi
std::array< std::array< std::array< const L1MuDTChambPhDigi *, 15 >, 5 >, 6 > DTArr3PhDigi
Definition: DTLocalTriggerTask.h:48
L1MuDTChambThDigi
Definition: L1MuDTChambThDigi.h:33
Frameworkfwd.h
DTLocalTriggerTask::ithbest
DTArr3ThDigi ithbest
Definition: DTLocalTriggerTask.h:122
DTTrigGeomUtils
Definition: DTTrigGeomUtils.h:21
DTLocalTriggerTask::thcode_best
DTArr3int thcode_best
Definition: DTLocalTriggerTask.h:119
DTLocalTriggerTask::ros_Token_
edm::EDGetTokenT< DTLocalTriggerCollection > ros_Token_
Definition: DTLocalTriggerTask.h:106
DTArr3LocalTrigger
std::array< std::array< std::array< const DTLocalTrigger *, 15 >, 5 >, 6 > DTArr3LocalTrigger
Definition: DTLocalTriggerTask.h:50
DTArr3int
std::array< std::array< std::array< int, 13 >, 5 >, 6 > DTArr3int
Definition: DTLocalTriggerTask.h:45
dqm::implementation::IBooker
Definition: DQMStore.h:43
DTChamberId
Definition: DTChamberId.h:14
ParameterSet.h
MuonGeometryRecord.h
c
auto & c
Definition: CAHitNtupletGeneratorKernelsImpl.h:56
hlt_dqm_clientPB-live_cfg.me
me
Definition: hlt_dqm_clientPB-live_cfg.py:61
DTLocalTriggerTask::runSegmentAnalysis
void runSegmentAnalysis(edm::Handle< DTRecSegment4DCollection > &segments4D)
Run analysis using DT 4D segments.
Definition: DTLocalTriggerTask.cc:540
edm::Event
Definition: Event.h:73
DTLocalTriggerTask::runTMAnalysis
void runTMAnalysis(std::vector< L1MuDTChambPhDigi > const *phTrigs, std::vector< L1MuDTChambThDigi > const *thTrigs)
Run analysis on TM data.
Definition: DTLocalTriggerTask.cc:412
DTLocalTriggerTask::phcode_best
DTArr3int phcode_best
Definition: DTLocalTriggerTask.h:118
DTLocalTriggerTask::mapDTTF
DTArr3mapInt mapDTTF
Definition: DTLocalTriggerTask.h:120
DTLocalTriggerTask::trigGeomUtils
DTTrigGeomUtils * trigGeomUtils
Definition: DTLocalTriggerTask.h:128
DTLocalTriggerTask::tm_Token_
edm::EDGetTokenT< L1MuDTChambPhContainer > tm_Token_
Definition: DTLocalTriggerTask.h:104
DTLocalTriggerTask::muonGeom
const DTGeometry * muonGeom
Definition: DTLocalTriggerTask.h:127
L1MuDTChambPhDigi
Definition: L1MuDTChambPhDigi.h:31
DTLocalTriggerTask::ltcDigiCollectionToken_
edm::EDGetTokenT< LTCDigiCollection > ltcDigiCollectionToken_
Definition: DTLocalTriggerTask.h:108
DTRecSegment4DCollection.h
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
DTArr3int
std::array< std::array< std::array< int, 13 >, 5 >, 6 > DTArr3int
Definition: DTLocalTriggerLutTask.h:39