A graph data type with several interesting algorithms.
|
xbt_graph_t | xbt_graph_new_graph (unsigned short int directed, void *data) |
| Constructor. More...
|
|
xbt_node_t | xbt_graph_new_node (xbt_graph_t g, void *data) |
| add a node to the given graph More...
|
|
xbt_edge_t | xbt_graph_new_edge (xbt_graph_t g, xbt_node_t src, xbt_node_t dst, void *data) |
| add an edge to the given graph More...
|
|
void * | xbt_graph_node_get_data (xbt_node_t node) |
| Get the user data associated to a node. More...
|
|
void | xbt_graph_node_set_data (xbt_node_t node, void *data) |
| Set the user data associated to a node. More...
|
|
void * | xbt_graph_edge_get_data (xbt_edge_t edge) |
| Get the user data associated to a edge. More...
|
|
void | xbt_graph_edge_set_data (xbt_edge_t edge, void *data) |
| Set the user data associated to a edge. More...
|
|
xbt_edge_t | xbt_graph_get_edge (xbt_graph_t g, xbt_node_t src, xbt_node_t dst) |
| Get the edge connecting src and dst. More...
|
|
void | xbt_graph_free_graph (xbt_graph_t g, void_f_pvoid_t node_free_function, void_f_pvoid_t edge_free_function, void_f_pvoid_t graph_free_function) |
| Destructor. More...
|
|
xbt_dynar_t | xbt_graph_get_nodes (xbt_graph_t g) |
| Retrieve the graph's nodes as a dynar. More...
|
|
xbt_dynar_t | xbt_graph_get_edges (xbt_graph_t g) |
| Retrieve the graph's edges as a dynar. More...
|
|
xbt_dynar_t | xbt_graph_node_get_outedges (xbt_node_t n) |
| Retrieve the outgoing edges of the given node. More...
|
|
xbt_node_t | xbt_graph_edge_get_source (xbt_edge_t e) |
| Retrieve the node at the source of the given edge. More...
|
|
xbt_node_t | xbt_graph_edge_get_target (xbt_edge_t e) |
| Retrieve the node being the target of the given edge. More...
|
|
◆ xbt_node_t
◆ xbt_edge_t
◆ xbt_graph_t
◆ s_xbt_node_t
◆ s_xbt_edge_t
◆ s_xbt_graph_t
◆ xbt_graph_new_graph()
xbt_graph_t xbt_graph_new_graph |
( |
unsigned short int |
directed, |
|
|
void * |
data |
|
) |
| |
Constructor.
- Returns
- a new graph
◆ xbt_graph_new_node()
add a node to the given graph
◆ xbt_graph_new_edge()
add an edge to the given graph
◆ xbt_graph_node_get_data()
Get the user data associated to a node.
◆ xbt_graph_node_set_data()
Set the user data associated to a node.
◆ xbt_graph_edge_get_data()
Get the user data associated to a edge.
◆ xbt_graph_edge_set_data()
Set the user data associated to a edge.
◆ xbt_graph_get_edge()
Get the edge connecting src and dst.
◆ xbt_graph_free_graph()
Destructor.
- Parameters
-
g | poor victim |
node_free_function | function to use to free data associated to each node |
edge_free_function | function to use to free data associated to each edge |
graph_free_function | function to use to free data associated to g |
Free the graph structure.
◆ xbt_graph_get_nodes()
Retrieve the graph's nodes as a dynar.
◆ xbt_graph_get_edges()
Retrieve the graph's edges as a dynar.
◆ xbt_graph_node_get_outedges()
Retrieve the outgoing edges of the given node.
◆ xbt_graph_edge_get_source()
Retrieve the node at the source of the given edge.
◆ xbt_graph_edge_get_target()
Retrieve the node being the target of the given edge.