A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rename simgrid::kernel::model into simgrid::kernel::resource
[simgrid.git]
/
src
/
surf
/
network_interface.hpp
diff --git
a/src/surf/network_interface.hpp
b/src/surf/network_interface.hpp
index
01a2372
..
b17ddad
100644
(file)
--- a/
src/surf/network_interface.hpp
+++ b/
src/surf/network_interface.hpp
@@
-1,4
+1,4
@@
-/* Copyright (c) 2004-201
7
. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2004-201
8
. 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. */
/* 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. */
@@
-7,6
+7,8
@@
#define SURF_NETWORK_INTERFACE_HPP_
#include "simgrid/s4u/Link.hpp"
#define SURF_NETWORK_INTERFACE_HPP_
#include "simgrid/s4u/Link.hpp"
+#include "src/kernel/lmm/maxmin.hpp"
+#include "src/kernel/model/Resource.hpp"
#include "src/surf/PropertyHolder.hpp"
#include "src/surf/surf_interface.hpp"
#include "xbt/base.h"
#include "src/surf/PropertyHolder.hpp"
#include "src/surf/surf_interface.hpp"
#include "xbt/base.h"
@@
-43,7
+45,7
@@
public:
* @param latency The initial latency of the Link in seconds
* @param policy The sharing policy of the Link
*/
* @param latency The initial latency of the Link in seconds
* @param policy The sharing policy of the Link
*/
- virtual LinkImpl* createLink(const
char*
name, double bandwidth, double latency,
+ virtual LinkImpl* createLink(const
std::string&
name, double bandwidth, double latency,
e_surf_link_sharing_policy_t policy) = 0;
/**
e_surf_link_sharing_policy_t policy) = 0;
/**
@@
-64,7
+66,7
@@
public:
*
* @param system The lmm_system_t to solve
*/
*
* @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 Get the right multiplicative factor for the latency.
@@
-112,9
+114,9
@@
public:
* @brief SURF network link interface class
* @details A Link represents the link between two [hosts](\ref simgrid::surf::HostImpl)
*/
* @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::resource
::Resource, public simgrid::surf::PropertyHolder {
protected:
protected:
- LinkImpl(simgrid::surf::NetworkModel* model, const
char* name, lmm_constraint_t
constraint);
+ LinkImpl(simgrid::surf::NetworkModel* model, const
std::string& name, kernel::lmm::Constraint*
constraint);
~LinkImpl() override;
public:
~LinkImpl() override;
public:
@@
-139,7
+141,7
@@
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:
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:
- *
FULL
DUPLEX) */
+ *
SPLIT
DUPLEX) */
virtual int sharingPolicy();
/** @brief Check if the Link is used */
virtual int sharingPolicy();
/** @brief Check if the Link is used */
@@
-158,8
+160,8
@@
public:
Trace must contain absolute values */
tmgr_trace_event_t stateEvent_ = nullptr;
Trace must contain absolute values */
tmgr_trace_event_t stateEvent_ = nullptr;
-
s_surf_metric_t latency_
= {1.0, 0, nullptr};
-
s_surf_metric_t bandwidth_
= {1.0, 0, nullptr};
+
Metric latency_
= {1.0, 0, nullptr};
+
Metric bandwidth_
= {1.0, 0, nullptr};
/* User data */
void* getData() { return userData; }
/* User data */
void* getData() { return userData; }
@@
-171,9
+173,10
@@
private:
static std::unordered_map<std::string, LinkImpl*>* links;
public:
static std::unordered_map<std::string, LinkImpl*>* links;
public:
- static LinkImpl* byName(
const char*
name);
+ static LinkImpl* byName(
std::string
name);
static int linksCount();
static LinkImpl** linksList();
static int linksCount();
static LinkImpl** linksList();
+ static void linksList(std::vector<s4u::Link*>* linkList);
static void linksExit();
};
static void linksExit();
};
@@
-202,16
+205,16
@@
public:
* @param failed [description]
* @param var The lmm variable associated to this Action if it is part of a LMM component
*/
* @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;
: simgrid::surf::Action(model, cost, failed, var){};
void setState(simgrid::surf::Action::State state) override;
- std::list<LinkImpl*> links();
+
virtual
std::list<LinkImpl*> links();
- double latency_;
- double latCurrent_;
- double weight_;
- double rate_;
+ double latency_
= {}
;
+ double latCurrent_
= {}
;
+ double weight_
= {}
;
+ double rate_
= {}
;
};
}
}
};
}
}