From: suter Date: Fri, 11 Jun 2010 15:28:48 +0000 (+0000) Subject: Modify the examples and tests to cope with the new return type of X-Git-Tag: v3_5~967 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/0f30f0953fccaf152a09af12d3d9091ab5a687af Modify the examples and tests to cope with the new return type of SD_Simulate git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@7841 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- diff --git a/examples/simdag/sd_seq_access.c b/examples/simdag/sd_seq_access.c index ba45eb44b3..a0eb553e62 100644 --- a/examples/simdag/sd_seq_access.c +++ b/examples/simdag/sd_seq_access.c @@ -20,7 +20,7 @@ int main(int argc, char **argv) const SD_workstation_t *workstations; int kind; SD_task_t task, taskA, taskB, taskC; - SD_task_t *changed_tasks; + xbt_dynar_t changed_tasks; SD_workstation_t workstation_list[2]; double computation_amount[2]; double communication_amount[4] = { 0 }; @@ -86,7 +86,7 @@ int main(int argc, char **argv) &(computation_amount[1]), SD_SCHED_NO_COST, rate); /* let's launch the simulation! */ - while(*(changed_tasks = SD_simulate(-1.0))){ + while(xbt_dynar_length(changed_tasks = SD_simulate(-1.0))>0){ for(i=0;i<2; i++){ task = SD_workstation_get_current_task(workstations[i]); if (task) @@ -116,7 +116,7 @@ int main(int argc, char **argv) ERROR0("Shouldn't be here"); } } - xbt_free(changed_tasks); + xbt_dynar_free_container(&changed_tasks); } DEBUG0("Destroying tasks..."); diff --git a/examples/simdag/sd_test.c b/examples/simdag/sd_test.c index bb25059a95..e5bf6d4b08 100644 --- a/examples/simdag/sd_test.c +++ b/examples/simdag/sd_test.c @@ -26,8 +26,8 @@ int main(int argc, char **argv) double communication_amount21; const SD_link_t *route; int route_size; - SD_task_t task, taskA, taskB, taskC, taskD; - SD_task_t *changed_tasks; + SD_task_t task, taskA, taskB, taskC, taskD, checkB, checkD; + xbt_dynar_t changed_tasks; xbt_ex_t ex; const int workstation_number = 2; SD_workstation_t workstation_list[2]; @@ -36,7 +36,7 @@ int main(int argc, char **argv) double rate = -1.0; SD_workstation_t w1, w2; - /* initialisation of SD */ + /* initialization of SD */ SD_init(&argc, argv); /* xbt_log_control_set("sd.thres=debug"); */ @@ -176,18 +176,20 @@ int main(int argc, char **argv) computation_amount, communication_amount, rate); changed_tasks = SD_simulate(-1.0); - for (i = 0; changed_tasks[i] != NULL; i++) { - INFO3("Task '%s' start time: %f, finish time: %f", - SD_task_get_name(changed_tasks[i]), - SD_task_get_start_time(changed_tasks[i]), - SD_task_get_finish_time(changed_tasks[i])); + xbt_dynar_foreach(changed_tasks, i, task){ + INFO3("Task '%s' start time: %f, finish time: %f", + SD_task_get_name(task), + SD_task_get_start_time(task), + SD_task_get_finish_time(task)); } - xbt_assert0(changed_tasks[0] == taskD && - changed_tasks[1] == taskB && - changed_tasks[2] == NULL, "Unexpected simulation results"); + xbt_dynar_get_cpy(changed_tasks, 0, &checkD); + xbt_dynar_get_cpy(changed_tasks, 1, &checkB); - xbt_free(changed_tasks); + xbt_assert0(checkD == taskD && + checkB == taskB, "Unexpected simulation results"); + + xbt_dynar_free_container(&changed_tasks); DEBUG0("Destroying tasks..."); diff --git a/testsuite/simdag/sd_test.c b/testsuite/simdag/sd_test.c index 44d3680b35..f3453b705d 100644 --- a/testsuite/simdag/sd_test.c +++ b/testsuite/simdag/sd_test.c @@ -30,9 +30,9 @@ int main(int argc, char **argv) const SD_link_t *route; int route_size; SD_task_t taskA; - SD_task_t taskB; - SD_task_t taskC; - SD_task_t taskD; + SD_task_t taskB, checkB; + SD_task_t taskC, checkC; + SD_task_t taskD, checkD; xbt_ex_t ex; /* initialisation of SD */ @@ -142,7 +142,7 @@ int main(int argc, char **argv) 0, communication_amount12, communication_amount21, 0 }; - SD_task_t *changed_tasks; + xbt_dynar_t changed_tasks; double rate = -1.0; /* estimated time */ @@ -164,12 +164,16 @@ int main(int argc, char **argv) computation_amount, communication_amount, rate); changed_tasks = SD_simulate(-1.0); - xbt_assert0(changed_tasks[0] == taskD && - changed_tasks[1] == taskC && - changed_tasks[2] == taskB && - changed_tasks[3] == NULL, "Unexpected simulation results"); - xbt_free(changed_tasks); + xbt_dynar_get_cpy(changed_tasks, 0, &checkD); + xbt_dynar_get_cpy(changed_tasks, 1, &checkC); + xbt_dynar_get_cpy(changed_tasks, 2, &checkB); + + xbt_assert0(checkD == taskD && + checkC == taskC && + checkB == taskB, "Unexpected simulation results"); + + xbt_dynar_free_container(&changed_tasks); } DEBUG0("Destroying tasks...");