#include <L1MuGMTLFMatchQualLUT.h>
Public Types | |
enum | { DTRPC, CSCRPC, DTCSC, CSCDT, CSCbRPC, DTfRPC } |
Public Types inherited from L1MuGMTLUT | |
typedef std::pair< std::string, unsigned > | port |
Public Member Functions | |
L1MuGMTLFMatchQualLUT () | |
constuctor using function-lookup More... | |
unsigned | LookupFunctionPacked (int idx, unsigned address) const override |
access to lookup function with packed input and output More... | |
unsigned | SpecificLookup (int idx, unsigned delta_eta, unsigned delta_phi) const |
specific lookup function for entire output field More... | |
unsigned | SpecificLookup_mq (int idx, unsigned delta_eta, unsigned delta_phi) const |
specific lookup function for mq More... | |
~L1MuGMTLFMatchQualLUT () override | |
destructor More... | |
Public Member Functions inherited from L1MuGMTLUT | |
L1MuGMTLUT () | |
Init and Destruct. More... | |
L1MuGMTLUT (const char *name, const std::vector< std::string > &instances, const std::vector< port > &in_widths, const std::vector< port > &out_widths, unsigned vme_addr_width=0, bool distrRAM=false) | |
constructor with init More... | |
L1MuGMTLUT (const char *name, const std::string &instances, const std::string &inputs, const std::string &outputs, unsigned vme_addr_width=0, bool distrRAM=false) | |
void | Load (const char *path) |
I/O functions. More... | |
std::vector< unsigned > | Lookup (int idx, const std::vector< unsigned > &address) const |
additional lookup function (std::vector -> vector) More... | |
std::vector< unsigned > | Lookup (int idx, unsigned address) const |
additional lookup function (unsigned -> std::vector) More... | |
unsigned | LookupPacked (int idx, unsigned) const |
unsigned | LookupPacked (int idx, const std::vector< unsigned > &address) const |
additional lookup function (std::vector -> unisgned) More... | |
void | MakeSubClass (const char *fname="", const char *template_file_h="../interface/L1MuGMTLUT_SubClass.h_template", const char *template_file_cc="../interface/L1MuGMTLUT_SubClass.cc_template") |
Add Generate SubClass method. More... | |
std::string | Name () |
int | numberOfInstances () |
get the number of Instances More... | |
void | Save (const char *path) |
save to LUT file More... | |
virtual | ~L1MuGMTLUT () |
destructor More... | |
Private Member Functions | |
void | InitParameters () |
Initialize scales, configuration parameters, alignment constants, ... More... | |
unsigned | TheLookupFunction (int idx, unsigned delta_eta, unsigned delta_phi) const |
The lookup function - here the functionality of the LUT is implemented. More... | |
Private Attributes | |
float | m_EtaPhiThresholds [6] |
float | m_EtaWeights [6] |
Private data members (LUT parameters);. More... | |
float | m_PhiWeights [6] |
Additional Inherited Members | |
Protected Member Functions inherited from L1MuGMTLUT | |
void | Init (const char *name, const std::vector< std::string > &instances, const std::vector< port > &in_widths, const std::vector< port > &out_widths, unsigned vme_addr_width=0, bool distrRAM=false) |
Initialize the LUT. More... | |
void | Set (int idx, unsigned address, unsigned value) |
set with single address and value More... | |
std::vector< unsigned > | u2vec (unsigned value, const std::vector< port > &widths) const |
generate composite address or value from compact unsigned More... | |
unsigned | vec2u (const std::vector< unsigned > &vec, const std::vector< port > &widths) const |
generate address or value from composite address or value More... | |
Protected Attributes inherited from L1MuGMTLUT | |
std::vector< std::vector< unsigned > > | m_Contents |
bool | m_distrRAM |
unsigned | m_GeneralLUTVersion |
bool | m_initialized |
std::vector< port > | m_Inputs |
std::vector< std::string > | m_InstNames |
std::string | m_name |
int | m_NLUTS |
std::vector< port > | m_Outputs |
bool | m_saveFlag |
unsigned | m_TotalInWidth |
unsigned | m_TotalOutWidth |
bool | m_UseLookupFunction |
unsigned | m_vme_addr_width |
LFMatchQual look-up table
this class was automatically generated by L1MuGMTLUT::MakeSubClass()
Definition at line 38 of file L1MuGMTLFMatchQualLUT.h.
anonymous enum |
Enumerator | |
---|---|
DTRPC | |
CSCRPC | |
DTCSC | |
CSCDT | |
CSCbRPC | |
DTfRPC |
Definition at line 40 of file L1MuGMTLFMatchQualLUT.h.
|
inline |
constuctor using function-lookup
Definition at line 43 of file L1MuGMTLFMatchQualLUT.h.
References InitParameters().
|
inlineoverride |
|
private |
Initialize scales, configuration parameters, alignment constants, ...
Definition at line 37 of file L1MuGMTLFMatchQualLUT.cc.
References L1MuGMTConfig::getEtaPhiThresholdBarrel(), L1MuGMTConfig::getEtaPhiThresholdCOU(), L1MuGMTConfig::getEtaPhiThresholdEndcap(), L1MuGMTConfig::getEtaWeightBarrel(), L1MuGMTConfig::getEtaWeightCOU(), L1MuGMTConfig::getEtaWeightEndcap(), L1MuGMTConfig::getPhiWeightBarrel(), L1MuGMTConfig::getPhiWeightCOU(), L1MuGMTConfig::getPhiWeightEndcap(), mps_fire::i, m_EtaPhiThresholds, m_EtaWeights, and m_PhiWeights.
Referenced by L1MuGMTLFMatchQualLUT().
|
inlineoverridevirtual |
access to lookup function with packed input and output
Reimplemented from L1MuGMTLUT.
Definition at line 70 of file L1MuGMTLFMatchQualLUT.h.
References generateTowerEtThresholdLUT::addr, heavyIonCSV_trainingSettings::idx, L1MuGMTLUT::m_Inputs, TheLookupFunction(), and L1MuGMTLUT::u2vec().
|
inline |
specific lookup function for entire output field
Definition at line 61 of file L1MuGMTLFMatchQualLUT.h.
References generateTowerEtThresholdLUT::addr, HLT_2024v12_cff::delta_eta, HLT_2024v12_cff::delta_phi, heavyIonCSV_trainingSettings::idx, and L1MuGMTLUT::LookupPacked().
|
inline |
specific lookup function for mq
Definition at line 53 of file L1MuGMTLFMatchQualLUT.h.
References generateTowerEtThresholdLUT::addr, HLT_2024v12_cff::delta_eta, HLT_2024v12_cff::delta_phi, heavyIonCSV_trainingSettings::idx, and L1MuGMTLUT::Lookup().
Referenced by L1MuGMTMatcher::lookup_mq().
|
private |
The lookup function - here the functionality of the LUT is implemented.
Definition at line 57 of file L1MuGMTLFMatchQualLUT.cc.
References HLT_2024v12_cff::delta_eta, HLT_2024v12_cff::delta_phi, L1MuScale::getCenter(), L1MuGMTScales::getDeltaEtaScale(), L1MuGMTScales::getDeltaPhiScale(), L1MuGMTConfig::getGMTScales(), heavyIonCSV_trainingSettings::idx, L1MuSignedPacking< Bits >::idxFromPacked(), m_EtaPhiThresholds, m_EtaWeights, m_PhiWeights, and mathSSE::sqrt().
Referenced by LookupFunctionPacked().
|
private |
Definition at line 85 of file L1MuGMTLFMatchQualLUT.h.
Referenced by InitParameters(), and TheLookupFunction().
|
private |
Private data members (LUT parameters);.
Definition at line 83 of file L1MuGMTLFMatchQualLUT.h.
Referenced by InitParameters(), and TheLookupFunction().
|
private |
Definition at line 84 of file L1MuGMTLFMatchQualLUT.h.
Referenced by InitParameters(), and TheLookupFunction().