20 unsigned int word = (
Ex&0x7fff) + (overflow<<15);
29 unsigned int word = (
Ey&0x7fff) + (overflow<<15);
38 unsigned int word = (
Et&0x7fff) + (overflow<<15);
47 uint8_t
header = (roiWord>>28);
48 uint8_t
type = (roiWord>>26)&1;
49 uint32_t payload = (roiWord&0xffff);
67 for (std::vector<uint32_t>::const_iterator it = roiWords.begin(); it != roiWords.end(); ++it)
addRoI((*it)) ;
126 unsigned int overflow = 0;
133 unsigned int overflow = 0;
140 unsigned int overflow = 0;
149 word = word & 0x7fff;
152 int sign = (word >> 14) & 1;
154 int complement = ~word;
155 value = -( (complement+1) & 0x7fff );
int Ex(SumTypes type=LVL1::EnergyTopoData::Normal) const
return Ex, Ey, ET values
int Ey(SumTypes type=LVL1::EnergyTopoData::Normal) const
Ey (signed)
int EyTC(SumTypes type=LVL1::EnergyTopoData::Normal) const
Ey (twos complement)
void addEt(unsigned int Et, unsigned int overflow, int type)
void addRoIs(const std::vector< uint32_t > &roiWords)
unsigned int EtOverflow(SumTypes type=LVL1::EnergyTopoData::Normal) const
int ExTC(SumTypes type=LVL1::EnergyTopoData::Normal) const
return twos-complement Ex, Ey values
int decodeTC(unsigned int word) const
Decode 15-bit twos-complement values.
void addRoI(uint32_t roiWord)
add data using RoI word
unsigned int word2() const
return word 2
unsigned int word1() const
return word 1
int Et(SumTypes type=LVL1::EnergyTopoData::Normal) const
ET Sum.
unsigned int ExOverflow(SumTypes type=LVL1::EnergyTopoData::Normal) const
return overflow flags
unsigned int EyOverflow(SumTypes type=LVL1::EnergyTopoData::Normal) const
unsigned int word0() const
return word 0
void addEy(unsigned int Ey, unsigned int overflow, int type)
void addEx(unsigned int Ex, unsigned int overflow, int type)
add data.
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...