5 Muon&
mu, uint32_t raw_data_00_31, uint32_t raw_data_32_63,
int fed,
unsigned int fw) {
20 if ((fed == 1402 && fw < 0x4010000) || (fed == 1404 && fw < 0x10A6)) {
42 if (mu.
hwCharge() == 1 && dPhi > 0) {
44 }
else if (mu.
hwCharge() == 0 && dPhi < 0) {
56 muAtVtx.
setP4(vecAtVtx);
68 fillMuon(mu, (uint32_t)(dataword & 0xFFFFFFFF), (uint32_t)((dataword >> 32) & 0xFFFFFFFF), fed, fw);
72 uint32_t& raw_data_00_31,
73 uint32_t& raw_data_32_63) {
74 int abs_eta = mu.
hwEta();
79 if (abs_eta_at_vtx < 0) {
97 return (((
uint64_t)msw) << 32) + lsw;
101 const unsigned absEtaShift,
102 const unsigned etaSignShift) {
105 if ((raw >> etaSignShift) & 0x1) {
106 return abs_eta - (1 << (etaSignShift - absEtaShift));
double eta() const final
momentum pseudorapidity
static const unsigned etaAtVtxSignShift_
static const unsigned tfMuonIndexShift_
static const unsigned phiMask_
static const unsigned isoShift_
static const unsigned etaSignShift_
void setPhiAtVtx(double phiAtVtx)
void setHwDPhiExtra(int dPhi)
static const unsigned absEtaAtVtxShift_
static int calcHwEta(const uint32_t &, const unsigned, const unsigned)
PtEtaPhiMLorentzVectorD PtEtaPhiMLorentzVector
Lorentz vector with cartesian internal representation.
void setCharge(Charge q) final
set electric charge
static const unsigned qualShift_
static const unsigned tfMuonIndexMask_
void setTfMuonIndex(int index)
static const unsigned absEtaShift_
void setHwCharge(int charge)
static const unsigned phiShift_
void setHwChargeValid(int valid)
void setHwPhiAtVtx(int hwPhiAtVtx)
static const unsigned chargeValidShift_
static const unsigned absEtaMask_
void setHwEtaAtVtx(int hwEtaAtVtx)
static uint64_t generate64bitDataWord(const Muon &)
unsigned long long uint64_t
static const unsigned ptShift_
static void generatePackedDataWords(const Muon &, uint32_t &, uint32_t &)
void setHwDEtaExtra(int dEta)
static const unsigned isoMask_
static const unsigned chargeShift_
static const unsigned qualMask_
int hwChargeValid() const
double phi() const final
momentum azimuthal angle
static const unsigned phiAtVtxShift_
void setP4(const LorentzVector &p4) final
set 4-momentum
static const unsigned ptMask_
static void fillMuon(Muon &, uint32_t, uint32_t, int, unsigned int)
void setEtaAtVtx(double etaAtVtx)