git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@697
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
double start; /* start time */
double finish; /* finish time : this is modified during the run
* and fluctuates until the task is completed */
double start; /* start time */
double finish; /* finish time : this is modified during the run
* and fluctuates until the task is completed */
- void *callback; /* for your convenience */
+ void *data; /* for your convenience */
surf_resource_t resource_type;
} s_surf_action_t;
surf_resource_t resource_type;
} s_surf_action_t;
void (*action_recycle) (surf_action_t action);
void (*action_change_state) (surf_action_t action,
e_surf_action_state_t state);
void (*action_recycle) (surf_action_t action);
void (*action_change_state) (surf_action_t action,
e_surf_action_state_t state);
+ void (*action_set_data) (surf_action_t action,
+ void *data);
const char *name;
} s_surf_resource_public_t, *surf_resource_public_t;
const char *name;
} s_surf_resource_public_t, *surf_resource_public_t;
action->generic_action.max_duration = NO_MAX_DURATION;
action->generic_action.start = surf_get_clock();
action->generic_action.finish = -1.0;
action->generic_action.max_duration = NO_MAX_DURATION;
action->generic_action.start = surf_get_clock();
action->generic_action.finish = -1.0;
-/* action->generic_action.callback = cpu; */
- action->generic_action.callback = NULL;
action->generic_action.resource_type =
(surf_resource_t) surf_cpu_resource;
action->generic_action.resource_type =
(surf_resource_t) surf_cpu_resource;
surf_cpu_resource->common_public->action_recycle = action_recycle;
surf_cpu_resource->common_public->action_change_state =
action_change_state;
surf_cpu_resource->common_public->action_recycle = action_recycle;
surf_cpu_resource->common_public->action_change_state =
action_change_state;
+ surf_cpu_resource->common_public->action_set_data = surf_action_set_data;
surf_cpu_resource->common_public->name = "CPU";
surf_cpu_resource->common_private->resource_used = resource_used;
surf_cpu_resource->common_public->name = "CPU";
surf_cpu_resource->common_private->resource_used = resource_used;
action->generic_action.max_duration = NO_MAX_DURATION;
action->generic_action.start = -1.0;
action->generic_action.finish = -1.0;
action->generic_action.max_duration = NO_MAX_DURATION;
action->generic_action.start = -1.0;
action->generic_action.finish = -1.0;
- action->generic_action.callback = NULL;
action->generic_action.resource_type =
(surf_resource_t) surf_network_resource;
action->generic_action.resource_type =
(surf_resource_t) surf_network_resource;
surf_network_resource->common_public->action_recycle = action_recycle;
surf_network_resource->common_public->action_change_state =
action_change_state;
surf_network_resource->common_public->action_recycle = action_recycle;
surf_network_resource->common_public->action_change_state =
action_change_state;
+ surf_network_resource->common_public->action_set_data = surf_action_set_data;
surf_network_resource->common_public->name = "network";
surf_network_resource->common_private->resource_used = resource_used;
surf_network_resource->common_public->name = "network";
surf_network_resource->common_private->resource_used = resource_used;
xbt_swag_insert(action, action->state_set);
}
xbt_swag_insert(action, action->state_set);
}
+void surf_action_set_data(surf_action_t action,
+ void *data)
+{
+ action->data=data;
+}
+
void surf_init(int *argc, char **argv)
{
xbt_init(argc, argv);
void surf_init(int *argc, char **argv)
{
xbt_init(argc, argv);
void surf_action_free(surf_action_t * action);
void surf_action_change_state(surf_action_t action,
e_surf_action_state_t state);
void surf_action_free(surf_action_t * action);
void surf_action_change_state(surf_action_t action,
e_surf_action_state_t state);
+void surf_action_set_data(surf_action_t action,
+ void *data);
extern lmm_system_t maxmin_system;
extern tmgr_history_t history;
extern lmm_system_t maxmin_system;
extern tmgr_history_t history;
action_recycle;
surf_workstation_resource->common_public->action_change_state =
action_change_state;
action_recycle;
surf_workstation_resource->common_public->action_change_state =
action_change_state;
+ surf_workstation_resource->common_public->action_set_data = surf_action_set_data;
surf_workstation_resource->common_public->name = "Workstation";
surf_workstation_resource->common_private->resource_used = resource_used;
surf_workstation_resource->common_public->name = "Workstation";
surf_workstation_resource->common_private->resource_used = resource_used;