![]() |
![]() |
#include <L1Trigger/GlobalMuonTrigger/src/L1MuGMTMIAUEtaConvLUT.h>
Public Types | |
enum | { MIP_DT, MIP_BRPC, ISO_DT, ISO_BRPC, MIP_CSC, MIP_FRPC, ISO_CSC, ISO_FRPC } |
Public Member Functions | |
L1MuGMTMIAUEtaConvLUT () | |
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_in) const |
specific lookup function for entire output field | |
unsigned | SpecificLookup_eta_out (int idx, unsigned eta_in) const |
specific lookup function for eta_out | |
virtual | ~L1MuGMTMIAUEtaConvLUT () |
destructor | |
Private Member Functions | |
void | InitParameters () |
Initialize scales, configuration parameters, alignment constants, ... | |
unsigned | TheLookupFunction (int idx, unsigned eta_in) const |
The lookup function - here the functionality of the LUT is implemented. |
this class was automatically generated by L1MuGMTLUT::MakeSubClass()
Definition at line 42 of file L1MuGMTMIAUEtaConvLUT.h.
anonymous enum |
L1MuGMTMIAUEtaConvLUT::L1MuGMTMIAUEtaConvLUT | ( | ) | [inline] |
constuctor using function-lookup
Definition at line 48 of file L1MuGMTMIAUEtaConvLUT.h.
References InitParameters().
00048 : L1MuGMTLUT("MIAUEtaConv", 00049 "MIP_DT MIP_BRPC ISO_DT ISO_BRPC MIP_CSC MIP_FRPC ISO_CSC ISO_FRPC", 00050 "eta_in(6)", 00051 "eta_out(4)", 6, true) { 00052 InitParameters(); 00053 } ;
virtual L1MuGMTMIAUEtaConvLUT::~L1MuGMTMIAUEtaConvLUT | ( | ) | [inline, virtual] |
void L1MuGMTMIAUEtaConvLUT::InitParameters | ( | ) | [private] |
Initialize scales, configuration parameters, alignment constants, ...
Definition at line 38 of file L1MuGMTMIAUEtaConvLUT.cc.
Referenced by L1MuGMTMIAUEtaConvLUT().
virtual unsigned L1MuGMTMIAUEtaConvLUT::LookupFunctionPacked | ( | int | idx, | |
unsigned | address | |||
) | const [inline, virtual] |
access to lookup function with packed input and output
Reimplemented from L1MuGMTLUT.
Definition at line 76 of file L1MuGMTMIAUEtaConvLUT.h.
References addr, L1MuGMTLUT::m_Inputs, TheLookupFunction(), and L1MuGMTLUT::u2vec().
00076 { 00077 std::vector<unsigned> addr = u2vec(address, m_Inputs); 00078 return TheLookupFunction(idx ,addr[0]); 00079 00080 };
unsigned L1MuGMTMIAUEtaConvLUT::SpecificLookup | ( | int | idx, | |
unsigned | eta_in | |||
) | const [inline] |
specific lookup function for entire output field
Definition at line 66 of file L1MuGMTMIAUEtaConvLUT.h.
References addr, and L1MuGMTLUT::LookupPacked().
00066 { 00067 std::vector<unsigned> addr(1); 00068 addr[0] = eta_in; 00069 return LookupPacked(idx, addr); 00070 };
unsigned L1MuGMTMIAUEtaConvLUT::SpecificLookup_eta_out | ( | int | idx, | |
unsigned | eta_in | |||
) | const [inline] |
specific lookup function for eta_out
Definition at line 59 of file L1MuGMTMIAUEtaConvLUT.h.
References addr, and L1MuGMTLUT::Lookup().
Referenced by L1MuGMTPhiProjectionUnit::run().
00059 { 00060 std::vector<unsigned> addr(1); 00061 addr[0] = eta_in; 00062 return Lookup(idx, addr) [0]; 00063 };
unsigned L1MuGMTMIAUEtaConvLUT::TheLookupFunction | ( | int | idx, | |
unsigned | eta_in | |||
) | const [private] |
The lookup function - here the functionality of the LUT is implemented.
Definition at line 56 of file L1MuGMTMIAUEtaConvLUT.cc.
References L1MuScale::getCenter(), L1MuGMTConfig::getGMTScales(), L1MuScale::getPacked(), L1MuGMTScales::getReducedEtaScale(), L1MuTriggerScales::getRegionalEtaScale(), L1MuScale::getScaleMax(), L1MuScale::getScaleMin(), L1MuGMTConfig::getTriggerScales(), and L1MuGMTLUT::m_saveFlag.
Referenced by LookupFunctionPacked().
00056 { 00057 // idx is MIP_DT, MIP_BRPC, ISO_DT, ISO_BRPC, MIP_CSC, MIP_FRPC, ISO_CSC, ISO_FRPC 00058 // INPUTS: eta_in(6) 00059 // OUTPUTS: eta_out(4) 00060 00061 const L1MuGMTScales* theGMTScales = L1MuGMTConfig::getGMTScales(); 00062 const L1MuTriggerScales* theTriggerScales = L1MuGMTConfig::getTriggerScales(); 00063 00064 int isRPC = idx % 2; 00065 int isFWD = idx / 4; 00066 00067 int idx_drcr = isFWD * 2 + isRPC; 00068 00069 float etaValue = theTriggerScales->getRegionalEtaScale(idx_drcr)->getCenter( eta_in ); 00070 00071 unsigned eta4bit = 0; 00072 if ( (isRPC && isFWD && fabs(etaValue) < theGMTScales->getReducedEtaScale(3)->getScaleMin() ) || 00073 (isRPC && !isFWD && fabs(etaValue) > theGMTScales->getReducedEtaScale(1)->getScaleMax() )) { 00074 if(!m_saveFlag) edm::LogWarning("LUTRangeViolation") 00075 << "L1MuGMTMIAUEtaConvLUT::TheLookupFunction: RPC " << (isFWD?"fwd":"brl") << " eta value out of range: " << etaValue; 00076 } 00077 else 00078 eta4bit = theGMTScales->getReducedEtaScale(idx_drcr)->getPacked( etaValue ); 00079 00080 return eta4bit; 00081 }