Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
fix missing doc for Tasks
[simgrid.git] / include / simgrid / forward.h
index ff408d4..e2a0606 100644 (file)
@@ -105,6 +105,19 @@ XBT_PUBLIC void intrusive_ptr_release(const Semaphore* m);
 XBT_PUBLIC void intrusive_ptr_add_ref(const Semaphore* m);
 
 class Disk;
+
+class Task;
+/** Smart pointer to a simgrid::s4u::Task */
+using TaskPtr = boost::intrusive_ptr<Task>;
+XBT_PUBLIC void intrusive_ptr_release(Task* o);
+XBT_PUBLIC void intrusive_ptr_add_ref(Task* o);
+class ExecTask;
+using ExecTaskPtr = boost::intrusive_ptr<ExecTask>;
+class CommTask;
+using CommTaskPtr = boost::intrusive_ptr<CommTask>;
+class IoTask;
+using IoTaskPtr = boost::intrusive_ptr<IoTask>;
+
 /**
  * @brief Callback to dynamically change the resource's capacity
  *
@@ -131,6 +144,8 @@ using ActorCodeFactory = std::function<ActorCode(std::vector<std::string> args)>
 
 class Simcall;
 class SimcallObserver;
+class MutexObserver;
+class ConditionVariableObserver;
 class ObjectAccessSimcallObserver;
 class ObjectAccessSimcallItem;
 } // namespace actor
@@ -153,6 +168,8 @@ namespace activity {
   using ConditionVariableImplPtr = boost::intrusive_ptr<ConditionVariableImpl>;
   XBT_PUBLIC void intrusive_ptr_add_ref(ConditionVariableImpl* cond);
   XBT_PUBLIC void intrusive_ptr_release(ConditionVariableImpl* cond);
+  class ConditionVariableAcquisitionImpl;
+  using ConditionVariableAcquisitionImplPtr = boost::intrusive_ptr<ConditionVariableAcquisitionImpl>;
 
   class CommImpl;
   using CommImplPtr = boost::intrusive_ptr<CommImpl>;