Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'master' of git+ssh://scm.gforge.inria.fr/gitroot/simgrid/simgrid
[simgrid.git] / include / simgrid / link.h
1 /* Public interface to the Link datatype                                    */
2
3 /* Copyright (c) 2015. The SimGrid Team. All rights reserved.               */
4
5 /* This program is free software; you can redistribute it and/or modify it
6  * under the terms of the license (GNU LGPL) which comes with this package. */
7
8 #ifndef INCLUDE_SIMGRID_LINK_H_
9 #define INCLUDE_SIMGRID_LINK_H_
10
11
12 #ifdef __cplusplus
13 class Link;
14 #else
15 typedef struct Link Link;
16 #endif
17
18
19
20 /* C interface */
21 SG_BEGIN_DECL()
22 XBT_PUBLIC(const char*) sg_link_name(Link *link);
23 XBT_PUBLIC(Link *) sg_link_by_name(const char *name);
24 XBT_PUBLIC(int) sg_link_is_shared(Link *link);
25 XBT_PUBLIC(double) sg_link_bandwidth(Link *link);
26 XBT_PUBLIC(double) sg_link_latency(Link *link);
27 XBT_PUBLIC(void*) sg_link_data(Link *link);
28 XBT_PUBLIC(void) sg_link_data_set(Link *link,void *data);
29 XBT_PUBLIC(int) sg_link_amount(void);
30 XBT_PUBLIC(Link**) sg_link_list(void);
31 XBT_PUBLIC(void) sg_link_exit(void);
32 SG_END_DECL()
33
34 #endif /* INCLUDE_SIMGRID_LINK_H_ */