X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/1d2f05c1a2fbdc662e0eb9ad8e2dd7f7e6f7986c..12442080c860b7affd1b246f12895bda4f304330:/src/xbt/graph_private.h diff --git a/src/xbt/graph_private.h b/src/xbt/graph_private.h index f08f3c77e4..2c7cef294b 100644 --- a/src/xbt/graph_private.h +++ b/src/xbt/graph_private.h @@ -10,14 +10,21 @@ #define _XBT_GRAPH_PRIVATE_H #include "xbt/dynar.h" +#define NOT_EXPLORED 0 +#define CURRENTLY_EXPLORING 1 +#define ALREADY_EXPLORED 2 + /* Node structure */ /* typedef struct xbt_node *xbt_node_t; */ typedef struct xbt_node { xbt_dynar_t out; - xbt_dynar_t in; -/* int index; */ - void *data; + xbt_dynar_t in; /* not used when the graph is directed */ + double position_x; /* positive value: negative means undefined */ + double position_y; /* positive value: negative means undefined */ + void *data; /* user data */ + void *xbtdata; /* private xbt data: should be reinitialized at the + beginning of your algorithm if you need to use it */ } s_xbt_node_t; /* edge structure */ @@ -26,8 +33,10 @@ typedef struct xbt_edge { xbt_node_t src; xbt_node_t dst; - void *data; - double length; + void *data; /* user data */ + void *xbtdata; /* private xbt data: should be reinitialized at the + beginning of your algorithm if you need to use it */ + double length; /* positive value: negative means undefined */ } s_xbt_edge_t; /* Graph structure */ @@ -37,10 +46,11 @@ typedef struct xbt_graph xbt_dynar_t nodes; xbt_dynar_t edges; unsigned short int directed; - void *data; + void *data; /* user data */ + void *xbtdata; /* private xbt data: should be reinitialized at the + beginning of your algorithm if you need to use it */ } s_xbt_graph_t; void xbt_floyd_algorithm(xbt_graph_t g, double* adj,double* d, xbt_node_t* p); - -int xbt_get_node_index(xbt_graph_t g, xbt_node_t n); +void xbt_graph_depth_visit (xbt_graph_t g,xbt_node_t n,xbt_node_t* sorted,int* idx); #endif /* _XBT_GRAPH_PRIVATE_H */