#ifndef GRAS_VIRTU_INTERFACE_H
#define GRAS_VIRTU_INTERFACE_H
+#include "xbt/sysdep.h"
+#include "xbt/log.h"
+#include "xbt/error.h"
+#include "xbt/dynar.h"
+#include "gras/virtu.h"
+#include "gras/process.h"
+
/**
* gras_process_data_t:
*
/* registered callbacks for each message */
gras_dynar_t *cbl_list; /* elm type: gras_cblist_t */
-
- /* The channel we are listening to in SG for formated messages */
- int chan;
- gras_socket_t *sock; /* the corresponding socket (SG only) */
-
- /* The channel we are listening to in SG for raw send/recv */
- int rawChan;
- gras_socket_t *rawSock;/* the corresponding socket (SG only) */
+ /* SG only elements. In RL, they are part of the OS ;) */
+ int chan; /* Formated messages channel */
+ int rawChan; /* Unformated echange channel */
+ gras_dynar_t *sockets; /* all sockets known to this process */
/* globals of the process */
void *userdata;
} gras_procdata_t;
+/* Access */
+gras_dynar_t * gras_socketset_get(void);
+
/* FIXME: mv to _private? */
gras_procdata_t *gras_procdata_get(void);
-gras_error_t gras_procdata_init(void);
+void gras_procdata_init(void);
+void gras_procdata_exit(void);
#endif /* GRAS_VIRTU_INTERFACE_H */