CMS 3D CMS Logo

DTSegmentAnalysisTask.h
Go to the documentation of this file.
1 
2 #ifndef DTSegmentAnalysisTask_H
3 #define DTSegmentAnalysisTask_H
4 
23 
26 
28 
29 //RecHit
31 
32 #include <string>
33 #include <map>
34 #include <vector>
35 
36 class DTGeometry;
38 
39 class DTSegmentAnalysisTask : public DQMOneEDAnalyzer<edm::one::WatchLuminosityBlocks> {
40 public:
43 
45  ~DTSegmentAnalysisTask() override;
46 
48  void dqmBeginRun(const edm::Run&, const edm::EventSetup&) override;
49 
50  // Operations
51  void analyze(const edm::Event& event, const edm::EventSetup& setup) override;
52 
54  void beginLuminosityBlock(edm::LuminosityBlock const& lumiSeg, edm::EventSetup const& eSetup) override;
55  void endLuminosityBlock(edm::LuminosityBlock const& lumiSeg, edm::EventSetup const& eSetup) override;
56 
57 protected:
58  // Book the histograms
59  void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
60 
61 private:
62  // Switch for detailed analysis
64 
65  // Get the DT Geometry
67 
68  // Lable of 4D segments in the event
70 
71  // Get the map of noisy channels
73 
75 
76  // book the histos
77  void bookHistos(DQMStore::IBooker& ibooker, DTChamberId chamberId);
78  // Fill a set of histograms for a given chamber
79  void fillHistos(DTChamberId chamberId, int nHits, float chi2);
80 
81  // the histos
82  std::map<DTChamberId, std::vector<MonitorElement*> > histosPerCh;
83  std::map<int, MonitorElement*> summaryHistos;
84  std::map<int, std::map<int, DTTimeEvolutionHisto*> > histoTimeEvol;
85 
86  int nevents;
89 
90  // # of bins in the time histos
91  int nTimeBins;
92  // # of LS per bin in the time histos
94  // switch on/off sliding bins in time histos
96  // top folder for the histograms in DQMStore
98  // hlt DQM mode
99  bool hltDQMMode;
100  // max phi angle of reconstructed segments
101  double phiSegmCut;
102  // min # hits of segment used to validate a segment in WB+-2/SecX/MB1
103  int nhitsCut;
104 
106 };
107 #endif
108 
109 /* Local Variables: */
110 /* show-trailing-whitespace: t */
111 /* truncate-lines: t */
112 /* End: */
void fillHistos(DTChamberId chamberId, int nHits, float chi2)
void analyze(const edm::Event &event, const edm::EventSetup &setup) override
DTTimeEvolutionHisto * hNevtPerLS
std::map< DTChamberId, std::vector< MonitorElement * > > histosPerCh
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
void beginLuminosityBlock(edm::LuminosityBlock const &lumiSeg, edm::EventSetup const &eSetup) override
Summary.
edm::ParameterSet parameters
~DTSegmentAnalysisTask() override
Destructor.
void bookHistos(DQMStore::IBooker &ibooker, DTChamberId chamberId)
edm::ESHandle< DTGeometry > dtGeom
MonitorElement * nEventMonitor
std::map< int, std::map< int, DTTimeEvolutionHisto * > > histoTimeEvol
void dqmBeginRun(const edm::Run &, const edm::EventSetup &) override
BeginRun.
std::map< int, MonitorElement * > summaryHistos
edm::EDGetTokenT< DTRecSegment4DCollection > recHits4DToken_
void endLuminosityBlock(edm::LuminosityBlock const &lumiSeg, edm::EventSetup const &eSetup) override
DTSegmentAnalysisTask(const edm::ParameterSet &pset)
Constructor.
Definition: event.py:1
Definition: Run.h:45