From ab413d78bd7f3f84d3b12e42a558d362daee3466 Mon Sep 17 00:00:00 2001 From: thiery Date: Wed, 12 Jul 2006 12:22:03 +0000 Subject: [PATCH] Add functions action_get_start_time() and action_get_finish_time() to Surf git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@2540 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- src/include/surf/surf.h | 2 ++ src/surf/cpu.c | 4 ++++ src/surf/network.c | 4 ++++ src/surf/network_dassf.c | 4 ++++ src/surf/surf.c | 8 ++++++++ src/surf/surf_private.h | 2 ++ src/surf/workstation.c | 4 ++++ src/surf/workstation_KCCFLN05.c | 4 ++++ 8 files changed, 32 insertions(+) diff --git a/src/include/surf/surf.h b/src/include/surf/surf.h index 388701189e..52fcccfa7c 100644 --- a/src/include/surf/surf.h +++ b/src/include/surf/surf.h @@ -65,6 +65,8 @@ typedef struct surf_resource_public { const char *(*get_resource_name) (void *resource_id); e_surf_action_state_t(*action_get_state) (surf_action_t action); + double (*action_get_start_time) (surf_action_t action); + double (*action_get_finish_time) (surf_action_t action); void (*action_use) (surf_action_t action); int (*action_free) (surf_action_t action); void (*action_cancel) (surf_action_t action); diff --git a/src/surf/cpu.c b/src/surf/cpu.c index 57ceb535b5..e2fe78e423 100644 --- a/src/surf/cpu.c +++ b/src/surf/cpu.c @@ -360,6 +360,10 @@ static void surf_cpu_resource_init_internal(void) surf_cpu_resource->common_public->get_resource_name = get_resource_name; surf_cpu_resource->common_public->action_get_state = surf_action_get_state; + surf_cpu_resource->common_public->action_get_start_time = + surf_action_get_start_time; + surf_cpu_resource->common_public->action_get_finish_time = + surf_action_get_finish_time; surf_cpu_resource->common_public->action_free = action_free; surf_cpu_resource->common_public->action_use = action_use; surf_cpu_resource->common_public->action_cancel = action_cancel; diff --git a/src/surf/network.c b/src/surf/network.c index 5fa36951cf..f6d18b456e 100644 --- a/src/surf/network.c +++ b/src/surf/network.c @@ -567,6 +567,10 @@ static void surf_network_resource_init_internal(void) get_resource_name; surf_network_resource->common_public->action_get_state = surf_action_get_state; + surf_network_resource->common_public->action_get_start_time = + surf_action_get_start_time; + surf_network_resource->common_public->action_get_finish_time = + surf_action_get_finish_time; surf_network_resource->common_public->action_free = action_free; surf_network_resource->common_public->action_use = action_use; surf_network_resource->common_public->action_cancel = action_cancel; diff --git a/src/surf/network_dassf.c b/src/surf/network_dassf.c index 771898e495..8046397365 100644 --- a/src/surf/network_dassf.c +++ b/src/surf/network_dassf.c @@ -512,6 +512,10 @@ static void surf_network_resource_init_internal(void) get_resource_name; surf_network_resource->common_public->action_get_state = surf_action_get_state; + surf_network_resource->common_public->action_get_start_time = + surf_action_get_start_time; + surf_network_resource->common_public->action_get_finish_time = + surf_action_get_finish_time; surf_network_resource->common_public->action_free = action_free; surf_network_resource->common_public->action_cancel = action_cancel; surf_network_resource->common_public->action_recycle = action_recycle; diff --git a/src/surf/surf.c b/src/surf/surf.c index d200a79691..45b1ab4d85 100644 --- a/src/surf/surf.c +++ b/src/surf/surf.c @@ -97,6 +97,14 @@ e_surf_action_state_t surf_action_get_state(surf_action_t action) return SURF_ACTION_NOT_IN_THE_SYSTEM; } +double surf_action_get_start_time(surf_action_t action) { + return action->start; +} + +double surf_action_get_finish_time(surf_action_t action) { + return action->finish; +} + void surf_action_free(surf_action_t * action) { (*action)->resource_type->common_public->action_cancel(*action); diff --git a/src/surf/surf_private.h b/src/surf/surf_private.h index 270b889229..d53793bdd6 100644 --- a/src/surf/surf_private.h +++ b/src/surf/surf_private.h @@ -52,6 +52,8 @@ double generic_maxmin_share_resources2(xbt_swag_t running_actions, /* Generic functions common to all ressources */ e_surf_action_state_t surf_action_get_state(surf_action_t action); +double surf_action_get_start_time(surf_action_t action); +double surf_action_get_finish_time(surf_action_t action); void surf_action_free(surf_action_t * action); void surf_action_change_state(surf_action_t action, e_surf_action_state_t state); diff --git a/src/surf/workstation.c b/src/surf/workstation.c index 5d6120c3f0..b07098096a 100644 --- a/src/surf/workstation.c +++ b/src/surf/workstation.c @@ -458,6 +458,10 @@ static void surf_workstation_resource_init_internal(void) get_resource_name; surf_workstation_resource->common_public->action_get_state = surf_action_get_state; + surf_workstation_resource->common_public->action_get_start_time = + surf_action_get_start_time; + surf_workstation_resource->common_public->action_get_finish_time = + surf_action_get_finish_time; surf_workstation_resource->common_public->action_free = action_free; surf_workstation_resource->common_public->action_use = action_use; surf_workstation_resource->common_public->action_cancel = action_cancel; diff --git a/src/surf/workstation_KCCFLN05.c b/src/surf/workstation_KCCFLN05.c index d3d78ce8d5..5f7c3f9e54 100644 --- a/src/surf/workstation_KCCFLN05.c +++ b/src/surf/workstation_KCCFLN05.c @@ -911,6 +911,10 @@ static void resource_init_internal(void) surf_workstation_resource->common_public->name_service = name_service; surf_workstation_resource->common_public->get_resource_name = get_resource_name; surf_workstation_resource->common_public->action_get_state = surf_action_get_state; + surf_workstation_resource->common_public->action_get_start_time = + surf_action_get_start_time; + surf_workstation_resource->common_public->action_get_finish_time = + surf_action_get_finish_time; surf_workstation_resource->common_public->action_use = action_use; surf_workstation_resource->common_public->action_free = action_free; surf_workstation_resource->common_public->action_cancel = action_cancel; -- 2.20.1