X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/17a9f17337b1d6743025cf52e7c19a469138d38f..db82f9e75280108116a8e70d2e7a163080020d29:/src/surf/surf_private.h diff --git a/src/surf/surf_private.h b/src/surf/surf_private.h index 568ded5760..2fb09bf4cd 100644 --- a/src/surf/surf_private.h +++ b/src/surf/surf_private.h @@ -31,12 +31,12 @@ typedef struct surf_model_private { int (*resource_used) (void *resource_id); /* Share the resources to the actions and return in how much time the next action may terminate */ - double (*share_resources) (double now); + double (*share_resources) (surf_model_t model, double now); /* Update the actions' state */ - void (*update_actions_state) (double now, double delta); - void (*update_resource_state) (void *id, tmgr_trace_event_t event_type, + void (*update_actions_state) (surf_model_t model, double now, double delta); + void (*update_resource_state) (void *resource, tmgr_trace_event_t event_type, double value, double time); - void (*finalize) (void); + void (*finalize) (surf_model_t model); lmm_system_t maxmin_system; e_UM_t update_mechanism; @@ -75,6 +75,7 @@ void surf_action_resume(surf_action_t action); int surf_action_is_suspended(surf_action_t action); void surf_action_set_max_duration(surf_action_t action, double duration); void surf_action_set_priority(surf_action_t action, double priority); +void surf_action_set_bound(surf_action_t action, double bound); #ifdef HAVE_TRACING void surf_action_set_category(surf_action_t action, const char *category); @@ -93,7 +94,6 @@ extern tmgr_history_t history; //void surf_config(const char *name, va_list pa); void net_action_recycle(surf_action_t action); -double net_action_get_remains(surf_action_t action); #ifdef HAVE_LATENCY_BOUND_TRACKING int net_get_link_latency_limited(surf_action_t action); #endif @@ -104,7 +104,6 @@ int net_get_link_latency_limited(surf_action_t action); */ int __surf_is_absolute_file_path(const char *file_path); -typedef struct s_as *AS_t; typedef struct s_routing_edge { AS_t rc_component; e_surf_network_element_type_t rc_type; @@ -153,6 +152,7 @@ typedef struct s_as { void (*get_route_and_latency) (AS_t as, sg_routing_edge_t src, sg_routing_edge_t dst, sg_platf_route_cbarg_t into, double *latency); xbt_dynar_t(*get_onelink_routes) (AS_t as); + void (*get_graph) (xbt_graph_t graph, xbt_dict_t nodes, xbt_dict_t edges, AS_t rc); sg_platf_route_cbarg_t(*get_bypass_route) (AS_t as, sg_routing_edge_t src, sg_routing_edge_t dst, double *lat); void (*finalize) (AS_t as); @@ -192,6 +192,7 @@ XBT_PUBLIC(void) generic_free_route(sg_platf_route_cbarg_t route); // FIXME rena XBT_PUBLIC(void) routing_get_route_and_latency(sg_routing_edge_t src, sg_routing_edge_t dst, xbt_dynar_t * route, double *latency); +XBT_PUBLIC(void) generic_get_graph(xbt_graph_t graph, xbt_dict_t nodes, xbt_dict_t edges, AS_t rc); /** * Resource protected methods */ @@ -200,4 +201,10 @@ XBT_PUBLIC(void) surfxml_bufferstack_pop(int new); XBT_PUBLIC_DATA(int) surfxml_bufferstack_size; +/********** Tracing **********/ +/* from surf_instr.c */ +void TRACE_surf_host_set_power(double date, const char *resource, double power); +void TRACE_surf_link_set_bandwidth(double date, const char *resource, double bandwidth); + + #endif /* _SURF_SURF_PRIVATE_H */