From 0eb7621025a933db4ac7fbbec8e4646dd8bc279e Mon Sep 17 00:00:00 2001 From: alegrand Date: Wed, 26 Sep 2007 21:48:00 +0000 Subject: [PATCH 1/1] Adding the prototype for the callback on startup mechanism. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4758 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- src/include/surf/surf.h | 2 ++ src/surf/cpu.c | 14 +++++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/src/include/surf/surf.h b/src/include/surf/surf.h index d81c773ec4..eace0c2711 100644 --- a/src/include/surf/surf.h +++ b/src/include/surf/surf.h @@ -140,6 +140,8 @@ typedef struct surf_model_public { int (*is_suspended) (surf_action_t action); /**< Return whether an action is suspended */ void (*set_max_duration) (surf_action_t action, double duration); /**< Set the max duration of an action*/ void (*set_priority) (surf_action_t action, double priority); /**< Set the priority of an action */ + void (*set_callback) (void *resource, void value, void *function, void *arg); + int (*get_callback) (void **resource, void *value, void **function, void **arg); const char *name; /**< Name of this model */ } s_surf_model_public_t, *surf_model_public_t; diff --git a/src/surf/cpu.c b/src/surf/cpu.c index 8abcbcb3e8..dcb1507124 100644 --- a/src/surf/cpu.c +++ b/src/surf/cpu.c @@ -318,6 +318,16 @@ static void action_set_priority(surf_action_t action, double priority) XBT_OUT; } + +static void (*set_callback) (void *resource, void value, void *function, void *arg) +{ +} + +static int (*get_callback) (void **resource, void *value, void **function, void **arg) +{ + return 0; +} + static e_surf_cpu_state_t get_state(void *cpu) { return ((cpu_Cas01_t) cpu)->state_current; @@ -404,9 +414,11 @@ static void surf_cpu_model_init_internal(void) surf_cpu_model->common_public->set_max_duration = action_set_max_duration; surf_cpu_model->common_public->set_priority = action_set_priority; + surf_cpu_model->common_public->set_callback = set_callback; + surf_cpu_model->common_public->get_callback = get_callback; + surf_cpu_model->extension_public->execute = execute; surf_cpu_model->extension_public->sleep = action_sleep; - surf_cpu_model->extension_public->get_state = get_state; surf_cpu_model->extension_public->get_speed = get_speed; surf_cpu_model->extension_public->get_available_speed = -- 2.20.1