HiveMindBridge
Callback.h
Go to the documentation of this file.
1 #ifndef HIVE_MIND_BRIDGE_CALLBACK_H
2 #define HIVE_MIND_BRIDGE_CALLBACK_H
3 
5 #include <functional>
6 #include <pheromones/FunctionCallArgumentDTO.h>
7 #include <pheromones/FunctionCallRequestDTO.h>
8 
9 typedef std::vector<FunctionCallArgumentDTO> CallbackArgs;
10 
11 typedef std::vector<UserCallbackArgumentDescription> CallbackArgsManifest;
12 
17  public:
18  CallbackReturn(std::string returnFunctionName, CallbackArgs args) :
19  m_args(args), m_returnFunctionName(returnFunctionName) {}
20 
22 
23  std::string getReturnFunctionName() { return m_returnFunctionName; }
24 
25  private:
26  CallbackArgs m_args; // The return values
27  std::string
28  m_returnFunctionName; // The name of the function call request in which to wrap the response
29 };
30 
31 typedef std::function<std::optional<CallbackReturn>(CallbackArgs)> CallbackFunction;
32 
33 #endif // HIVE_MIND_BRIDGE_CALLBACK_H
CallbackReturn::m_args
CallbackArgs m_args
Definition: Callback.h:26
CallbackArgsManifest
std::vector< UserCallbackArgumentDescription > CallbackArgsManifest
Definition: Callback.h:11
CallbackFunction
std::function< std::optional< CallbackReturn >CallbackArgs)> CallbackFunction
Definition: Callback.h:31
CallbackReturn::CallbackReturn
CallbackReturn(std::string returnFunctionName, CallbackArgs args)
Definition: Callback.h:18
CallbackReturn::m_returnFunctionName
std::string m_returnFunctionName
Definition: Callback.h:28
CallbackReturn::getReturnArgs
CallbackArgs getReturnArgs()
Definition: Callback.h:21
CallbackArgs
std::vector< FunctionCallArgumentDTO > CallbackArgs
Definition: Callback.h:9
UserCallbackArgumentDescription.h
CallbackReturn::getReturnFunctionName
std::string getReturnFunctionName()
Definition: Callback.h:23
CallbackReturn
Definition: Callback.h:16