Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
sonar don't want half-initialized enums
[simgrid.git] / include / simgrid / s4u / Activity.hpp
index 0b8d303..e4ace91 100644 (file)
@@ -15,9 +15,7 @@
 #include <simgrid/s4u/forward.hpp>
 #include <simgrid/forward.h>
 
-typedef enum {
-  inited, started, finished
-} e_s4u_activity_state_t;
+typedef enum { inited = 0, started, canceled, errored, finished } e_s4u_activity_state_t;
 
 namespace simgrid {
 namespace s4u {
@@ -28,6 +26,9 @@ namespace s4u {
  */
 XBT_PUBLIC_CLASS Activity {
   friend Comm;
+  friend void intrusive_ptr_release(Comm * c);
+  friend void intrusive_ptr_add_ref(Comm * c);
+
 protected:
   Activity();
   virtual ~Activity();
@@ -66,7 +67,7 @@ public:
   void *getUserData() { return userData_; }
 
 private:
-  simgrid::simix::Synchro *pimpl_ = nullptr;
+  simgrid::kernel::activity::ActivityImpl *pimpl_ = nullptr;
   e_s4u_activity_state_t state_ = inited;
   double remains_ = 0;
   void *userData_ = nullptr;