Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Improve comments on examples
[simgrid.git] / src / bindings / rubyDag / rb_SD_task.h
1 /* Copyright (c) 2010. The SimGrid Team.
2  * All rights reserved.                                                     */
3
4 /* This program is free software; you can redistribute it and/or modify it
5   * under the terms of the license (GNU LGPL) which comes with this package. */
6
7 #ifndef RB_SD_TASK_H
8 #define RB_SD_TASK_H
9
10 #include <ruby.h>
11 #include <simdag/simdag.h>
12 #include "xbt/sysdep.h" 
13
14
15 // Free Method
16 static void SD_task_free(SD_task_t tk); // needed by ruby while wrapping
17
18 //destroy
19 static void rb_SD_task_destory(VALUE Class,VALUE task);
20
21 // New Method  
22 static VALUE rb_SD_task_new(VALUE Class, VALUE name,VALUE amount); //data set to NULL
23
24 //Get Name
25 static VALUE rb_SD_task_name(VALUE Class,VALUE task);
26
27 // Schedule Task
28 static void rb_SD_task_schedule(VALUE Class,VALUE task,VALUE workstation_nb,VALUE workstation_list,VALUE comp_amount,VALUE comm_amount,VALUE rate);
29
30 // unschedule Task
31 static void rb_SD_task_unschedule(VALUE Class,VALUE task);
32
33 // task dependency Add ( name & data set to NULL)
34 static void rb_SD_task_add_dependency(VALUE Class,VALUE task_src,VALUE task_dst);
35
36 // task execution time
37 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);
38
39 // task start time
40 static VALUE rb_SD_task_start_time(VALUE Class,VALUE task);
41
42 // task finish time
43 static VALUE rb_SD_task_finish_time(VALUE Class,VALUE task);
44
45 // simulation
46 static VALUE rb_SD_simulate(VALUE Class,VALUE how_long);
47
48 #endif