32 void addBinaryConstraint(
const Vertex &start,
const Vertex &end,
33 const std::optional<double> &lower_bound,
34 const std::optional<double> &upper_bound);
36 void addUnaryConstraint(
const Vertex &vertex,
const std::optional<double> &lower_bound,
37 const std::optional<double> &upper_bound);
39 void updateLastBinaryConstraint(
const Vertex &start,
const Vertex &end,
40 const std::optional<double> &lower_bound,
41 const std::optional<double> &upper_bound);
43 void removeVertex(
const Vertex &vertex);
46 std::vector<std::pair<Vertex, double>> getEarliestSolution();
47 std::vector<std::pair<Vertex, double>> getLatestSolution();
52 std::vector<std::vector<double>> d_graph_;