22 #include <arpirobot/core/action/Action.hpp>
23 #include <arpirobot/core/action/BaseActionTrigger.hpp>
56 static bool startAction(std::shared_ptr<Action> action,
bool doRestart =
true);
84 static void addTrigger(std::shared_ptr<BaseActionTrigger> trigger);
100 static bool startActionInternal(std::shared_ptr<Action> action,
bool doRestart,
ActionSeries *owningActionSeries);
102 static bool stopActionInternal(std::shared_ptr<Action> action,
bool interrupted);
104 static void checkTriggers();
106 static std::mutex triggerLock;
108 static std::vector<std::shared_ptr<BaseActionTrigger>> triggers;
111 static std::vector<std::shared_ptr<Action>> runningActions;
112 static std::mutex runningActionsLock;
Definition: ActionManager.hpp:37
static bool startAction(std::shared_ptr< Action > action, bool doRestart=true)
static void removeTrigger(BaseActionTrigger &trigger)
static bool stopAction(Action &action)
static bool startAction(Action &action, bool doRestart=true)
static void addTrigger(std::shared_ptr< BaseActionTrigger > trigger)
static void addTrigger(BaseActionTrigger &trigger)
static void removeTrigger(std::shared_ptr< BaseActionTrigger > trigger)
static bool stopAction(std::shared_ptr< Action > action)
Definition: ActionSeries.hpp:34
Definition: Action.hpp:41
Definition: BaseActionTrigger.hpp:37
Definition: BaseRobot.hpp:40
Definition: ArduinoDevice.hpp:27