~ubuntu-branches/ubuntu/raring/simgrid/raring

« back to all changes in this revision

Viewing changes to include/gras/virtu.h

  • Committer: Package Import Robot
  • Author(s): Martin Quinson
  • Date: 2013-01-31 00:24:51 UTC
  • mfrom: (10.1.6 sid)
  • Revision ID: package-import@ubuntu.com-20130131002451-krejhf7w7h24lpsc
Tags: 3.9~rc1-1
* New upstream release: the "Grasgory" release. Major changes:
  - Gras was completely removed from this version.
  - Documentation reorganization to ease browsing it.
  - New default value for the TCP_gamma parameter: 4MiB

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* gras/virtu.h - public interface to virtualization (cross-OS portability) */
2
 
 
3
 
/* Copyright (c) 2004, 2005, 2006, 2007, 2009, 2010. The SimGrid Team.
4
 
 * All rights reserved.                                                     */
5
 
 
6
 
/* This program is free software; you can redistribute it and/or modify it
7
 
 * under the terms of the license (GNU LGPL) which comes with this package. */
8
 
 
9
 
#ifndef GRAS_VIRTU_H
10
 
#define GRAS_VIRTU_H
11
 
 
12
 
#include "xbt/misc.h"           /* SG_BEGIN_DECL */
13
 
#include "xbt/time.h"
14
 
#include "xbt/dict.h"
15
 
 
16
 
SG_BEGIN_DECL()
17
 
 
18
 
/* Initialization of the simulation world. Do not call them in RL. 
19
 
   Indeed, do not call them at all. Let gras_stub_generator do it for you. */
20
 
void gras_global_init(int *argc, char **argv);
21
 
void gras_create_environment(const char *file);
22
 
void gras_function_register(const char *name, xbt_main_func_t code);
23
 
void gras_function_register_default(xbt_main_func_t code);
24
 
void gras_launch_application(const char *file);
25
 
void gras_load_environment_script(const char *file);
26
 
void gras_clean(void);
27
 
void gras_main(void);
28
 
 
29
 
 
30
 
/** @addtogroup GRAS_virtu  
31
 
 *  @brief System call abstraction layer.
32
 
 *
33
 
 *
34
 
 *  @{
35
 
 */
36
 
 
37
 
/** @brief Get the current time
38
 
 *  @return number of second since the Epoch.
39
 
 *  (00:00:00 UTC, January 1, 1970 in Real Life, and begining of simulation in SG)
40
 
 */
41
 
#define gras_os_time() xbt_time()
42
 
/** @brief sleeps for the given amount of time.
43
 
 *  @param sec: number of seconds to sleep
44
 
 */
45
 
#define gras_os_sleep(sec) xbt_sleep(sec)
46
 
/** @brief get the fully-qualified name of the current host
47
 
 *
48
 
 * Returns the fully-qualified name of the host machine, or "localhost" if the name
49
 
 * cannot be determined.  Always returns the same value, so multiple calls
50
 
 * cause no problems.
51
 
 */
52
 
XBT_PUBLIC(const char *) gras_os_myname(void);
53
 
 
54
 
/** @brief returns the number on which this process is listening for incoming messages */
55
 
XBT_PUBLIC(int) gras_os_myport(void);
56
 
 
57
 
/** @brief get the uri of the current process
58
 
 *
59
 
 * Returns the concatenation of gras_os_myname():gras_os_myport(). Please do not free the result.
60
 
 */
61
 
XBT_PUBLIC(const char *) gras_os_hostport(void);
62
 
 
63
 
/** @brief get process identification
64
 
 *
65
 
 * Returns the process ID of the current process.  (This is often used
66
 
   by routines that generate unique temporary file names.)
67
 
 */
68
 
XBT_PUBLIC(int) gras_os_getpid(void);
69
 
 
70
 
 
71
 
/* Properties related */
72
 
XBT_PUBLIC(xbt_dict_t) gras_process_properties(void);
73
 
XBT_PUBLIC(const char *) gras_process_property_value(const char *name);
74
 
 
75
 
XBT_PUBLIC(xbt_dict_t) gras_os_host_properties(void);
76
 
XBT_PUBLIC(const char *) gras_os_host_property_value(const char *name);
77
 
 
78
 
/** @} */
79
 
SG_END_DECL()
80
 
#endif                          /* GRAS_VIRTU_H */