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 
14 #include <boost/cstdint.hpp>
15 #include <string>
16 #include <vector>
17 #include <map>
18 
19 class DQMStore;
20 class CommissioningTask;
23 
28 
29  public: // ---------- Public interface ----------
30 
32  typedef std::map<unsigned int, CommissioningTask*> TaskMap;
33  typedef std::vector<CommissioningTask*> VecOfTasks;
34  typedef std::vector<VecOfTasks> VecOfVecOfTasks;
35 
37  ~SiStripCommissioningSource() override;
38 
39  void beginRun( edm::Run const &, const edm::EventSetup & ) override;
40  void analyze( const edm::Event &, const edm::EventSetup & ) override;
41  void endJob() override;
42 
43  private: // ---------- Private methods ----------
44 
46  SiStripCommissioningSource() = delete;
47 
49  DQMStore* const dqm( std::string method = "" ) const;
50 
52  void createRunNumber();
53 
55  void createTask( const SiStripEventSummary* const, const edm::EventSetup& );
56 
58  void createCablingTasks();
59 
62 
64  void clearCablingTasks();
65 
67  void clearTasks();
68 
70  void fillCablingHistos( const SiStripEventSummary* const,
72 
74  void fillHistos( const SiStripEventSummary* const,
76  const edm::DetSetVector<SiStripRawDigi>* = nullptr);
77 
79  void remove();
80 
82  void directory( std::stringstream&,
83  uint32_t run_number = 0 );
84 
86  //void cablingForConnectionRun( const sistrip::RunType& ); //@@ do not use!
87 
88 
89  // ---------- DQM fwk and cabling ----------
90 
93 
96 
99 
100  // ---------- Input / output ----------
106 
111 
114 
116  uint32_t run_;
117 
120 
122  int32_t time_;
123 
125  bool isSpy_;
126 
127  // ---------- Histogram-related ----------
128 
131 
134 
136  VecOfVecOfTasks tasks_;
137 
139  TaskMap cablingTasks_;
140 
143 
146 
149 
152 
155 
158 
159 
160 };
161 
162 #endif // DQM_SiStripCommissioningSources_SiStripCommissioningSource_H
163 
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 &)
DQMStore *const dqm(std::string method="") const
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_
Definition: Run.h:44
void fillHistos(const SiStripEventSummary *const, const edm::DetSetVector< SiStripRawDigi > &, const edm::DetSetVector< SiStripRawDigi > *=0)