+typedef struct s_sg_platf_route_cbarg *sg_platf_route_cbarg_t;
+typedef struct s_sg_platf_route_cbarg {
+ int symmetrical;
+ const char *src;
+ const char *dst;
+ xbt_dynar_t link_list;
+} s_sg_platf_route_cbarg_t;
+
+typedef struct s_sg_platf_ASroute_cbarg *sg_platf_ASroute_cbarg_t;
+typedef struct s_sg_platf_ASroute_cbarg {
+ int symmetrical;
+ const char *src;
+ const char *dst;
+ const char *gw_src;
+ const char *gw_dst;
+ xbt_dynar_t link_list;
+} s_sg_platf_ASroute_cbarg_t;
+
+typedef struct s_sg_platf_bypassRoute_cbarg *sg_platf_bypassRoute_cbarg_t;
+typedef struct s_sg_platf_bypassRoute_cbarg {
+ const char *src;
+ const char *dst;
+ xbt_dynar_t link_list;
+} s_sg_platf_bypassRoute_cbarg_t;
+
+typedef struct s_sg_platf_bypassASroute_cbarg *sg_platf_bypassASroute_cbarg_t;
+typedef struct s_sg_platf_bypassASroute_cbarg {
+ const char *src;
+ const char *dst;
+ const char *gw_src;
+ const char *gw_dst;
+ xbt_dynar_t link_list;
+} s_sg_platf_bypassASroute_cbarg_t;
+
+typedef struct s_sg_platf_cluster_cbarg *sg_platf_cluster_cbarg_t;
+typedef struct s_sg_platf_cluster_cbarg {
+ const char* id;
+ const char* prefix;
+ const char* suffix;
+ const char* radical;
+ double power;
+ int core_amount;
+ double bw;
+ double lat;
+ double bb_bw;
+ double bb_lat;
+ const char* router_id;
+ e_surf_link_sharing_policy_t sharing_policy;
+ e_surf_link_sharing_policy_t bb_sharing_policy;
+ const char* availability_trace; //don't convert to tmgr_trace_t since there is a trace per host and some rewriting is needed
+ const char* state_trace;
+} s_sg_platf_cluster_cbarg_t;
+
+typedef struct s_sg_platf_cabinet_cbarg *sg_platf_cabinet_cbarg_t;
+typedef struct s_sg_platf_cabinet_cbarg {
+ const char* id;
+ const char* prefix;
+ const char* suffix;
+ const char* radical;
+ double power;
+ double bw;
+ double lat;
+} s_sg_platf_cabinet_cbarg_t;
+
+typedef struct {
+ const char* id;
+ const char* type_id;
+ const char* content;
+} s_sg_platf_storage_cbarg_t, *sg_platf_storage_cbarg_t;
+
+typedef struct {
+ const char* id;
+ const char* model;
+ const char* content;
+ xbt_dict_t properties;
+ unsigned long size; /* size in Gbytes */
+} s_sg_platf_storage_type_cbarg_t, *sg_platf_storage_type_cbarg_t;
+
+typedef struct {
+ const char* type_id;
+ const char* name;
+} s_sg_platf_mstorage_cbarg_t, *sg_platf_mstorage_cbarg_t;
+
+typedef struct {
+ const char* id;
+ const char* name;
+} s_sg_platf_mount_cbarg_t, *sg_platf_mount_cbarg_t;
+
+typedef struct s_sg_platf_prop_cbarg *sg_platf_prop_cbarg_t;
+typedef struct s_sg_platf_prop_cbarg {
+ const char *id;
+ const char *value;
+} s_sg_platf_prop_cbarg_t;
+
+typedef struct s_sg_platf_trace_cbarg *sg_platf_trace_cbarg_t;
+typedef struct s_sg_platf_trace_cbarg {