X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ca9c986801463f350a0564a786d3334eb3a2c45a..a4f850af455f783fefb0a719eef15d4d9dba2852:/include/simgrid/s4u/Activity.hpp diff --git a/include/simgrid/s4u/Activity.hpp b/include/simgrid/s4u/Activity.hpp index 67fcbd52d8..bdd1183e84 100644 --- a/include/simgrid/s4u/Activity.hpp +++ b/include/simgrid/s4u/Activity.hpp @@ -9,7 +9,7 @@ #include #include -typedef enum { inited = 0, started, canceled, errored, finished } e_s4u_activity_state_t; +enum e_s4u_activity_state_t { inited = 0, started, canceled, errored, finished }; namespace simgrid { namespace s4u { @@ -20,8 +20,11 @@ namespace s4u { */ XBT_PUBLIC_CLASS Activity { friend Comm; - friend void intrusive_ptr_release(Comm * c); - friend void intrusive_ptr_add_ref(Comm * c); + friend XBT_PUBLIC(void) intrusive_ptr_release(Comm * c); + friend XBT_PUBLIC(void) intrusive_ptr_add_ref(Comm * c); + friend Exec; + friend XBT_PUBLIC(void) intrusive_ptr_release(Exec * e); + friend XBT_PUBLIC(void) intrusive_ptr_add_ref(Exec * e); protected: Activity() = default; @@ -49,11 +52,11 @@ public: e_s4u_activity_state_t getState() {return state_;} /** Get the remaining amount of work that this Activity entails. When it's 0, it's done. */ - size_t getRemains(); + virtual double getRemains(); /** Set the [remaining] amount of work that this Activity will entail * * It is forbidden to change the amount of work once the Activity is started */ - void setRemains(size_t remains); + void setRemains(double remains); /** Put some user data onto the Activity */ void setUserData(void *data) {userData_=data;} @@ -63,7 +66,7 @@ public: private: simgrid::kernel::activity::ActivityImplPtr pimpl_ = nullptr; e_s4u_activity_state_t state_ = inited; - size_t remains_ = 0; + double remains_ = 0; void *userData_ = nullptr; }; // class