Go to the documentation of this file. 1 #ifndef HIVEMIND_BRIDGE_IHIVEMINDBRIDGE_H
2 #define HIVEMIND_BRIDGE_IHIVEMINDBRIDGE_H
6 #include "pheromones/PheromonesSettings.h"
21 virtual void spin() = 0;
27 virtual void onConnect(std::function<
void()> callback) = 0;
33 virtual void onDisconnect(std::function<
void()> callback) = 0;
43 std::function<
void(uint8_t* bytes, uint64_t bytesLength)> callback) = 0;
51 uint64_t bytesLength)> callback) = 0;
59 std::function<
void(uint16_t neighborId, std::optional<Position> position)> callback) = 0;
100 virtual bool sendBytes(uint32_t destinationId,
101 const uint8_t*
const payload,
102 uint16_t payloadSize) = 0;
122 #endif // HIVEMIND_BRIDGE_IHIVEMINDBRIDGE_H
std::vector< UserCallbackArgumentDescription > CallbackArgsManifest
Definition: Callback.h:11
Definition: IHiveMindBridge.h:14
virtual bool onBytesReceived(std::function< void(uint8_t *bytes, uint64_t bytesLength)> callback)=0
virtual bool sendNeighborUpdateRequest(uint16_t neighborId)=0
std::function< std::optional< CallbackReturn >CallbackArgs)> CallbackFunction
Definition: Callback.h:31
virtual bool queueAndSend(MessageDTO message)=0
virtual bool sendBytes(uint32_t destinationId, const uint8_t *const payload, uint16_t payloadSize)=0
virtual bool sendNeighborListUpdateRequest()=0
virtual bool onNeighborUpdated(std::function< void(uint16_t neighborId, std::optional< Position > position)> callback)=0
virtual void onConnect(std::function< void()> callback)=0
virtual bool onNeighborListUpdated(std::function< void(std::array< uint16_t, NEIGHBORS_MAX_SIZE >, uint64_t bytesLength)> callback)=0
virtual void onDisconnect(std::function< void()> callback)=0
static constexpr uint16_t NEIGHBORS_MAX_SIZE
Definition: IHiveMindBridge.h:16
virtual bool registerCustomAction(std::string name, CallbackFunction callback, CallbackArgsManifest manifest)=0