-#include <stddef.h> /* offsetof() */
-#include <sys/types.h> /* size_t */
-#include <stdarg.h>
-
-
-/*! C++ users need love */
-#ifndef BEGIN_DECL
-# ifdef __cplusplus
-# define BEGIN_DECL extern "C" {
-# else
-# define BEGIN_DECL
-# endif
-#endif
-
-/*! C++ users need love */
-#ifndef END_DECL
-# ifdef __cplusplus
-# define END_DECL }
-# else
-# define END_DECL
-# endif
-#endif
-/* End of cruft for C++ */
-
-BEGIN_DECL
-
-/**
- * gras_os_time:
- * @Returns: number of second since the Epoch.
- * (00:00:00 UTC, January 1, 1970 in Real Life, and begining of simulation in SG)
- *
- * Get the current time.
+#include "xbt/misc.h" /* SG_BEGIN_DECL */
+#include "xbt/time.h"
+#include "xbt/dict.h"
+
+SG_BEGIN_DECL()
+
+/* Initialization of the simulation world. Do not call them in RL.
+ Indeed, do not call them at all. Let gras_stub_generator do it for you. */
+void gras_global_init(int *argc, char **argv);
+void gras_create_environment(const char *file);
+void gras_function_register(const char *name, xbt_main_func_t code);
+void gras_function_register_default(xbt_main_func_t code);
+void gras_launch_application(const char *file);
+void gras_load_environment_script(const char *file);
+void gras_clean(void);
+void gras_main(void);
+
+
+/** @addtogroup GRAS_virtu
+ * @brief System call abstraction layer.
+ *
+ *
+ * @{
+ */
+
+/** @brief Get the current time
+ * @return number of second since the Epoch.
+ * (00:00:00 UTC, January 1, 1970 in Real Life, and begining of simulation in SG)