74 if (datatype.find(
"PDSStreamFrame") != std::string::npos) {
76 auto elink_model = std::make_unique<ElinkModel<fdreadoutlibs::types::DAPHNEStreamSuperChunkTypeAdapter>>();
77 elink_model->set_sink_config(conf);
78 auto& parser = elink_model->get_parser();
79 auto& cb = elink_model->m_sink_callback;
80 parser.process_chunk_func = parsers::fixsizedChunkInto<fdreadoutlibs::types::DAPHNEStreamSuperChunkTypeAdapter>(cb);
83 }
else if (datatype.find(
"PDSFrame") != std::string::npos) {
85 auto elink_model = std::make_unique<ElinkModel<fdreadoutlibs::types::DAPHNESuperChunkTypeAdapter>>();
86 elink_model->set_sink_config(conf);
87 auto& parser = elink_model->get_parser();
88 auto& cb = elink_model->m_sink_callback;
89 parser.process_chunk_func = parsers::fixsizedChunkInto<fdreadoutlibs::types::DAPHNESuperChunkTypeAdapter>(cb);
93 }
else if (datatype.find(
"varsize") != std::string::npos) {
95 auto elink_model = std::make_unique<ElinkModel<fdreadoutlibs::types::VariableSizePayloadTypeAdapter>>();
96 elink_model->set_sink_config(conf);
97 auto& parser = elink_model->get_parser();
98 auto& cb = elink_model->m_sink_callback;
99 parser.process_chunk_func = parsers::varsizedChunkIntoWrapper(cb);
100 parser.process_shortchunk_func = parsers::varsizedShortchunkIntoWrapper(cb);