Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
rename create to init. add init with name only. add setters
[simgrid.git] / examples / cpp / operation-variable-load / s4u-operation-variable-load.cpp
index a7d4553..9eea3da 100644 (file)
@@ -44,18 +44,16 @@ int main(int argc, char* argv[])
   auto jupiter  = e.host_by_name("Jupiter");
 
   // Create operations
-  auto comm = simgrid::plugins::CommOp::create("comm", 1e7, tremblay, jupiter);
-  auto exec = simgrid::plugins::ExecOp::create("exec", 1e9, jupiter);
+  auto comm = simgrid::plugins::CommOp::init("comm", 1e7, tremblay, jupiter);
+  auto exec = simgrid::plugins::ExecOp::init("exec", 1e9, jupiter);
 
   // Create the graph by defining dependencies between operations
   comm->add_successor(exec);
 
   // Add a function to be called when operations end for log purpose
-  std::vector<simgrid::plugins::OperationPtr> ops{exec, comm};
-  for (auto op : ops)
-    op->on_end([](simgrid::plugins::Operation* op) {
-      XBT_INFO("Operation %s finished (%d)", op->get_name().c_str(), op->get_count());
-    });
+  simgrid::plugins::Operation::on_end_cb([](simgrid::plugins::Operation* op) {
+    XBT_INFO("Operation %s finished (%d)", op->get_name().c_str(), op->get_count());
+  });
 
   // Create the actor that will inject load during the simulation
   simgrid::s4u::Actor::create("input", tremblay, variable_load, comm);