5 239, 235, 233, 230, 227, 224, 222, 219, 217, 214, 212, 210, 207, 205, 203, 201,
6 199, 197, 195, 193, 191, 189, 187, 186, 184, 182, 180, 179, 177, 176, 174, 172,
7 171, 169, 168, 166, 165, 164, 162, 161, 160, 158, 157, 156, 154, 153, 152, 151,
8 149, 148, 147, 146, 145, 143, 142, 141, 140, 139, 138, 137, 136, 135, 134, 133,
9 132, 131, 130, 129, 128, 127, 126, 125, 124, 123, 122, 121, 120, 119, 118, 117,
10 116, 116, 115, 114, 113, 112, 111, 110, 110, 109, 108, 107, 106, 106, 105, 104,
11 103, 102, 102, 101, 100, 99, 99, 98, 97, 96, 96, 95, 94, 93, 93, 92,
12 91, 91, 90, 89, 89, 88, 87, 87, 86, 85, 84, 84, 83, 83, 82, 81
17 int gmt_pt = (pt * 2) + 1;
18 gmt_pt = (gmt_pt > 511) ? 511 : gmt_pt;
23 float pt = (gmt_pt <= 0) ? 0 : 0.5 * (gmt_pt-1);
50 if (endcap == -1 && theta > 127)
52 if (endcap == +1 && theta > 127)
65 case 15: quality = 8;
break;
66 case 14: quality = 4;
break;
67 case 13: quality = 4;
break;
68 case 12: quality = 4;
break;
69 case 11: quality = 4;
break;
70 default: quality = 4;
break;
74 case 15: quality = 12;
break;
75 case 14: quality = 12;
break;
76 case 13: quality = 12;
break;
77 case 12: quality = 8;
break;
78 case 11: quality = 12;
break;
79 case 10: quality = 8;
break;
80 case 7: quality = 8;
break;
81 default: quality = 4;
break;
84 quality |= (mode & 3);
87 if (promoteMode7 && mode == 7 && theta <= 50)
103 if (phidiffs[0] >= 0)
105 else if (phidiffs[0] == 0 && phidiffs[1] < 0)
107 else if (phidiffs[1] == 0 && phidiffs[2] < 0)
116 else if (phidiffs[0] == 0 && phidiffs[1] < 0)
123 if (phidiffs[0] >= 0)
125 else if (phidiffs[0] == 0 && phidiffs[2] < 0)
132 if (phidiffs[0] >= 0)
139 if (phidiffs[1] >= 0)
141 else if (phidiffs[1] == 0 && phidiffs[2] < 0)
148 if (phidiffs[1] >= 0)
155 if (phidiffs[2] >= 0)
162 if (phidiffs[3] >= 0)
164 else if (phidiffs[3] == 0 && phidiffs[4] < 0)
171 if (phidiffs[3] >= 0)
178 if (phidiffs[4] >= 0)
185 if (phidiffs[5] >= 0)
201 int charge_valid = 1;
204 return std::make_pair(charge, charge_valid);
int getGMTPhiV2(int phi) const
int getGMTEta(int theta, int endcap) const
Geom::Theta< T > theta() const
std::pair< int, int > getGMTCharge(int mode, const std::vector< int > &phidiffs) const
int getGMTQuality(int mode, int theta, bool promoteMode7) const
int getGMTPhi(int phi) const
float getPtFromGMTPt(int gmt_pt) const
int getGMTPt(float pt) const
static const int GMT_eta_from_theta[128]