From: Martin Quinson Date: Wed, 3 Feb 2016 14:28:17 +0000 (+0100) Subject: Further untangle trace:connect. make trace_connect_list_host_avail private X-Git-Tag: v3_13~985 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/965a836d38ed45cf03c17e93aa97bc9aaf2917c9 Further untangle trace:connect. make trace_connect_list_host_avail private --- diff --git a/include/simgrid/platf.h b/include/simgrid/platf.h index 5b57f6b5d0..522a075f44 100644 --- a/include/simgrid/platf.h +++ b/include/simgrid/platf.h @@ -68,7 +68,6 @@ XBT_PUBLIC(void) sg_platf_new_bypassRoute (sg_platf_route_cbarg_t bypassroute); XBT_PUBLIC(void) sg_platf_new_bypassASroute (sg_platf_route_cbarg_t bypassASroute); // Add an bypassASroute XBT_PUBLIC(void) sg_platf_new_trace(sg_platf_trace_cbarg_t trace); -XBT_PUBLIC(void) sg_platf_trace_connect(sg_platf_trace_connect_cbarg_t trace_connect); XBT_PUBLIC(void) sg_platf_new_storage(sg_platf_storage_cbarg_t storage); // Add a storage to the currently described AS XBT_PUBLIC(void) sg_platf_new_mstorage(sg_platf_mstorage_cbarg_t mstorage); diff --git a/src/surf/surf_interface.hpp b/src/surf/surf_interface.hpp index 85fc8e0f98..e2cfb09c3a 100644 --- a/src/surf/surf_interface.hpp +++ b/src/surf/surf_interface.hpp @@ -73,7 +73,6 @@ enum heap_action_type{ *********/ /* For the trace and trace:connect tag (store their content till the end of the parsing) */ XBT_PUBLIC_DATA(xbt_dict_t) traces_set_list; -XBT_PUBLIC_DATA(xbt_dict_t) trace_connect_list_host_avail; XBT_PUBLIC_DATA(xbt_dict_t) trace_connect_list_host_speed; XBT_PUBLIC_DATA(xbt_dict_t) trace_connect_list_link_avail; XBT_PUBLIC_DATA(xbt_dict_t) trace_connect_list_link_bw; diff --git a/src/surf/surf_routing.cpp b/src/surf/surf_routing.cpp index 7ce56b2e88..033bcf454e 100644 --- a/src/surf/surf_routing.cpp +++ b/src/surf/surf_routing.cpp @@ -213,44 +213,6 @@ void sg_platf_new_trace(sg_platf_trace_cbarg_t trace) xbt_dict_set(traces_set_list, trace->id, (void *) tmgr_trace, NULL); } -void sg_platf_trace_connect(sg_platf_trace_connect_cbarg_t trace_connect) -{ - xbt_assert(xbt_dict_get_or_null(traces_set_list, trace_connect->trace), - "Cannot connect trace %s to %s: trace unknown", - trace_connect->trace, - trace_connect->element); - - switch (trace_connect->kind) { - case SURF_TRACE_CONNECT_KIND_HOST_AVAIL: - xbt_dict_set(trace_connect_list_host_avail, - trace_connect->trace, - xbt_strdup(trace_connect->element), NULL); - break; - case SURF_TRACE_CONNECT_KIND_POWER: - xbt_dict_set(trace_connect_list_host_speed, trace_connect->trace, - xbt_strdup(trace_connect->element), NULL); - break; - case SURF_TRACE_CONNECT_KIND_LINK_AVAIL: - xbt_dict_set(trace_connect_list_link_avail, - trace_connect->trace, - xbt_strdup(trace_connect->element), NULL); - break; - case SURF_TRACE_CONNECT_KIND_BANDWIDTH: - xbt_dict_set(trace_connect_list_link_bw, - trace_connect->trace, - xbt_strdup(trace_connect->element), NULL); - break; - case SURF_TRACE_CONNECT_KIND_LATENCY: - xbt_dict_set(trace_connect_list_link_lat, trace_connect->trace, - xbt_strdup(trace_connect->element), NULL); - break; - default: - surf_parse_error("Cannot connect trace %s to %s: kind of trace unknown", - trace_connect->trace, trace_connect->element); - break; - } -} - /** * \brief Make a new routing component to the platform * diff --git a/src/surf/surfxml_parse.c b/src/surf/surfxml_parse.c index 50c47f4f7d..5cc4655c25 100644 --- a/src/surf/surfxml_parse.c +++ b/src/surf/surfxml_parse.c @@ -13,10 +13,10 @@ #include "xbt/str.h" #include "xbt/file.h" #include "xbt/dict.h" -#include "surf/surfxml_parse.h" #include "src/surf/surf_private.h" #include "surf/random_mgr.h" #include "simgrid/sg_config.h" +#include "surfxml_private.h" XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_parse, surf, "Logging specific to the SURF parsing module"); diff --git a/src/surf/surfxml_parseplatf.cpp b/src/surf/surfxml_parseplatf.cpp index 7ab9cb914f..6fde67c693 100644 --- a/src/surf/surfxml_parseplatf.cpp +++ b/src/surf/surfxml_parseplatf.cpp @@ -9,9 +9,9 @@ #include "xbt/str.h" #include "xbt/dict.h" #include "simgrid/platf.h" -#include "surf/surfxml_parse.h" #include "src/surf/cpu_interface.hpp" #include "src/surf/surf_private.h" +#include "src/surf/surfxml_private.h" #ifdef HAVE_LUA extern "C" { @@ -70,6 +70,45 @@ xbt_dict_t trace_connect_list_link_avail = NULL; xbt_dict_t trace_connect_list_link_bw = NULL; xbt_dict_t trace_connect_list_link_lat = NULL; +void sg_platf_trace_connect(sg_platf_trace_connect_cbarg_t trace_connect) +{ + xbt_assert(xbt_dict_get_or_null(traces_set_list, trace_connect->trace), + "Cannot connect trace %s to %s: trace unknown", + trace_connect->trace, + trace_connect->element); + + switch (trace_connect->kind) { + case SURF_TRACE_CONNECT_KIND_HOST_AVAIL: + xbt_dict_set(trace_connect_list_host_avail, + trace_connect->trace, + xbt_strdup(trace_connect->element), NULL); + break; + case SURF_TRACE_CONNECT_KIND_POWER: + xbt_dict_set(trace_connect_list_host_speed, trace_connect->trace, + xbt_strdup(trace_connect->element), NULL); + break; + case SURF_TRACE_CONNECT_KIND_LINK_AVAIL: + xbt_dict_set(trace_connect_list_link_avail, + trace_connect->trace, + xbt_strdup(trace_connect->element), NULL); + break; + case SURF_TRACE_CONNECT_KIND_BANDWIDTH: + xbt_dict_set(trace_connect_list_link_bw, + trace_connect->trace, + xbt_strdup(trace_connect->element), NULL); + break; + case SURF_TRACE_CONNECT_KIND_LATENCY: + xbt_dict_set(trace_connect_list_link_lat, trace_connect->trace, + xbt_strdup(trace_connect->element), NULL); + break; + default: + surf_parse_error("Cannot connect trace %s to %s: kind of trace unknown", + trace_connect->trace, trace_connect->element); + break; + } +} + + /* ***************************************** */ static int after_config_done; diff --git a/src/surf/surfxml_private.h b/src/surf/surfxml_private.h new file mode 100644 index 0000000000..43a6c59d4e --- /dev/null +++ b/src/surf/surfxml_private.h @@ -0,0 +1,15 @@ +/* Copyright (c) 2016. 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 SRC_SURF_SURFXML_PRIVATE_H_ +#define SRC_SURF_SURFXML_PRIVATE_H_ + +#include "surf/surfxml_parse.h" + +void sg_platf_trace_connect(sg_platf_trace_connect_cbarg_t trace_connect); + + + +#endif /* SRC_SURF_SURFXML_PRIVATE_H_ */ diff --git a/tools/cmake/DefinePackages.cmake b/tools/cmake/DefinePackages.cmake index d56afb3a22..311833d4f0 100644 --- a/tools/cmake/DefinePackages.cmake +++ b/tools/cmake/DefinePackages.cmake @@ -341,6 +341,7 @@ set(SURF_SRC src/surf/surf_routing_generic.cpp src/surf/surf_routing_none.cpp src/surf/surf_routing_vivaldi.cpp + src/surf/surfxml_private.h src/surf/surfxml_parse.c src/surf/surfxml_parseplatf.cpp src/surf/trace_mgr.hpp