Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use priorities...
[simgrid.git] / src / surf / surf_private.h
index a6b4796..f75a7f6 100644 (file)
@@ -29,37 +29,41 @@ typedef enum {
   SURF_NETWORK_LINK_FATPIPE = 0
 } e_surf_network_link_sharing_policy_t;
 
-typedef struct surf_resource_private {
-  int (*resource_used) (void *resource_id);
-  /* Share the resources to the actions and return in hom much time
+typedef struct surf_model_private {
+  int (*model_used) (void *model_id);
+  /* Share the models to the actions and return in hom much time
      the next action may terminate */
-  double (*share_resources) (double now);
+  double (*share_models) (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_model_state) (void *id, tmgr_trace_event_t event_type,
                                 double value);
   void (*finalize) (void);
-} s_surf_resource_private_t;
+} s_surf_model_private_t;
 
-/* #define pub2priv(r) ((surf_resource_private_t) ((char *)(r) -(sizeof(struct surf_resource_private_part)))) */
-/* #define priv2pub(r) ((void *) ((char *)(r) +(sizeof(struct surf_resource_private_part)))) */
+/* #define pub2priv(r) ((surf_model_private_t) ((char *)(r) -(sizeof(struct surf_model_private_part)))) */
+/* #define priv2pub(r) ((void *) ((char *)(r) +(sizeof(struct surf_model_private_part)))) */
 
-XBT_PUBLIC(double) generic_maxmin_share_resources(xbt_swag_t running_actions,
+extern int use_sdp_solver;
+extern int use_lagrange_solver;
+
+double generic_maxmin_share_models(xbt_swag_t running_actions,
                                      size_t offset);
-XBT_PUBLIC(double) generic_maxmin_share_resources2(xbt_swag_t running_actions,
+double generic_maxmin_share_models2(xbt_swag_t running_actions,
                                       size_t offset,
-                                      lmm_system_t sys);
+                                      lmm_system_t sys,
+                                      void (*solve)(lmm_system_t));
 
 /* Generic functions common to all ressources */
-XBT_PUBLIC(e_surf_action_state_t) surf_action_get_state(surf_action_t action);
-XBT_PUBLIC(double) surf_action_get_start_time(surf_action_t action);
-XBT_PUBLIC(double) surf_action_get_finish_time(surf_action_t action);
-XBT_PUBLIC(void) surf_action_free(surf_action_t * action);
-XBT_PUBLIC(void) surf_action_change_state(surf_action_t action,
+e_surf_action_state_t surf_action_get_state(surf_action_t action);
+double surf_action_get_start_time(surf_action_t action);
+double surf_action_get_finish_time(surf_action_t action);
+void surf_action_free(surf_action_t * action);
+void surf_action_change_state(surf_action_t action,
                              e_surf_action_state_t state);
-XBT_PUBLIC(void) surf_action_set_data(surf_action_t action,
+void surf_action_set_data(surf_action_t action,
                          void *data);
-XBT_PUBLIC(FILE *) surf_fopen(const char *name, const char *mode);
+FILE * surf_fopen(const char *name, const char *mode);
 
 extern lmm_system_t maxmin_system;
 extern tmgr_history_t history;