22 int Et = std::round(floatEt);
29 for (
unsigned int i = 0; i <
s_nRanges; i++) {
35 unsigned int code = 0;
60 for (
unsigned int i = 0; i <
s_nRanges-1; ++i) {
61 if (code < (
unsigned int)
s_minCode[i+1])
break;
77 if (code < cut) code = 0;
static const unsigned int s_LArOverflow
LAr overflow code.
static const int s_minET[s_nRanges]
Minimum ET values in each range, MeV.
static unsigned int linearize(unsigned int code, int threshold=0)
Linearize LAr code to eFEX internal format.
static const unsigned int s_LArReserved_max
Reserved code max value.
static const unsigned int s_LArUnderflow
LAr underflow code.
static int expand(unsigned int code)
Uncompress data.
static unsigned int threshold(unsigned int code, int threshold=-101200)
Apply threshold to compressed data.
static const int s_minCode[s_nRanges]
Minimum code value in each range.
static const int s_error
Error return value.
static const unsigned int s_LArMaxCode
LAr saturated code.
static const int s_maxET
Maximum ET value that can be encoded.
static const int s_steps[s_nRanges]
Step sizes in each range, MeV.
static const int s_NoData
Indicates no data present.
static const unsigned int s_gFEXOverflow
L1Calo saturated/overflow.
static unsigned int compress(float Energy)
Compress data.
static const unsigned int s_gFEXstep
L1Calo ET digit step.
static const unsigned int s_nRanges
Number of ranges.
static const unsigned int s_LArInvalid
Invalid code value.
static const unsigned int s_LArReserved_min
Reserved code min value.
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...