Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Make s_smx_process_t a C++ class (constructor, new, delete)
[simgrid.git] / include / simgrid / simix.h
index 77aeb08..8f31a42 100644 (file)
 
 namespace simgrid {
 namespace simix {
+
+  /** @brief Process datatype
+      @ingroup simix_process_management
+
+      A process may be defined as a <em>code</em>, with some <em>private
+      data</em>, executing in a <em>location</em>.
+      \see m_process_management
+    @{ */
+  class Process;
   class Context;
   class ContextFactory;
+
 }
 }
 
 typedef simgrid::simix::Context *smx_context_t;
+typedef simgrid::simix::Process *smx_process_t;
 
 #else
 
 typedef struct s_smx_context *smx_context_t;
+typedef struct s_smx_process *smx_process_t;
 
 #endif
 
@@ -92,14 +104,7 @@ typedef xbt_dictelm_t smx_storage_t;
 typedef struct s_smx_storage_priv *smx_storage_priv_t;
 
 /* ****************************** Process *********************************** */
-/** @brief Process datatype
-    @ingroup simix_process_management
 
-    A process may be defined as a <em>code</em>, with some <em>private
-    data</em>, executing in a <em>location</em>.
-    \see m_process_management
-  @{ */
-typedef struct s_smx_process *smx_process_t;
 typedef enum {
   SMX_EXIT_SUCCESS = 0,
   SMX_EXIT_FAILURE = 1
@@ -278,7 +283,6 @@ XBT_PUBLIC(smx_synchro_t) simcall_execution_parallel_start(const char *name,
                                                      double *bytes_amount,
                                                      double amount,
                                                      double rate);
-XBT_PUBLIC(void) simcall_execution_destroy(smx_synchro_t execution);
 XBT_PUBLIC(void) simcall_execution_cancel(smx_synchro_t execution);
 XBT_PUBLIC(void) simcall_execution_set_priority(smx_synchro_t execution, double priority);
 XBT_PUBLIC(void) simcall_execution_set_bound(smx_synchro_t execution, double bound);