* under the terms of the license (GNU LGPL) which comes with this package. */
#include "surf/surf.hpp"
-#include "instr/instr_interface.hpp" // TRACE_start(). FIXME: remove by subscribing tracing to the surf signals
#include "src/surf/cpu_interface.hpp"
#include "src/surf/network_interface.hpp"
#include "src/surf/surf_interface.hpp"
}
}
-static int after_config_done;
-void parse_after_config() {
- if (not after_config_done) {
- TRACE_start();
-
- /* Register classical callbacks */
- storage_register_callbacks();
-
- after_config_done = 1;
- }
-}
-
/* This function acts as a main in the parsing area. */
-void parse_platform_file(const char *file)
+void parse_platform_file(std::string file)
{
#if SIMGRID_HAVE_LUA
- int len = (file == nullptr ? 0 : strlen(file));
- int is_lua = (file != nullptr && len > 3 && file[len - 3] == 'l' && file[len - 2] == 'u' && file[len - 1] == 'a');
+ const char* cfile = file.c_str();
+ int len = strlen(cfile);
+ int is_lua = len > 3 && file[len - 3] == 'l' && file[len - 2] == 'u' && file[len - 1] == 'a';
#endif
sg_platf_init();
lua_State* L = luaL_newstate();
luaL_openlibs(L);
- luaL_loadfile(L, file); // This loads the file without executing it.
+ luaL_loadfile(L, cfile); // This loads the file without executing it.
/* Run the script */
if (lua_pcall(L, 0, 0, 0)) {
int parse_status;
/* init the flex parser */
- after_config_done = 0;
surf_parse_open(file);
/* Do the actual parsing */
xbt_assert(host, "Host %s undefined", elm.second.c_str());
simgrid::surf::Cpu* cpu = host->pimpl_cpu;
- cpu->setStateTrace(trace);
+ cpu->set_state_trace(trace);
}
for (auto const& elm : trace_connect_list_host_speed) {
sg_link_t link = simgrid::s4u::Link::by_name(elm.second.c_str());
xbt_assert(link, "Link %s undefined", elm.second.c_str());
- link->setStateTrace(trace);
+ link->set_state_trace(trace);
}
for (auto const& elm : trace_connect_list_link_bw) {
tmgr_trace_t trace = traces_set_list.at(elm.first);
sg_link_t link = simgrid::s4u::Link::by_name(elm.second.c_str());
xbt_assert(link, "Link %s undefined", elm.second.c_str());
- link->setBandwidthTrace(trace);
+ link->set_bandwidth_trace(trace);
}
for (auto const& elm : trace_connect_list_link_lat) {
tmgr_trace_t trace = traces_set_list.at(elm.first);
sg_link_t link = simgrid::s4u::Link::by_name(elm.second.c_str());
xbt_assert(link, "Link %s undefined", elm.second.c_str());
- link->setLatencyTrace(trace);
+ link->set_latency_trace(trace);
}
surf_parse_close();