26 std::shared_ptr<RoutingInformation> routing_info;
27 std::shared_ptr<ProcedureInfo> procedure_info;
30 std::function<void(
const MessageVariant &)> send;
31 std::function<void(
const MessageVariant &)> recv;
32 std::function<uint32_t(
const MessageVariant &)> send_multicast;
34 std::function<void(TimeoutType)> set_timeout;
35 std::function<void(TimeoutType)> cancel_timeout;
36 std::function<FSMState()> get_fsm_state;
38 std::function<uint16_t(TimeoutType)> get_timeout_length;
44 std::function<void(uint32_t number, std::function<
void()> cb)> wait_for_acks;
46 std::function<void(
const minhton::NodeInfo &, std::vector<minhton::NodeInfo>)> replace_myself;
48 std::function<uint64_t()> get_timestamp;
50 bool node_locked =
false;