Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branches 'master' and 'master' of github.com:simgrid/simgrid
[simgrid.git] / src / smpi / smpi_process.hpp
index e87f741..f532ec7 100644 (file)
@@ -7,11 +7,9 @@
 #ifndef SMPI_PROCESS_HPP
 #define SMPI_PROCESS_HPP
 
-
-#include <xbt/base.h>
 #include "src/instr/instr_smpi.h"
-#include "private.h"
 #include "simgrid/s4u/Mailbox.hpp"
+#include "xbt/synchro.h"
 
 namespace simgrid{
 namespace smpi{
@@ -34,8 +32,8 @@ class Process {
     int sampling_                   = 0; /* inside an SMPI_SAMPLE_ block? */
     char* instance_id_              = nullptr;
     bool replaying_                 = false; /* is the process replaying a trace */
-    msg_bar_t finalization_barrier_ = nullptr;
-    int return_value_               = 0;
+    msg_bar_t finalization_barrier_;
+    int return_value_ = 0;
     smpi_trace_call_location_t trace_call_loc_;
     smx_actor_t process_ = nullptr;
 #if HAVE_PAPI
@@ -44,9 +42,8 @@ class Process {
     papi_counter_t papi_counter_data_;
 #endif
   public:
-    explicit Process(int index);
-    void destroy();
-    void set_data(int* argc, char*** argv);
+    explicit Process(int index, msg_bar_t barrier);
+    void set_data(int index, int* argc, char*** argv);
     void finalize();
     int finalized();
     int initialized();
@@ -62,8 +59,8 @@ class Process {
     smx_mailbox_t mailbox_small();
     xbt_mutex_t mailboxes_mutex();
 #if HAVE_PAPI
-    int papi_event_set(void);
-    papi_counter_t& papi_counters(void);
+    int papi_event_set();
+    papi_counter_t& papi_counters();
 #endif
     xbt_os_timer_t timer();
     void simulated_start();
@@ -74,7 +71,6 @@ class Process {
     void set_sampling(int s);
     int sampling();
     msg_bar_t finalization_barrier();
-    void set_finalization_barrier(msg_bar_t bar);
     int return_value();
     void set_return_value(int val);
     static void init(int *argc, char ***argv);