Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'master' of github.com:simgrid/simgrid
[simgrid.git] / src / mc / remote / mc_protocol.h
index 192a78c..bac7981 100644 (file)
@@ -11,6 +11,7 @@
 #include <xbt/base.h>
 
 #include "mc/datatypes.h"
+#include "simgrid/forward.h"
 
 SG_BEGIN_DECL()
 
@@ -41,6 +42,8 @@ typedef enum {
   MC_MESSAGE_ASSERTION_FAILED,
   // MCer request to finish the restoration:
   MC_MESSAGE_RESTORE,
+  MC_MESSAGE_ACTOR_ENABLED,
+  MC_MESSAGE_ACTOR_ENABLED_REPLY
 } e_mc_message_type;
 
 #define MC_MESSAGE_LENGTH 512
@@ -67,6 +70,7 @@ struct s_mc_message_int {
 };
 typedef struct s_mc_message_int mc_message_int_t;
 
+/* Client->Server */
 struct s_mc_message_ignore_heap {
   e_mc_message_type type;
   int block;
@@ -89,6 +93,15 @@ struct s_mc_message_stack_region {
 };
 typedef struct s_mc_message_stack_region s_mc_message_stack_region_t;
 
+struct s_mc_message_register_symbol {
+  e_mc_message_type type;
+  char name[128];
+  int (*callback)(void*);
+  void* data;
+};
+typedef struct s_mc_message_register_symbol s_mc_message_register_symbol_t;
+
+/* Server -> client */
 struct s_mc_message_simcall_handle {
   e_mc_message_type type;
   unsigned long pid;
@@ -96,20 +109,18 @@ struct s_mc_message_simcall_handle {
 };
 typedef struct s_mc_message_simcall_handle s_mc_message_simcall_handle_t;
 
-struct s_mc_register_symbol_message {
-  e_mc_message_type type;
-  char name[128];
-  int (*callback)(void*);
-  void* data;
-};
-typedef struct s_mc_register_symbol_message s_mc_register_symbol_message_t;
-
 struct s_mc_message_restore {
   e_mc_message_type type;
   int index;
 };
 typedef struct s_mc_message_restore s_mc_message_restore_t;
 
+struct s_mc_message_actor_enabled {
+  e_mc_message_type type;
+  aid_t aid; // actor ID
+};
+typedef struct s_mc_message_actor_enabled s_mc_message_actor_enabled_t;
+
 XBT_PRIVATE const char* MC_message_type_name(e_mc_message_type type);
 
 SG_END_DECL()