2#include "imr/mold/packet_builder.h"
3#include "imr/mold/retransmission/feed.h"
4#include "imr/mold/retransmission_buffer.h"
5#include <sys/eventfd.h>
11
12
13
14
19
20
21
22
23
27 std::span<
const char> file,
30
31
32
33
34
35
40 std::vector<std::jthread> feeds_;
Builds MoldUDP64 packets.
Definition packet_builder.h:24
Retransmission buffer of the last buffer_size messages.
Definition retransmission_buffer.h:15
Owns N (num_feeds) retransmission feeds.
Definition feed_pool.h:16
FeedPool(std::size_t num_feeds, const Feed::Config &feed_cfg, const PacketBuilder::Config &packet_builder_cfg, std::span< const char > file, const RetransmissionBuffer &retransmission_buffer)
Constructs and starts num_feeds retransmission feeds in their own threads.
void stop() const
Signals all feed threads to stop by writing to the shared shutdown_fd_.
MoldUDP64 retransmission server.
Definition feed.h:18
RAII file descriptor wrapper.
Definition file_descriptor.h:19
Definition file_descriptor.h:11
Definition packet_builder.h:30