CMS 3D CMS Logo

SiStripCommissioningSource.h
Go to the documentation of this file.
1 #ifndef DQM_SiStripCommissioningSources_SiStripCommissioningSource_H
2 #define DQM_SiStripCommissioningSources_SiStripCommissioningSource_H
3 
17 #include <string>
18 #include <vector>
19 #include <map>
20 #include <cstdint>
21 
22 class CommissioningTask;
25 
30 public: // ---------- Public interface ----------
32  typedef std::map<unsigned int, CommissioningTask*> TaskMap;
33  typedef std::vector<CommissioningTask*> VecOfTasks;
34  typedef std::vector<VecOfTasks> VecOfVecOfTasks;
37 
39  ~SiStripCommissioningSource() override;
40 
41  void beginRun(edm::Run const&, const edm::EventSetup&) override;
42  void analyze(const edm::Event&, const edm::EventSetup&) override;
43  void endJob() override;
44 
45 private: // ---------- Private methods ----------
47  SiStripCommissioningSource() = delete;
48 
50  DQMStore* const dqm(std::string method = "") const;
51 
53  void createRunNumber();
54 
56  void createTask(const SiStripEventSummary* const, const edm::EventSetup&);
57 
59  void createCablingTasks();
60 
63 
65  void clearCablingTasks();
66 
68  void clearTasks();
69 
72 
74  void fillHistos(const SiStripEventSummary* const,
78 
80  void remove();
81 
83  void directory(std::stringstream&, uint32_t run_number = 0);
84 
86  //void cablingForConnectionRun( const sistrip::RunType& ); //@@ do not use!
87 
88  // ---------- DQM fwk and cabling ----------
89 
91  DQMStore* dqm_;
92 
95 
98 
99  // ---------- Input / output ----------
106 
112 
115 
117  uint32_t run_;
118 
121 
123  int32_t time_;
124 
126  bool isSpy_;
127 
128  // ---------- Histogram-related ----------
129 
132 
135 
137  VecOfVecOfTasks tasks_;
138 
140  TaskMap cablingTasks_;
141 
144 
147 
150 
153 
156 
159 };
160 
161 #endif // DQM_SiStripCommissioningSources_SiStripCommissioningSource_H
edm::EDGetTokenT< edm::DetSetVector< SiStripRawDigi > > digiReorderedToken_
edm::EDGetTokenT< edm::DetSetVector< SiStripRawDigi > > digiVirginRawToken_
std::map< unsigned int, CommissioningTask * > TaskMap
void createTask(const SiStripEventSummary *const, const edm::EventSetup &)
edm::EDGetTokenT< edmNew::DetSetVector< SiStripCluster > > clustersToken_
void fillHistos(const SiStripEventSummary *const, const edm::DetSetVector< SiStripRawDigi > &, const edm::DetSetVector< SiStripRawDigi > &=edm::DetSetVector< SiStripRawDigi >(), const edmNew::DetSetVector< SiStripCluster > &=edmNew::DetSetVector< SiStripCluster >())
void createTasks(sistrip::RunType, const edm::EventSetup &)
void analyze(const edm::Event &, const edm::EventSetup &) override
void directory(std::stringstream &, uint32_t run_number=0)
void beginRun(edm::Run const &, const edm::EventSetup &) override
std::vector< CommissioningTask * > VecOfTasks
Class containning control, module, detector and connection information, at the level of a FED channel...
void fillCablingHistos(const SiStripEventSummary *const, const edm::DetSetVector< SiStripRawDigi > &)
std::vector< VecOfTasks > VecOfVecOfTasks
edm::EDGetTokenT< edm::DetSetVector< SiStripRawDigi > > digiFineDelaySelectionToken_
Contains cabling info at the device level, including DetId, APV pair numbers, hardware addresses...
edm::EDGetTokenT< SiStripEventSummary > inputModuleSummaryToken_
edm::EDGetTokenT< edm::DetSetVector< SiStripRawDigi > > digiScopeModeToken_
DQMStore *const dqm(std::string method="") const
dqm::legacy::MonitorElement MonitorElement
Definition: Run.h:45