1#ifndef PROBFD_CARTESIAN_ABSTRACTIONS_CARTESIAN_HEURISTIC_FUNCTION_H
2#define PROBFD_CARTESIAN_ABSTRACTIONS_CARTESIAN_HEURISTIC_FUNCTION_H
4#include "probfd/cartesian_abstractions/types.h"
6#include "probfd/value_type.h"
8#include "downward/cartesian_abstractions/refinement_hierarchy.h"
16namespace probfd::cartesian_abstractions {
22class CartesianHeuristicFunction {
24 std::unique_ptr<RefinementHierarchy> refinement_hierarchy_;
25 std::vector<value_t> h_values_;
28 CartesianHeuristicFunction(
29 std::unique_ptr<RefinementHierarchy>&& hierarchy,
30 std::vector<value_t>&& h_values);
32 CartesianHeuristicFunction(
const CartesianHeuristicFunction&) =
delete;
33 CartesianHeuristicFunction(CartesianHeuristicFunction&&) =
default;
35 ~CartesianHeuristicFunction();
38 value_t get_value(
const State& state)
const;
double value_t
Typedef for the state value type.
Definition aliases.h:7