20 template<
typename neighborhood_t>
24 template<
typename graph_t,
typename policy_t>
28 template<
typename graph_t>
33 typedef typename graph_t::node_t node_t;
35 size_t path_length(node_t i)
const;
36 template<
typename iter>
37 bool check_and_update_policy(iter it, node_t current);
44 template<
typename graph_t>
49 typedef typename graph_t::node_t node_t;
51 std::vector<size_t> length;
52 size_t path_length(node_t i)
const;
53 template<
typename iter>
54 bool check_and_update_policy(iter it, node_t current);
60 #include "impl/Graph_Policies.ipp"
Contains the classes mackey::Neighborhood, mackey::Graph, mackey::ShortestPaths.
A directed graph.
Definition: Graph.hpp:49
Dijkstra policy that minimizes the color alterations and length.
Definition: Graph_Policies.hpp:45
MinColorsLength(const graph_t &G)
Computes shortest path in given graph.
ShortestPaths policy that minimizes the length of each path.
Definition: Graph_Policies.hpp:29
MinLength(const graph_t &G)
Computes shortest path in given graph.
The shortest paths from a collection of sources to all points in a graph.
Definition: Graph.hpp:93
std::vector< size_t > distance_policy
The distance from a source to a node, computed by some policy (eg weight)
Definition: Graph.hpp:124
const graph_t & G
Constant reference to the graph.
Definition: Graph.hpp:121
Everything in this library is under this namespace.
Definition: Box.hpp:9
std::ostream & operator<<(std::ostream &, const Chains< rank_t, diff_t > &)
Prints chain complex.
An edge with two possible colors and a numerical id.
Definition: Graph_Policies.hpp:10
unsigned char id
Definition: Graph_Policies.hpp:12
bicolored_edge_with_id(char color, unsigned char id)
char color
Definition: Graph_Policies.hpp:11