Definition at line 9 of file JetUnpacker.cc.
Implements l1t::Unpacker.
Definition at line 21 of file JetUnpacker.cc.
References coll, l1t::BlockHeader::getID(), l1t::BlockHeader::getSize(), l1t::Block::header(), l1t::L1Candidate::hwEta(), l1t::L1Candidate::hwPhi(), l1t::L1Candidate::hwPt(), l1t::L1Candidate::hwQual(), i, configurableAnalysis::Jet, metsig::jet, LogDebug, l1t::Block::payload(), l1t::L1Candidate::setHwEta(), l1t::L1Candidate::setHwPhi(), l1t::L1Candidate::setHwPt(), and l1t::L1Candidate::setHwQual().
24 LogDebug(
"L1T") <<
"Block ID = " <<
block.header().getID() <<
" size = " <<
block.header().getSize();
26 int nBX = int(ceil(
block.header().getSize() / 6.));
29 int firstBX = -(ceil((
double)nBX/2.)-1);
32 lastBX = ceil((
double)nBX/2.);
34 lastBX = ceil((
double)nBX/2.)-1;
37 auto res_ =
static_cast<L1TObjectCollections*
>(
coll)->getJets();
38 res_->setBXRange(firstBX, lastBX);
40 LogDebug(
"L1T") <<
"nBX = " << nBX <<
" first BX = " << firstBX <<
" lastBX = " << lastBX;
46 for (
int bx=firstBX; bx<=lastBX; bx++){
47 for (
unsigned nJet=0; nJet < 6 && nJet <
block.header().getSize(); nJet++){
48 uint32_t raw_data =
block.payload()[i++];
57 int abs_eta = (raw_data >> 11) & 0x7F;
58 if ((raw_data >> 18) & 0x1) {
64 jet.
setHwPhi((raw_data >> 19) & 0xFF);
67 LogDebug(
"L1T") <<
"Jet: eta " << jet.
hwEta() <<
" phi " << jet.
hwPhi() <<
" pT " << jet.
hwPt() <<
" qual " << jet.
hwQual() <<
" bx " << bx;
69 res_->push_back(bx,jet);