Program Listing for File receiver.hpp
↰ Return to documentation for file (receiver.hpp
)
#ifndef FELIX_RECEIVER_H_
#define FELIX_RECEIVER_H_
#include <sys/uio.h>
#include <cstdint>
#include <functional>
#include <vector>
#include <string>
#include "elink.hpp"
#include "network/fromhost_message.hpp"
class Receiver {
public:
using OnMsg = std::function<void(const std::vector<ToFlxMessage>&)>;
using OnConnOpen = std::function<void (const std::string &)>;
using OnConnClose = std::function<void (const std::string &)>;
virtual ~Receiver() = default;
virtual bool declare(const std::vector<Elink> &elinks) = 0;
virtual void set_conn_open_callback(OnConnOpen callback) = 0;
virtual void set_conn_close_callback(OnConnClose callback) = 0;
virtual void set_on_msg_callback(OnMsg callback) = 0;
virtual int get_number_of_connections() = 0;
};
#endif /* FELIX_RECEIVER_H_ */