CMS 3D CMS Logo

DTTTrigCalibration.h
Go to the documentation of this file.
1 #ifndef CalibMuon_DTTTrigCalibration_H
2 #define CalibMuon_DTTTrigCalibration_H
3 
15 
16 #include <string>
17 #include <map>
18 
19 
20 namespace edm {
21  class ParameterSet;
22  class Event;
23  class EventSetup;
24 }
25 
26 class TFile;
27 class TH1F;
28 class DTTimeBoxFitter;
29 class DTTTrigBaseSync;
30 class DTTtrig;
31 
33 public:
36 
38  ~DTTTrigCalibration() override;
39 
40  // Operations
41 
43  void analyze(const edm::Event & event, const edm::EventSetup& eventSetup) override;
44 
46  void endJob() override;
47 
48 
49 protected:
50 
51 private:
52  // Generate the time box name
53  std::string getTBoxName(const DTSuperLayerId& slId) const;
54  // Generate the time box name
55  std::string getOccupancyName(const DTLayerId& slId) const;
56 
57  // Print computed ttrig
58  void dumpTTrigMap(const DTTtrig* tTrig) const;
59 
60  // Plot computed ttrig
61  void plotTTrig(const DTTtrig* tTrig) const;
62 
63  // Debug flag
64  bool debug;
65 
66  // The label used to retrieve digis from the event
68 
69  // The TDC time-window
71  //The maximum number of digis per layer
73 
74  // The file which will contain the time boxes
75  TFile *theFile;
76 
77  // Map of the histograms by SL
78  std::map<DTSuperLayerId, TH1F*> theHistoMap;
79  std::map<DTLayerId, TH1F*> theOccupancyMap;
80 
81  // Switch for t0 subtraction
83  // Switch for checking of noisy channels
85  //card to switch on/off the DB writing
87  // the kfactor to be uploaded in the ttrig DB
88  double kFactor;
89 
90  // The fitter
92  // The module for t0 subtraction
93  DTTTrigBaseSync *theSync;//FIXME: should be const
94 
95 };
96 #endif
97 
std::map< DTSuperLayerId, TH1F * > theHistoMap
def analyze(function, filename, filter=None)
Definition: Profiling.py:11
DTTTrigBaseSync * theSync
HLT enums.
std::map< DTLayerId, TH1F * > theOccupancyMap
DTTimeBoxFitter * theFitter
Definition: event.py:1