-
-
- xbt_dynar_foreach(g->nodes, cursor, node) {
- fprintf(stderr, "NODE NAME: %s\n", (char *) node->data);
- /* fprintf(stderr,"CURSOR: %d\n",cursor ); */
- in_cursor = 0;
- D(cursor, cursor) = 0;
- /* fprintf(stderr,"d[]= %le\n", D(cursor,cursor)); */
- xbt_dynar_foreach(node->in, in_cursor, edge) {
- fprintf(stderr, "EDGE IN: %s\n", (char *) edge->data);
- fprintf(stderr, "EDGE DST: %s\n", (char *) edge->dst->data);
-
- idx = xbt_get_node_index(g, edge->dst);
- fprintf(stderr, "IDX: %d\n", idx);
-/* fprintf(stderr,"EDGE ADR: %x\n",(int)edge ); */
-/* fprintf(stderr,"EDGE LENGTH: %le\n", edge->length ); */
- D(cursor, idx) = edge->length;
+
+ xbt_dynar_foreach(g->nodes, cursor, node)
+ {
+ in_cursor = 0;
+ D(cursor, cursor) = 0;
+
+ xbt_dynar_foreach(node->out, in_cursor, edge)
+ {
+ if (edge->dst==node)
+ idx= __xbt_find_in_dynar(g->nodes, edge->src);
+ else /*case of undirected graphs*/
+ idx = __xbt_find_in_dynar(g->nodes, edge->dst);
+ D( cursor,idx) = edge->length;
+ }