CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Functions | Variables
align::tpb Namespace Reference

Functions

unsigned int halfBarrelNumber (align::ID, const TrackerTopology *)
 Half barrel number is 1 at left side (-x) and 2 at right side (+x). More...
 
unsigned int ladderNumber (align::ID, const TrackerTopology *)
 
unsigned int layerNumber (align::ID, const TrackerTopology *)
 Layer number increases with rho from 1 to 3. More...
 
unsigned int moduleNumber (align::ID, const TrackerTopology *)
 Module number increases with z from 1 to 8. More...
 

Variables

const unsigned int lpqc [] = {5, 8, 11}
 Number of ladders for each quarter cylinder. More...
 

Function Documentation

unsigned int align::tpb::halfBarrelNumber ( align::ID  id,
const TrackerTopology tTopo 
)
inline

Half barrel number is 1 at left side (-x) and 2 at right side (+x).

Definition at line 69 of file TPBNameSpace.h.

References trackerHits::c, prof2calltree::l, lpqc, TrackerTopology::pxbLadder(), and TrackerTopology::pxbLayer().

Referenced by TrackerCounters::TrackerCounters().

70 {
71 
72 
73  unsigned int l = tTopo->pxbLadder(id); // increases with phi
74  unsigned int c = tTopo->pxbLayer(id) - 1;
75 
76  return l > lpqc[c] && l <= 3 * lpqc[c] ? 1 : 2;
77 }
unsigned int pxbLadder(const DetId &id) const
const unsigned int lpqc[]
Number of ladders for each quarter cylinder.
Definition: TPBNameSpace.h:24
unsigned int pxbLayer(const DetId &id) const
unsigned int align::tpb::ladderNumber ( align::ID  id,
const TrackerTopology tTopo 
)
inline

Ladder number increases from 1 at the top to 2 * lpqc at the bottom of each half cylinder.

Definition at line 46 of file TPBNameSpace.h.

References trackerHits::c, prof2calltree::l, lpqc, TrackerTopology::pxbLadder(), and TrackerTopology::pxbLayer().

Referenced by TrackerCounters::TrackerCounters().

47 {
48 
49 
50  unsigned int l = tTopo->pxbLadder(id); // increases with phi
51  unsigned int c = tTopo->pxbLayer(id) - 1;
52 
53 // Ladder in 1st quadrant: number = lpqc + 1 - l (1 to lpqc)
54 // Ladder in 2nd quadrant: number = l - lpqc (1 to lpqc)
55 // Ladder in 3rd quadrant: number = l - lpqc (lpqc + 1 to 2 * lpqc)
56 // Ladder in 4th quadrant: number = 5 * lpqc + 1 - l (lpqc + 1 to 2 * lpqc)
57 
58  return l > 3 * lpqc[c] ? // ladder in 4th quadrant
59  5 * lpqc[c] + 1 - l :
60  (l > lpqc[c] ? // ladder not in 1st quadrant
61  l - lpqc[c] : lpqc[c] + 1 - l);
62 }
unsigned int pxbLadder(const DetId &id) const
const unsigned int lpqc[]
Number of ladders for each quarter cylinder.
Definition: TPBNameSpace.h:24
unsigned int pxbLayer(const DetId &id) const
unsigned int align::tpb::layerNumber ( align::ID  id,
const TrackerTopology tTopo 
)
inline

Layer number increases with rho from 1 to 3.

Definition at line 64 of file TPBNameSpace.h.

References TrackerTopology::pxbLayer().

Referenced by TrackerCounters::TrackerCounters().

65 {
66  return tTopo->pxbLayer(id);
67 }
unsigned int pxbLayer(const DetId &id) const
unsigned int align::tpb::moduleNumber ( align::ID  id,
const TrackerTopology tTopo 
)
inline

Module number increases with z from 1 to 8.

Definition at line 41 of file TPBNameSpace.h.

References TrackerTopology::pxbModule().

Referenced by TrackerCounters::TrackerCounters().

42 {
43  return tTopo->pxbModule(id);
44 }
unsigned int pxbModule(const DetId &id) const

Variable Documentation

const unsigned int align::tpb::lpqc[] = {5, 8, 11}

Number of ladders for each quarter cylinder.

Definition at line 24 of file TPBNameSpace.h.

Referenced by halfBarrelNumber(), and ladderNumber().