extern "C" {
XBT_PUBLIC(double) surf_get_clock(void);
}
+/** \ingroup SURF_simulation
+ * \brief List of hosts that have just restarted and whose autorestart process should be restarted.
+ */
+XBT_PUBLIC_DATA(std::vector<sg_host_t>) host_that_restart;
+
extern XBT_PRIVATE double sg_sender_gap;
XBT_PRIVATE void surf_action_lmm_update_index_heap(void *action, int i);
-XBT_PUBLIC_DATA(xbt_dynar_t) all_existing_models;
+/** \ingroup SURF_models
+ * \brief List of initialized models
+ */
+XBT_PUBLIC_DATA(std::vector<surf_model_t>*) all_existing_models;
namespace simgrid {
namespace surf {
typedef boost::intrusive::list<Action, ActionLmmOptions> ActionLmmList;
typedef ActionLmmList* ActionLmmListPtr;
+/********************
+ * Helper functions *
+ ********************/
+
+double shareResourcesMaxMin(ActionList* runningActions, lmm_system_t sys, void (*solve) (lmm_system_t));
+
+
/*********
* Model *
*********/
virtual double next_occuring_event(double now);
virtual double next_occuring_event_lazy(double now);
virtual double next_occuring_event_full(double now);
- double shareResourcesMaxMin(ActionList* running_actions,
- lmm_system_t sys, void (*solve) (lmm_system_t));
/**
* @brief Update action to the current time