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 
22 #include <string>
23 #include <vector>
24 #include <map>
25 #include <cstdint>
26 
27 class CommissioningTask;
30 
34 class SiStripCommissioningSource : public edm::one::EDAnalyzer<edm::one::SharedResources, edm::one::WatchRuns> {
35 public: // ---------- Public interface ----------
37  typedef std::map<unsigned int, CommissioningTask*> TaskMap;
38  typedef std::vector<CommissioningTask*> VecOfTasks;
39  typedef std::vector<VecOfTasks> VecOfVecOfTasks;
42 
44 
46  SiStripCommissioningSource() = delete;
47 
48  ~SiStripCommissioningSource() override;
49 
50  void beginRun(edm::Run const&, const edm::EventSetup&) override;
51  void endRun(edm::Run const&, const edm::EventSetup&) override {}
52  void analyze(const edm::Event&, const edm::EventSetup&) override;
53  void endJob() override;
54 
55 private: // ---------- Private methods ----------
57  DQMStore* const dqm(std::string method = "") const;
58 
60  void createRunNumber();
61 
63  void createTask(const SiStripEventSummary* const, const edm::EventSetup&);
64 
66  void createCablingTasks();
67 
70 
72  void clearCablingTasks();
73 
75  void clearTasks();
76 
79 
81  void fillHistos(const SiStripEventSummary* const,
85 
87  void remove();
88 
90  void directory(std::stringstream&, uint32_t run_number = 0);
91 
93  //void cablingForConnectionRun( const sistrip::RunType& ); //@@ do not use!
94 
95  // ---------- DQM fwk and cabling ----------
96 
99 
103 
106 
107  // ---------- Input / output ----------
114 
120 
123 
125  uint32_t run_;
126 
129 
131  int32_t time_;
132 
134  bool isSpy_;
135 
136  // ---------- Histogram-related ----------
137 
140 
143 
146 
149 
152 
155 
158 
161 
164 
167 
170 };
171 
172 #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::ESGetToken< SiStripPedestals, SiStripPedestalsRcd > pedestalToken_
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 endRun(edm::Run const &, const edm::EventSetup &) override
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
edm::ESGetToken< SiStripFedCabling, SiStripFedCablingRcd > fedCablingToken_
edm::ESGetToken< SiStripNoises, SiStripNoisesRcd > noiseToken_
Definition: Run.h:45