CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
CommissioningHistosUsingDb.h
Go to the documentation of this file.
1 
2 #ifndef DQM_SiStripCommissioningClients_CommissioningHistosUsingDb_H
3 #define DQM_SiStripCommissioningClients_CommissioningHistosUsingDb_H
4 
9 #include "boost/range/iterator_range.hpp"
10 #include <string>
11 #include <map>
12 #include <cstdint>
13 
14 class SiStripConfigDb;
15 class SiStripFedCabling;
16 class TrackerTopology;
17 
19  // ---------- public interface ----------
20 
21 public:
25 
26  ~CommissioningHistosUsingDb() override;
27 
28  void configure(const edm::ParameterSet&, const edm::EventSetup&) override;
29 
30  void uploadToConfigDb();
31 
32  bool doUploadAnal() const;
33 
34  bool doUploadConf() const;
35 
36  void doUploadAnal(bool);
37 
38  void doUploadConf(bool);
39 
40  // ---------- protected methods ----------
41 
42 protected:
43  void buildDetInfo();
44 
45  virtual void addDcuDetIds();
46 
47  virtual void uploadConfigurations() { ; }
48 
49  void uploadAnalyses();
50 
52 
54 
55  SiStripConfigDb* const db() const;
56 
57  SiStripFedCabling* const cabling() const;
58 
59  class DetInfo {
60  public:
61  uint32_t dcuId_;
62  uint32_t detId_;
63  uint16_t pairs_;
64  DetInfo() : dcuId_(sistrip::invalid32_), detId_(sistrip::invalid32_), pairs_(sistrip::invalid_) { ; }
65  };
66 
67  std::pair<std::string, DetInfo> detInfo(const SiStripFecKey&);
68 
69  bool deviceIsPresent(const SiStripFecKey&);
70 
71  // ---------- private member data ----------
72 
73 private:
75 
77 
79 
81 
82  typedef std::map<uint32_t, DetInfo> DetInfos;
83 
84  std::map<std::string, DetInfos> detInfo_;
85 
87 
89 
91 };
92 
95 
98 
99 inline SiStripConfigDb* const CommissioningHistosUsingDb::db() const { return db_; }
101 
102 #endif // DQM_SiStripCommissioningClients_CommissioningHistosUsingDb_H
std::map< std::string, DetInfos > detInfo_
bool deviceIsPresent(const SiStripFecKey &)
static const uint32_t invalid32_
Definition: Constants.h:15
void configure(const edm::ParameterSet &, const edm::EventSetup &) override
Utility class that identifies a position within the strip tracker control structure, down to the level of an APV25.
Definition: SiStripFecKey.h:45
std::map< uint32_t, DetInfo > DetInfos
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > tTopoToken_
An interface class to the DeviceFactory.
std::pair< std::string, DetInfo > detInfo(const SiStripFecKey &)
virtual void create(SiStripConfigDb::AnalysisDescriptionsV &, Analysis)
virtual void createAnalyses(SiStripConfigDb::AnalysisDescriptionsV &)
static const uint16_t invalid_
Definition: Constants.h:16
Contains cabling info at the device level, including DetId, APV pair numbers, hardware addresses...
std::vector< AnalysisDescription * > AnalysisDescriptionsV
SiStripConfigDb *const db() const
SiStripFedCabling *const cabling() const