Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
On the fly parsing of the actions file. One idle process can still force the whole...
[simgrid.git] / src / msg / private.h
index 0760077..2ac7229 100644 (file)
@@ -10,7 +10,6 @@
 #ifndef METASIMGRID_PRIVATE_H
 #define METASIMGRID_PRIVATE_H
 
-#include <stdio.h>
 #include "msg/msg.h"
 #include "simix/simix.h"
 #include "surf/surf.h"
@@ -18,7 +17,6 @@
 #include "xbt/dynar.h"
 #include "xbt/swag.h"
 #include "xbt/dict.h"
-#include "xbt/context.h"
 #include "xbt/config.h"
 
 SG_BEGIN_DECL()
@@ -26,10 +24,9 @@ SG_BEGIN_DECL()
 /**************** datatypes **********************************/
 /* this structure represents a mailbox */
      typedef struct s_msg_mailbox {
-       char *alias;             /* the key of the mailbox in the global dictionary                      */
-       xbt_fifo_t tasks;        /* the list of the tasks in the mailbox                                         */
-       smx_cond_t cond;         /* the condition on the mailbox                                                         */
-       char *hostname;          /* the name of the host containing the mailbox                          */
+       char *alias;             /* the key of the mailbox in the global dictionary */
+       smx_cond_t cond;         /* the condition on the mailbox */
+       smx_rdv_t rdv;           /* SIMIX rendez-vous point */
      } s_msg_mailbox_t;
 
      typedef struct simdata_host {
@@ -42,7 +39,7 @@ SG_BEGIN_DECL()
 
      typedef struct simdata_task {
        smx_action_t compute;    /* SURF modeling of computation  */
-       smx_action_t comm;       /* SURF modeling of communication  */
+       smx_comm_t comm;         /* SIMIX communication  */
        double message_size;     /* Data size  */
        double computation_amount;       /* Computation size  */
        smx_cond_t cond;
@@ -69,6 +66,7 @@ SG_BEGIN_DECL()
        int PPID;                /* The parent PID */
        m_host_t put_host;       /* used for debugging purposes */
        m_channel_t put_channel; /* used for debugging purposes */
+       smx_action_t waiting_action;
        m_task_t waiting_task;
        int argc;                /* arguments number if any */
        char **argv;             /* arguments table if any */
@@ -123,6 +121,7 @@ XBT_PUBLIC_DATA(MSG_Global_t) msg_global;
      void _MSG_process_kill_from_SIMIX(void *p);
 
      void _MSG_action_init(void);
+     void _MSG_action_exit(void);
 
 SG_END_DECL()
 #endif