Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Fix function get_route
[simgrid.git] / src / include / surf / surf.h
index 92e295b..893a87e 100644 (file)
@@ -114,6 +114,7 @@ typedef struct surf_cpu_resource_extension_public {
   surf_action_t(*sleep) (void *cpu, double duration);
   e_surf_cpu_state_t(*get_state) (void *cpu);
   double (*get_speed) (void *cpu, double load);
+  double (*get_available_speed) (void *cpu);
 } s_surf_cpu_resource_extension_public_t,
     *surf_cpu_resource_extension_public_t;
 
@@ -129,6 +130,7 @@ void surf_cpu_resource_init_Cas01(const char *filename);
 typedef struct surf_network_resource_extension_public {
   surf_action_t(*communicate) (void *src, void *dst, double size,
                               double max_rate);
+  const void** (*get_route) (void *src, void *dst);
 } s_surf_network_resource_extension_public_t,
     *surf_network_resource_extension_public_t;
 
@@ -140,6 +142,7 @@ typedef struct surf_network_resource {
 
 extern surf_network_resource_t surf_network_resource;
 void surf_network_resource_init_CM02(const char *filename);
+extern xbt_dict_t network_link_set;
 
 /* Workstation resource */
 typedef struct surf_workstation_resource_extension_public {
@@ -147,6 +150,7 @@ typedef struct surf_workstation_resource_extension_public {
   surf_action_t(*sleep) (void *workstation, double duration);
   e_surf_cpu_state_t(*get_state) (void *workstation);
   double (*get_speed) (void *workstation, double load);
+  double (*get_available_speed) (void *workstation);
   surf_action_t(*communicate) (void *workstation_src,
                               void *workstation_dst, double size,
                               double max_rate);
@@ -156,6 +160,7 @@ typedef struct surf_workstation_resource_extension_public {
                                         double *communication_amount,
                                         double amount,
                                         double rate);
+  const void** (*get_route) (void *src, void *dst);
 } s_surf_workstation_resource_extension_public_t,
     *surf_workstation_resource_extension_public_t;