-/* Copyright (c) 2004-2017. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2004-2018. 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. */
#define SURF_NETWORK_INTERFACE_HPP_
#include "simgrid/s4u/Link.hpp"
+#include "src/kernel/lmm/maxmin.hpp"
#include "src/surf/PropertyHolder.hpp"
#include "src/surf/surf_interface.hpp"
#include "xbt/base.h"
*
* @param system The lmm_system_t to solve
*/
- void (*f_networkSolve)(lmm_system_t) = lmm_solve;
+ void (*f_networkSolve)(lmm_system_t) = simgrid::kernel::lmm::lmm_solve;
/**
* @brief Get the right multiplicative factor for the latency.
* @brief SURF network link interface class
* @details A Link represents the link between two [hosts](\ref simgrid::surf::HostImpl)
*/
-class LinkImpl : public simgrid::surf::Resource, public simgrid::surf::PropertyHolder {
+class LinkImpl : public simgrid::kernel::model::Resource, public simgrid::surf::PropertyHolder {
protected:
- LinkImpl(simgrid::surf::NetworkModel* model, const std::string& name, lmm_constraint_t constraint);
+ LinkImpl(simgrid::surf::NetworkModel* model, const std::string& name, kernel::lmm::Constraint* constraint);
~LinkImpl() override;
public:
virtual void setLatency(double value) = 0;
/** @brief The sharing policy is a @{link e_surf_link_sharing_policy_t::EType} (0: FATPIPE, 1: SHARED, 2:
- * FULLDUPLEX) */
+ * SPLITDUPLEX) */
virtual int sharingPolicy();
/** @brief Check if the Link is used */
static LinkImpl* byName(std::string name);
static int linksCount();
static LinkImpl** linksList();
+ static void linksList(std::vector<s4u::Link*>* linkList);
static void linksExit();
};
* @param failed [description]
* @param var The lmm variable associated to this Action if it is part of a LMM component
*/
- NetworkAction(simgrid::surf::Model* model, double cost, bool failed, lmm_variable_t var)
+ NetworkAction(simgrid::surf::Model* model, double cost, bool failed, kernel::lmm::Variable* var)
: simgrid::surf::Action(model, cost, failed, var){};
void setState(simgrid::surf::Action::State state) override;