CMS 3D CMS Logo

SiStripActionExecutor.h
Go to the documentation of this file.
1 #ifndef _SiStripActionExecutor_h_
2 #define _SiStripActionExecutor_h_
3 
8 
10 
12 
13 #include <map>
14 #include <vector>
15 #include <string>
16 #include <TTree.h>
17 
18 class MonitorUserInterface;
19 class SiStripFedCabling;
20 class SiStripDetCabling;
21 
23 public:
26 
28  virtual ~SiStripActionExecutor();
29 
30  bool readConfiguration();
31  bool readTkMapConfiguration(const SiStripDetCabling* detCabling,
32  const TkDetMap* tkDetMap,
33  const TrackerTopology* tTopo);
34 
35  void saveMEs(DQMStore& dqm_store, std::string fname);
36  void createSummary(DQMStore& dqm_store);
37  void createSummaryOffline(DQMStore& dqm_store);
38  void createTkMap(const edm::ParameterSet& tkmapPset, DQMStore& dqm_store, const std::string& map_type);
39  void createOfflineTkMap(const edm::ParameterSet& tkmapPset,
40  DQMStore& dqm_store,
41  std::string& map_type,
42  const SiStripQuality* stripQuality);
43  void createTkInfoFile(std::vector<std::string> tkhmap_names,
44  TTree* tkinfo_tree,
45  DQMStore& dqm_store,
46  const GeometricDet* geomDet);
47 
48  void createStatus(DQMStore& dqm_store);
49  void fillDummyStatus();
50  void fillStatus(DQMStore& dqm_store,
51  const SiStripDetCabling* cabling,
52  const TkDetMap* tkDetMap,
53  const TrackerTopology* tTopo);
54  void fillStatusAtLumi(DQMStore& dqm_store);
55 
57  void createShiftReport(DQMStore& dqm_store);
58  void printReportSummary(MonitorElement* me, std::ostringstream& str_val, std::string name);
59  void printShiftHistoParameters(DQMStore& dqm_store,
60  std::map<std::string, std::vector<std::string>> const& layout_map,
61  std::ostringstream& str_val);
62  void printFaultyModuleList(DQMStore& dqm_store, std::ostringstream& str_val);
63  void createFaultyModuleMEs(DQMStore& dqm_store);
64 
65 private:
66  std::vector<std::string> tkMapMENames{};
67 
68  std::unique_ptr<SiStripSummaryCreator> summaryCreator_{nullptr};
69  std::unique_ptr<SiStripTrackerMapCreator> tkMapCreator_{nullptr};
70  std::unique_ptr<SiStripQualityChecker> qualityChecker_{nullptr};
71  std::unique_ptr<SiStripConfigWriter> configWriter_{nullptr};
72 
74 };
75 #endif
dqm::harvesting::DQMStore DQMStore
std::unique_ptr< SiStripSummaryCreator > summaryCreator_
void saveMEs(DQMStore &dqm_store, std::string fname)
void fillStatusAtLumi(DQMStore &dqm_store)
SiStripActionExecutor(edm::ParameterSet const &ps)
void createSummary(DQMStore &dqm_store)
std::unique_ptr< SiStripTrackerMapCreator > tkMapCreator_
std::unique_ptr< SiStripQualityChecker > qualityChecker_
std::vector< std::string > tkMapMENames
edm::ParameterSet const pSet_
void fillStatus(DQMStore &dqm_store, const SiStripDetCabling *cabling, const TkDetMap *tkDetMap, const TrackerTopology *tTopo)
std::unique_ptr< SiStripConfigWriter > configWriter_
void printFaultyModuleList(DQMStore &dqm_store, std::ostringstream &str_val)
void createFaultyModuleMEs(DQMStore &dqm_store)
void createTkMap(const edm::ParameterSet &tkmapPset, DQMStore &dqm_store, const std::string &map_type)
void createStatus(DQMStore &dqm_store)
Contains cabling info at the device level, including DetId, APV pair numbers, hardware addresses...
string fname
main script
void createOfflineTkMap(const edm::ParameterSet &tkmapPset, DQMStore &dqm_store, std::string &map_type, const SiStripQuality *stripQuality)
void createTkInfoFile(std::vector< std::string > tkhmap_names, TTree *tkinfo_tree, DQMStore &dqm_store, const GeometricDet *geomDet)
void createSummaryOffline(DQMStore &dqm_store)
void printReportSummary(MonitorElement *me, std::ostringstream &str_val, std::string name)
bool readTkMapConfiguration(const SiStripDetCabling *detCabling, const TkDetMap *tkDetMap, const TrackerTopology *tTopo)
void createShiftReport(DQMStore &dqm_store)
dqm::harvesting::MonitorElement MonitorElement
void printShiftHistoParameters(DQMStore &dqm_store, std::map< std::string, std::vector< std::string >> const &layout_map, std::ostringstream &str_val)