Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
further snake_case s4u::Engine
[simgrid.git] / teshsuite / s4u / comm-pt2pt / comm-pt2pt.cpp
index 430bb73..ab82939 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2017. The SimGrid Team. All rights reserved.          */
+/* Copyright (c) 2010-2018. The SimGrid Team. All rights reserved.          */
 
 /* 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. */
@@ -50,8 +50,8 @@ static void sender(std::vector<std::string> args)
   XBT_INFO("Sender spec: %s", args[0].c_str());
   for (unsigned int test = 1; test <= args[0].size(); test++) {
     this_actor::sleep_until(test * 5 - 5);
-    char* mboxName                = bprintf("Test #%u", test);
-    simgrid::s4u::MailboxPtr mbox = simgrid::s4u::Mailbox::byName(mboxName);
+    std::string* mboxName         = new std::string("Test #" + std::to_string(test));
+    simgrid::s4u::MailboxPtr mbox = simgrid::s4u::Mailbox::byName(mboxName->c_str());
 
     switch (args[0][test - 1]) {
       case 'r':
@@ -97,8 +97,8 @@ static void receiver(std::vector<std::string> args)
   XBT_INFO("Receiver spec: %s", args[0].c_str());
   for (unsigned int test = 1; test <= args[0].size(); test++) {
     this_actor::sleep_until(test * 5 - 5);
-    char* mboxName                = bprintf("Test #%u", test);
-    simgrid::s4u::MailboxPtr mbox = simgrid::s4u::Mailbox::byName(mboxName);
+    std::string mboxName          = "Test #" + std::to_string(test);
+    simgrid::s4u::MailboxPtr mbox = simgrid::s4u::Mailbox::byName(mboxName.c_str());
     void* received                = nullptr;
 
     switch (args[0][test - 1]) {
@@ -146,10 +146,9 @@ static void receiver(std::vector<std::string> args)
       default:
         xbt_die("Unknown receiver spec for test %u: '%c'", test, args[0][test - 1]);
     }
-
-    xbt_assert(strcmp(static_cast<char*>(received), mboxName) == 0);
-    xbt_free(received);
-    xbt_free(mboxName);
+    std::string* receivedStr = static_cast<std::string*>(received);
+    xbt_assert(*receivedStr == mboxName);
+    delete receivedStr;
     XBT_INFO("Test %u OK", test);
   }
   simgrid::s4u::this_actor::sleep_for(0.5);
@@ -167,11 +166,11 @@ int main(int argc, char* argv[])
   std::vector<std::string> argSend{specSend.c_str()};
   std::vector<std::string> argRecv{specRecv.c_str()};
 
-  simgrid::s4u::Engine* e = new simgrid::s4u::Engine(&argc, argv);
+  simgrid::s4u::Engine e(&argc, argv);
   if (argc < 2)
     usage(argv[0], specSend.c_str(), specRecv.c_str());
 
-  e->loadPlatform(argv[1]);
+  e.load_platform(argv[1]);
 
   if (argc >= 3) {
     argSend.clear();
@@ -183,14 +182,13 @@ int main(int argc, char* argv[])
   }
   xbt_assert(argSend.front().size() == argRecv.front().size(), "Sender and receiver spec must be of the same size");
 
-  simgrid::s4u::Host** hosts = sg_host_list();
-  simgrid::s4u::Actor::createActor("sender", hosts[0], sender, argSend);
-  simgrid::s4u::Actor::createActor("recver", hosts[1], receiver, argRecv);
-  xbt_free(hosts);
+  std::vector<simgrid::s4u::Host*> hosts = e.get_all_hosts();
+
+  simgrid::s4u::Actor::create("sender", hosts[0], sender, argSend);
+  simgrid::s4u::Actor::create("recver", hosts[1], receiver, argRecv);
 
-  e->run();
-  XBT_INFO("Simulation time %g", e->getClock());
+  e.run();
+  XBT_INFO("Simulation time %g", e.getClock());
 
-  delete e;
   return 0;
 }