#include <EtSumPacker.h>
Definition at line 8 of file EtSumPacker.h.
Implements l1t::Packer.
Definition at line 10 of file EtSumPacker.cc.
References DEFINE_L1T_PACKER, mps_fire::i, l1t::EtSum::kTotalEt, l1t::EtSum::kTotalHt, svgfig::load(), min(), and gen::n.
Referenced by pyrootRender.interactiveRender::draw().
13 event.getByToken(static_cast<const CaloTokens*>(toks)->getEtSumToken(), etSums);
15 std::vector<uint32_t>
load;
17 for (
int i = etSums->getFirstBX();
i <= etSums->getLastBX(); ++
i) {
20 uint16_t objectTotalEt=0;
21 uint16_t objectTotalHt=0;
25 for (
auto j = etSums->begin(
i); j != etSums->end(
i) && n < 4; ++j, ++
n) {
28 flagTotalEt=j->hwQual() & 0x1;
29 objectTotalEt=
std::min(j->hwPt(), 0xFFF)|(flagTotalEt<<12);
33 flagTotalHt=j->hwQual() & 0x1;
34 objectTotalHt=
std::min(j->hwPt(), 0xFFF)|(flagTotalHt<<12);
38 uint32_t word0=(objectTotalEt & 0xFFFF);
39 uint32_t word1=(objectTotalHt & 0xFFFF);
42 word1 |= ((
i == 0) << 15);
45 load.push_back(word0);
46 load.push_back(word1);
51 return {Block(93, load)};