File indexing completed on 2023-03-17 10:50:26
0001 #include "DataFormats/L1TMuon/interface/RegionalMuonShower.h"
0002
0003 l1t::RegionalMuonShower::RegionalMuonShower(bool oneNominalInTime,
0004 bool oneNominalOutOfTime,
0005 bool twoLooseInTime,
0006 bool twoLooseOutOfTime,
0007 bool oneLooseInTime,
0008 bool oneTightInTime,
0009 bool oneTightOutOfTime)
0010 : isOneNominalInTime_(oneNominalInTime),
0011 isOneNominalOutOfTime_(oneNominalOutOfTime),
0012 isOneTightInTime_(oneTightInTime),
0013 isOneTightOutOfTime_(oneTightOutOfTime),
0014 isTwoLooseInTime_(twoLooseInTime),
0015 isTwoLooseOutOfTime_(twoLooseOutOfTime),
0016 isOneLooseInTime_(oneLooseInTime),
0017 link_(0),
0018 processor_(0),
0019 trackFinder_(l1t::tftype::bmtf) {}
0020
0021 l1t::RegionalMuonShower::~RegionalMuonShower() {}
0022
0023 void l1t::RegionalMuonShower::setTFIdentifiers(int processor, tftype trackFinder) {
0024 trackFinder_ = trackFinder;
0025 processor_ = processor;
0026
0027 switch (trackFinder_) {
0028 case tftype::emtf_pos:
0029 link_ = processor_ + 36;
0030 break;
0031 case tftype::omtf_pos:
0032 link_ = processor_ + 42;
0033 break;
0034 case tftype::bmtf:
0035 link_ = processor_ + 48;
0036 break;
0037 case tftype::omtf_neg:
0038 link_ = processor_ + 60;
0039 break;
0040 case tftype::emtf_neg:
0041 link_ = processor_ + 66;
0042 }
0043 }
0044
0045 bool l1t::RegionalMuonShower::isValid() const {
0046 return (isOneNominalInTime_ or isTwoLooseInTime_ or isOneTightInTime_ or isOneLooseInTime_);
0047 }
0048
0049 bool l1t::RegionalMuonShower::operator==(const l1t::RegionalMuonShower& rhs) const {
0050 return (isTwoLooseInTime_ == rhs.isTwoLooseInTime() and isOneNominalInTime_ == rhs.isOneNominalInTime() and
0051 isOneTightInTime_ == rhs.isOneTightInTime() and isOneLooseInTime_ == rhs.isOneLooseInTime());
0052 }