Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:22:28

0001 #include "L1TriggerScouting/Utilities/interface/convertToL1TFormat.h"
0002 
0003 namespace l1ScoutingRun3 {
0004 
0005   l1t::Muon getL1TMuon(const Muon& muon) {
0006     return l1t::Muon(
0007         math::PtEtaPhiMLorentzVector(ugmt::fPt(muon.hwPt()), ugmt::fEta(muon.hwEta()), ugmt::fPhi(muon.hwPhi()), 0.),
0008         muon.hwPt(),
0009         muon.hwEta(),
0010         muon.hwPhi(),
0011         muon.hwQual(),
0012         muon.hwCharge(),
0013         muon.hwChargeValid(),
0014         0,
0015         muon.tfMuonIndex(),
0016         0,
0017         false,
0018         0,
0019         0,
0020         0,
0021         0,
0022         muon.hwEtaAtVtx(),
0023         muon.hwPhiAtVtx(),
0024         ugmt::fEtaAtVtx(muon.hwEtaAtVtx()),
0025         ugmt::fPhiAtVtx(muon.hwPhiAtVtx()),
0026         muon.hwPtUnconstrained(),
0027         ugmt::fPtUnconstrained(muon.hwPtUnconstrained()),
0028         muon.hwDXY());
0029   }
0030 
0031   l1t::Jet getL1TJet(const Jet& jet) {
0032     return l1t::Jet(
0033         math::PtEtaPhiMLorentzVector(demux::fEt(jet.hwEt()), demux::fEta(jet.hwEta()), demux::fPhi(jet.hwPhi()), 0.),
0034         jet.hwEt(),
0035         jet.hwEta(),
0036         jet.hwPhi(),
0037         jet.hwIso());
0038   }
0039 
0040   l1t::EGamma getL1TEGamma(const EGamma& eGamma) {
0041     return l1t::EGamma(math::PtEtaPhiMLorentzVector(
0042                            demux::fEt(eGamma.hwEt()), demux::fEta(eGamma.hwEta()), demux::fPhi(eGamma.hwPhi()), 0.),
0043                        eGamma.hwEt(),
0044                        eGamma.hwEta(),
0045                        eGamma.hwPhi(),
0046                        0,
0047                        eGamma.hwIso());
0048   }
0049 
0050   l1t::Tau getL1TTau(const Tau& tau) {
0051     return l1t::Tau(
0052         math::PtEtaPhiMLorentzVector(demux::fEt(tau.hwEt()), demux::fEta(tau.hwEta()), demux::fPhi(tau.hwPhi()), 0.),
0053         tau.hwEt(),
0054         tau.hwEta(),
0055         tau.hwPhi(),
0056         0,
0057         tau.hwIso());
0058   }
0059 
0060   l1t::EtSum getL1TEtSum(const BxSums& sums, l1t::EtSum::EtSumType sumType) {
0061     switch (sumType) {
0062       case l1t::EtSum::kTotalEt:
0063         return l1t::EtSum(
0064             math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwTotalEt()), 0., 0., 0.), sumType, sums.hwTotalEt(), 0, 0, 0);
0065       case l1t::EtSum::kTotalEtEm:
0066         return l1t::EtSum(math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwTotalEtEm()), 0., 0., 0.),
0067                           sumType,
0068                           sums.hwTotalEtEm(),
0069                           0,
0070                           0,
0071                           0);
0072       case l1t::EtSum::kTotalHt:
0073         return l1t::EtSum(
0074             math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwTotalHt()), 0., 0., 0.), sumType, sums.hwTotalHt(), 0, 0, 0);
0075       case l1t::EtSum::kMissingEt:
0076         return l1t::EtSum(
0077             math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwMissEt()), 0., demux::fPhi(sums.hwMissEtPhi()), 0.),
0078             sumType,
0079             sums.hwMissEt(),
0080             0,
0081             sums.hwMissEtPhi(),
0082             0);
0083       case l1t::EtSum::kMissingHt:
0084         return l1t::EtSum(
0085             math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwMissHt()), 0., demux::fPhi(sums.hwMissHtPhi()), 0.),
0086             sumType,
0087             sums.hwMissHt(),
0088             0,
0089             sums.hwMissHtPhi(),
0090             0);
0091       case l1t::EtSum::kMissingEtHF:
0092         return l1t::EtSum(
0093             math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwMissEtHF()), 0., demux::fPhi(sums.hwMissEtHFPhi()), 0.),
0094             sumType,
0095             sums.hwMissEtHF(),
0096             0,
0097             sums.hwMissEtHFPhi(),
0098             0);
0099       case l1t::EtSum::kMissingHtHF:
0100         return l1t::EtSum(
0101             math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwMissHtHF()), 0., demux::fPhi(sums.hwMissHtHFPhi()), 0.),
0102             sumType,
0103             sums.hwMissHtHF(),
0104             0,
0105             sums.hwMissHtHFPhi(),
0106             0);
0107       case l1t::EtSum::kAsymEt:
0108         return l1t::EtSum(
0109             math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwAsymEt()), 0., 0., 0.), sumType, sums.hwAsymEt(), 0, 0, 0);
0110       case l1t::EtSum::kAsymHt:
0111         return l1t::EtSum(
0112             math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwAsymHt()), 0., 0., 0.), sumType, sums.hwAsymHt(), 0, 0, 0);
0113       case l1t::EtSum::kAsymEtHF:
0114         return l1t::EtSum(math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwAsymEtHF()), 0., 0., 0.),
0115                           sumType,
0116                           sums.hwAsymEtHF(),
0117                           0,
0118                           0,
0119                           0);
0120       case l1t::EtSum::kAsymHtHF:
0121         return l1t::EtSum(math::PtEtaPhiMLorentzVector(demux::fEt(sums.hwAsymHtHF()), 0., 0., 0.),
0122                           sumType,
0123                           sums.hwAsymHtHF(),
0124                           0,
0125                           0,
0126                           0);
0127       case l1t::EtSum::kMinBiasHFP0:
0128         return l1t::EtSum(math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), sumType, sums.minBiasHFP0(), 0, 0, 0);
0129       case l1t::EtSum::kMinBiasHFP1:
0130         return l1t::EtSum(math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), sumType, sums.minBiasHFP1(), 0, 0, 0);
0131       case l1t::EtSum::kMinBiasHFM0:
0132         return l1t::EtSum(math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), sumType, sums.minBiasHFM0(), 0, 0, 0);
0133       case l1t::EtSum::kMinBiasHFM1:
0134         return l1t::EtSum(math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), sumType, sums.minBiasHFM1(), 0, 0, 0);
0135       case l1t::EtSum::kCentrality:
0136         return l1t::EtSum(math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), sumType, sums.centrality(), 0, 0, 0);
0137       case l1t::EtSum::kTowerCount:
0138         return l1t::EtSum(math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), sumType, sums.towerCount(), 0, 0, 0);
0139       default:
0140         return l1t::EtSum(math::PtEtaPhiMLorentzVector(0., 0., 0., 0.), l1t::EtSum::kUninitialized, 0, 0, 0, 0);
0141     }
0142   }
0143 
0144 }  // namespace l1ScoutingRun3