18 #ifndef L1TriggerGlobalMuonTrigger_L1MuGMTLFMergeRankCombineLUT_h
19 #define L1TriggerGlobalMuonTrigger_L1MuGMTLFMergeRankCombineLUT_h
48 "rank_etaq(7) rank_ptq(2) rank_etaphi(1)",
49 "merge_rank(8)", 9,
false) {
58 std::vector<unsigned> addr(3);
61 addr[2] = rank_etaphi;
62 return Lookup(idx, addr) [0];
66 unsigned SpecificLookup (
int idx,
unsigned rank_etaq,
unsigned rank_ptq,
unsigned rank_etaphi)
const {
67 std::vector<unsigned> addr(3);
70 addr[2] = rank_etaphi;
89 unsigned TheLookupFunction (
int idx,
unsigned rank_etaq,
unsigned rank_ptq,
unsigned rank_etaphi)
const;
std::vector< unsigned > Lookup(int idx, const std::vector< unsigned > &address) const
additional lookup function (std::vector -> vector)
unsigned TheLookupFunction(int idx, unsigned rank_etaq, unsigned rank_ptq, unsigned rank_etaphi) const
The lookup function - here the functionality of the LUT is implemented.
unsigned SpecificLookup_merge_rank(int idx, unsigned rank_etaq, unsigned rank_ptq, unsigned rank_etaphi) const
specific lookup function for merge_rank
virtual ~L1MuGMTLFMergeRankCombineLUT()
destructor
std::vector< port > m_Inputs
L1MuGMTLFMergeRankCombineLUT()
constuctor using function-lookup
unsigned SpecificLookup(int idx, unsigned rank_etaq, unsigned rank_ptq, unsigned rank_etaphi) const
specific lookup function for entire output field
std::vector< unsigned > u2vec(unsigned value, const std::vector< port > &widths) const
generate composite address or value from compact unsigned
virtual unsigned LookupFunctionPacked(int idx, unsigned address) const
access to lookup function with packed input and output
volatile std::atomic< bool > shutdown_flag false
unsigned LookupPacked(int idx, unsigned) const
void InitParameters()
Initialize scales, configuration parameters, alignment constants, ...