From: Arnaud Giersch Date: Fri, 2 Apr 2021 12:46:22 +0000 (+0200) Subject: [sonar] Const in s4u::Disk. X-Git-Tag: v3.28~482^2~10 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/2d30a417c2362b797b83c98f038a47a655a07180 [sonar] Const in s4u::Disk. --- diff --git a/docs/source/app_s4u.rst b/docs/source/app_s4u.rst index 8b50a2578c..42bc82c081 100644 --- a/docs/source/app_s4u.rst +++ b/docs/source/app_s4u.rst @@ -1109,11 +1109,11 @@ I/O operations .. group-tab:: C++ - .. doxygenfunction:: simgrid::s4u::Disk::io_init(sg_size_t size, s4u::Io::OpType type) - .. doxygenfunction:: simgrid::s4u::Disk::read(sg_size_t size) - .. doxygenfunction:: simgrid::s4u::Disk::read_async(sg_size_t size) - .. doxygenfunction:: simgrid::s4u::Disk::write(sg_size_t size) - .. doxygenfunction:: simgrid::s4u::Disk::write_async(sg_size_t size) + .. doxygenfunction:: simgrid::s4u::Disk::io_init(sg_size_t size, s4u::Io::OpType type) const + .. doxygenfunction:: simgrid::s4u::Disk::read(sg_size_t size) const + .. doxygenfunction:: simgrid::s4u::Disk::read_async(sg_size_t size) const + .. doxygenfunction:: simgrid::s4u::Disk::write(sg_size_t size) const + .. doxygenfunction:: simgrid::s4u::Disk::write_async(sg_size_t size) const Signals ------- diff --git a/examples/cpp/io-async/s4u-io-async.cpp b/examples/cpp/io-async/s4u-io-async.cpp index ac72b84144..67ee0b90e4 100644 --- a/examples/cpp/io-async/s4u-io-async.cpp +++ b/examples/cpp/io-async/s4u-io-async.cpp @@ -9,7 +9,7 @@ XBT_LOG_NEW_DEFAULT_CATEGORY(s4u_test, "Messages specific for this s4u example") static void test(sg_size_t size) { - simgrid::s4u::Disk* disk = simgrid::s4u::Host::current()->get_disks().front(); + const simgrid::s4u::Disk* disk = simgrid::s4u::Host::current()->get_disks().front(); XBT_INFO("Hello! read %llu bytes from %s", size, disk->get_cname()); simgrid::s4u::IoPtr activity = disk->io_init(size, simgrid::s4u::Io::OpType::READ); @@ -21,7 +21,7 @@ static void test(sg_size_t size) static void test_waitfor(sg_size_t size) { - simgrid::s4u::Disk* disk = simgrid::s4u::Host::current()->get_disks().front(); + const simgrid::s4u::Disk* disk = simgrid::s4u::Host::current()->get_disks().front(); XBT_INFO("Hello! write %llu bytes from %s", size, disk->get_cname()); simgrid::s4u::IoPtr activity = disk->write_async(size); @@ -36,7 +36,7 @@ static void test_waitfor(sg_size_t size) static void test_cancel(sg_size_t size) { - simgrid::s4u::Disk* disk = simgrid::s4u::Host::current()->get_disks().front(); + const simgrid::s4u::Disk* disk = simgrid::s4u::Host::current()->get_disks().front(); simgrid::s4u::this_actor::sleep_for(0.5); XBT_INFO("Hello! write %llu bytes from %s", size, disk->get_cname()); @@ -50,7 +50,7 @@ static void test_cancel(sg_size_t size) static void test_monitor(sg_size_t size) { - simgrid::s4u::Disk* disk = simgrid::s4u::Host::current()->get_disks().front(); + const simgrid::s4u::Disk* disk = simgrid::s4u::Host::current()->get_disks().front(); simgrid::s4u::this_actor::sleep_for(1); simgrid::s4u::IoPtr activity = disk->write_async(size); diff --git a/examples/cpp/io-disk-raw/s4u-io-disk-raw.cpp b/examples/cpp/io-disk-raw/s4u-io-disk-raw.cpp index 8d05ad6602..8bd956420b 100644 --- a/examples/cpp/io-disk-raw/s4u-io-disk-raw.cpp +++ b/examples/cpp/io-disk-raw/s4u-io-disk-raw.cpp @@ -35,8 +35,8 @@ static void host() XBT_INFO("Read %llu bytes on '%s'", read, disk->get_cname()); /* - Write 800,000 bytes on Disk3 */ - simgrid::s4u::Disk* disk3 = disk_list.back(); - sg_size_t write_on_disk3 = disk3->write(800000); + const simgrid::s4u::Disk* disk3 = disk_list.back(); + sg_size_t write_on_disk3 = disk3->write(800000); XBT_INFO("Wrote %llu bytes on '%s'", write_on_disk3, disk3->get_cname()); /* - Attach some user data to disk1 */ diff --git a/include/simgrid/disk.h b/include/simgrid/disk.h index e11560982d..7418f18dfd 100644 --- a/include/simgrid/disk.h +++ b/include/simgrid/disk.h @@ -15,8 +15,8 @@ XBT_PUBLIC const char* sg_disk_get_name(const_sg_disk_t disk); XBT_PUBLIC sg_host_t sg_disk_get_host(const_sg_disk_t disk); XBT_PUBLIC double sg_disk_read_bandwidth(const_sg_disk_t disk); XBT_PUBLIC double sg_disk_write_bandwidth(const_sg_disk_t disk); -XBT_PUBLIC sg_size_t sg_disk_write(sg_disk_t disk, sg_size_t size); -XBT_PUBLIC sg_size_t sg_disk_read(sg_disk_t disk, sg_size_t size); +XBT_PUBLIC sg_size_t sg_disk_write(const_sg_disk_t disk, sg_size_t size); +XBT_PUBLIC sg_size_t sg_disk_read(const_sg_disk_t disk, sg_size_t size); XBT_PUBLIC void* sg_disk_get_data(const_sg_disk_t disk); XBT_PUBLIC void sg_disk_set_data(sg_disk_t disk, void* data); SG_END_DECL diff --git a/include/simgrid/plugins/file_system.h b/include/simgrid/plugins/file_system.h index dbb6d54cbb..d3bcd84005 100644 --- a/include/simgrid/plugins/file_system.h +++ b/include/simgrid/plugins/file_system.h @@ -96,10 +96,10 @@ class XBT_PUBLIC File : public xbt::Extendable { std::string fullpath_; sg_size_t current_position_ = SEEK_SET; int desc_id = 0; - Disk* local_disk_ = nullptr; + const Disk* local_disk_ = nullptr; std::string mount_point_; - Disk* find_local_disk_on(const Host* host); + const Disk* find_local_disk_on(const Host* host); public: File(const std::string& fullpath, void* userdata); diff --git a/include/simgrid/s4u/Disk.hpp b/include/simgrid/s4u/Disk.hpp index 9d332e4d42..0d051c802f 100644 --- a/include/simgrid/s4u/Disk.hpp +++ b/include/simgrid/s4u/Disk.hpp @@ -71,13 +71,13 @@ public: Disk* set_host(Host* host); Host* get_host() const; - IoPtr io_init(sg_size_t size, s4u::Io::OpType type); + IoPtr io_init(sg_size_t size, s4u::Io::OpType type) const; - IoPtr read_async(sg_size_t size); - sg_size_t read(sg_size_t size); + IoPtr read_async(sg_size_t size) const; + sg_size_t read(sg_size_t size) const; - IoPtr write_async(sg_size_t size); - sg_size_t write(sg_size_t size); + IoPtr write_async(sg_size_t size) const; + sg_size_t write(sg_size_t size) const; void seal(); #ifndef DOXYGEN diff --git a/src/plugins/file_system/s4u_FileSystem.cpp b/src/plugins/file_system/s4u_FileSystem.cpp index 1807a0d392..bfa07cc1c0 100644 --- a/src/plugins/file_system/s4u_FileSystem.cpp +++ b/src/plugins/file_system/s4u_FileSystem.cpp @@ -37,9 +37,9 @@ namespace s4u { simgrid::xbt::Extension FileSystemDiskExt::EXTENSION_ID; simgrid::xbt::Extension FileDescriptorHostExt::EXTENSION_ID; -Disk* File::find_local_disk_on(const Host* host) +const Disk* File::find_local_disk_on(const Host* host) { - Disk* d = nullptr; + const Disk* d = nullptr; size_t longest_prefix_length = 0; for (auto const& disk : host->get_disks()) { std::string current_mount; diff --git a/src/s4u/s4u_Disk.cpp b/src/s4u/s4u_Disk.cpp index 3c7334d4a1..07c2012222 100644 --- a/src/s4u/s4u_Disk.cpp +++ b/src/s4u/s4u_Disk.cpp @@ -74,27 +74,27 @@ void Disk::set_property(const std::string& key, const std::string& value) kernel::actor::simcall([this, &key, &value] { this->pimpl_->set_property(key, value); }); } -IoPtr Disk::io_init(sg_size_t size, Io::OpType type) +IoPtr Disk::io_init(sg_size_t size, Io::OpType type) const { return Io::init()->set_disk(this)->set_size(size)->set_op_type(type); } -IoPtr Disk::read_async(sg_size_t size) +IoPtr Disk::read_async(sg_size_t size) const { return IoPtr(io_init(size, Io::OpType::READ))->vetoable_start(); } -sg_size_t Disk::read(sg_size_t size) +sg_size_t Disk::read(sg_size_t size) const { return IoPtr(io_init(size, Io::OpType::READ))->vetoable_start()->wait()->get_performed_ioops(); } -IoPtr Disk::write_async(sg_size_t size) +IoPtr Disk::write_async(sg_size_t size) const { return IoPtr(io_init(size, Io::OpType::WRITE)->vetoable_start()); } -sg_size_t Disk::write(sg_size_t size) +sg_size_t Disk::write(sg_size_t size) const { return IoPtr(io_init(size, Io::OpType::WRITE))->vetoable_start()->wait()->get_performed_ioops(); } @@ -130,11 +130,11 @@ double sg_disk_write_bandwidth(const_sg_disk_t disk) return disk->get_write_bandwidth(); } -sg_size_t sg_disk_read(sg_disk_t disk, sg_size_t size) +sg_size_t sg_disk_read(const_sg_disk_t disk, sg_size_t size) { return disk->read(size); } -sg_size_t sg_disk_write(sg_disk_t disk, sg_size_t size) +sg_size_t sg_disk_write(const_sg_disk_t disk, sg_size_t size) { return disk->write(size); } diff --git a/teshsuite/s4u/concurrent_rw/concurrent_rw.cpp b/teshsuite/s4u/concurrent_rw/concurrent_rw.cpp index c5e1fecfe7..ee7b828a06 100644 --- a/teshsuite/s4u/concurrent_rw/concurrent_rw.cpp +++ b/teshsuite/s4u/concurrent_rw/concurrent_rw.cpp @@ -9,8 +9,8 @@ XBT_LOG_NEW_DEFAULT_CATEGORY(s4u_test, "Messages specific for this s4u test"); static void host() { - simgrid::s4u::Disk* disk = simgrid::s4u::this_actor::get_host()->get_disks().front(); // Disk1 - aid_t id = simgrid::s4u::this_actor::get_pid(); + const simgrid::s4u::Disk* disk = simgrid::s4u::this_actor::get_host()->get_disks().front(); // Disk1 + aid_t id = simgrid::s4u::this_actor::get_pid(); XBT_INFO("process %ld is writing!", id); disk->write(4000000); XBT_INFO("process %ld goes to sleep for %ld seconds", id, id);