SG_BEGIN_DECL()
/* Actions and models are highly connected structures... */
+/* user-visible parameters */
+extern double sg_tcp_gamma;
+extern double sg_sender_gap;
+extern double sg_latency_factor;
+extern double sg_bandwidth_factor;
+extern double sg_weight_S_parameter;
+extern int sg_maxmin_selective_update;
+extern int sg_network_crosstraffic;
+#ifdef HAVE_GTNETS
+extern double sg_gtnets_jitter;
+extern int sg_gtnets_jitter_seed;
+#endif
+extern xbt_dynar_t surf_path;
+
+
typedef enum {
SURF_NETWORK_ELEMENT_NULL = 0, /* NULL */
SURF_NETWORK_ELEMENT_HOST, /* host type */
e_surf_resource_state_t(*get_state) (void *cpu);
double (*get_speed) (void *cpu, double load);
double (*get_available_speed) (void *cpu);
- void* (*create_resource) (const char *name, double power_peak,
- double power_scale,
- tmgr_trace_t power_trace,
- int core,
- e_surf_resource_state_t state_initial,
- tmgr_trace_t state_trace,
- xbt_dict_t cpu_properties);
void (*add_traces) (void);
} s_surf_model_extension_cpu_t;
double (*get_link_latency) (const void *link);
int (*link_shared) (const void *link);
void (*add_traces) (void);
- void* (*create_resource) (const char *name,
- double bw_initial,
- tmgr_trace_t bw_trace,
- double lat_initial,
- tmgr_trace_t lat_trace,
- e_surf_resource_state_t
- state_initial,
- tmgr_trace_t state_trace,
- e_surf_link_sharing_policy_t policy,
- xbt_dict_t properties);
} s_surf_model_extension_network_t;
/* Storage model */
surf_action_t(*stat) (void *storage, surf_file_t stream);
surf_action_t(*unlink) (void *storage, surf_file_t stream);
surf_action_t(*ls) (void *storage, const char *path);
- void* (*create_resource) (const char* id, const char* model, const char* type_id, const char *content);
} s_surf_model_extension_storage_t;
/** \ingroup SURF_models
int (*link_shared) (const void *link);
xbt_dict_t(*get_properties) (const void *resource);
- void* (*link_create_resource) (const char *name,
- double bw_initial,
- tmgr_trace_t bw_trace,
- double lat_initial,
- tmgr_trace_t lat_trace,
- e_surf_resource_state_t
- state_initial,
- tmgr_trace_t state_trace,
- e_surf_link_sharing_policy_t
- policy, xbt_dict_t properties);
- void* (*cpu_create_resource) (const char *name, double power_peak,
- double power_scale,
- tmgr_trace_t power_trace,
- e_surf_resource_state_t state_initial,
- tmgr_trace_t state_trace,
- xbt_dict_t cpu_properties);
void (*add_traces) (void);
} s_surf_model_extension_workstation_t;
void surf_watched_hosts(void);
+/*
+ * Returns the initial path. On Windows the initial path is
+ * the current directory for the current process in the other
+ * case the function returns "./" that represents the current
+ * directory on Unix/Linux platforms.
+ */
+const char *__surf_get_initial_path(void);
+
SG_END_DECL()
#endif /* _SURF_SURF_H */