#include <L1MuGMTLFEtaConvLUT.h>
Public Types | |
enum | { DT, bRPC, CSC, fRPC } |
Public Member Functions | |
L1MuGMTLFEtaConvLUT () | |
constuctor using function-lookup | |
virtual unsigned | LookupFunctionPacked (int idx, unsigned address) const |
access to lookup function with packed input and output | |
unsigned | SpecificLookup (int idx, unsigned eta_regional) const |
specific lookup function for entire output field | |
unsigned | SpecificLookup_eta_gmt (int idx, unsigned eta_regional) const |
specific lookup function for eta_gmt | |
virtual | ~L1MuGMTLFEtaConvLUT () |
destructor | |
Private Member Functions | |
void | InitParameters () |
Initialize scales, configuration parameters, alignment constants, ... | |
unsigned | TheLookupFunction (int idx, unsigned eta_regional) const |
The lookup function - here the functionality of the LUT is implemented. |
LFEtaConv look-up table
this class was automatically generated by L1MuGMTLUT::MakeSubClass()
Definition at line 43 of file L1MuGMTLFEtaConvLUT.h.
anonymous enum |
L1MuGMTLFEtaConvLUT::L1MuGMTLFEtaConvLUT | ( | ) | [inline] |
constuctor using function-lookup
Definition at line 49 of file L1MuGMTLFEtaConvLUT.h.
References InitParameters().
: L1MuGMTLUT("LFEtaConv", "DT bRPC CSC fRPC", "eta_regional(6)", "eta_gmt(6)", 6, true) { InitParameters(); } ;
virtual L1MuGMTLFEtaConvLUT::~L1MuGMTLFEtaConvLUT | ( | ) | [inline, virtual] |
void L1MuGMTLFEtaConvLUT::InitParameters | ( | ) | [private] |
Initialize scales, configuration parameters, alignment constants, ...
Definition at line 38 of file L1MuGMTLFEtaConvLUT.cc.
Referenced by L1MuGMTLFEtaConvLUT().
{ }
virtual unsigned L1MuGMTLFEtaConvLUT::LookupFunctionPacked | ( | int | idx, |
unsigned | address | ||
) | const [inline, virtual] |
access to lookup function with packed input and output
Reimplemented from L1MuGMTLUT.
Definition at line 77 of file L1MuGMTLFEtaConvLUT.h.
References L1MuGMTLUT::m_Inputs, TheLookupFunction(), and L1MuGMTLUT::u2vec().
{ std::vector<unsigned> addr = u2vec(address, m_Inputs); return TheLookupFunction(idx ,addr[0]); };
unsigned L1MuGMTLFEtaConvLUT::SpecificLookup | ( | int | idx, |
unsigned | eta_regional | ||
) | const [inline] |
specific lookup function for entire output field
Definition at line 67 of file L1MuGMTLFEtaConvLUT.h.
References L1MuGMTLUT::LookupPacked().
{ std::vector<unsigned> addr(1); addr[0] = eta_regional; return LookupPacked(idx, addr); };
unsigned L1MuGMTLFEtaConvLUT::SpecificLookup_eta_gmt | ( | int | idx, |
unsigned | eta_regional | ||
) | const [inline] |
specific lookup function for eta_gmt
Definition at line 60 of file L1MuGMTLFEtaConvLUT.h.
References L1MuGMTLUT::Lookup().
Referenced by L1MuGMTMerger::convertedEta().
unsigned L1MuGMTLFEtaConvLUT::TheLookupFunction | ( | int | idx, |
unsigned | eta_regional | ||
) | const [private] |
The lookup function - here the functionality of the LUT is implemented.
Definition at line 48 of file L1MuGMTLFEtaConvLUT.cc.
References L1MuScale::getCenter(), L1MuTriggerScales::getGMTEtaScale(), L1MuScale::getPacked(), L1MuTriggerScales::getRegionalEtaScale(), and L1MuGMTConfig::getTriggerScales().
Referenced by LookupFunctionPacked().
{ // idx is DT, bRPC, CSC, fRPC // INPUTS: eta_regional(6) // OUTPUTS: eta_gmt(6) const L1MuTriggerScales* theTriggerScales = L1MuGMTConfig::getTriggerScales(); int isRPC = idx % 2; // int isFWD = idx / 2; float etaValue = theTriggerScales->getRegionalEtaScale(idx)->getCenter( eta_regional ); if ( fabs(etaValue) > 2.4 ) etaValue = 2.39 * ((etaValue)>0?1.:-1.); // this is the only trick needed ... if (isRPC) { // etaValue() is center. make eta=0 and |eta|=1.3 non-ambiguous, when converting to GMT bins etaValue += (etaValue>0.01? -1. : 1.) * 0.001; } unsigned eta_gmt = theTriggerScales->getGMTEtaScale()->getPacked( etaValue ); return eta_gmt; }