CMS 3D CMS Logo

DTCCBConfig.h
Go to the documentation of this file.
1 #ifndef DTCCBConfig_H
2 #define DTCCBConfig_H
3 
12 //----------------------
13 // Base Class Headers --
14 //----------------------
15 
16 
17 //------------------------------------
18 // Collaborating Class Declarations --
19 //------------------------------------
21 
24 
25 //---------------
26 // C++ Headers --
27 //---------------
28 #include <string>
29 #include <vector>
30 #include <utility>
31 
33 
34 // ---------------------
35 // -- Class Interface --
36 // ---------------------
37 
38 class DTCCBId {
39 
40  public:
41 
42  DTCCBId();
43  ~DTCCBId();
44 
45  int wheelId;
46  int stationId;
47  int sectorId;
48 
49 
51 };
52 
53 
54 class DTConfigKey {
55 
56  public:
57 
58  DTConfigKey();
59  ~DTConfigKey();
60 
61  int confType;
62  int confKey;
63 
64 
66 };
67 
68 
69 class DTCCBConfig {
70 
71  public:
72 
73  DTCCBConfig();
75 
76  virtual ~DTCCBConfig();
77 
78  std::vector<DTConfigKey> fullKey() const;
79  int stamp() const;
80  int configKey( int wheelId,
81  int stationId,
82  int sectorId,
83  std::vector<int>& confKey ) const;
84  int configKey( const DTChamberId& id,
85  std::vector<int>& confKey ) const;
86  typedef std::vector< std::pair< DTCCBId,std::vector<int> > > ccb_config_map;
87  typedef ccb_config_map::const_iterator ccb_config_iterator;
88  ccb_config_map configKeyMap() const;
89 
91  const
92  std::string& version() const;
94 
96  void clear();
97 
98  void setFullKey( const std::vector<DTConfigKey>& );
99  void setStamp( int s );
100 
101  int setConfigKey( int wheelId,
102  int stationId,
103  int sectorId,
104  const std::vector<int>& confKey );
105  int setConfigKey( const DTChamberId& id,
106  const std::vector<int>& confKey );
107 
108  int appendConfigKey( int wheelId,
109  int stationId,
110  int sectorId,
111  const std::vector<int>& confKey );
112  int appendConfigKey( const DTChamberId& id,
113  const std::vector<int>& confKey );
114 
116  typedef std::vector< std::pair<DTCCBId,int> >::const_iterator
118  const_iterator begin() const;
119  const_iterator end() const;
120 
121  void initialize();
122 
123  private:
124 
125  DTCCBConfig(DTCCBConfig const&) = delete;
126  DTCCBConfig& operator=(DTCCBConfig const&) = delete;
127 
130  std::vector<DTConfigKey> fullConfigKey;
131  std::vector< std::pair<DTCCBId,int> > dataList;
132 
134 
136 };
137 #endif // DTCCBConfig_H
static AlgebraicMatrix initialize()
ccb_config_map::const_iterator ccb_config_iterator
Definition: DTCCBConfig.h:87
int wheelId
Definition: DTCCBConfig.h:45
std::vector< std::pair< DTCCBId, int > > dataList
Definition: DTCCBConfig.h:131
std::vector< DTConfigKey > fullConfigKey
Definition: DTCCBConfig.h:130
std::vector< std::pair< DTCCBId, int > >::const_iterator const_iterator
Access methods to data.
Definition: DTCCBConfig.h:117
int sectorId
Definition: DTCCBConfig.h:47
int stationId
Definition: DTCCBConfig.h:46
void clear(CLHEP::HepGenMatrix &m)
Helper function: Reset all elements of a matrix to 0.
Definition: matutil.cc:167
#define end
Definition: vmac.h:39
std::vector< std::pair< DTCCBId, std::vector< int > > > ccb_config_map
Definition: DTCCBConfig.h:86
std::string dataVersion
Definition: DTCCBConfig.h:129
#define COND_TRANSIENT
Definition: Serializable.h:61
#define COND_SERIALIZABLE
Definition: Serializable.h:38
#define begin
Definition: vmac.h:32