X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/12e37132d1b9b141fa8497e17b0629cfd4173c36..fe9f13ea487593ec11c6af50d8150a6743c84114:/src/surf/ptask_L07.hpp diff --git a/src/surf/ptask_L07.hpp b/src/surf/ptask_L07.hpp index 6cba667c1b..c96ca41bdf 100644 --- a/src/surf/ptask_L07.hpp +++ b/src/surf/ptask_L07.hpp @@ -36,29 +36,35 @@ class XBT_PRIVATE L07Action; class HostL07Model : public HostModel { public: HostL07Model(); + HostL07Model(const HostL07Model&) = delete; + HostL07Model& operator=(const HostL07Model&) = delete; ~HostL07Model() override; double next_occuring_event(double now) override; void update_actions_state(double now, double delta) override; - kernel::resource::Action* execute_parallel(size_t host_nb, s4u::Host* const* host_list, const double* flops_amount, - const double* bytes_amount, double rate) override; + kernel::resource::CpuAction* execute_parallel(const std::vector& host_list, const double* flops_amount, + const double* bytes_amount, double rate) override; }; -class CpuL07Model : public CpuModel { +class CpuL07Model : public kernel::resource::CpuModel { public: CpuL07Model(HostL07Model* hmodel, kernel::lmm::System* sys); + CpuL07Model(const CpuL07Model&) = delete; + CpuL07Model& operator=(const CpuL07Model&) = delete; ~CpuL07Model(); - Cpu* create_cpu(simgrid::s4u::Host* host, std::vector* speed_per_pstate, int core) override; + kernel::resource::Cpu* create_cpu(s4u::Host* host, const std::vector& speed_per_pstate, int core) override; HostL07Model *hostModel_; }; class NetworkL07Model : public kernel::resource::NetworkModel { public: NetworkL07Model(HostL07Model* hmodel, kernel::lmm::System* sys); + NetworkL07Model(const NetworkL07Model&) = delete; + NetworkL07Model& operator=(const NetworkL07Model&) = delete; ~NetworkL07Model(); - kernel::resource::LinkImpl* create_link(const std::string& name, double bandwidth, double latency, - s4u::Link::SharingPolicy policy) override; + kernel::resource::LinkImpl* create_link(const std::string& name, const std::vector& bandwidths, + double latency, s4u::Link::SharingPolicy policy) override; kernel::resource::Action* communicate(s4u::Host* src, s4u::Host* dst, double size, double rate) override; @@ -69,19 +75,21 @@ public: * Resource * ************/ -class CpuL07 : public Cpu { +class CpuL07 : public kernel::resource::Cpu { public: - CpuL07(CpuL07Model* model, s4u::Host* host, std::vector* speed_per_pstate, int core); + CpuL07(CpuL07Model* model, s4u::Host* host, const std::vector& speed_per_pstate, int core); + CpuL07(const CpuL07&) = delete; + CpuL07& operator=(const CpuL07&) = delete; ~CpuL07() override; bool is_used() override; void apply_event(kernel::profile::Event* event, double value) override; - kernel::resource::Action* execution_start(double size) override; - kernel::resource::Action* execution_start(double, int) override + kernel::resource::CpuAction* execution_start(double size) override; + kernel::resource::CpuAction* execution_start(double, int) override { THROW_UNIMPLEMENTED; return nullptr; } - kernel::resource::Action* sleep(double duration) override; + kernel::resource::CpuAction* sleep(double duration) override; protected: void on_speed_change() override; @@ -91,6 +99,8 @@ class LinkL07 : public kernel::resource::LinkImpl { public: LinkL07(NetworkL07Model* model, const std::string& name, double bandwidth, double latency, s4u::Link::SharingPolicy policy); + LinkL07(const LinkL07&) = delete; + LinkL07& operator=(const LinkL07&) = delete; ~LinkL07() override; bool is_used() override; void apply_event(kernel::profile::Event* event, double value) override; @@ -101,16 +111,18 @@ public: /********** * Action * **********/ -class L07Action : public CpuAction { - friend Action *CpuL07::execution_start(double size); - friend Action *CpuL07::sleep(double duration); - friend Action* HostL07Model::execute_parallel(size_t host_nb, s4u::Host* const* host_list, const double* flops_amount, - const double* bytes_amount, double rate); +class L07Action : public kernel::resource::CpuAction { + friend CpuAction* CpuL07::execution_start(double size); + friend CpuAction* CpuL07::sleep(double duration); + friend CpuAction* HostL07Model::execute_parallel(const std::vector& host_list, const double* flops_amount, + const double* bytes_amount, double rate); friend Action* NetworkL07Model::communicate(s4u::Host* src, s4u::Host* dst, double size, double rate); public: - L07Action(kernel::resource::Model* model, size_t host_nb, s4u::Host* const* host_list, const double* flops_amount, + L07Action(kernel::resource::Model* model, const std::vector& host_list, const double* flops_amount, const double* bytes_amount, double rate); + L07Action(const L07Action&) = delete; + L07Action& operator=(const L07Action&) = delete; ~L07Action(); void updateBound(); @@ -128,7 +140,7 @@ private: // exec and regular comms }; -} -} +} // namespace surf +} // namespace simgrid #endif /* HOST_L07_HPP_ */