Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
9a5d9a9157e3ae137f9ba7e63be051b5e1189180
[simgrid.git] / src / include / surf / surfxml_parse_values.h
1 /* Copyright (c) 2011. 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 #ifndef SURFXML_PARSE_VALUES_H_
8 #define SURFXML_PARSE_VALUES_H_
9
10 typedef struct s_peer *peer_t;
11 typedef struct s_peer {
12         char* V_peer_id;
13         char* V_peer_power;
14         char* V_peer_bw_in;
15         char* V_peer_bw_out;
16         char* V_peer_lat;
17         char* V_peer_coord;
18         char* V_peer_availability_trace;
19         char* V_peer_state_trace;
20 } s_peer_t;
21
22 typedef struct s_link *link_t;
23 typedef struct s_link {
24         char* V_link_id;
25         double V_link_bandwidth;
26         tmgr_trace_t V_link_bandwidth_file;
27         double V_link_latency;
28         tmgr_trace_t V_link_latency_file;
29         e_surf_resource_state_t V_link_state;
30         tmgr_trace_t V_link_state_file;
31         int V_link_sharing_policy;
32         int V_policy_initial_link;
33 } s_link_t;
34
35 typedef struct s_cluster *cluster_t;
36 typedef struct s_cluster {
37         char* V_cluster_id;
38         char* V_cluster_prefix;
39         char* V_cluster_suffix;
40         char* V_cluster_radical;
41         double S_cluster_power;
42         int S_cluster_core;
43         double S_cluster_bw;
44         double S_cluster_lat;
45         double S_cluster_bb_bw;
46         double S_cluster_bb_lat;
47         char* S_cluster_router_id;
48         int V_cluster_sharing_policy;
49         int V_cluster_bb_sharing_policy;
50 } s_cluster_t;
51
52 typedef struct s_router *router_t;
53 typedef struct s_router {
54         char* V_router_id;
55         char* V_router_coord;
56 } s_router_t;
57
58 typedef struct s_hostSG *hostSG_t;
59 typedef struct s_hostSG {
60         char* V_host_id;                                                                                                        //id
61         double V_host_power_peak;                                                                                       //power
62         int V_host_core;                                                                                                        //core
63         double V_host_power_scale;                                                                                      //availability
64         tmgr_trace_t V_host_power_trace;                                                                        //availability file
65         e_surf_resource_state_t V_host_state_initial;                                           //state
66         tmgr_trace_t V_host_state_trace;                                                                        //state file
67         char* V_host_coord;
68 } s_hostSG_t;
69
70 extern hostSG_t struct_host;
71 extern router_t struct_router;
72 extern cluster_t struct_cluster;
73 extern peer_t struct_peer;
74 extern link_t struct_lnk;
75
76 #endif /* SURFXML_PARSE_VALUES_H_ */