Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
simplify writing in model setup + may fix issue with unit-tests
[simgrid.git] / src / surf / network_smpi.hpp
index a8dd24c..cd2133d 100644 (file)
@@ -1,48 +1,33 @@
-/* Copyright (c) 2013-2015. The SimGrid Team.
+/* Copyright (c) 2013-2021. 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. */
 
-#include "network_cm02.hpp"
-
-/***********
- * Classes *
- ***********/
+#ifndef SIMGRID_SURF_NETWORK_SMPI_HPP
+#define SIMGRID_SURF_NETWORK_SMPI_HPP
 
-class NetworkSmpiModel;
+#include <xbt/base.h>
 
-/*********
- * Tools *
- *********/
+#include "network_cm02.hpp"
 
-/*********
- * Model *
- *********/
+namespace simgrid {
+namespace kernel {
+namespace resource {
 
-class NetworkSmpiModel : public NetworkCm02Model {
+class XBT_PRIVATE NetworkSmpiModel : public NetworkCm02Model {
 public:
-  NetworkSmpiModel();
-  ~NetworkSmpiModel();
-
-  using NetworkModel::gapAppend; // Explicit about overloaded method (silence Woverloaded-virtual from clang)
-  void gapAppend(double size, Link* link, NetworkAction *action);
-  void gapRemove(Action *action);
-  double latencyFactor(double size);
-  double bandwidthFactor(double size);
-  double bandwidthConstraint(double rate, double bound, double size);
-  void communicateCallBack() {};
-};
-
-
-/************
- * Resource *
- ************/
-
-
-/**********
- * Action *
- **********/
+  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