SimGrid  3.14.159
Versatile Simulation of Distributed Systems
graph.h File Reference
#include "xbt/misc.h"
#include "xbt/dynar.h"

Classes

struct  xbt_node
 
struct  xbt_edge
 
struct  xbt_graph
 

Typedefs

typedef struct xbt_nodexbt_node_t
 
typedef struct xbt_edgexbt_edge_t
 
typedef struct xbt_graphxbt_graph_t
 
typedef struct xbt_node s_xbt_node_t
 
typedef struct xbt_edge s_xbt_edge_t
 
typedef struct xbt_graph s_xbt_graph_t
 

Functions

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...
 
voidxbt_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...
 
voidxbt_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_edge_set_length (xbt_edge_t e, double length)
 Set the weight of the given edge. More...
 
double xbt_graph_edge_get_length (xbt_edge_t e)
 Get the length of a edge. 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...
 
void xbt_graph_export_graphviz (xbt_graph_t g, const char *filename, const char *(node_name)(xbt_node_t), const char *(edge_name)(xbt_edge_t))
 Export the given graph in the GraphViz formatting for visualization. More...