HiveMindBridge
IUserCallbackMap.h
Go to the documentation of this file.
1 #ifndef HIVEMINDBRIDGE_IUSERCALLBACKMAP_H
2 #define HIVEMINDBRIDGE_IUSERCALLBACKMAP_H
3 
4 #include "Callback.h"
5 
7  public:
15  virtual bool registerCallback(std::string name,
16  CallbackFunction callback,
17  CallbackArgsManifest manifest) = 0;
18 
25  virtual bool registerCallback(std::string name, CallbackFunction callback) = 0;
26 
32  virtual std::optional<CallbackFunction> getCallback(const std::string& name) = 0;
33 
34  virtual uint32_t getLength() = 0;
35 
36  virtual std::optional<CallbackArgsManifest> getManifestAt(uint32_t index) = 0;
37 
38  virtual std::optional<std::string> getNameAt(uint32_t index) = 0;
39 };
40 
41 #endif // HIVEMINDBRIDGE_IUSERCALLBACKMAP_H
CallbackArgsManifest
std::vector< UserCallbackArgumentDescription > CallbackArgsManifest
Definition: Callback.h:11
IUserCallbackMap
Definition: IUserCallbackMap.h:6
IUserCallbackMap::registerCallback
virtual bool registerCallback(std::string name, CallbackFunction callback, CallbackArgsManifest manifest)=0
CallbackFunction
std::function< std::optional< CallbackReturn >CallbackArgs)> CallbackFunction
Definition: Callback.h:31
IUserCallbackMap::getLength
virtual uint32_t getLength()=0
Callback.h
IUserCallbackMap::getManifestAt
virtual std::optional< CallbackArgsManifest > getManifestAt(uint32_t index)=0
IUserCallbackMap::getNameAt
virtual std::optional< std::string > getNameAt(uint32_t index)=0
IUserCallbackMap::getCallback
virtual std::optional< CallbackFunction > getCallback(const std::string &name)=0