virtual ~Node(){}
void addChild(Node* node);
const Action& action() const;
- void execute(const literals& effects);
+ void execute(const Literals& effects);
bool executed() const;
- const literals& effects() const;
+ const Literals& effects() const;
+ void satisfyCondition(std::string effect);
protected:
Action _action;
std::vector<Node*> _children;
- literals _preconditions;
+ Preconditions _preconditions;
bool _executed;
- literals _effects;
+ Literals _effects;
};
-class StartNode : Node {
+class StartNode :public Node {
public:
- StartNode(const literals& init);
+ StartNode(const Literals& init);
};
-class EndNode : Node {
+class EndNode :public Node {
public:
- EndNode(const literals& goal);
+ EndNode(const Literals& goal);
};
#endif