#include <L1MuDTAssignmentUnit.h>
Public Member Functions | |
L1MuDTAssignmentUnit (L1MuDTSectorProcessor &sp, int id) | |
constructor More... | |
void | PhiAU (const edm::EventSetup &c) |
assign phi More... | |
void | PtAU (const edm::EventSetup &c) |
assign pt and charge More... | |
void | QuaAU () |
assign quality More... | |
virtual void | reset () |
reset Assignment Unit More... | |
virtual void | run (const edm::EventSetup &c) |
run Assignment Unit More... | |
virtual | ~L1MuDTAssignmentUnit () |
destructor More... | |
Public Member Functions inherited from L1AbstractProcessor | |
virtual void | run () |
run processor logic More... | |
virtual | ~L1AbstractProcessor () |
destructor More... | |
Static Public Member Functions | |
static void | setPrecision () |
set precision of phi and phib More... | |
Private Member Functions | |
int | getPtAddress (PtAssMethod, int bendcharge=0) const |
calculate bend angle More... | |
PtAssMethod | getPtMethod () const |
determine pt assignment method More... | |
const L1MuDTTrackSegPhi * | getTSphi (int station) const |
get track segment from a given station More... | |
int | phiDiff (int stat1, int stat2) const |
build difference of two phi values More... | |
void | TSR () |
Track Segment Router. More... | |
Static Private Member Functions | |
static int | convertSector (int) |
convert sector Id to 8 bit code (= sector center) More... | |
static int | getCharge (PtAssMethod) |
determine charge More... | |
Private Attributes | |
L1MuDTAddressArray | m_addArray |
int | m_id |
PtAssMethod | m_ptAssMethod |
L1MuDTSectorProcessor & | m_sp |
std::vector< const L1MuDTTrackSegPhi * > | m_TSphi |
edm::ESHandle< L1MuDTPhiLut > | thePhiLUTs |
phi-assignment look-up tables More... | |
edm::ESHandle< L1MuDTPtaLut > | thePtaLUTs |
pt-assignment look-up tables More... | |
Static Private Attributes | |
static unsigned short | nbit_phi = 12 |
of bits used for pt-assignmentMore... | |
static unsigned short | nbit_phib = 10 |
of bits used for pt-assignmentMore... | |
Assignment Unit:
assigns pt, charge, phi and quality to a muon candidate found by the Track Assembler
N. Neumeister CERN EP J. Troconiz UAM Madrid
Definition at line 50 of file L1MuDTAssignmentUnit.h.
L1MuDTAssignmentUnit::L1MuDTAssignmentUnit | ( | L1MuDTSectorProcessor & | sp, |
int | id | ||
) |
constructor
Definition at line 56 of file L1MuDTAssignmentUnit.cc.
References m_TSphi, reset(), and setPrecision().
|
virtual |
|
staticprivate |
convert sector Id to 8 bit code (= sector center)
Definition at line 314 of file L1MuDTAssignmentUnit.cc.
Referenced by PhiAU().
|
staticprivate |
determine charge
Definition at line 328 of file L1MuDTAssignmentUnit.cc.
References NODEF, PT12H, PT12HO, PT12L, PT12LO, PT13H, PT13HO, PT13L, PT13LO, PT14H, PT14HO, PT14L, PT14LO, PT15HO, PT15LO, PT23H, PT23HO, PT23L, PT23LO, PT24H, PT24HO, PT24L, PT24LO, PT25HO, PT25LO, PT34H, PT34HO, PT34L, and PT34LO.
Referenced by PtAU().
|
private |
calculate bend angle
Definition at line 442 of file L1MuDTAssignmentUnit.cc.
References NODEF, phiDiff(), PT12H, PT12HO, PT12L, PT12LO, PT13H, PT13HO, PT13L, PT13LO, PT14H, PT14HO, PT14L, PT14LO, PT15HO, PT15LO, PT23H, PT23HO, PT23L, PT23LO, PT24H, PT24HO, PT24L, PT24LO, PT25HO, PT25LO, PT34H, PT34HO, PT34L, and PT34LO.
Referenced by PtAU().
|
private |
determine pt assignment method
Definition at line 375 of file L1MuDTAssignmentUnit.cc.
References funct::abs(), getTSphi(), m_addArray, m_id, m_sp, PFRecoTauDiscriminationAgainstElectronMVA3GBR_cfi::method, NODEF, L1MuDTSectorProcessor::ovl(), L1MuDTTrackSegPhi::phib(), PT12H, PT12HO, PT12L, PT12LO, PT13H, PT13HO, PT13L, PT13LO, PT14H, PT14HO, PT14L, PT14LO, PT15HO, PT15LO, PT23H, PT23HO, PT23L, PT23LO, PT24H, PT24HO, PT24L, PT24LO, PT25HO, PT25LO, PT34H, PT34HO, PT34L, PT34LO, alignCSCRings::s, L1MuDTAddressArray::station(), L1MuDTSectorProcessor::TA(), thePtaLUTs, dtDQMClient_cfg::threshold, and L1MuDTTrackAssembler::trackBitMap().
Referenced by PtAU().
|
private |
get track segment from a given station
Definition at line 295 of file L1MuDTAssignmentUnit.cc.
References m_TSphi, and L1MuDTTrackSegPhi::station().
Referenced by getPtMethod(), PhiAU(), and phiDiff().
void L1MuDTAssignmentUnit::PhiAU | ( | const edm::EventSetup & | c | ) |
assign phi
Definition at line 143 of file L1MuDTAssignmentUnit.cc.
References convertSector(), first, edm::EventSetup::get(), L1MuDTTFConfig::getNbitsPhiPhi(), L1MuDTTFConfig::getNbitsPhiPhib(), getTSphi(), L1MuDTSectorProcessor::id(), gen::k, m_id, m_sp, phi, L1MuDTTrackSegPhi::phi(), L1MuDTTrackSegPhi::phib(), edm::second(), L1MuDTSecProcId::sector(), L1MuDTTrackSegPhi::sector(), L1MuDTTrack::setPhi(), thePhiLUTs, L1MuDTSectorProcessor::track(), and L1MuDTSectorProcessor::tracK().
Referenced by run().
|
private |
build difference of two phi values
Definition at line 500 of file L1MuDTAssignmentUnit.cc.
References getTSphi(), nbit_phi, evf::evtn::offset(), L1MuDTTrackSegPhi::phi(), and L1MuDTTrackSegPhi::sector().
Referenced by getPtAddress().
void L1MuDTAssignmentUnit::PtAU | ( | const edm::EventSetup & | c | ) |
assign pt and charge
Definition at line 217 of file L1MuDTAssignmentUnit.cc.
References DeDxDiscriminatorTools::charge(), edm::EventSetup::get(), getCharge(), getPtAddress(), getPtMethod(), m_id, m_ptAssMethod, m_sp, RecoTauCleanerPlugins::pt, L1MuDTTrack::setCharge(), L1MuDTTrack::setPt(), thePtaLUTs, L1MuDTSectorProcessor::track(), and L1MuDTSectorProcessor::tracK().
Referenced by run().
void L1MuDTAssignmentUnit::QuaAU | ( | ) |
assign quality
Definition at line 247 of file L1MuDTAssignmentUnit.cc.
References m_id, m_sp, L1MuDTTrack::setQuality(), T12, T123, T1234, T124, T13, T134, T14, T23, T234, T24, T34, L1MuDTSectorProcessor::TA(), L1MuDTSectorProcessor::track(), L1MuDTSectorProcessor::tracK(), and L1MuDTTrackAssembler::trackClass().
Referenced by run().
|
virtual |
reset Assignment Unit
Implements L1AbstractProcessor.
Definition at line 131 of file L1MuDTAssignmentUnit.cc.
References m_addArray, m_ptAssMethod, m_TSphi, NODEF, and L1MuDTAddressArray::reset().
Referenced by L1MuDTAssignmentUnit().
|
virtual |
run Assignment Unit
Reimplemented from L1AbstractProcessor.
Definition at line 82 of file L1MuDTAssignmentUnit.cc.
References L1MuDTTrackAssembler::address(), L1MuDTTrack::enable(), m_addArray, m_id, m_sp, m_TSphi, PhiAU(), PtAU(), QuaAU(), L1MuDTTrack::setAddresses(), L1MuRegionalCand::setBx(), L1MuDTTrack::setTC(), L1MuDTTrack::setTSphi(), L1MuDTSectorProcessor::TA(), L1MuDTSectorProcessor::track(), L1MuDTSectorProcessor::tracK(), L1MuDTTrackAssembler::trackClass(), and TSR().
|
static |
set precision of phi and phib
Definition at line 532 of file L1MuDTAssignmentUnit.cc.
References L1MuDTTFConfig::getNbitsPtaPhi(), L1MuDTTFConfig::getNbitsPtaPhib(), nbit_phi, and nbit_phib.
Referenced by L1MuDTAssignmentUnit().
|
private |
Track Segment Router.
Definition at line 277 of file L1MuDTAssignmentUnit.cc.
References L1MuDTSectorProcessor::data(), L1MuDTDataBuffer::getTSphi(), m_addArray, m_sp, m_TSphi, and L1MuDTAddressArray::station().
Referenced by run().
|
private |
Definition at line 106 of file L1MuDTAssignmentUnit.h.
Referenced by getPtMethod(), reset(), run(), and TSR().
|
private |
Definition at line 104 of file L1MuDTAssignmentUnit.h.
Referenced by getPtMethod(), PhiAU(), PtAU(), QuaAU(), and run().
|
private |
Definition at line 108 of file L1MuDTAssignmentUnit.h.
|
private |
Definition at line 103 of file L1MuDTAssignmentUnit.h.
Referenced by getPtMethod(), PhiAU(), PtAU(), QuaAU(), run(), and TSR().
|
private |
Definition at line 107 of file L1MuDTAssignmentUnit.h.
Referenced by getTSphi(), L1MuDTAssignmentUnit(), reset(), run(), and TSR().
|
staticprivate |
Definition at line 112 of file L1MuDTAssignmentUnit.h.
Referenced by phiDiff(), and setPrecision().
|
staticprivate |
Definition at line 113 of file L1MuDTAssignmentUnit.h.
Referenced by setPrecision().
|
private |
phi-assignment look-up tables
Definition at line 110 of file L1MuDTAssignmentUnit.h.
Referenced by PhiAU().
|
private |
pt-assignment look-up tables
Definition at line 111 of file L1MuDTAssignmentUnit.h.
Referenced by getPtMethod(), and PtAU().