Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
4faceadd8b47b35249c8f1452ff2c862f0d0197d
[simgrid.git] / src / gras / Msg / msg_interface.h
1 /* $Id$ */
2
3 /* messaging - high level communication (send/receive messages)             */
4
5 /* module's public interface exported within GRAS, but not to end user.     */
6
7 /* Authors: Martin Quinson                                                  */
8 /* Copyright (C) 2003, 2004 Martin Quinson.                                 */
9
10 /* This program is free software; you can redistribute it and/or modify it
11    under the terms of the license (GNU LGPL) which comes with this package. */
12
13 #ifndef GRAS_MSG_INTERFACE_H
14 #define GRAS_MSG_INTERFACE_H
15
16 void gras_msg_init(void);
17 void gras_msg_exit(void);
18
19
20 /* gras_msg_t is dereferenced to be stored in procdata, living in Virtu */
21 typedef struct {
22   gras_socket_t  *expeditor;
23   gras_msgtype_t *type;
24   void           *payload;
25   int             payload_size;
26 } gras_msg_t;
27
28 gras_error_t gras_msg_send_namev(gras_socket_t *sock, 
29                                  const char    *namev, 
30                                  void          *payload);
31
32 #define GRAS_PROTOCOL_VERSION '\0';
33
34 typedef struct s_gras_cblist gras_cblist_t;
35
36 #endif  /* GRAS_MSG_INTERFACE_H */