17#ifndef DAISI_PATH_PLANNING_CONSENSUS_CONSENSUS_H_
18#define DAISI_PATH_PLANNING_CONSENSUS_CONSENSUS_H_
20#include "path_planning/consensus/central/central_participant.h"
21#include "path_planning/consensus/consensus_types.h"
22#include "path_planning/consensus/constants.h"
23#include "path_planning/consensus/paxos/constants.h"
24#include "path_planning/consensus/paxos/paxos_consensus.h"
25#include "path_planning/constants.h"
26#include "sola-ns3/sola_ns3_wrapper.h"
28namespace daisi::path_planning::consensus {
34 Consensus(consensus::ConsensusSettings settings,
35 const std::shared_ptr<sola_ns3::SOLAWrapperNs3> &sola, uint32_t node_id,
36 std::shared_ptr<PathPlanningLoggerNs3> logger);
48 void findConsensus(
const PointTimePairs &points,
double seconds_earliest_start,
49 std::function<
void(uint32_t
id,
double start_time)> success_cb,
50 std::function<
void(uint32_t
id)> fail_cb);
Participant/Client in the centralized client-server occupancy management.
Definition central_participant.h:27
Definition consensus.h:32
void findConsensus(const PointTimePairs &points, double seconds_earliest_start, std::function< void(uint32_t id, double start_time)> success_cb, std::function< void(uint32_t id)> fail_cb)
Definition consensus.cpp:36
void recvTopicMessage(const std::string &topic, const std::string &msg)
Definition consensus.cpp:49
Definition paxos_consensus.h:29