CMS 3D CMS Logo

DTChamberEfficiencyTask.h
Go to the documentation of this file.
1 #ifndef DTChamberEfficiencyTask_H
2 #define DTChamberEfficiencyTask_H
3 
20 
26 
29 
31 
32 #include <string>
33 #include <map>
34 #include <vector>
35 
36 class DTChamberEfficiencyTask : public DQMOneEDAnalyzer<edm::one::WatchLuminosityBlocks> {
37 public:
40 
42  ~DTChamberEfficiencyTask() override;
43 
45  void dqmBeginRun(const edm::Run& run, const edm::EventSetup& setup) override;
46 
48  void beginLuminosityBlock(edm::LuminosityBlock const& lumiSeg, edm::EventSetup const& context) override;
49  void endLuminosityBlock(edm::LuminosityBlock const& lumiSeg, edm::EventSetup const& context) final {}
50 
51  // Operations
52  void analyze(const edm::Event& event, const edm::EventSetup& setup) override;
53 
54 protected:
55  // Book the histograms
56  void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
57 
58 private:
60  const DTRecSegment4D* getBestSegment(const DTRecSegment4D* s1, const DTRecSegment4D* s2) const;
61  bool isGoodSegment(const DTRecSegment4D& seg) const;
62  LocalPoint interpolate(const DTRecSegment4D& seg1, const DTRecSegment4D& seg3, const DTChamberId& MB2) const;
63 
64  void bookHistos(DQMStore::IBooker& ibooker, DTChamberId chId);
65 
66  // Switch for verbosity
67  bool debug;
68  // The running mode
70  // The analysis mode
72 
73  // Lable of 4D segments in the event
75 
77 
78  std::map<DTChamberId, std::vector<MonitorElement*> > histosPerCh;
79 
80  unsigned int theMinHitsSegment;
83 
84  //Load geometry
88 };
89 #endif
90 
91 /* Local Variables: */
92 /* show-trailing-whitespace: t */
93 /* truncate-lines: t */
94 /* End: */
edm::EDGetTokenT< DTRecSegment4DCollection > recHits4DToken_
std::pair< const_iterator, const_iterator > range
iterator range
Definition: RangeMap.h:50
void endLuminosityBlock(edm::LuminosityBlock const &lumiSeg, edm::EventSetup const &context) final
LocalPoint interpolate(const DTRecSegment4D &seg1, const DTRecSegment4D &seg3, const DTChamberId &MB2) const
void dqmBeginRun(const edm::Run &run, const edm::EventSetup &setup) override
BeginRun.
edm::ESGetToken< DTGeometry, MuonGeometryRecord > muonGeomToken_
edm::Handle< DTRecSegment4DCollection > segs
~DTChamberEfficiencyTask() override
Destructor.
void beginLuminosityBlock(edm::LuminosityBlock const &lumiSeg, edm::EventSetup const &context) override
To reset the MEs.
void analyze(const edm::Event &event, const edm::EventSetup &setup) override
DTChamberEfficiencyTask(const edm::ParameterSet &pset)
Constructor.
const DTRecSegment4D & getBestSegment(const DTRecSegment4DCollection::range &segs) const
std::map< DTChamberId, std::vector< MonitorElement * > > histosPerCh
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
bool isGoodSegment(const DTRecSegment4D &seg) const
void bookHistos(DQMStore::IBooker &ibooker, DTChamberId chId)
Definition: event.py:1
Definition: Run.h:45