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 
33 
34 #include <vector>
35 #include <string>
36 #include <map>
37 
38 class DTGeometry;
39 class DTTrigGeomUtils;
40 class DTChamberId;
41 class DTRecSegment4D;
42 class DTLocalTrigger;
43 class L1MuDTChambPhDigi;
45 
46 typedef std::array<std::array<std::array<int, 13>, 5>, 6> DTArr3int;
47 typedef std::array<std::array<std::array<const L1MuDTChambPhDigi*, 15>, 5>, 6> DTArr3PhDigi;
48 typedef std::array<std::array<std::array<const L1MuDTChambThDigi*, 15>, 5>, 6> DTArr3ThDigi;
49 typedef std::array<std::array<std::array<const DTLocalTrigger*, 15>, 5>, 6> DTArr3LocalTrigger;
50 typedef std::array<std::array<std::array<int, 2>, 13>, 6> DTArr3mapInt;
51 
52 class DTLocalTriggerTask : public DQMOneEDAnalyzer<edm::one::WatchLuminosityBlocks> {
53  friend class DTMonitorModule;
54 
55 public:
58 
60  ~DTLocalTriggerTask() override;
61 
62 protected:
64  void dqmBeginRun(const edm::Run&, const edm::EventSetup&) override;
65 
67 
68  void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
70 
73 
76 
78  void setQLabels(MonitorElement* me, short int iaxis);
79  void setQLabelsTheta(MonitorElement* me, short int iaxis);
80 
82  void runTMAnalysis(std::vector<L1MuDTChambPhDigi> const* phTrigs, std::vector<L1MuDTChambThDigi> const* thTrigs);
83 
86 
88  void analyze(const edm::Event& e, const edm::EventSetup& c) override;
89 
91  void beginLuminosityBlock(const edm::LuminosityBlock& lumiSeg, const edm::EventSetup& context) override;
92  void endLuminosityBlock(const edm::LuminosityBlock& lumiSeg, const edm::EventSetup& context) final {}
93 
95  void triggerSource(const edm::Event& e);
96 
99 
100  const int wheelArrayShift = 3;
101 
102 private:
108 
109  bool useTM, useSEG;
111  int nevents;
112  bool tpMode;
114  bool doTMTheta;
116 
122  bool track_ok[6][5][15];
123 
127  std::map<uint32_t, std::map<std::string, MonitorElement*> > digiHistos;
128  std::map<int, std::map<std::string, MonitorElement*> > wheelHistos;
129 
131 
133 };
134 
135 #endif
136 
137 /* Local Variables: */
138 /* show-trailing-whitespace: t */
139 /* truncate-lines: t */
140 /* End: */
DTGeometry
Definition: DTGeometry.h:28
DTLocalTriggerTask::iphbest
DTArr3PhDigi iphbest
Definition: DTLocalTriggerTask.h:120
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:179
DTLocalTriggerTask::tmTh_Token_
edm::EDGetTokenT< L1MuDTChambThContainer > tmTh_Token_
Definition: DTLocalTriggerTask.h:104
DTLocalTriggerTask::bookBarrelHistos
void bookBarrelHistos(DQMStore::IBooker &, std::string histoTag)
Book the histograms.
Definition: DTLocalTriggerTask.cc:232
DTLocalTriggerCollection.h
ESHandle.h
edm::LuminosityBlock
Definition: LuminosityBlock.h:50
DTLocalTriggerTask::muonGeom
edm::ESHandle< DTGeometry > muonGeom
Definition: DTLocalTriggerTask.h:125
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:122
edm::EDGetTokenT< L1MuDTChambPhContainer >
LuminosityBlock.h
DTLocalTriggerTask::~DTLocalTriggerTask
~DTLocalTriggerTask() override
Destructor.
Definition: DTLocalTriggerTask.cc:64
DQMOneEDAnalyzer
Definition: DQMOneEDAnalyzer.h:20
DQMStore.h
dqm::legacy::MonitorElement
Definition: MonitorElement.h:462
EDAnalyzer.h
DTLocalTriggerTask::useTM
bool useTM
Definition: DTLocalTriggerTask.h:109
DTLocalTrigger
Definition: DTLocalTrigger.h:15
L1MuDTChambThContainer.h
DTArr3ThDigi
std::array< std::array< std::array< const L1MuDTChambThDigi *, 15 >, 5 >, 6 > DTArr3ThDigi
Definition: DTLocalTriggerTask.h:48
edm::Handle< DTRecSegment4DCollection >
DTLocalTriggerTask::triggerSource
void triggerSource(const edm::Event &e)
Get the L1A source.
Definition: DTLocalTriggerTask.cc:695
DTLocalTriggerTask::seg_Token_
edm::EDGetTokenT< DTRecSegment4DCollection > seg_Token_
Definition: DTLocalTriggerTask.h:106
DTLocalTriggerTask::doTMTheta
bool doTMTheta
Definition: DTLocalTriggerTask.h:114
DTLocalTriggerTask::DTMonitorModule
friend class DTMonitorModule
Definition: DTLocalTriggerTask.h:53
DQMOneEDAnalyzer.h
LTCDigi.h
DTLocalTriggerTask::bookHistograms
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Book the histograms.
Definition: DTLocalTriggerTask.cc:78
DTLocalTriggerTask::parameters
edm::ParameterSet parameters
Definition: DTLocalTriggerTask.h:124
MakerMacros.h
DTLocalTriggerTask::bookWheelHistos
void bookWheelHistos(DQMStore::IBooker &, int wh, std::string histoTag)
Book the histograms.
Definition: DTLocalTriggerTask.cc:397
DTLocalTriggerTask::dqmBeginRun
void dqmBeginRun(const edm::Run &, const edm::EventSetup &) override
Beginrun.
Definition: DTLocalTriggerTask.cc:72
DTLocalTriggerTask::topFolder
std::string & topFolder()
Get the Top folder (different between Physics and TP and TM)
Definition: DTLocalTriggerTask.h:98
Service.h
DTLocalTriggerTask::DTLocalTriggerTask
DTLocalTriggerTask(const edm::ParameterSet &ps)
Constructor.
Definition: DTLocalTriggerTask.cc:34
DTArr3mapInt
std::array< std::array< std::array< int, 2 >, 13 >, 6 > DTArr3mapInt
Definition: DTLocalTriggerTask.h:50
DTLocalTriggerTask::detailedAnalysis
bool detailedAnalysis
Definition: DTLocalTriggerTask.h:115
edm::ESHandle< DTGeometry >
DTLocalTriggerTask::isLocalRun
bool isLocalRun
Definition: DTLocalTriggerTask.h:132
DTLocalTriggerTask::bookHistos
void bookHistos(DQMStore::IBooker &, const DTChamberId &dtCh, std::string folder, std::string histoTag)
Definition: DTLocalTriggerTask.cc:242
DTLocalTriggerTask::wheelArrayShift
const int wheelArrayShift
Definition: DTLocalTriggerTask.h:100
DTLocalTriggerTask::nevents
int nevents
Definition: DTLocalTriggerTask.h:111
DTLocalTriggerTask::endLuminosityBlock
void endLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &context) final
Definition: DTLocalTriggerTask.h:92
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
DTLocalTriggerTask::baseFolderTM
std::string baseFolderTM
Definition: DTLocalTriggerTask.h:113
DTLocalTriggerTask::tpMode
bool tpMode
Definition: DTLocalTriggerTask.h:112
edm::ParameterSet
Definition: ParameterSet.h:47
Event.h
DTLocalTriggerTask::setQLabels
void setQLabels(MonitorElement *me, short int iaxis)
Set Quality labels.
Definition: DTLocalTriggerTask.cc:653
DTLocalTriggerTask
Definition: DTLocalTriggerTask.h:52
dtResolutionTest_cfi.histoTag
histoTag
Definition: dtResolutionTest_cfi.py:21
DTLocalTriggerTask::trigsrc
std::string trigsrc
Definition: DTLocalTriggerTask.h:110
DTLocalTriggerTask::wheelHistos
std::map< int, std::map< std::string, MonitorElement * > > wheelHistos
Definition: DTLocalTriggerTask.h:128
edm::EventSetup
Definition: EventSetup.h:58
L1MuDTChambPhContainer.h
InputTag.h
DTLocalTriggerTask::tm_IDDataErrorPlot
MonitorElement * tm_IDDataErrorPlot
Definition: DTLocalTriggerTask.h:130
DTLocalTriggerTask::useSEG
bool useSEG
Definition: DTLocalTriggerTask.h:109
DTLocalTriggerTask::digiHistos
std::map< uint32_t, std::map< std::string, MonitorElement * > > digiHistos
Definition: DTLocalTriggerTask.h:127
DTLocalTriggerTask::setQLabelsTheta
void setQLabelsTheta(MonitorElement *me, short int iaxis)
Definition: DTLocalTriggerTask.cc:674
DTLocalTriggerTask::analyze
void analyze(const edm::Event &e, const edm::EventSetup &c) override
Analyze.
Definition: DTLocalTriggerTask.cc:194
DTArr3PhDigi
std::array< std::array< std::array< const L1MuDTChambPhDigi *, 15 >, 5 >, 6 > DTArr3PhDigi
Definition: DTLocalTriggerTask.h:47
L1MuDTChambThDigi
Definition: L1MuDTChambThDigi.h:33
Frameworkfwd.h
DTLocalTriggerTask::ithbest
DTArr3ThDigi ithbest
Definition: DTLocalTriggerTask.h:121
DTTrigGeomUtils
Definition: DTTrigGeomUtils.h:21
DTLocalTriggerTask::thcode_best
DTArr3int thcode_best
Definition: DTLocalTriggerTask.h:118
DTLocalTriggerTask::ros_Token_
edm::EDGetTokenT< DTLocalTriggerCollection > ros_Token_
Definition: DTLocalTriggerTask.h:105
DTArr3LocalTrigger
std::array< std::array< std::array< const DTLocalTrigger *, 15 >, 5 >, 6 > DTArr3LocalTrigger
Definition: DTLocalTriggerTask.h:49
DTArr3int
std::array< std::array< std::array< int, 13 >, 5 >, 6 > DTArr3int
Definition: DTLocalTriggerTask.h:44
dqm::implementation::IBooker
Definition: DQMStore.h:43
DTChamberId
Definition: DTChamberId.h:14
ParameterSet.h
c
auto & c
Definition: CAHitNtupletGeneratorKernelsImpl.h:46
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:539
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:411
DTLocalTriggerTask::phcode_best
DTArr3int phcode_best
Definition: DTLocalTriggerTask.h:117
DTLocalTriggerTask::mapDTTF
DTArr3mapInt mapDTTF
Definition: DTLocalTriggerTask.h:119
DTLocalTriggerTask::trigGeomUtils
DTTrigGeomUtils * trigGeomUtils
Definition: DTLocalTriggerTask.h:126
DTLocalTriggerTask::tm_Token_
edm::EDGetTokenT< L1MuDTChambPhContainer > tm_Token_
Definition: DTLocalTriggerTask.h:103
L1MuDTChambPhDigi
Definition: L1MuDTChambPhDigi.h:31
DTLocalTriggerTask::ltcDigiCollectionToken_
edm::EDGetTokenT< LTCDigiCollection > ltcDigiCollectionToken_
Definition: DTLocalTriggerTask.h:107
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:38