Function plansys2::evaluate(const plansys2_msgs::msg::Tree&, std::shared_ptr<plansys2::ProblemExpertClient>, std::vector<plansys2::Predicate>&, std::vector<plansys2::Function>&, bool, bool, uint8_t, bool)
Defined in File Utils.hpp
Function Documentation
-
std::tuple<bool, bool, double> plansys2::evaluate(const plansys2_msgs::msg::Tree &tree, std::shared_ptr<plansys2::ProblemExpertClient> problem_client, std::vector<plansys2::Predicate> &predicates, std::vector<plansys2::Function> &functions, bool apply = false, bool use_state = false, uint8_t node_id = 0, bool negate = false)
Evaluate a PDDL expression represented as a tree.
- Parameters:
node – [in] The root node of the PDDL expression.
problem_client – [in] The problem expert client.
predicates – [in] Current predicates state.
functions – [in] Current functions state.
apply – [in] Apply result to problem expert or state.
use_state – [in] Use state representation or problem client.
negate – [in] Invert the truth value.
- Returns:
result <- tuple(bool, bool, double) result(0) true if success result(1) truth value of boolean expression result(2) value of numeric expression