X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/fa222c38f9b796be07ab4351ffc810a61a8fd705..b50fb226666093cd35d9f0143e4ac504d3d9ad4c:/src/bindings/java/surf_swig.cpp diff --git a/src/bindings/java/surf_swig.cpp b/src/bindings/java/surf_swig.cpp index 69d0acfbea..972ef476e7 100644 --- a/src/bindings/java/surf_swig.cpp +++ b/src/bindings/java/surf_swig.cpp @@ -4,11 +4,25 @@ /* 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. */ +// Avoid ambiguity between boost and std placeholders +// (the std placeholders are imported through boost::signals2): +#ifndef BOOST_BIND_NO_PLACEHOLDERS + #define BOOST_BIND_NO_PLACEHOLDERS +#endif + +#include + #include #include "src/surf/surf_interface.hpp" #include "surf_swig.hpp" #include "src/simix/smx_private.h" +using std::placeholders::_1; +using std::placeholders::_2; +using std::placeholders::_3; +using std::placeholders::_4; +using std::placeholders::_5; + double getClock() { return surf_get_clock(); } @@ -17,72 +31,88 @@ void clean() { SIMIX_clean(); } -CpuModel *getCpuModel(){ +simgrid::surf::CpuModel *getCpuModel(){ return surf_cpu_model_pm; } -CpuModel *java_cpu_model; +simgrid::surf::CpuModel *java_cpu_model; static void java_cpu_model_init_preparse() { surf_cpu_model_pm = java_cpu_model; - xbt_dynar_push(model_list, &java_cpu_model); - xbt_dynar_push(model_list_invoke, &java_cpu_model); - sg_platf_host_add_cb(cpu_parse_init); + xbt_dynar_push(all_existing_models, &java_cpu_model); } -void setCpuModel(CpuModel *cpuModel){ +void setCpuModel(simgrid::surf::CpuModel *cpuModel){ java_cpu_model = cpuModel; surf_cpu_model_init_preparse = java_cpu_model_init_preparse; } -void setCpu(char *name, Cpu *cpu) { - sg_host_surfcpu_set(sg_host_by_name(name), cpu); +void setCpu(char *name, simgrid::surf::Cpu *cpu) { + // No-op here for compatibility with previous versions } LinkDynar getRoute(char *srcName, char *dstName) { - RoutingEdge *src = sg_host_edge(sg_host_by_name(srcName)); - RoutingEdge *dst = sg_host_edge(sg_host_by_name(dstName)); + simgrid::surf::RoutingEdge *src = sg_host_edge(sg_host_by_name(srcName)); + simgrid::surf::RoutingEdge *dst = sg_host_edge(sg_host_by_name(dstName)); xbt_assert(src,"Cannot get the route from a NULL source"); xbt_assert(dst,"Cannot get the route to a NULL destination"); - xbt_dynar_t route = xbt_dynar_new(sizeof(RoutingEdge*), NULL); + xbt_dynar_t route = xbt_dynar_new(sizeof(simgrid::surf::RoutingEdge*), NULL); routing_platf->getRouteAndLatency(src, dst, &route, NULL); return route; } -void Plugin::activateCpuCreatedCallback(){ - surf_callback_connect(cpuCreatedCallbacks, boost::bind(&Plugin::cpuCreatedCallback, this, _1)); +void Plugin::activateCpuCreatedCallback() +{ + surf_callback_connect(simgrid::surf::cpuCreatedCallbacks, + std::bind(&Plugin::cpuCreatedCallback, this, _1)); } -void Plugin::activateCpuDestructedCallback(){ - surf_callback_connect(cpuDestructedCallbacks, boost::bind(&Plugin::cpuDestructedCallback, this, _1)); +void Plugin::activateCpuDestructedCallback() +{ + surf_callback_connect(simgrid::surf::cpuDestructedCallbacks, + std::bind(&Plugin::cpuDestructedCallback, this, _1)); } -void Plugin::activateCpuStateChangedCallback(){ - surf_callback_connect(cpuStateChangedCallbacks, boost::bind(&Plugin::cpuStateChangedCallback, this, _1, _2, _3)); +void Plugin::activateCpuStateChangedCallback() +{ + surf_callback_connect(simgrid::surf::cpuStateChangedCallbacks, + std::bind(&Plugin::cpuStateChangedCallback, this, _1, _2, _3)); } -void Plugin::activateCpuActionStateChangedCallback(){ - surf_callback_connect(cpuActionStateChangedCallbacks, boost::bind(&Plugin::cpuActionStateChangedCallback, this, _1, _2, _3)); +void Plugin::activateCpuActionStateChangedCallback() +{ + surf_callback_connect(simgrid::surf::cpuActionStateChangedCallbacks, + std::bind(&Plugin::cpuActionStateChangedCallback, this, _1, _2, _3)); } -void Plugin::activateLinkCreatedCallback(){ - surf_callback_connect(networkLinkCreatedCallbacks, boost::bind(&Plugin::networkLinkCreatedCallback, this, _1)); +void Plugin::activateLinkCreatedCallback() +{ + surf_callback_connect(simgrid::surf::networkLinkCreatedCallbacks, + std::bind(&Plugin::networkLinkCreatedCallback, this, _1)); } -void Plugin::activateLinkDestructedCallback(){ - surf_callback_connect(networkLinkDestructedCallbacks, boost::bind(&Plugin::networkLinkDestructedCallback, this, _1)); +void Plugin::activateLinkDestructedCallback() +{ + surf_callback_connect(simgrid::surf::networkLinkDestructedCallbacks, + std::bind(&Plugin::networkLinkDestructedCallback, this, _1)); } -void Plugin::activateLinkStateChangedCallback(){ - surf_callback_connect(networkLinkStateChangedCallbacks, boost::bind(&Plugin::networkLinkStateChangedCallback, this, _1, _2, _3)); +void Plugin::activateLinkStateChangedCallback() +{ + surf_callback_connect(simgrid::surf::networkLinkStateChangedCallbacks, + std::bind(&Plugin::networkLinkStateChangedCallback, this, _1, _2, _3)); } -void Plugin::activateNetworkActionStateChangedCallback(){ - surf_callback_connect(networkActionStateChangedCallbacks, boost::bind(&Plugin::networkActionStateChangedCallback, this, _1, _2, _3)); +void Plugin::activateNetworkActionStateChangedCallback() +{ + surf_callback_connect(simgrid::surf::networkActionStateChangedCallbacks, + std::bind(&Plugin::networkActionStateChangedCallback, this, _1, _2, _3)); } -void Plugin::activateNetworkCommunicateCallback(){ - surf_callback_connect(networkCommunicateCallbacks, boost::bind(&Plugin::networkCommunicateCallback, this, _1, _2, _3, _4, _5)); +void Plugin::activateNetworkCommunicateCallback() +{ + surf_callback_connect(simgrid::surf::networkCommunicateCallbacks, + std::bind(&Plugin::networkCommunicateCallback, this, _1, _2, _3, _4, _5)); }