X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/af72ee01a6a0c01b1a67dc3095f952fd8ab1dd42..1363ce9624f4327f3ad5c934b15736a776637dfd:/examples/cpp/io-file-system/s4u-io-file-system.cpp diff --git a/examples/cpp/io-file-system/s4u-io-file-system.cpp b/examples/cpp/io-file-system/s4u-io-file-system.cpp index 0fcb3c381d..40e0048e09 100644 --- a/examples/cpp/io-file-system/s4u-io-file-system.cpp +++ b/examples/cpp/io-file-system/s4u-io-file-system.cpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2006-2021. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2006-2023. 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. */ @@ -10,12 +10,13 @@ #include "simgrid/s4u.hpp" XBT_LOG_NEW_DEFAULT_CATEGORY(s4u_test, "a sample log category"); +namespace sg4 = simgrid::s4u; class MyHost { public: - void show_info(std::vector const& disks) const + void show_info(std::vector const& disks) const { - XBT_INFO("Storage info on %s:", simgrid::s4u::Host::current()->get_cname()); + XBT_INFO("Storage info on %s:", sg4::Host::current()->get_cname()); for (auto const& d : disks) { // Retrieve disk's information @@ -26,13 +27,13 @@ public: void operator()() const { - std::vector const& disks = simgrid::s4u::Host::current()->get_disks(); + std::vector const& disks = sg4::Host::current()->get_disks(); show_info(disks); // Open a non-existing file to create it std::string filename = "/scratch/tmp/data.txt"; - auto* file = new simgrid::s4u::File(filename, nullptr); + auto* file = sg4::File::open(filename, nullptr); sg_size_t write = file->write(200000); // Write 200,000 bytes XBT_INFO("Create a %llu bytes file named '%s' on /scratch", write, filename.c_str()); @@ -57,20 +58,19 @@ public: // Test attaching some user data to the file file->set_data(new std::string("777")); - const auto* file_data = static_cast(file->get_data()); + auto file_data = file->get_unique_data(); XBT_INFO("User data attached to the file: %s", file_data->c_str()); - delete file_data; // Close the file - delete file; + file->close(); show_info(disks); // Reopen the file and then unlink it - file = new simgrid::s4u::File("/scratch/tmp/simgrid.readme", nullptr); + file = sg4::File::open("/scratch/tmp/simgrid.readme", nullptr); XBT_INFO("Unlink file: '%s'", file->get_path()); file->unlink(); - delete file; // Unlinking the file on "disk" does not free the object + file->close(); // Unlinking the file on "disk" does not close the file and free the object show_info(disks); } @@ -78,10 +78,10 @@ public: int main(int argc, char** argv) { - simgrid::s4u::Engine e(&argc, argv); + sg4::Engine e(&argc, argv); sg_storage_file_system_init(); e.load_platform(argv[1]); - simgrid::s4u::Actor::create("host", simgrid::s4u::Host::by_name("bob"), MyHost()); + sg4::Actor::create("host", e.host_by_name("bob"), MyHost()); e.run(); return 0;