mirror of
https://github.com/BotChain-Robots/rpc.git
synced 2026-03-09 15:02:27 +01:00
25 lines
902 B
C++
25 lines
902 B
C++
//
|
|
// Created by Johnathon Slightham on 2025-06-10.
|
|
//
|
|
|
|
#ifndef IDISCOVERYSERVICE_H
|
|
#define IDISCOVERYSERVICE_H
|
|
#include <unordered_set>
|
|
|
|
#include "ICommunicationClient.h"
|
|
#include "mDNSRobotModule.h"
|
|
|
|
class IDiscoveryService {
|
|
public:
|
|
virtual ~IDiscoveryService() = default;
|
|
virtual std::unordered_set<uint8_t> find_modules(std::chrono::duration<double> wait_time) = 0;
|
|
virtual std::unordered_map<uint8_t, std::shared_ptr<ICommunicationClient>> get_lossy_clients(
|
|
const std::shared_ptr<BlockingQueue<std::unique_ptr<std::vector<uint8_t>>>> &rx_queue,
|
|
std::vector<uint8_t> &skip_modules) = 0;
|
|
virtual std::unordered_map<uint8_t, std::shared_ptr<ICommunicationClient>> get_lossless_clients(
|
|
const std::shared_ptr<BlockingQueue<std::unique_ptr<std::vector<uint8_t>>>> &rx_queue,
|
|
std::vector<uint8_t> &skip_modules) = 0;
|
|
};
|
|
|
|
#endif // IDISCOVERYSERVICE_H
|