struct_cluster->bb_bw = surf_parse_get_double(A_surfxml_cluster_bb_bw);
if(strcmp(A_surfxml_cluster_bb_lat,""))
struct_cluster->bb_lat = surf_parse_get_double(A_surfxml_cluster_bb_lat);
- if(!strcmp(A_surfxml_cluster_router_id,""))
- struct_cluster->router_id = bprintf("%s%s_router%s",
- struct_cluster->prefix,
- struct_cluster->id,
- struct_cluster->suffix);
- else
- struct_cluster->router_id = A_surfxml_cluster_router_id;
+ struct_cluster->router_id = A_surfxml_cluster_router_id;
struct_cluster->sharing_policy = AX_surfxml_cluster_sharing_policy;
struct_cluster->bb_sharing_policy = AX_surfxml_cluster_bb_sharing_policy;
- struct_cluster->availability_trace = xbt_strdup(A_surfxml_cluster_availability_file);
- struct_cluster->state_trace = xbt_strdup(A_surfxml_cluster_state_file);
+ struct_cluster->availability_trace = A_surfxml_cluster_availability_file;
+ struct_cluster->state_trace = A_surfxml_cluster_state_file;
surfxml_call_cb_functions(STag_surfxml_cluster_cb_list);
}
void ETag_surfxml_cluster(void){
surfxml_call_cb_functions(ETag_surfxml_cluster_cb_list);
- if( !strcmp(A_surfxml_cluster_router_id,""))
- xbt_free(struct_cluster->router_id);
- xbt_free(struct_cluster->availability_trace);
- xbt_free(struct_cluster->state_trace);
xbt_free(struct_cluster);
}
void STag_surfxml_peer(void){
- struct_peer = xbt_new0(s_surf_parsing_peer_arg_t, 1);
- struct_peer->id = xbt_strdup(A_surfxml_peer_id);
- struct_peer->power = xbt_strdup(A_surfxml_peer_power);
- struct_peer->bw_in = xbt_strdup(A_surfxml_peer_bw_in);
- struct_peer->bw_out = xbt_strdup(A_surfxml_peer_bw_out);
- struct_peer->lat = xbt_strdup(A_surfxml_peer_lat);
- struct_peer->coord = xbt_strdup(A_surfxml_peer_coordinates);
- struct_peer->availability_trace = xbt_strdup(A_surfxml_peer_availability_file);
- struct_peer->state_trace = xbt_strdup(A_surfxml_peer_state_file);
+ s_surf_parsing_peer_arg_t peer;
+ memset(&peer,0,sizeof(peer));
+ peer.id = A_surfxml_peer_id;
+ peer.power = surf_parse_get_double(A_surfxml_peer_power);
+ peer.bw_in = surf_parse_get_double(A_surfxml_peer_bw_in);
+ peer.bw_out = surf_parse_get_double(A_surfxml_peer_bw_out);
+ peer.lat = surf_parse_get_double(A_surfxml_peer_lat);
+ peer.coord = A_surfxml_peer_coordinates;
+ peer.availability_trace = tmgr_trace_new(A_surfxml_peer_availability_file);
+ peer.state_trace = tmgr_trace_new(A_surfxml_peer_state_file);
+
surfxml_call_cb_functions(STag_surfxml_peer_cb_list);
+ sg_platf_new_peer(&peer);
}
void ETag_surfxml_peer(void){
- surfxml_call_cb_functions(ETag_surfxml_peer_cb_list);
- xbt_free(struct_peer->id);
- xbt_free(struct_peer->power);
- xbt_free(struct_peer->bw_in);
- xbt_free(struct_peer->bw_out);
- xbt_free(struct_peer->lat);
- xbt_free(struct_peer->coord);
- xbt_free(struct_peer->availability_trace);
- xbt_free(struct_peer->state_trace);
- xbt_free(struct_peer);
+ /* nothing to do here */
}
void STag_surfxml_link(void){
s_sg_platf_link_cbarg_t link;
&xbt_free_ref);
}
-/**
- * create CPU resource via CPU Model
- */
-void* surf_host_create_resource(char *name, double power_peak,
- double power_scale,
- tmgr_trace_t power_trace, int core,
- e_surf_resource_state_t state_initial,
- tmgr_trace_t state_trace,
- xbt_dict_t cpu_properties)
-{
- return surf_cpu_model->extension.cpu.create_resource(name, power_peak,
- power_scale,
- power_trace,
- core,
- state_initial,
- state_trace,
- cpu_properties);
-}
-
-/**
- * create CPU resource via worsktation_ptask_L07 model
- */
-
-void* surf_wsL07_host_create_resource(char *name, double power_peak,
- double power_scale,
- tmgr_trace_t power_trace,
- e_surf_resource_state_t state_initial,
- tmgr_trace_t state_trace,
- xbt_dict_t cpu_properties)
-{
- return surf_workstation_model->extension.workstation.cpu_create_resource(name,
- power_peak,
- power_scale,
- power_trace,
- state_initial,
- state_trace,
- cpu_properties);
-}
-
-/**
- * create link resource via network Model
- */
-void* surf_link_create_resource(char *name,
- double bw_initial,
- tmgr_trace_t bw_trace,
- double lat_initial,
- tmgr_trace_t lat_trace,
- e_surf_resource_state_t
- state_initial,
- tmgr_trace_t state_trace,
- e_surf_link_sharing_policy_t policy,
- xbt_dict_t properties)
-{
- return surf_network_model->extension.network.create_resource(name,
- bw_initial,
- bw_trace,
- lat_initial,
- lat_trace,
- state_initial,
- state_trace,
- policy,
- properties);
-}
-
-/**
- * create link resource via workstation_ptask_L07 model
- */
-
-void* surf_wsL07_link_create_resource(char *name,
- double bw_initial,
- tmgr_trace_t bw_trace,
- double lat_initial,
- tmgr_trace_t lat_trace,
- e_surf_resource_state_t
- state_initial,
- tmgr_trace_t state_trace,
- e_surf_link_sharing_policy_t
- policy, xbt_dict_t properties)
-{
- return surf_workstation_model->extension.workstation.
- link_create_resource(name, bw_initial, bw_trace, lat_initial,
- lat_trace, state_initial, state_trace, policy,
- properties);
-}
-
-/**
- * set route
- */
-void surf_routing_add_route(const char *src_id, const char *dst_id,
- xbt_dynar_t links_id)
-{
- unsigned int i;
- const char *link_id;
- routing_set_route(src_id, dst_id);
- xbt_dynar_foreach(links_id, i, link_id) {
- routing_add_link(link_id);
- }
-
- //store the route
- routing_store_route();
-}
-
-/**
- * Add Traces
- */
-void surf_add_host_traces(void)
-{
- return surf_cpu_model->extension.cpu.add_traces();
-}
-
-void surf_add_link_traces(void)
-{
- return surf_network_model->extension.network.add_traces();
-}
-
-void surf_wsL07_add_traces(void)
-{
- return surf_workstation_model->extension.workstation.add_traces();
-}