CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TOBNameSpace.h
Go to the documentation of this file.
1 #ifndef Alignment_CommonAlignment_TOBNameSpace_H
2 #define Alignment_CommonAlignment_TOBNameSpace_H
3 
18 
19 namespace align
20 {
21  namespace tob
22  {
24  inline unsigned int moduleNumber(align::ID, const TrackerTopology*);
25 
27  inline unsigned int rodNumber(align::ID, const TrackerTopology*);
28 
30  inline unsigned int layerNumber(align::ID, const TrackerTopology*);
31 
33  inline unsigned int halfBarrelNumber(align::ID, const TrackerTopology*);
34  }
35 }
36 
37 unsigned int align::tob::moduleNumber(align::ID id, const TrackerTopology* tTopo)
38 {
39  return tTopo->tobModule(id);
40 }
41 
42 unsigned int align::tob::rodNumber(align::ID id, const TrackerTopology* tTopo)
43 {
44  return tTopo->tobRodInfo(id)[1];
45 }
46 
47 unsigned int align::tob::layerNumber(align::ID id, const TrackerTopology* tTopo)
48 {
49  return tTopo->tobLayer(id);
50 }
51 
53 {
54  return tTopo->tobRodInfo(id)[0];
55 }
56 
57 #endif
uint32_t ID
Definition: Definitions.h:26
unsigned int layerNumber(align::ID, const TrackerTopology *)
Layer number increases with rho from 1 to 6.
Definition: TOBNameSpace.h:47
unsigned int moduleNumber(align::ID, const TrackerTopology *)
Module number increases with |z| from 1 to 6.
Definition: TOBNameSpace.h:37
std::vector< unsigned int > tobRodInfo(const DetId &id) const
unsigned int rodNumber(align::ID, const TrackerTopology *)
Rod number increases with phi.
Definition: TOBNameSpace.h:42
unsigned int tobModule(const DetId &id) const
unsigned int tobLayer(const DetId &id) const
unsigned int halfBarrelNumber(align::ID, const TrackerTopology *)
HalfBarrel number is 1 at -z side and 2 at +z side.
Definition: TOBNameSpace.h:52