- // Add Hosts
- xbt_dynar_foreach(host_list_d, i, p_host) {
- create_host(p_host->id, p_host->power_peak, p_host->power_scale,
- p_host->power_trace, p_host->core, p_host->state_initial,
- p_host->state_trace);
- //add to routing model host list
- surf_route_add_host((char *) p_host->id);
-
- }
-
- //add Links
- xbt_dynar_foreach(link_list_d, i, p_link) {
- create_link(p_link->id, p_link->bandwidth, p_link->bandwidth_trace,
- p_link->latency, p_link->latency_trace,
- p_link->state_initial, p_link->state_trace,
- p_link->policy);
+ // Add AS
+ xbt_dynar_foreach(as_list_d, i,p_as)
+ {
+ create_AS(p_as->id, p_as->mode);
+ // add associated Hosts
+ xbt_dynar_foreach(p_as->host_list_d, j, p_host){
+ create_host(p_host->id, p_host->power_peak, p_host->power_scale,
+ p_host->power_trace, p_host->core, p_host->state_initial,
+ p_host->state_trace, p_host->properties);
+
+
+ //add to routing model host list
+ surf_route_add_host((char *) p_host->id);
+ }
+ // add associated Links
+ xbt_dynar_foreach(p_as->link_list_d, j, p_link){
+ create_link(p_link->id, p_link->bandwidth, p_link->bandwidth_trace,
+ p_link->latency, p_link->latency_trace,
+ p_link->state_initial, p_link->state_trace,
+ p_link->policy);
+ }
+ // add associated Routes
+ xbt_dynar_foreach(p_as->route_list_d, j, p_route){
+ surf_routing_add_route((char *) p_route->src_id,
+ (char *) p_route->dest_id, p_route->links_id);
+ }
+
+ // Finalize AS
+ routing_AS_end(p_as->id);