18 static const uint32_t min_packet_size = 2;
22 uint32_t nWords = robFrag.rod_ndata ();
23 const uint32_t *bs = robFrag.rod_data ();
24 const uint32_t *pp = bs;
25 uint32_t remaining = nWords;
27 while (remaining >= min_packet_size)
31 std::shared_ptr<Muon::nsw::NSWTriggerElink> elink;
34 std::shared_ptr<Muon::nsw::NSWTriggerMML1AElink> tmplink = std::make_shared<Muon::nsw::NSWTriggerMML1AElink>(pp, remaining);
37 std::shared_ptr<Muon::nsw::NSWTriggerMMMonElink> tmplink = std::make_shared<Muon::nsw::NSWTriggerMMMonElink>(pp, remaining);
40 std::shared_ptr<Muon::nsw::NSWPadTriggerL1a> tmplink = std::make_shared<Muon::nsw::NSWPadTriggerL1a>(pp, remaining);
43 std::shared_ptr<Muon::nsw::NSWTriggerSTGL1AElink> tmplink = std::make_shared<Muon::nsw::NSWTriggerSTGL1AElink>(pp, remaining);
46 std::shared_ptr<Muon::nsw::NSWTriggerElink> tmplink = std::make_shared<Muon::nsw::NSWTriggerElink>(pp, remaining);
47 elink = std::move(tmplink);
51 pp += elink->nwords();
52 remaining -= elink->nwords();;
59 ERS_DEBUG(1,
"Following exception found");
60 ERS_DEBUG(1, e.what());
64 catch (std::exception &e) {
67 ERS_DEBUG(1,
"Following exception found");
68 ERS_DEBUG(1, e.what());
74 if ( remaining > 0 ) {