15 static const uint32_t s_min_packet_size = 3;
19 uint32_t nw = robFrag.rod_ndata ();
20 const uint32_t *bs = robFrag.rod_data ();
21 const uint32_t *current_data_pointer =
const_cast <uint32_t *
> (bs);
25 ERS_DEBUG (1,
"NDATA FROM ROB HEADER: " << nw);
27 uint32_t remaining = nw;
29 while (remaining >= s_min_packet_size)
38 const std::vector <Muon::nsw::VMMChannel *> vchan = elink->
get_channels ();
39 for (
auto i = vchan.begin (); i != vchan.end (); ++i)
42 wcount += elink->
nwords ();
43 current_data_pointer += elink->
nwords ();
45 ERS_DEBUG (1,
"NDATA: " << nw <<
" WORD COUNTER: " << wcount);
46 ERS_DEBUG (1,
"NPACKETS: " <<
m_elinks.size ());
48 remaining = nw - wcount;
51 catch (Muon::nsw::MuonNSWCommonDecoder::NSWElinkFelixHeaderException &e)
54 ERS_DEBUG (1, e.what());
58 catch (Muon::nsw::MuonNSWCommonDecoder::NSWElinkROCHeaderException &e)
61 ERS_DEBUG (1, e.what());
65 wcount += s_min_packet_size;
66 current_data_pointer += s_min_packet_size;
67 remaining = nw - wcount;