CMS 3D CMS Logo

DTSegmentAnalysisTask.h
Go to the documentation of this file.
1 
2 #ifndef DTSegmentAnalysisTask_H
3 #define DTSegmentAnalysisTask_H
4 
23 
27 
29 
30 //RecHit
32 
33 #include <string>
34 #include <map>
35 #include <vector>
36 
37 
38 class DTGeometry;
39 class DQMStore;
40 class MonitorElement;
42 
44 
45 
46 public:
49 
51  ~DTSegmentAnalysisTask() override;
52 
54  void dqmBeginRun(const edm::Run& , const edm::EventSetup&) override;
55 
56  // Operations
57  void analyze(const edm::Event& event, const edm::EventSetup& setup) override;
58 
60  void beginLuminosityBlock(edm::LuminosityBlock const& lumiSeg, edm::EventSetup const& eSetup) override;
61  void endLuminosityBlock(edm::LuminosityBlock const& lumiSeg, edm::EventSetup const& eSetup) override;
62 
63 
64 protected:
65 
66  // Book the histograms
67  void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
68 
69 private:
70 
71  // Switch for detailed analysis
73 
74  // Get the DT Geometry
76 
77  // Lable of 4D segments in the event
79 
80  // Get the map of noisy channels
82 
84 
85  // book the histos
86  void bookHistos(DQMStore::IBooker & ibooker, DTChamberId chamberId);
87  // Fill a set of histograms for a given chamber
88  void fillHistos(DTChamberId chamberId,
89  int nHits,
90  float chi2);
91 
92  // the histos
93  std::map<DTChamberId, std::vector<MonitorElement*> > histosPerCh;
94  std::map< int, MonitorElement* > summaryHistos;
95  std::map<int, std::map<int, DTTimeEvolutionHisto*> > histoTimeEvol;
96 
97  int nevents;
100 
101  // # of bins in the time histos
103  // # of LS per bin in the time histos
105  // switch on/off sliding bins in time histos
107  // top folder for the histograms in DQMStore
109  // hlt DQM mode
111  // max phi angle of reconstructed segments
112  double phiSegmCut;
113  // min # hits of segment used to validate a segment in WB+-2/SecX/MB1
114  int nhitsCut;
115 
117 
118 };
119 #endif
120 
121 
122 /* Local Variables: */
123 /* show-trailing-whitespace: t */
124 /* truncate-lines: t */
125 /* End: */
void fillHistos(DTChamberId chamberId, int nHits, float chi2)
void analyze(const edm::Event &event, const edm::EventSetup &setup) override
DTTimeEvolutionHisto * hNevtPerLS
def setup(process, global_tag, zero_tesla=False)
Definition: GeneralSetup.py:2
std::map< int, MonitorElement * > summaryHistos
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.
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:44