Stores Level-1 missing Et in (Ex, Ey) form, allowing it to be retrieved as (magnitude, angle) More...
#include <L1GctMet.h>
Classes | |
struct | etmiss_internal |
struct | etmiss_vec |
Public Types | |
typedef L1GctWheelEnergyFpga::etComponentType | etComponentType |
typedef L1GctUnsignedInt < L1GctEtMiss::kEtMissPhiNBits > | etMissPhiType |
typedef L1GctUnsignedInt < L1GctEtMiss::kEtMissNBits > | etMissType |
enum | metAlgoType { cordicTranslate, useHtMissLut, oldGct, floatingPoint } |
Public Member Functions | |
const double | componentLsb () const |
const L1CaloEtScale * | etScale () const |
metAlgoType | getAlgoType () const |
unsigned | getBitShift () const |
etComponentType | getExComponent () const |
etComponentType | getEyComponent () const |
const L1GctHtMissLut * | getHtMissLut () const |
L1GctMet (const unsigned ex=0, const unsigned ey=0, const metAlgoType algo=cordicTranslate) | |
L1GctMet (const etComponentType &ex, const etComponentType &ey, const metAlgoType algo=cordicTranslate) | |
etmiss_vec | metVector () const |
void | setAlgoType (const metAlgoType algo) |
void | setBitShift (const unsigned nbits) |
void | setComponents (const unsigned ex, const unsigned ey) |
void | setComponents (const etComponentType &ex, const etComponentType &ey) |
void | setEtComponentLsb (const double lsb) |
void | setEtScale (const L1CaloEtScale *const fn) |
void | setExComponent (const unsigned ex) |
void | setExComponent (const etComponentType &ex) |
void | setEyComponent (const unsigned ey) |
void | setEyComponent (const etComponentType &ey) |
~L1GctMet () | |
Private Types | |
enum | etComponentShift { kExOrEyMissComponentShift =4 } |
Private Member Functions | |
int | cordicShiftAndRoundBits (const int e, const unsigned nBits) const |
etmiss_internal | cordicTranslateAlgo (const int ex, const int ey, const bool of) const |
etmiss_internal | floatingPointAlgo (const int ex, const int ey) const |
const bool | inputOverFlow () const |
etmiss_internal | oldGctAlgo (const int ex, const int ey) const |
etmiss_internal | useHtMissLutAlgo (const int ex, const int ey, const bool of) const |
Private Attributes | |
metAlgoType | m_algoType |
unsigned short | m_bitShift |
etComponentType | m_exComponent |
etComponentType | m_eyComponent |
L1GctHtMissLut * | m_htMissLut |
Stores Level-1 missing Et in (Ex, Ey) form, allowing it to be retrieved as (magnitude, angle)
Allows the implementation of alternative algorithms
Definition at line 20 of file L1GctMet.h.
Definition at line 28 of file L1GctMet.h.
Definition at line 27 of file L1GctMet.h.
Definition at line 26 of file L1GctMet.h.
|
private |
Enumerator | |
---|---|
kExOrEyMissComponentShift |
Definition at line 72 of file L1GctMet.h.
Enumerator | |
---|---|
cordicTranslate | |
useHtMissLut | |
oldGct | |
floatingPoint |
Definition at line 24 of file L1GctMet.h.
L1GctMet::L1GctMet | ( | const unsigned | ex = 0 , |
const unsigned | ey = 0 , |
||
const metAlgoType | algo = cordicTranslate |
||
) |
Definition at line 7 of file L1GctMet.cc.
L1GctMet::L1GctMet | ( | const etComponentType & | ex, |
const etComponentType & | ey, | ||
const metAlgoType | algo = cordicTranslate |
||
) |
Definition at line 15 of file L1GctMet.cc.
L1GctMet::~L1GctMet | ( | ) |
Definition at line 23 of file L1GctMet.cc.
const double L1GctMet::componentLsb | ( | ) | const |
Definition at line 333 of file L1GctMet.cc.
|
private |
Definition at line 161 of file L1GctMet.cc.
|
private |
Definition at line 79 of file L1GctMet.cc.
const L1CaloEtScale * L1GctMet::etScale | ( | ) | const |
Definition at line 328 of file L1GctMet.cc.
|
private |
Definition at line 297 of file L1GctMet.cc.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
private |
Private method to check for an overflow condition on the input components Allows the check to depend on the algorithm type
Definition at line 340 of file L1GctMet.cc.
L1GctMet::etmiss_vec L1GctMet::metVector | ( | ) | const |
Definition at line 27 of file L1GctMet.cc.
|
private |
Definition at line 219 of file L1GctMet.cc.
|
inline |
Definition at line 53 of file L1GctMet.h.
References ecalcalib_dqm_sourceclient-live_cfg::algo, and m_algoType.
|
inline |
|
inline |
|
inline |
void L1GctMet::setEtComponentLsb | ( | const double | lsb | ) |
Definition at line 323 of file L1GctMet.cc.
void L1GctMet::setEtScale | ( | const L1CaloEtScale *const | fn | ) |
Definition at line 318 of file L1GctMet.cc.
void L1GctMet::setExComponent | ( | const unsigned | ex | ) |
Definition at line 66 of file L1GctMet.cc.
Referenced by setComponents().
|
inline |
void L1GctMet::setEyComponent | ( | const unsigned | ey | ) |
Definition at line 71 of file L1GctMet.cc.
Referenced by setComponents().
|
inline |
|
private |
Definition at line 174 of file L1GctMet.cc.
|
private |
Definition at line 86 of file L1GctMet.h.
Referenced by getAlgoType(), and setAlgoType().
|
private |
Definition at line 87 of file L1GctMet.h.
Referenced by getBitShift(), and setBitShift().
|
private |
Definition at line 84 of file L1GctMet.h.
Referenced by getExComponent(), and setExComponent().
|
private |
Definition at line 85 of file L1GctMet.h.
Referenced by getEyComponent(), and setEyComponent().
|
private |
Definition at line 89 of file L1GctMet.h.
Referenced by getHtMissLut().