Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
reorganize *LinkImpl stuff
[simgrid.git] / src / surf / network_cm02.hpp
index c962616..c6b709f 100644 (file)
@@ -8,8 +8,9 @@
 
 #include <xbt/base.h>
 
-#include "network_interface.hpp"
 #include "simgrid/kernel/resource/NetworkModelIntf.hpp"
+#include "src/kernel/resource/LinkImpl.hpp"
+#include "src/kernel/resource/StandardLinkImpl.hpp"
 #include "xbt/graph.h"
 #include "xbt/string.hpp"
 
@@ -32,27 +33,27 @@ class XBT_PRIVATE NetworkSmpiModel;
 class NetworkCm02Model : public NetworkModel {
   /** @brief Get route information (2-way) */
   bool comm_get_route_info(const s4u::Host* src, const s4u::Host* dst, /* OUT */ double& latency,
-                           std::vector<LinkImpl*>& route, std::vector<LinkImpl*>& back_route,
+                           std::vector<StandardLinkImpl*>& route, std::vector<StandardLinkImpl*>& back_route,
                            std::unordered_set<kernel::routing::NetZoneImpl*>& netzones) const;
   /** @brief Create network action for this communication */
   NetworkCm02Action* comm_action_create(s4u::Host* src, s4u::Host* dst, double size,
-                                        const std::vector<LinkImpl*>& route, bool failed);
+                                        const std::vector<StandardLinkImpl*>& route, bool failed);
   /** @brief Expand link contraint considering this new communication action */
   void comm_action_expand_constraints(const s4u::Host* src, const s4u::Host* dst, const NetworkCm02Action* action,
-                                      const std::vector<LinkImpl*>& route,
-                                      const std::vector<LinkImpl*>& back_route) const;
+                                      const std::vector<StandardLinkImpl*>& route,
+                                      const std::vector<StandardLinkImpl*>& back_route) const;
   /** @brief Set communication bounds for latency and bandwidth */
   void comm_action_set_bounds(const s4u::Host* src, const s4u::Host* dst, double size, NetworkCm02Action* action,
-                              const std::vector<LinkImpl*>& route,
+                              const std::vector<StandardLinkImpl*>& route,
                               const std::unordered_set<kernel::routing::NetZoneImpl*>& netzones, double rate);
   /** @brief Create maxmin variable in communication action */
-  void comm_action_set_variable(NetworkCm02Action* action, const std::vector<LinkImpl*>& route,
-                                const std::vector<LinkImpl*>& back_route);
+  void comm_action_set_variable(NetworkCm02Action* action, const std::vector<StandardLinkImpl*>& route,
+                                const std::vector<StandardLinkImpl*>& back_route);
 
 public:
   explicit NetworkCm02Model(const std::string& name);
-  LinkImpl* create_link(const std::string& name, const std::vector<double>& bandwidths) final;
-  LinkImpl* create_wifi_link(const std::string& name, const std::vector<double>& bandwidths) override;
+  StandardLinkImpl* create_link(const std::string& name, const std::vector<double>& bandwidths) final;
+  StandardLinkImpl* create_wifi_link(const std::string& name, const std::vector<double>& bandwidths) override;
   void update_actions_state_lazy(double now, double delta) override;
   void update_actions_state_full(double now, double delta) override;
   Action* communicate(s4u::Host* src, s4u::Host* dst, double size, double rate) override;
@@ -72,7 +73,7 @@ private:
  * Resource *
  ************/
 
-class NetworkCm02Link : public LinkImpl {
+class NetworkCm02Link : public StandardLinkImpl {
 public:
   NetworkCm02Link(const std::string& name, double bandwidth, lmm::System* system);
   void apply_event(kernel::profile::Event* event, double value) override;