X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/6094020a03f9c10b954e3e1d32e1a3ffc75a8d7f..2be6d8f185ebf696bba1c4d559f4af0a618f0103:/src/include/surf/surf.h diff --git a/src/include/surf/surf.h b/src/include/surf/surf.h index cef3ab7efd..4601fb642a 100644 --- a/src/include/surf/surf.h +++ b/src/include/surf/surf.h @@ -15,23 +15,7 @@ #include "xbt/config.h" #include "surf/datatypes.h" #include "xbt/lib.h" - -xbt_lib_t host_lib; -int ROUTING_HOST_LEVEL; //Routing level -int SURF_CPU_LEVEL; //Surf cpu level -int SURF_WKS_LEVEL; //Surf workstation level -int SIMIX_HOST_LEVEL; //Simix level -int MSG_HOST_LEVEL; //Msg level -int SD_HOST_LEVEL; //Simdag level -int COORD_HOST_LEVEL; //Coordinates level - -xbt_lib_t link_lib; -int SD_LINK_LEVEL; //Simdag level -int SURF_LINK_LEVEL; //Surf level - -xbt_lib_t as_router_lib; -int ROUTING_ASR_LEVEL; //Routing level -int COORD_ASR_LEVEL; //Coordinates level +#include "surf/surf_routing.h" SG_BEGIN_DECL() /* Actions and models are highly connected structures... */ @@ -497,6 +481,29 @@ XBT_PUBLIC(void) surf_network_model_init_bypass(const char *id, XBT_PUBLIC(void) surf_network_model_init_GTNETS(const char *filename); #endif +#ifdef HAVE_NS3 +/** \brief Initializes the platform with the network model NS3 + * \ingroup SURF_models + * \param filename XML platform file name + * + * This function is called by surf_workstation_model_init_NS3 + * or by yourself only if you plan using surf_workstation_model_init_compound + * + * \see surf_workstation_model_init_NS3() + */ +XBT_PUBLIC(void) surf_network_model_init_NS3(const char *filename); + +XBT_PUBLIC(void) parse_ns3_add_host(void); +XBT_PUBLIC(void) parse_ns3_add_router(void); +XBT_PUBLIC(void) parse_ns3_add_link(void); +XBT_PUBLIC(void) parse_ns3_add_AS(void); +XBT_PUBLIC(void) parse_ns3_add_route(void); +XBT_PUBLIC(void) parse_ns3_add_ASroute(void); +XBT_PUBLIC(void) parse_ns3_add_cluster(void); +XBT_PUBLIC(void) parse_ns3_end_platform(void); + +#endif + /** \brief Initializes the platform with the network model Reno * \ingroup SURF_models * \param filename XML platform file name @@ -696,7 +703,9 @@ XBT_PUBLIC(void) surf_exit(void); /* Prototypes of the functions that handle the properties */ XBT_PUBLIC_DATA(xbt_dict_t) current_property_set; /* the prop set for the currently parsed element (also used in SIMIX) */ -XBT_PUBLIC_DATA(void) parse_properties(void); +XBT_PUBLIC_DATA(void) parse_properties(const char* prop_id, const char* prop_value); +XBT_PUBLIC_DATA(void) parse_properties_XML(void); +XBT_PUBLIC_DATA(void) parse_properties_lua(const char* prop_id, const char* prop_value); /* surf parse file related (public because called from a test suite) */ XBT_PUBLIC(void) parse_platform_file(const char *file);