16 : minPhiQuality_(iConfig.getParameter<
int>(
"minPhiQuality")),
17 minBX_(iConfig.getParameter<
int>(
"minBX")),
18 maxBX_(iConfig.getParameter<
int>(
"maxBX")),
19 eta1_(iConfig.getParameter<
std::
vector<
int> >(
"cotTheta_1")),
20 eta2_(iConfig.getParameter<
std::
vector<
int> >(
"cotTheta_2")),
21 eta3_(iConfig.getParameter<
std::
vector<
int> >(
"cotTheta_3")),
22 disableMasks_(iConfig.getParameter<
bool>(
"disableMasks")),
23 verbose_(iConfig.getParameter<
int>(
"verbose")) {}
36 int sector = phiS.
scNum();
39 int phiB = phiS.
phiB();
69 L1MuKBMTCombinedStub stub(
wheel, sector,
station,
phi, phiB,
tag,
bx,
quality,
eta1,
eta2, qeta1, qeta2);
76 int sector = phiS.
scNum();
79 int phiB = phiS.
phiB();
89 L1MuKBMTCombinedStub stub(
wheel, sector,
station,
phi, phiB,
tag,
bx,
quality,
eta1,
eta2, qeta1, qeta2);
109 for (
uint sector = 0; sector < 12; sector++) {
117 }
else if (
wheel > 0) {
125 bool phiMask =
false;
126 bool etaMask =
false;
150 if (tseta && (!etaMask)) {
159 if (
high && (!phiMask)) {
171 if (
low && !(phiMask)) {
193 }
else if (
wheel < 0) {
196 if (sector == 0 || sector == 3 || sector == 4 || sector == 7 || sector == 8 || sector == 11)
221 nextSector = sector + 1;
226 previousSector = sector - 1;
229 os <<
"I " << sector <<
" ";
231 bool hasStub =
false;
236 if (seg1 && seg1->
phi() > 111) {
237 os << seg1->
phi() - 2144 <<
" " << seg1->
phiB() <<
" " << seg1->
code() <<
" 1 4 ";
239 os <<
"-2048 0 0 0 15 ";
242 if (seg2 && seg2->
phi() > 111) {
243 os << seg2->
phi() - 2144 <<
" " << seg2->
phiB() <<
" " << seg2->
code() <<
" 1 4 ";
245 os <<
"-2048 0 0 0 15 ";
248 if (seg3 && seg3->
phi() > 111) {
249 os << seg3->
phi() - 2144 <<
" " << seg3->
phiB() <<
" " << seg3->
code() <<
" 1 4 ";
251 os <<
"-2048 0 0 0 15 ";
254 if (seg4 && seg4->
phi() > 111) {
255 os << seg4->
phi() - 2144 <<
" " << seg4->
phiB() <<
" " << seg4->
code() <<
" 1 4 ";
257 os <<
"-2048 0 0 0 15 ";
262 int etaPos =
eta1->position(0) + (
eta1->position(1) << 1) + (
eta1->position(2) << 2) + (
eta1->position(3) << 3) +
263 (
eta1->position(4) << 4) + (
eta1->position(5) << 5) + (
eta1->position(6) << 6);
270 int etaPos =
eta2->position(0) + (
eta2->position(1) << 1) + (
eta2->position(2) << 2) + (
eta2->position(3) << 3) +
271 (
eta2->position(4) << 4) + (
eta2->position(5) << 5) + (
eta2->position(6) << 6);
279 int etaPos =
eta3->position(0) + (
eta3->position(1) << 1) + (
eta3->position(2) << 2) + (
eta3->position(3) << 3) +
280 (
eta3->position(4) << 4) + (
eta3->position(5) << 5) + (
eta3->position(6) << 6);
286 if (seg5 && seg5->
phi() > 111) {
287 os << seg5->
phi() - 2144 <<
" " << seg5->
phiB() <<
" " << seg5->
code() <<
" 1 5 ";
289 os <<
"-2048 0 0 0 15 ";
293 if (seg6 && seg6->
phi() > 111) {
294 os << seg6->
phi() - 2144 <<
" " << seg6->
phiB() <<
" " << seg6->
code() <<
" 1 5 ";
296 os <<
"-2048 0 0 0 15 ";
299 if (seg7 && seg7->
phi() > 111) {
300 os << seg7->
phi() - 2144 <<
" " << seg7->
phiB() <<
" " << seg7->
code() <<
" 1 5 ";
302 os <<
"-2048 0 0 0 15 ";
306 if (seg8 && seg8->
phi() > 111) {
307 os << seg8->
phi() - 2144 <<
" " << seg8->
phiB() <<
" " << seg8->
code() <<
" 1 5 ";
309 os <<
"-2048 0 0 0 15 ";
312 int etaPos =
eta1->quality(0) + (
eta1->quality(1) << 1) + (
eta1->quality(2) << 2) + (
eta1->quality(3) << 3) +
313 (
eta1->quality(4) << 4) + (
eta1->quality(5) << 5) + (
eta1->quality(6) << 6);
319 int etaPos =
eta2->quality(0) + (
eta2->quality(1) << 1) + (
eta2->quality(2) << 2) + (
eta2->quality(3) << 3) +
320 (
eta2->quality(4) << 4) + (
eta2->quality(5) << 5) + (
eta2->quality(6) << 6);
326 int etaPos =
eta3->quality(0) + (
eta3->quality(1) << 1) + (
eta3->quality(2) << 2) + (
eta3->quality(3) << 3) +
327 (
eta3->quality(4) << 4) + (
eta3->quality(5) << 5) + (
eta3->quality(6) << 6);
336 os << seg9->
phi() <<
" " << seg9->
phiB() <<
" " << seg9->
code() <<
" 1 0 ";
338 os <<
"-2048 0 0 0 15 ";
343 os << seg10->
phi() <<
" " << seg10->
phiB() <<
" " << seg10->
code() <<
" 1 0 ";
345 os <<
"-2048 0 0 0 15 ";
350 os << seg11->
phi() <<
" " << seg11->
phiB() <<
" " << seg11->
code() <<
" 1 0 ";
352 os <<
"-2048 0 0 0 15 ";
357 os << seg12->
phi() <<
" " << seg12->
phiB() <<
" " << seg12->
code() <<
" 1 2 ";
359 os <<
"-2048 0 0 0 15 ";
363 int etaPos =
eta4->position(0) + (
eta4->position(1) << 1) + (
eta4->position(2) << 2) + (
eta4->position(3) << 3) +
364 (
eta4->position(4) << 4) + (
eta4->position(5) << 5) + (
eta4->position(6) << 6);
372 int etaPos =
eta5->position(0) + (
eta5->position(1) << 1) + (
eta5->position(2) << 2) + (
eta5->position(3) << 3) +
373 (
eta5->position(4) << 4) + (
eta5->position(5) << 5) + (
eta5->position(6) << 6);
380 int etaPos =
eta6->position(0) + (
eta6->position(1) << 1) + (
eta6->position(2) << 2) + (
eta6->position(3) << 3) +
381 (
eta6->position(4) << 4) + (
eta6->position(5) << 5) + (
eta6->position(6) << 6);
389 os << seg13->
phi() <<
" " << seg13->
phiB() <<
" " << seg13->
code() <<
" 1 1 ";
391 os <<
"-2048 0 0 0 15 ";
398 os << seg14->
phi() <<
" " << seg14->
phiB() <<
" " << seg14->
code() <<
" 1 1 ";
400 os <<
"-2048 0 0 0 15 ";
407 os << seg15->
phi() <<
" " << seg15->
phiB() <<
" " << seg15->
code() <<
" 1 1 ";
409 os <<
"-2048 0 0 0 15 ";
415 os << seg16->
phi() <<
" " << seg16->
phiB() <<
" " << seg16->
code() <<
" 1 1 ";
417 os <<
"-2048 0 0 0 15 ";
421 int etaPos =
eta4->quality(0) + (
eta4->quality(1) << 1) + (
eta4->quality(2) << 2) + (
eta4->quality(3) << 3) +
422 (
eta4->quality(4) << 4) + (
eta4->quality(5) << 5) + (
eta4->quality(6) << 6);
429 int etaPos =
eta5->quality(0) + (
eta5->quality(1) << 1) + (
eta5->quality(2) << 2) + (
eta5->quality(3) << 3) +
430 (
eta5->quality(4) << 4) + (
eta5->quality(5) << 5) + (
eta5->quality(6) << 6);
436 int etaPos =
eta6->quality(0) + (
eta6->quality(1) << 1) + (
eta6->quality(2) << 2) + (
eta6->quality(3) << 3) +
437 (
eta6->quality(4) << 4) + (
eta6->quality(5) << 5) + (
eta6->quality(6) << 6);
444 if (seg17 && seg17->
phi() < -112) {
445 os << seg17->
phi() + 2144 <<
" " << seg17->
phiB() <<
" " << seg17->
code() <<
" 1 2 ";
447 os <<
"-2048 0 0 0 15 ";
450 if (seg18 && seg18->
phi() < -112) {
451 os << seg18->
phi() + 2144 <<
" " << seg18->
phiB() <<
" " << seg18->
code() <<
" 1 2 ";
453 os <<
"-2048 0 0 0 15 ";
456 if (seg19 && seg19->
phi() < -112) {
457 os << seg19->
phi() + 2144 <<
" " << seg19->
phiB() <<
" " << seg19->
code() <<
" 1 2 ";
459 os <<
"-2048 0 0 0 15 ";
462 if (seg20 && seg20->
phi() < -112) {
463 os << seg20->
phi() + 2144 <<
" " << seg20->
phiB() <<
" " << seg20->
code() <<
" 1 2 ";
465 os <<
"-2048 0 0 0 15 ";
469 int etaPos =
eta7->position(0) + (
eta7->position(1) << 1) + (
eta7->position(2) << 2) + (
eta7->position(3) << 3) +
470 (
eta7->position(4) << 4) + (
eta7->position(5) << 5) + (
eta7->position(6) << 6);
492 if (seg21 && seg21->
phi() < -112) {
493 os << seg21->
phi() + 2144 <<
" " << seg21->
phiB() <<
" " << seg21->
code() <<
" 1 3 ";
495 os <<
"-2048 0 0 0 15 ";
499 if (seg22 && seg22->
phi() < -112) {
500 os << seg22->
phi() + 2144 <<
" " << seg22->
phiB() <<
" " << seg22->
code() <<
" 1 3 ";
502 os <<
"-2048 0 0 0 15 ";
505 if (seg23 && seg23->
phi() < -112) {
506 os << seg23->
phi() + 2144 <<
" " << seg23->
phiB() <<
" " << seg23->
code() <<
" 1 3 ";
508 os <<
"-2048 0 0 0 15 ";
511 if (seg24 && seg24->
phi() < -112) {
512 os << seg24->
phi() + 2144 <<
" " << seg24->
phiB() <<
" " << seg24->
code() <<
" 1 3 ";
514 os <<
"-2048 0 0 0 15 ";
517 int etaPos =
eta7->quality(0) + (
eta7->quality(1) << 1) + (
eta7->quality(2) << 2) + (
eta7->quality(3) << 3) +
518 (
eta7->quality(4) << 4) + (
eta7->quality(5) << 5) + (
eta7->quality(6) << 6);
L1MuKBMTCombinedStub buildStub(const L1MuDTChambPhDigi &, const L1MuDTChambThDigi *)
L1MuKBMTCombinedStub buildStubNoEta(const L1MuDTChambPhDigi &)
L1MuDTChambThDigi const * chThetaSegm(int wheel, int stat, int sect, int bx) const
bool get_etsoc_chdis_st2(int wh, int sc) const
L1MuKBMTCombinedStubCollection makeStubs(const L1MuDTChambPhContainer *, const L1MuDTChambThContainer *, const L1TMuonBarrelParams &)
bool get_inrec_chdis_st4(int wh, int sc) const
int position(const int i) const
bool get_etsoc_chdis_st1(int wh, int sc) const
L1TMuonBarrelKalmanStubProcessor()
void makeInputPattern(const L1MuDTChambPhContainer *phiContainer, const L1MuDTChambThContainer *etaContainer, int sector)
bool get_inrec_chdis_st1(int wh, int sc) const
bool isGoodPhiStub(const L1MuDTChambPhDigi *)
L1MuDTChambPhDigi const * chPhiSegm2(int wheel, int stat, int sect, int bx) const
bool get_etsoc_chdis_st3(int wh, int sc) const
int calculateEta(uint, int, uint, uint)
~L1TMuonBarrelKalmanStubProcessor()
int quality(const int i) const
bool get_inrec_chdis_st2(int wh, int sc) const
bool get_inrec_chdis_st3(int wh, int sc) const
std::vector< L1MuKBMTCombinedStub > L1MuKBMTCombinedStubCollection
L1MuDTChambPhDigi const * chPhiSegm1(int wheel, int stat, int sect, int bx) const