- surf_action_network_t action = NULL;
- xbt_swag_t running_actions =
- surf_network_resource->common_public->states.running_action_set;
- xbt_maxmin_float_t min = -1;
- xbt_maxmin_float_t value = -1;
- lmm_solve(maxmin_system);
-
- action = xbt_swag_getFirst(running_actions);
- if (!action)
- return -1.0;
- value = lmm_variable_getvalue(action->variable);
- min = action->generic_action.remains / value;
-
- xbt_swag_foreach(action, running_actions) {
- value = action->latency + (action->generic_action.remains /
- lmm_variable_getvalue(action->variable));
- if (value < min)
- min = value;
- }
-
- return min;
+ s_surf_action_network_t action;
+ return generic_maxmin_share_resources(surf_network_resource->
+ common_public->states.
+ running_action_set,
+ xbt_swag_offset(action, variable));