X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/792ee50ee3c72fbd12a6693dda4b5792844b50ab..65ed12738b3113afdcb29e4c5fd177cbae2ac856:/src/surf/surf_private.h diff --git a/src/surf/surf_private.h b/src/surf/surf_private.h index 54156f3126..1c1ad35625 100644 --- a/src/surf/surf_private.h +++ b/src/surf/surf_private.h @@ -16,8 +16,18 @@ #include "surf/random_mgr.h" #define NO_MAX_DURATION -1.0 + +/* user-visible parameters */ extern double sg_tcp_gamma; +extern double sg_latency_factor; +extern double sg_bandwidth_factor; +extern double sg_weight_S_parameter; extern int sg_maxmin_selective_update; +#ifdef HAVE_GTNETS + extern double sg_gtnets_jitter; + extern int sg_gtnets_jitter_seed; +#endif + extern const char *surf_action_state_names[6]; @@ -44,13 +54,13 @@ double generic_maxmin_share_resources(xbt_swag_t running_actions, void (*solve) (lmm_system_t)); /* Generic functions common to all models */ -e_surf_action_state_t surf_action_state_get(surf_action_t action); -double surf_action_get_start_time(surf_action_t action); -double surf_action_get_finish_time(surf_action_t action); +e_surf_action_state_t surf_action_state_get(surf_action_t action); /* cannot declare inline since we use a pointer to it */ +double surf_action_get_start_time(surf_action_t action); /* cannot declare inline since we use a pointer to it */ +double surf_action_get_finish_time(surf_action_t action); /* cannot declare inline since we use a pointer to it */ void surf_action_free(surf_action_t * action); void surf_action_state_set(surf_action_t action, e_surf_action_state_t state); -void surf_action_data_set(surf_action_t action, void *data); +void surf_action_data_set(surf_action_t action, void *data); /* cannot declare inline since we use a pointer to it */ FILE *surf_fopen(const char *name, const char *mode); extern tmgr_history_t history; @@ -75,14 +85,25 @@ const char *__surf_get_initial_path(void); */ int __surf_is_absolute_file_path(const char *file_path); +/* + * One link routing list + */ +typedef struct { + int src_id; + int dst_id; + void *link_ptr; +}s_onelink, *s_onelink_t; + + /* * Routing logic */ struct s_routing { const char *name; xbt_dict_t host_id; /* char* -> int* */ - xbt_dynar_t (*get_route)(int src, int dst); + xbt_dict_t (*get_onelink_routes)(void); + int (*is_router)(int id); void (*finalize)(void); int host_count; int router_count;