Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[s4u] Add a header file with forward declarations
[simgrid.git] / include / simgrid / s4u / async.hpp
index 6d76288..37bd4e1 100644 (file)
@@ -7,28 +7,33 @@
 #ifndef SIMGRID_S4U_ASYNC_HPP
 #define SIMGRID_S4U_ASYNC_HPP
 
-namespace simgrid {
-namespace s4u {
+#include <stdlib.h>
+#include <xbt/base.h>
+#include <xbt/misc.h>
 
-/* Forward declaration */
-class Comm;
+#include <simgrid/s4u/forward.hpp>
 
+SG_BEGIN_DECL();
 typedef enum {
        inited, started, finished
 } e_s4u_async_state_t;
+SG_END_DECL();
+
+namespace simgrid {
+namespace s4u {
 
 /** @brief Asynchronous Actions
  *
  * This class is the ancestor of every asynchronous actions, that is, of actions that do take time in the simulated world.
  */
-class Async {
+XBT_PUBLIC_CLASS Async {
        friend Comm;
 protected:
        Async();
        virtual ~Async();
        
 private:
-       smx_synchro_t p_inferior = NULL;
+       struct s_smx_synchro *p_inferior = NULL;
 
 private:
        e_s4u_async_state_t p_state = inited;