X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/65616c7c082c6cc48b363fff9d811c146ca160b0..c6d6e5b87aed9c7080c981b11f91f2d0205623c3:/examples/cpp/dag-failure/s4u-dag-failure.cpp diff --git a/examples/cpp/dag-failure/s4u-dag-failure.cpp b/examples/cpp/dag-failure/s4u-dag-failure.cpp index 631b24c62c..c2ab8d58c2 100644 --- a/examples/cpp/dag-failure/s4u-dag-failure.cpp +++ b/examples/cpp/dag-failure/s4u-dag-failure.cpp @@ -18,19 +18,16 @@ int main(int argc, char** argv) auto* faulty = e.host_by_name("Faulty Host"); auto* safe = e.host_by_name("Safe Host"); - sg4::Activity::on_completion_cb([](sg4::Activity const& activity) { - const auto* exec = dynamic_cast(&activity); - if (exec == nullptr) // Only Execs are concerned here - return; - if (exec->get_state() == sg4::Activity::State::FINISHED) - XBT_INFO("Activity '%s' is complete (start time: %f, finish time: %f)", exec->get_cname(), exec->get_start_time(), - exec->get_finish_time()); - if (exec->get_state() == sg4::Activity::State::FAILED) { - if (exec->is_parallel()) - XBT_INFO("Activity '%s' has failed. %.f %% remain to be done", exec->get_cname(), - 100 * exec->get_remaining_ratio()); + sg4::Exec::on_completion_cb([](sg4::Exec const& exec) { + if (exec.get_state() == sg4::Activity::State::FINISHED) + XBT_INFO("Activity '%s' is complete (start time: %f, finish time: %f)", exec.get_cname(), exec.get_start_time(), + exec.get_finish_time()); + if (exec.get_state() == sg4::Activity::State::FAILED) { + if (exec.is_parallel()) + XBT_INFO("Activity '%s' has failed. %.f %% remain to be done", exec.get_cname(), + 100 * exec.get_remaining_ratio()); else - XBT_INFO("Activity '%s' has failed. %.f flops remain to be done", exec->get_cname(), exec->get_remaining()); + XBT_INFO("Activity '%s' has failed. %.f flops remain to be done", exec.get_cname(), exec.get_remaining()); } });