CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
LASGlobalLoop.cc
Go to the documentation of this file.
1 
3 
4 
9 }
10 
11 
12 
13 
14 
19 bool LASGlobalLoop::TECLoop( int& subdet, int& ring, int& beam, int& disk ) const {
20 
21  if( subdet > 1 ) {
22  std::cerr << " [LASGlobalLoop::TECLoop] ** ERROR: Endcap loop running on TIB/TOB (subdetector > 1)" << std::endl;
23  throw 1;
24  }
25 
26  ++disk;
27 
28  if( disk == 9 ) {
29  ++beam;
30  disk = 0;
31 
32  if( beam == 8 ) {
33  ++ring;
34  beam = 0;
35 
36  if( ring == 2 ) {
37  ++subdet;
38  ring = 0;
39 
40  if( subdet == 2 ) return false;
41 
42  }
43  }
44  }
45 
46  return true;
47 
48 }
49 
50 
51 
52 
53 
58 bool LASGlobalLoop::TIBTOBLoop( int& subdet, int& beam, int& position ) const {
59 
60  if( subdet < 2 ) {
61  std::cerr << " [LASGlobalLoop::TIBTOBLoop] ** ERROR: Barrel loop running on TEC (subdetector < 2)" << std::endl;
62  throw 1;
63  }
64 
65  ++position;
66 
67  if( position == 6 ) {
68  ++beam;
69  position = 0;
70 
71  if( beam == 8 ) {
72  ++subdet;
73  beam = 0;
74 
75  if( subdet == 4 ) return false;
76 
77  }
78  }
79 
80  return true;
81 
82 }
83 
84 
85 
86 
87 
92 bool LASGlobalLoop::TEC2TECLoop( int& subdet, int& beam, int& disk ) const {
93 
94  if( subdet > 1 ) {
95  std::cerr << " [LASGlobalLoop::TEC2TECLoop] ** ERROR: TEC loop running on TIB/TOB (subdetector > 1)" << std::endl;
96  throw 1;
97  }
98 
99  ++disk;
100 
101  if( disk == 5 ) {
102  ++beam;
103  disk = 0;
104 
105  if( beam == 8 ) {
106  ++subdet;
107  beam = 0;
108 
109  if( subdet == 2 ) return false;
110 
111  }
112  }
113 
114  return true;
115 
116 }
static int position[TOTALCHAMBERS][3]
Definition: ReadPGInfo.cc:509
bool TEC2TECLoop(int &, int &, int &) const
bool TECLoop(int &, int &, int &, int &) const
bool TIBTOBLoop(int &, int &, int &) const