29 unsigned int nWords = 6;
30 int nBX, firstBX, lastBX;
39 res->setBXRange(firstBX, lastBX);
41 LogDebug(
"L1T") <<
"nBX = " << nBX <<
" first BX = " << firstBX <<
" lastBX = " << lastBX;
47 for (
int bx = firstBX; bx <= lastBX; ++bx) {
48 for (
unsigned nWord = 0; nWord < nWords && i < block.
header().
getSize(); nWord += 2) {
49 uint32_t raw_data_00_31 = payload[i++];
50 uint32_t raw_data_32_63 = payload[i++];
51 LogDebug(
"L1T") <<
"raw_data_00_31 = 0x" << hex << raw_data_00_31 <<
" raw_data_32_63 = 0x" << raw_data_32_63;
54 LogDebug(
"L1T") <<
"Muon hwPt zero. Skip.";
64 res->push_back(bx, mu);
void getBXRange(int nbx, int &first, int &last)
BlockHeader header() const
static void fillMuon(Muon &, uint32_t, uint32_t)
std::vector< uint32_t > payload() const
virtual bool unpack(const Block &block, UnpackerCollections *coll) override
#define DEFINE_L1T_UNPACKER(type)
static const unsigned ptShift_
int hwChargeValid() const
static const unsigned ptMask_