X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/0b91a7979cb7b0abe7988e5bb9ba81db3233327c..70388188c97f56fbe2b645c9b00dcb05d0b86509:/src/include/surf/surfxml_parse_values.h diff --git a/src/include/surf/surfxml_parse_values.h b/src/include/surf/surfxml_parse_values.h index 18ac4ac21b..70cbc24a26 100644 --- a/src/include/surf/surfxml_parse_values.h +++ b/src/include/surf/surfxml_parse_values.h @@ -1,25 +1,26 @@ -/* - * surfxml_parse_values.h - * - * Created on: 24 oct. 2011 - * Author: navarrop - */ +/* Copyright (c) 2011. The SimGrid Team. + * All rights reserved. */ + +/* This program is free software; you can redistribute it and/or modify it + * under the terms of the license (GNU LGPL) which comes with this package. */ #ifndef SURFXML_PARSE_VALUES_H_ #define SURFXML_PARSE_VALUES_H_ -struct V_peer { +typedef struct s_surf_parsing_peer_arg *surf_parsing_peer_arg_t; +typedef struct s_surf_parsing_peer_arg { char* V_peer_id; - double V_peer_power; - double V_peer_bw_in; - double V_peer_bw_out; - double V_peer_lat; + char* V_peer_power; + char* V_peer_bw_in; + char* V_peer_bw_out; + char* V_peer_lat; char* V_peer_coord; - tmgr_trace_t V_peer_availability_trace; - tmgr_trace_t V_peer_state_trace; -}; + char* V_peer_availability_trace; + char* V_peer_state_trace; +} s_surf_parsing_peer_arg_t; -struct V_link { +typedef struct s_surf_parsing_link_arg *surf_parsing_link_arg_t; +typedef struct s_surf_parsing_link_arg { char* V_link_id; double V_link_bandwidth; tmgr_trace_t V_link_bandwidth_file; @@ -28,44 +29,62 @@ struct V_link { e_surf_resource_state_t V_link_state; tmgr_trace_t V_link_state_file; int V_link_sharing_policy; -}; + int V_policy_initial_link; +} s_surf_parsing_link_arg_t; -struct V_cluster { +typedef struct s_surf_parsing_cluster_arg *surf_parsing_cluster_arg_t; +typedef struct s_surf_parsing_cluster_arg { char* V_cluster_id; char* V_cluster_prefix; char* V_cluster_suffix; char* V_cluster_radical; - double V_cluster_power; - int V_cluster_core; - double V_cluster_bw; - double V_cluster_lat; - double V_cluster_bb_bw; - double V_cluster_bb_lat; - char * V_cluster_router_id; + double S_cluster_power; + int S_cluster_core; + double S_cluster_bw; + double S_cluster_lat; + double S_cluster_bb_bw; + double S_cluster_bb_lat; + char* S_cluster_router_id; int V_cluster_sharing_policy; int V_cluster_bb_sharing_policy; -}; + char* V_cluster_availability_file; + char* V_cluster_state_file; +} s_surf_parsing_cluster_arg_t; -struct V_router { +typedef struct s_surf_parsing_router_arg *surf_parsing_router_arg_t; +typedef struct s_surf_parsing_router_arg { char* V_router_id; char* V_router_coord; -}; +} s_surf_parsing_router_arg_t; + +typedef struct s_surf_parsing_host_arg *surf_parsing_host_arg_t; +typedef struct s_surf_parsing_host_arg { + char* V_host_id; //id + double V_host_power_peak; //power + int V_host_core; //core + double V_host_power_scale; //availability + tmgr_trace_t V_host_power_trace; //availability file + e_surf_resource_state_t V_host_state_initial; //state + tmgr_trace_t V_host_state_trace; //state file + const char* V_host_coord; +} s_surf_parsing_host_arg_t; + +typedef struct s_surf_parsing_link_up_down *surf_parsing_link_up_down_t; +typedef struct s_surf_parsing_link_up_down { + void* link_up; + void* link_down; +} s_surf_parsing_link_up_down_t; + + +typedef void (*surf_parse_host_fct_t)(surf_parsing_host_arg_t); +void surf_parse_host_add_cb(surf_parse_host_fct_t); -struct V_host { - char* V_host_id; //id - double V_host_power_peak; //power - int V_host_core; //core - double V_host_power_scale; //availability - tmgr_trace_t V_host_power_trace; //availability file - e_surf_resource_state_t V_host_state_initial; //state - tmgr_trace_t V_host_state_trace; //state file - char* V_host_coord; -}; +extern surf_parsing_router_arg_t struct_router; +extern surf_parsing_cluster_arg_t struct_cluster; +extern surf_parsing_peer_arg_t struct_peer; +extern surf_parsing_link_arg_t struct_lnk; -struct V_host s_host; -struct V_router s_router; -struct V_cluster s_cluster; -struct V_peer s_peer; -struct V_link s_link; +void surf_parse_host(surf_parsing_host_arg_t h); +void surf_parse_link(void); #endif /* SURFXML_PARSE_VALUES_H_ */