X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/b8f9cd7d6db02b47ce8031dd1cb63a48775b6162..b35d70d6818026204833410d2e3917252fa35127:/src/surf/platf_generator.c diff --git a/src/surf/platf_generator.c b/src/surf/platf_generator.c index 402ade6487..65c9a3dc81 100644 --- a/src/surf/platf_generator.c +++ b/src/surf/platf_generator.c @@ -1,4 +1,8 @@ +/* Copyright (c) 2012, 2014-2015. The SimGrid Team. + * All rights reserved. */ +/* This program is free software; you can redistribute it and/or modify it + * under the terms of the license (GNU LGPL) which comes with this package. */ #include "simgrid/platf_generator.h" #include "platf_generator_private.h" @@ -395,7 +399,6 @@ int platf_graph_is_connected(void) { do { //Get the next node xbt_dynar_get_cpy(connected_nodes, iterator, &graph_node); - node_data = xbt_graph_node_get_data(graph_node); //add all the linked nodes to the connected node array outgoing_edges = xbt_graph_node_get_outedges(graph_node); @@ -444,7 +447,7 @@ void platf_graph_clear_links(void) { } //Delete edges from the graph xbt_dynar_foreach(dynar_edges_cpy, i, graph_edge) { - xbt_graph_free_edge(platform_graph, graph_edge, xbt_free); + xbt_graph_free_edge(platform_graph, graph_edge, xbt_free_f); } //remove the dynar copy xbt_dynar_free(&dynar_edges_cpy); @@ -613,8 +616,8 @@ void platf_generate(void) { sg_platf_host_cbarg_t host_parameters; sg_platf_cluster_cbarg_t cluster_parameters; sg_platf_link_cbarg_t link_parameters; - s_sg_platf_router_cbarg_t router_parameters; /* This one is not a pointer! */ - s_sg_platf_route_cbarg_t route_parameters; /* neither this one! */ + s_sg_platf_router_cbarg_t router_parameters = SG_PLATF_ROUTER_INITIALIZER; /* This one is not a pointer! */ + s_sg_platf_route_cbarg_t route_parameters = SG_PLATF_ROUTE_INITIALIZER; /* neither this one! */ router_parameters.coord = NULL; route_parameters.symmetrical = FALSE; @@ -631,8 +634,10 @@ void platf_generate(void) { surf_parse_init_callbacks(); routing_register_callbacks(); - - sg_platf_new_AS_begin("random platform", A_surfxml_AS_routing_Floyd); + s_sg_platf_AS_cbarg_t AS = SG_PLATF_AS_INITIALIZER; + AS.id = "random platform"; + AS.routing = A_surfxml_AS_routing_Floyd; + sg_platf_new_AS_begin(&AS); //Generate hosts, clusters and routers xbt_dynar_foreach(nodes, i, graph_node) { @@ -664,6 +669,7 @@ void platf_generate(void) { node_data->router_id = bprintf("router-%d", ++last_router); router_parameters.id = node_data->router_id; sg_platf_new_router(&router_parameters); + break; } } @@ -693,6 +699,7 @@ void platf_generate(void) { break; case HOST: route_parameters.src = src_data->host_parameters.id; + break; } switch(dst_data->kind) { case ROUTER: @@ -703,6 +710,7 @@ void platf_generate(void) { break; case HOST: route_parameters.dst = dst_data->host_parameters.id; + break; } sg_platf_route_begin(&route_parameters); sg_platf_route_add_link(link_parameters->id, &route_parameters);