Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Remove unused default constructors.
[simgrid.git] / src / surf / surf_interface.hpp
index 6be1e2c..36b1977 100644 (file)
@@ -390,12 +390,14 @@ void surf_action_lmm_update_index_heap(void *action, int i);
  * @details An action is an event generated by a resource (e.g.: a communication for the network)
  */
 class Action : public actionHook, public actionLmmHook {
-public:
+private:
   /**
-   * @brief Action constructor
+   * @brief Common initializations for the constructors
    */
-  Action();
+  void initialize(ModelPtr model, double cost, bool failed,
+                  lmm_variable_t var = NULL);
 
+public:
   /**
    * @brief Action constructor
    * 
@@ -514,14 +516,14 @@ public:
    * 
    * @param delta [TODO]
    */
-  void updateMaxDuration(double delta) {double_update(&m_maxDuration, delta);}
+  void updateMaxDuration(double delta) {double_update(&m_maxDuration, delta,sg_surf_precision);}
 
   /**
    * @brief Update the remaining time of the current action
    * 
    * @param delta [TODO]
    */
-  void updateRemains(double delta) {double_update(&m_remains, delta);}
+  void updateRemains(double delta) {double_update(&m_remains, delta, sg_maxmin_precision*sg_surf_precision);}
 
   /**
    * @brief Set the remaining time of the current action
@@ -631,6 +633,8 @@ public:
 
   s_xbt_swag_hookup_t p_stateHookup;
 
+  ModelPtr getModel() {return p_model;}
+
 protected:
   ActionListPtr p_stateSet;
   double m_priority; /**< priority (1.0 by default) */
@@ -639,8 +643,6 @@ protected:
   double m_maxDuration; /*< max_duration (may fluctuate until the task is completed) */
   double m_finish; /**< finish time : this is modified during the run and fluctuates until the task is completed */
 
-  ModelPtr getModel() {return p_model;}
-
 private:
   int resourceUsed(void *resource_id);