Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Re-implement the tab.
[simgrid.git] / include / gras / module.h
1 /* Copyright (c) 2004, 2006, 2007, 2009, 2010. The SimGrid Team.
2  * All rights reserved.                                                     */
3
4 /* This program is free software; you can redistribute it and/or modify it
5  * under the terms of the license (GNU LGPL) which comes with this package. */
6
7
8 #ifndef GRAS_MODULE_H
9 #define GRAS_MODULE_H
10
11 #include <xbt.h>
12
13 /* Function users of module should use */
14 XBT_PUBLIC(void) gras_module_join(const char *name);
15 XBT_PUBLIC(void) gras_module_leave(const char *name);
16
17
18 /* Functions module implementor should use */
19 XBT_PUBLIC(void) gras_module_add(const char *name, unsigned int data_size,
20                                  int *ID, void_f_void_t init_f,
21                                  void_f_void_t exit_f,
22                                  void_f_pvoid_t join_f,
23                                  void_f_pvoid_t leave_f);
24
25
26 XBT_PUBLIC(void *) gras_moddata_by_id(unsigned int ID);
27
28
29 #endif                          /* GRAS_MODULE_H */