X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/849d25bcc8cbb5365daa9e1c3c71fa20a96ecd59..dae127513a4c52efc8494d26ba2c56c802ba147e:/src/surf/surf_interface.hpp diff --git a/src/surf/surf_interface.hpp b/src/surf/surf_interface.hpp index 2496a4bc81..14c92a03d8 100644 --- a/src/surf/surf_interface.hpp +++ b/src/surf/surf_interface.hpp @@ -10,6 +10,7 @@ #include "src/surf/surf_private.hpp" #include "surf/surf.hpp" +#include "xbt/heap.h" #include "xbt/str.h" #include @@ -248,7 +249,6 @@ public: void setLastValue(double val) { lastValue_ = val; } enum heap_action_type getHat() { return hat_; } bool is_linked() {return action_lmm_hook.is_linked();} - int getIndexHeap() { return indexHeap_; } protected: int suspended_ = 0; }; @@ -301,6 +301,10 @@ public: /** @brief Get Action heap */ xbt_heap_t getActionHeap() {return actionHeap_;} + double actionHeapTopDate() const { return xbt_heap_maxkey(actionHeap_); } + Action* actionHeapPop() { return static_cast(xbt_heap_pop(actionHeap_)); } + bool actionHeapIsEmpty() const { return xbt_heap_size(actionHeap_) == 0; } + /** * @brief Share the resources between the actions * @@ -332,7 +336,6 @@ protected: ActionLmmListPtr modifiedSet_; lmm_system_t maxminSystem_ = nullptr; bool selectiveUpdate_; - xbt_heap_t actionHeap_; private: e_UM_t updateMechanism_ = UM_UNDEFINED; @@ -340,6 +343,7 @@ private: ActionList* runningActionSet_; /**< Actions in state SURF_ACTION_RUNNING */ ActionList* failedActionSet_; /**< Actions in state SURF_ACTION_FAILED */ ActionList* doneActionSet_; /**< Actions in state SURF_ACTION_DONE */ + xbt_heap_t actionHeap_; }; }