(a.dependencies_solved() ? "solved" : "NOT solved"), (a.is_assigned() ? "assigned" : "NOT assigned"));
});
- simgrid::s4u::Activity::on_completion_cb([](simgrid::s4u::Activity& activity) {
- const auto* exec = dynamic_cast<simgrid::s4u::Exec*>(&activity);
+ simgrid::s4u::Activity::on_completion_cb([](simgrid::s4u::Activity const& activity) {
+ const auto* exec = dynamic_cast<simgrid::s4u::Exec const*>(&activity);
if (exec != nullptr)
XBT_INFO("Activity '%s' is complete (start time: %f, finish time: %f)", exec->get_cname(), exec->get_start_time(),
exec->get_finish_time());
- const auto* comm = dynamic_cast<simgrid::s4u::Comm*>(&activity);
+ const auto* comm = dynamic_cast<simgrid::s4u::Comm const*>(&activity);
if (comm != nullptr)
XBT_INFO("Activity '%s' is complete", comm->get_cname());
});
auto* faulty = e.host_by_name("Faulty Host");
auto* safe = e.host_by_name("Safe Host");
- sg4::Activity::on_completion_cb([](sg4::Activity& activity) {
- const auto* exec = dynamic_cast<simgrid::s4u::Exec*>(&activity);
+ sg4::Activity::on_completion_cb([](sg4::Activity const& activity) {
+ const auto* exec = dynamic_cast<simgrid::s4u::Exec const*>(&activity);
if (exec == nullptr) // Only Execs are concerned here
return;
if (exec->get_state() == sg4::Activity::State::FINISHED)
(a.dependencies_solved() ? "solved" : "NOT solved"), (a.is_assigned() ? "assigned" : "NOT assigned"));
});
- simgrid::s4u::Activity::on_completion_cb([](simgrid::s4u::Activity& activity) {
- const auto* exec = dynamic_cast<simgrid::s4u::Exec*>(&activity);
+ simgrid::s4u::Activity::on_completion_cb([](simgrid::s4u::Activity const& activity) {
+ const auto* exec = dynamic_cast<simgrid::s4u::Exec const*>(&activity);
if (exec == nullptr) // Only Execs are concerned here
return;
XBT_INFO("Activity '%s' is complete (start time: %f, finish time: %f)", exec->get_cname(), exec->get_start_time(),
std::set<simgrid::s4u::Activity*> vetoed;
e.track_vetoed_activities(&vetoed);
- simgrid::s4u::Activity::on_completion_cb([](simgrid::s4u::Activity& activity) {
+ simgrid::s4u::Activity::on_completion_cb([](simgrid::s4u::Activity const& activity) {
// when an Exec completes, we need to set the potential start time of all its ouput comms
- const auto* exec = dynamic_cast<simgrid::s4u::Exec*>(&activity);
+ const auto* exec = dynamic_cast<simgrid::s4u::Exec const*>(&activity);
if (exec == nullptr) // Only Execs are concerned here
return;
for (const auto& succ : exec->get_successors()) {
(exec.is_assigned() ? "assigned" : "NOT assigned"));
});
- simgrid::s4u::Activity::on_completion_cb([](simgrid::s4u::Activity& activity) {
- const auto* exec = dynamic_cast<simgrid::s4u::Exec*>(&activity);
+ simgrid::s4u::Activity::on_completion_cb([](simgrid::s4u::Activity const& activity) {
+ const auto* exec = dynamic_cast<simgrid::s4u::Exec const*>(&activity);
if (exec == nullptr) // Only Execs are concerned here
return;
XBT_INFO("Activity '%s' is complete (start time: %f, finish time: %f)", exec->get_cname(), exec->get_start_time(),
* resource assigned) */
static void on_veto_cb(const std::function<void(Activity&)>& cb) { on_veto.connect(cb); }
/*! Add a callback fired when the activity completes (either normally, cancelled or failed) */
- static void on_completion_cb(const std::function<void(Activity&)>& cb) { on_completion.connect(cb); }
+ static void on_completion_cb(const std::function<void(Activity const&)>& cb) { on_completion.connect(cb); }
void vetoable_start()
{
}
}
-static void remove_active_exec(s4u::Activity& task)
+static void remove_active_exec(s4u::Activity const& task)
{
- const auto* exec = dynamic_cast<s4u::Exec*>(&task);
+ const auto* exec = dynamic_cast<s4u::Exec const*>(&task);
if (exec == nullptr)
return;
if (not exec->is_assigned())
if (activity.get_host() == get_host())
pre_task();
});
- simgrid::s4u::Activity::on_completion_cb([this](simgrid::s4u::Activity& activity) {
- const auto* exec = dynamic_cast<simgrid::s4u::Exec*>(&activity);
+ simgrid::s4u::Activity::on_completion_cb([this](simgrid::s4u::Activity const& activity) {
+ const auto* exec = dynamic_cast<simgrid::s4u::Exec const*>(&activity);
if (exec == nullptr) // Only Execs are concerned here
return;
// For more than one host (not yet supported), we can access the host via
XBT_WARN("HostLoad plugin currently does not support executions on several hosts");
}
});
- simgrid::s4u::Activity::on_completion_cb([](simgrid::s4u::Activity& activity) {
- const auto* exec = dynamic_cast<simgrid::s4u::Exec*>(&activity);
+ simgrid::s4u::Activity::on_completion_cb([](simgrid::s4u::Activity const& activity) {
+ const auto* exec = dynamic_cast<simgrid::s4u::Exec const*>(&activity);
if (exec == nullptr) // Only Execs are concerned here
return;
if (exec->get_host_number() == 1) { // We only run on one host
xbt_assert(argc > 1, "Usage: %s platform_file\n\nExample: %s two_clusters.xml", argv[0], argv[0]);
e.load_platform(argv[1]);
- simgrid::s4u::Activity::on_completion_cb([](simgrid::s4u::Activity& activity) {
- const auto* exec = dynamic_cast<simgrid::s4u::Exec*>(&activity);
+ simgrid::s4u::Activity::on_completion_cb([](simgrid::s4u::Activity const& activity) {
+ const auto* exec = dynamic_cast<simgrid::s4u::Exec const*>(&activity);
if (exec == nullptr) // Only Execs are concerned here
return;
XBT_INFO("Exec '%s' start time: %f, finish time: %f", exec->get_cname(), exec->get_start_time(),