CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
DTReadOutMapping.h
Go to the documentation of this file.
1 #ifndef DTReadOutMapping_H
2 #define DTReadOutMapping_H
3 
15 //----------------------
16 // Base Class Headers --
17 //----------------------
18 
19 
20 //------------------------------------
21 // Collaborating Class Declarations --
22 //------------------------------------
24 
28 
29 //---------------
30 // C++ Headers --
31 //---------------
32 #include <vector>
33 #include <string>
34 
36 template <class Key, class Content> class DTBufferTree;
37 
38 // ---------------------
39 // -- Class Interface --
40 // ---------------------
41 
43 
44  public:
45 
48 
49  int dduId;
50  int rosId;
51  int robId;
52  int tdcId;
53  int channelId;
54  int wheelId;
55  int stationId;
56  int sectorId;
57  int slId;
58  int layerId;
59  int cellId;
60 
61 
63 };
64 
65 
67 
68  public:
69 
73  DTReadOutMapping( const std::string& cell_map_version,
74  const std::string& rob_map_version );
75 
79 
80  enum type { plain, compact };
81 
84  int readOutToGeometry( int dduId,
86  int rosId,
87  int robId,
88  int tdcId,
89  int channelId,
90  DTWireId& wireId ) const;
91 
92  int readOutToGeometry( int dduId,
93  int rosId,
94  int robId,
95  int tdcId,
96  int channelId,
97  int& wheelId,
98  int& stationId,
99  int& sectorId,
100  int& slId,
101  int& layerId,
102  int& cellId ) const;
103 
104  int geometryToReadOut( int wheelId,
105  int stationId,
106  int sectorId,
107  int slId,
108  int layerId,
109  int cellId,
110  int& dduId,
111  int& rosId,
112  int& robId,
113  int& tdcId,
114  int& channelId ) const;
115  int geometryToReadOut( const DTWireId& wireId,
116  int& dduId,
117  int& rosId,
118  int& robId,
119  int& tdcId,
120  int& channelId ) const;
121 
122  type mapType() const;
123 
125  const
126  std::string& mapCellTdc() const;
128  const
129  std::string& mapRobRos() const;
131 
133  void clear();
134 
136  int insertReadOutGeometryLink( int dduId,
137  int rosId,
138  int robId,
139  int tdcId,
140  int channelId,
141  int wheelId,
142  int stationId,
143  int sectorId,
144  int slId,
145  int layerId,
146  int cellId );
147 
149  typedef std::vector<DTReadOutGeometryLink>::const_iterator const_iterator;
150  const_iterator begin() const;
151  const_iterator end() const;
152 
154  const DTReadOutMapping* fullMap() const;
155 
156  private:
157 
160 
163 
164  static DTReadOutMapping* expandMap( const DTReadOutMapping& compMap );
165 
168 
169  std::vector<DTReadOutGeometryLink> readOutChannelDriftTubeMap;
170 
174 
176  void cacheMap() const;
177 
178  std::string mapNameRG() const;
179  std::string mapNameGR() const;
180 
181 
183 };
184 #endif // DTReadOutMapping_H
type
Definition: HCALResponse.h:21
std::string robMapVersion
const_iterator end() const
DTReadOutMapping & operator=(DTReadOutMapping const &)
int readOutToGeometry(int dduId, int rosId, int robId, int tdcId, int channelId, DTWireId &wireId) const
transform identifiers
std::string mapNameRG() const
void clear()
clear map
std::vector< DTReadOutGeometryLink >::const_iterator const_iterator
Access methods to the connections.
std::vector< DTReadOutGeometryLink > readOutChannelDriftTubeMap
edm::AtomicPtrCache< DTReadOutMappingCache > atomicCache_
edm::ConstRespectingPtr< DTBufferTree< int, int > > grBuf
const std::string & mapCellTdc() const
access parent maps identifiers
edm::ConstRespectingPtr< DTBufferTree< int, int > > rgBuf
const_iterator begin() const
int insertReadOutGeometryLink(int dduId, int rosId, int robId, int tdcId, int channelId, int wheelId, int stationId, int sectorId, int slId, int layerId, int cellId)
insert connection
int geometryToReadOut(int wheelId, int stationId, int sectorId, int slId, int layerId, int cellId, int &dduId, int &rosId, int &robId, int &tdcId, int &channelId) const
#define COND_TRANSIENT
Definition: Serializable.h:61
edm::AtomicPtrCache< DTReadOutMappingCache > & atomicCache()
const std::string & mapRobRos() const
static DTReadOutMapping * expandMap(const DTReadOutMapping &compMap)
#define COND_SERIALIZABLE
Definition: Serializable.h:38
void cacheMap() const
read and store full content
std::string cellMapVersion
type mapType() const
std::string mapNameGR() const
edm::AtomicPtrCache< DTReadOutMappingCache > const & atomicCache() const
const DTReadOutMapping * fullMap() const
Expand to full map.