10#ifndef FLXLIBS_SRC_ELINKCONCEPT_HPP_
11#define FLXLIBS_SRC_ELINKCONCEPT_HPP_
16#include "packetformat/detail/block_parser.hpp"
47 virtual void init(
const size_t block_queue_capacity) = 0;
48 virtual void set_sink(
const std::string& sink_name) = 0;
49 virtual void conf(
size_t block_size,
bool is_32b_trailers) = 0;
57 void set_ids(
int card,
int slr,
int id,
int tag)
64 std::ostringstream lidstrs;
66 <<
"cid:" << std::to_string(
m_card_id) <<
"|"
68 <<
"lid:" << std::to_string(
m_link_id) <<
"|"
69 <<
"tag:" << std::to_string(
m_link_tag) <<
"]";
72 std::ostringstream tidstrs;
81 std::unique_ptr<felix::packetformat::BlockParser<DefaultParserImpl>>
m_parser;
89 std::chrono::time_point<std::chrono::high_resolution_clock>
m_t0;
ElinkConcept & operator=(const ElinkConcept &)=delete
ElinkConcept is not copy-assginable.
DefaultParserImpl & get_parser()
std::unique_ptr< felix::packetformat::BlockParser< DefaultParserImpl > > m_parser
ElinkConcept(ElinkConcept &&)=delete
ElinkConcept is not move-constructible.
std::chrono::time_point< std::chrono::high_resolution_clock > m_t0
DefaultParserImpl m_parser_impl
virtual bool queue_in_block_address(uint64_t block_addr)=0
ElinkConcept & operator=(ElinkConcept &&)=delete
ElinkConcept is not move-assignable.
virtual void init(const size_t block_queue_capacity)=0
void set_ids(int card, int slr, int id, int tag)
virtual void set_sink(const std::string &sink_name)=0
std::string m_elink_source_tid
virtual void conf(size_t block_size, bool is_32b_trailers)=0
ElinkConcept(const ElinkConcept &)=delete
ElinkConcept is not copy-constructible.