X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/5e2c8aeab0ec45fb9945018b9de3cab5c1019875..91fe7904c884b2d0f5e7408d6e9d1d99886bd365:/src/surf/network_smpi.hpp diff --git a/src/surf/network_smpi.hpp b/src/surf/network_smpi.hpp index e16ba5e2c0..cba39f90db 100644 --- a/src/surf/network_smpi.hpp +++ b/src/surf/network_smpi.hpp @@ -1,42 +1,33 @@ -#include "network_cm02.hpp" - -/*********** - * Classes * - ***********/ - -class NetworkSmpiModel; -typedef NetworkSmpiModel *NetworkSmpiModelPtr; +/* Copyright (c) 2013-2022. The SimGrid Team. + * All rights reserved. */ -/********* - * Tools * - *********/ +/* 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. */ -/********* - * Model * - *********/ +#ifndef SIMGRID_SURF_NETWORK_SMPI_HPP +#define SIMGRID_SURF_NETWORK_SMPI_HPP -class NetworkSmpiModel : public NetworkCm02Model { -public: - NetworkSmpiModel(); - ~NetworkSmpiModel(); - - void gapAppend(double size, const NetworkCm02LinkLmmPtr link, NetworkCm02ActionLmmPtr action); - void gapRemove(ActionLmmPtr action); - double latencyFactor(double size); - double bandwidthFactor(double size); - double bandwidthConstraint(double rate, double bound, double size); - void communicateCallBack() {}; -}; +#include +#include "network_cm02.hpp" -/************ - * Resource * - ************/ - +namespace simgrid { +namespace kernel { +namespace resource { -/********** - * Action * - **********/ +class XBT_PRIVATE NetworkSmpiModel : public NetworkCm02Model { +public: + using NetworkCm02Model::NetworkCm02Model; + double get_latency_factor(double size) override; + double get_bandwidth_factor(double size) override; +protected: + void check_lat_factor_cb() override; + void check_bw_factor_cb() override; +}; +} // namespace resource +} // namespace kernel +} // namespace simgrid +#endif