xbt_assert0(task != NULL, "Invalid parameter");
if (task->surf_action)
- return task->surf_action->remains;
+ return surf_workstation_model->get_remains(task->surf_action);
else
return task->remains;
}
task->surf_action = NULL;
if ((task->workstation_nb == 1) && (task->communication_amount[0] == 0.0)) {
task->surf_action =
- surf_workstation_model->extension.workstation.
- execute(surf_workstations[0], task->computation_amount[0]);
+ surf_workstation_model->extension.
+ workstation.execute(surf_workstations[0], task->computation_amount[0]);
} else if ((task->workstation_nb == 1)
&& (task->computation_amount[0] == 0.0)) {
task->surf_action =
- surf_workstation_model->extension.workstation.
- communicate(surf_workstations[0], surf_workstations[0],
- task->communication_amount[0], task->rate);
+ surf_workstation_model->extension.
+ workstation.communicate(surf_workstations[0], surf_workstations[0],
+ task->communication_amount[0], task->rate);
} else if ((task->workstation_nb == 2)
&& (task->computation_amount[0] == 0.0)
&& (task->computation_amount[1] == 0.0)) {
}
if (nb == 1) {
task->surf_action =
- surf_workstation_model->extension.workstation.
- communicate(surf_workstations[0], surf_workstations[1], value,
- task->rate);
+ surf_workstation_model->extension.
+ workstation.communicate(surf_workstations[0], surf_workstations[1],
+ value, task->rate);
}
}
if (!task->surf_action) {
sizeof(double) * task->workstation_nb * task->workstation_nb);
task->surf_action =
- surf_workstation_model->extension.workstation.
- execute_parallel_task(task->workstation_nb, surf_workstations,
- computation_amount, communication_amount,
- task->amount, task->rate);
+ surf_workstation_model->extension.
+ workstation.execute_parallel_task(task->workstation_nb,
+ surf_workstations, computation_amount,
+ communication_amount, task->amount,
+ task->rate);
} else {
xbt_free(surf_workstations);
}
candidates = xbt_new(SD_task_t, 8);
__SD_task_set_state(task, SD_DONE);
- surf_workstation_model->action_free(task->surf_action);
+ surf_workstation_model->action_unref(task->surf_action);
task->surf_action = NULL;
DEBUG0("Looking for candidates");
xbt_free(task->name);
if (task->surf_action != NULL)
- surf_workstation_model->action_free(task->surf_action);
+ surf_workstation_model->action_unref(task->surf_action);
if (task->workstation_list != NULL)
xbt_free(task->workstation_list);