Fawkes API
Fawkes Development Version
|
21 #ifndef FAWKES_GOLOGPP_SKILLER_ACTION_EXECUTOR_H
22 #define FAWKES_GOLOGPP_SKILLER_ACTION_EXECUTOR_H
24 #include "action_executor.h"
26 #include <blackboard/interface_listener.h>
27 #include <utils/misc/map_skill.h>
34 class SkillerInterface;
50 const std::string &cfg_prefix);
52 void start(std::shared_ptr<gologpp::Activity> activity)
override;
53 void stop(std::shared_ptr<gologpp::Grounding<gologpp::Action>> activity)
override;
58 const char *
name()
const;
63 void initialize_action_skill_mapping();
64 std::string map_activity_to_skill(std::shared_ptr<gologpp::Activity> activity);
68 const std::string cfg_prefix_;
const char * name() const
Get the name of the executor; mainly used for logging.
An exception that is thrown if the given arguments do not match the skill's arguments.
InvalidArgumentException(const char *format,...)
Constructor.
BlackBoard interface listener.
The BlackBoard abstract class.
BlackBoard * blackboard_
The blackboard to use to access the skiller.
Interface for configuration handling.
bool can_execute_activity(std::shared_ptr< gologpp::Activity > activity) const override
Check if we can execute the given activity.
virtual ~SkillerActionExecutor() override
Destructor.
Fawkes library namespace.
Base class for all Fawkes BlackBoard interfaces.
void start(std::shared_ptr< gologpp::Activity > activity) override
Start the given activity.
void stop(std::shared_ptr< gologpp::Grounding< gologpp::Action >> activity) override
Stop the activity if it is currently running.
SkillerInterface Fawkes BlackBoard Interface.
Class to maintain and perform mapping from actions to skills.
virtual void bb_interface_data_changed(Interface *) override
Update the status of the activity according to the Skiller status.
SkillerActionExecutor(Logger *logger, BlackBoard *blackboard, Configuration *config, const std::string &cfg_prefix)
Constructor.
Abstract class to execute a Golog++ activity.
An ActionExecutor that executes an activity using the Skiller.
bool blackboard_owner_
True if this executor is owning its blackboard.
Base class for exceptions in Fawkes.