link.bandwidth_trace = tmgr_trace_new(A_surfxml_link_bandwidth_file);
link.latency = surf_parse_get_double(A_surfxml_link_latency);
link.latency_trace = tmgr_trace_new(A_surfxml_link_latency_file);
- /* FIXME: use a switch here */
- xbt_assert((A_surfxml_link_state == A_surfxml_link_state_ON) ||
- (A_surfxml_link_state == A_surfxml_link_state_OFF), "Invalid state");
- if (A_surfxml_link_state == A_surfxml_link_state_ON)
+
+ switch (A_surfxml_link_state) {
+ case A_surfxml_link_state_ON:
link.state = SURF_RESOURCE_ON;
- if (A_surfxml_link_state == A_surfxml_link_state_OFF)
+ break;
+ case A_surfxml_link_state_OFF:
link.state = SURF_RESOURCE_OFF;
+ break;
+ default:
+ surf_parse_error(bprintf("invalid state for link %s",link.id));
+ }
link.state_trace = tmgr_trace_new(A_surfxml_link_state_file);
- /* FIXME: use a switch here */
- if (A_surfxml_link_sharing_policy == A_surfxml_link_sharing_policy_SHARED)
+ switch (A_surfxml_link_sharing_policy) {
+ case A_surfxml_link_sharing_policy_SHARED:
link.policy = SURF_LINK_SHARED;
- else
- {
- if (A_surfxml_link_sharing_policy == A_surfxml_link_sharing_policy_FATPIPE)
+ break;
+ case A_surfxml_link_sharing_policy_FATPIPE:
link.policy = SURF_LINK_FATPIPE;
- else if (A_surfxml_link_sharing_policy == A_surfxml_link_sharing_policy_FULLDUPLEX)
+ break;
+ case A_surfxml_link_sharing_policy_FULLDUPLEX:
link.policy = SURF_LINK_FULLDUPLEX;
+ break;
+ default:
+ surf_parse_error(bprintf("Invalid sharing policy in link %s",link.id));
}
sg_platf_new_link(&link);