1#ifndef CEGAR_ADDITIVE_CARTESIAN_HEURISTIC_H
2#define CEGAR_ADDITIVE_CARTESIAN_HEURISTIC_H
4#include "downward/heuristic.h"
8namespace cartesian_abstractions {
9class CartesianHeuristicFunction;
10class SubtaskGenerator;
17class AdditiveCartesianHeuristic :
public Heuristic {
18 const std::vector<CartesianHeuristicFunction> heuristic_functions;
21 virtual int compute_heuristic(
const State& ancestor_state)
override;
24 explicit AdditiveCartesianHeuristic(
25 const std::vector<std::shared_ptr<SubtaskGenerator>>& subtasks,
30 bool use_general_costs,
32 const std::shared_ptr<AbstractTask>& transform,
34 const std::string& description,
35 utils::Verbosity verbosity);