X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/4de2a148bea34f550b79c07fb5e80ac36e6aa0e9..59a2292cca5e121a5db0c933112d4c421ded712a:/src/kernel/actor/CommObserver.hpp diff --git a/src/kernel/actor/CommObserver.hpp b/src/kernel/actor/CommObserver.hpp index dff6de5ab2..77584250bd 100644 --- a/src/kernel/actor/CommObserver.hpp +++ b/src/kernel/actor/CommObserver.hpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2019-2022. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2019-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. */ @@ -13,11 +13,9 @@ #include -namespace simgrid { -namespace kernel { -namespace actor { +namespace simgrid::kernel::actor { -class ActivityTestSimcall : public ResultingSimcall { +class ActivityTestSimcall final : public ResultingSimcall { activity::ActivityImpl* const activity_; public: @@ -28,9 +26,10 @@ public: bool is_visible() const override { return true; } activity::ActivityImpl* get_activity() const { return activity_; } void serialize(std::stringstream& stream) const override; + std::string to_string() const override; }; -class ActivityTestanySimcall : public ResultingSimcall { +class ActivityTestanySimcall final : public ResultingSimcall { const std::vector& activities_; std::vector indexes_; // indexes in activities_ pointing to ready activities (=whose test() is positive) int next_value_ = 0; @@ -40,13 +39,14 @@ public: bool is_visible() const override { return true; } bool is_enabled() override { return true; /* can return -1 if no activity is ready */ } void serialize(std::stringstream& stream) const override; - int get_max_consider() override; + std::string to_string() const override; + int get_max_consider() const override; void prepare(int times_considered) override; const std::vector& get_activities() const { return activities_; } int get_value() const { return next_value_; } }; -class ActivityWaitSimcall : public ResultingSimcall { +class ActivityWaitSimcall final : public ResultingSimcall { activity::ActivityImpl* activity_; const double timeout_; @@ -56,6 +56,7 @@ public: { } void serialize(std::stringstream& stream) const override; + std::string to_string() const override; bool is_visible() const override { return true; } bool is_enabled() override; activity::ActivityImpl* get_activity() const { return activity_; } @@ -63,7 +64,7 @@ public: double get_timeout() const { return timeout_; } }; -class ActivityWaitanySimcall : public ResultingSimcall { +class ActivityWaitanySimcall final : public ResultingSimcall { const std::vector& activities_; std::vector indexes_; // indexes in activities_ pointing to ready activities (=whose test() is positive) const double timeout_; @@ -73,15 +74,16 @@ public: ActivityWaitanySimcall(ActorImpl* actor, const std::vector& activities, double timeout); bool is_enabled() override; void serialize(std::stringstream& stream) const override; + std::string to_string() const override; bool is_visible() const override { return true; } void prepare(int times_considered) override; - int get_max_consider() override; + int get_max_consider() const override; const std::vector& get_activities() const { return activities_; } double get_timeout() const { return timeout_; } int get_value() const { return next_value_; } }; -class CommIsendSimcall : public SimcallObserver { +class CommIsendSimcall final : public SimcallObserver { activity::MailboxImpl* mbox_; double payload_size_; double rate_; @@ -89,8 +91,8 @@ class CommIsendSimcall : public SimcallObserver { size_t src_buff_size_; void* payload_; bool detached_; - activity::CommImpl* comm_; - int tag_; + activity::CommImpl* comm_ = {}; + int tag_ = {}; std::function match_fun_; std::function clean_fun_; // used to free the synchro in case of problem after a detached send @@ -118,6 +120,7 @@ public: { } void serialize(std::stringstream& stream) const override; + std::string to_string() const override; bool is_visible() const override { return true; } activity::MailboxImpl* get_mailbox() const { return mbox_; } double get_payload_size() const { return payload_size_; } @@ -134,14 +137,14 @@ public: auto const& get_copy_data_fun() const { return copy_data_fun_; } }; -class CommIrecvSimcall : public SimcallObserver { +class CommIrecvSimcall final : public SimcallObserver { activity::MailboxImpl* mbox_; unsigned char* dst_buff_; size_t* dst_buff_size_; void* payload_; double rate_; - int tag_; - activity::CommImpl* comm_; + activity::CommImpl* comm_ = {}; + int tag_ = {}; std::function match_fun_; std::function copy_data_fun_; // used to copy data if not default one @@ -162,6 +165,7 @@ public: { } void serialize(std::stringstream& stream) const override; + std::string to_string() const override; bool is_visible() const override { return true; } activity::MailboxImpl* get_mailbox() const { return mbox_; } double get_rate() const { return rate_; } @@ -175,8 +179,6 @@ public: auto const& get_copy_data_fun() const { return copy_data_fun_; } }; -} // namespace actor -} // namespace kernel -} // namespace simgrid +} // namespace simgrid::kernel::actor #endif