CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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 
26 
28 
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;
45 class L1MuDTChambThDigi;
46 
47 
49 
50  friend class DTMonitorModule;
51 
52  public:
53 
56 
58  virtual ~DTLocalTriggerTask();
59 
60  protected:
61 
63  void dqmBeginRun(const edm::Run& , const edm::EventSetup&);
64 
66 
67  void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
68  void bookHistos(DQMStore::IBooker &, const DTChamberId& dtCh, std::string folder, std::string histoTag );
69 
71  void bookWheelHistos(DQMStore::IBooker &, int wh, std::string histoTag );
72 
75 
77  void setQLabels(MonitorElement* me, short int iaxis);
78 
80  void runDCCAnalysis(std::vector<L1MuDTChambPhDigi> const* phTrigs, std::vector<L1MuDTChambThDigi> const* thTrigs);
81 
84 
87 
90 
92  void analyze(const edm::Event& e, const edm::EventSetup& c);
93 
95  void beginLuminosityBlock(const edm::LuminosityBlock& lumiSeg, const edm::EventSetup& context) ;
96 
98  void triggerSource(const edm::Event& e);
99 
101  std::string& topFolder(bool isDCC) { return isDCC ? baseFolderDCC : baseFolderDDU; }
102 
103  private:
104 
106  edm::EDGetTokenT<L1MuDTChambThContainer> dccTh_Token_; // NEW (M.C Fouz July14) Needed, since at least version 710
110 
113  int nevents;
114  bool tpMode;
119 
120 
121  int phcode_best[6][5][13];
122  int dduphcode_best[6][5][13];
123  int thcode_best[6][5][13];
124  int dduthcode_best[6][5][13];
125  int mapDTTF[6][13][2];
126  const L1MuDTChambPhDigi* iphbest[6][5][13];
127  const DTLocalTrigger* iphbestddu[6][5][13];
128  const L1MuDTChambThDigi* ithbest[6][5][13];
129  bool track_ok[6][5][15];
130 
134  std::map<uint32_t, std::map<std::string, MonitorElement*> > digiHistos;
135  std::map<int, std::map<std::string, MonitorElement*> > wheelHistos;
136 
138 
140 };
141 
142 #endif
143 
144 /* Local Variables: */
145 /* show-trailing-whitespace: t */
146 /* truncate-lines: t */
147 /* End: */
int phcode_best[6][5][13]
friend class DTMonitorModule
std::map< int, std::map< std::string, MonitorElement * > > wheelHistos
edm::EDGetTokenT< LTCDigiCollection > ltcDigiCollectionToken_
int thcode_best[6][5][13]
void runDCCAnalysis(std::vector< L1MuDTChambPhDigi > const *phTrigs, std::vector< L1MuDTChambThDigi > const *thTrigs)
Run analysis on DCC data.
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Book the histograms.
edm::EDGetTokenT< L1MuDTChambPhContainer > dcc_Token_
int dduphcode_best[6][5][13]
void runDDUvsDCCAnalysis(std::string &trigsrc)
Run analysis on ROS data.
void dqmBeginRun(const edm::Run &, const edm::EventSetup &)
Beginrun.
bool track_ok[6][5][15]
void analyze(const edm::Event &e, const edm::EventSetup &c)
Analyze.
int dduthcode_best[6][5][13]
void runSegmentAnalysis(edm::Handle< DTRecSegment4DCollection > &segments4D)
Run analysis using DT 4D segments.
edm::EDGetTokenT< DTRecSegment4DCollection > seg_Token_
DTLocalTriggerTask(const edm::ParameterSet &ps)
Constructor.
edm::EDGetTokenT< DTLocalTriggerCollection > ros_Token_
edm::ESHandle< DTGeometry > muonGeom
void bookHistos(DQMStore::IBooker &, const DTChamberId &dtCh, std::string folder, std::string histoTag)
const DTLocalTrigger * iphbestddu[6][5][13]
const L1MuDTChambThDigi * ithbest[6][5][13]
void setQLabels(MonitorElement *me, short int iaxis)
Set Quality labels.
edm::EDGetTokenT< L1MuDTChambThContainer > dccTh_Token_
edm::ParameterSet parameters
std::string & topFolder(bool isDCC)
Get the Top folder (different between Physics and TP and DCC/DDU)
DTTrigGeomUtils * trigGeomUtils
const L1MuDTChambPhDigi * iphbest[6][5][13]
void beginLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &context)
To reset the MEs.
virtual ~DTLocalTriggerTask()
Destructor.
void bookWheelHistos(DQMStore::IBooker &, int wh, std::string histoTag)
Book the histograms.
void triggerSource(const edm::Event &e)
Get the L1A source.
MonitorElement * dcc_IDDataErrorPlot
void bookBarrelHistos(DQMStore::IBooker &, std::string histoTag)
Book the histograms.
std::map< uint32_t, std::map< std::string, MonitorElement * > > digiHistos
Definition: Run.h:41
void runDDUAnalysis(edm::Handle< DTLocalTriggerCollection > &trigsDDU)
Run analysis on ROS data.