5 #include <simdag/simdag.h>
6 #include "xbt/sysdep.h"
10 static void SD_task_free(SD_task_t tk); // needed by ruby while wrapping
13 static void rb_SD_task_destory(VALUE Class,VALUE task);
16 static VALUE rb_SD_task_new(VALUE Class, VALUE name,VALUE amount); //data set to NULL
19 static VALUE rb_SD_task_name(VALUE Class,VALUE task);
22 static void rb_SD_task_schedule(VALUE Class,VALUE task,VALUE workstation_nb,VALUE workstation_list,VALUE comp_amount,VALUE comm_amount,VALUE rate);
25 static void rb_SD_task_unschedule(VALUE Class,VALUE task);
27 // task dependency Add ( name & data set to NULL)
28 static void rb_SD_task_add_dependency(VALUE Class,VALUE task_src,VALUE task_dst);
30 // task execution time
31 static VALUE rb_SD_task_execution_time(VALUE Class,VALUE task,VALUE workstation_nb,VALUE workstation_list,VALUE comp_amount,VALUE comm_amount,VALUE rate);
34 static VALUE rb_SD_task_start_time(VALUE Class,VALUE task);
37 static VALUE rb_SD_task_finish_time(VALUE Class,VALUE task);
40 static VALUE rb_SD_simulate(VALUE Class,VALUE how_long);