|
Fawkes API
Fawkes Development Version
|
Manager to realize triggers on events in the robot memory. More...
#include <event_trigger_manager.h>
Public Member Functions | |
| EventTriggerManager (fawkes::Logger *logger, fawkes::Configuration *config, fawkes::MongoDBConnCreator *mongo_connection_manager) | |
| Constructor for class managing EventTriggers. More... | |
| template<typename T > | |
| EventTrigger * | register_trigger (const bsoncxx::document::view &query, std::string dbcollection, void(T::*callback)(const bsoncxx::document::view &), T *obj) |
| Register a trigger to be notified when the robot memory is updated and the updated document matches the query. More... | |
| void | remove_trigger (EventTrigger *trigger) |
| Remove a previously registered trigger. More... | |
Static Public Member Functions | |
| static std::string | get_db_name (const std::string &ns) |
| Split database name from namespace. More... | |
Friends | |
| class | RobotMemory |
| Access for robot memory to use the check_events function in the loop. More... | |
Manager to realize triggers on events in the robot memory.
Definition at line 47 of file event_trigger_manager.h.
| EventTriggerManager::EventTriggerManager | ( | fawkes::Logger * | logger, |
| fawkes::Configuration * | config, | ||
| fawkes::MongoDBConnCreator * | mongo_connection_manager | ||
| ) |
Constructor for class managing EventTriggers.
| logger | Logger |
| config | Configuration |
| mongo_connection_manager | MongoDBConnCreator |
Definition at line 49 of file event_trigger_manager.cpp.
References fawkes::MongoDBConnCreator::create_client(), fawkes::Configuration::exists(), fawkes::Configuration::get_bool(), fawkes::Configuration::get_string(), and fawkes::Configuration::get_strings().
|
static |
Split database name from namespace.
| ns | namespace, format db.collection |
ns Definition at line 196 of file event_trigger_manager.cpp.
|
inline |
Register a trigger to be notified when the robot memory is updated and the updated document matches the query.
| query | Query the updated document has to match |
| dbcollection | db.collection to use |
| callback | Callback function (e.g. &Class::callback) |
| obj | Pointer to class the callback is a function of (usaually this) |
Definition at line 68 of file event_trigger_manager.h.
References RobotMemory::query().
Referenced by RobotMemory::register_trigger().
| void EventTriggerManager::remove_trigger | ( | EventTrigger * | trigger | ) |
Remove a previously registered trigger.
| trigger | Pointer to the trigger to remove |
Definition at line 164 of file event_trigger_manager.cpp.
|
friend |
Access for robot memory to use the check_events function in the loop.
Definition at line 50 of file event_trigger_manager.h.