1 #ifndef __MODULE_ACTION_H__ 2 #define __MODULE_ACTION_H__ 10 #include "ModuleGeneric.h" 30 std::vector<Value*>* _args,
32 std::vector<Rule*>* _add,
33 std::vector<Rule*>* _remove,
44 std::vector<Value*>* get_args();
47 std::vector<Rule*>* get_add_rules();
48 std::vector<Rule*>* get_remove_rules();
59 void set_modules(std::vector<ModuleGeneric *> *_modules)
override;
62 std::vector<Value*>* args;
64 std::vector<Rule*>* add;
65 std::vector<Rule*>*
remove;
67 std::vector<ModuleGeneric *> *modules;
70 std::vector<ModuleGeneric *> *runnable_module_list;
std::string print()
function that returns string with module information
Definition: ModuleAction.cc:29
class that implements a fact
Definition: Fact.h:14
Implementation of ModuleAction for modules with reasoning.
Definition: ModuleAction.h:21
std::string get_name() const
getter for a name of module
Definition: ModuleAction.cc:25
Definition: Expression.h:10
Definition: Application.cc:37
Generic class of module (only virtual methods)
Definition: ModuleGeneric.h:21
void set_modules(std::vector< ModuleGeneric *> *_modules) override
setter for modules needed in this module
Definition: ModuleAction.cc:86
void reason()
performs reasoning
Definition: ModuleAction.cc:67
ModuleAction(std::string _name, std::vector< Value *> *_args, Expression *_preconditions, std::vector< Rule *> *_add, std::vector< Rule *> *_remove, Expression *composite_expr)
constructor
Definition: ModuleAction.cc:6
module_type::type get_module_type() const
getter for module type
Definition: ModuleAction.cc:63
Result ask_for_result(Fact *term) const
provides valuations matching given Fact
Definition: ModuleAction.cc:72
~ModuleAction()
destructor
Definition: ModuleAction.cc:22