A
lgorithmique
N
umérique
D
istribuée
Private GIT Repository
projects
/
loba.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update TEST description.
[loba.git]
/
hostdata.cpp
diff --git
a/hostdata.cpp
b/hostdata.cpp
index 787b7ab926a3804c961c7ba3dd7c1a53e4b84671..ee8fadce107447fa32c0a3e7da307130ac89758f 100644
(file)
--- a/
hostdata.cpp
+++ b/
hostdata.cpp
@@
-1,5
+1,6
@@
-#include <cstring>
#include <algorithm>
#include <algorithm>
+#include <cstring>
+#include <functional>
#include <stdexcept>
#include <xbt/log.h>
#include <xbt/sysdep.h>
#include <stdexcept>
#include <xbt/log.h>
#include <xbt/sysdep.h>
@@
-13,23
+14,20
@@
XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(main);
std::vector<hostdata> hostdata::hosts;
std::vector<hostdata> hostdata::hosts;
-// used to compare m_host_t's by name
-struct hostdata::m_host_less {
- bool operator()(const m_host_t& a, const m_host_t& b)
- {
- const char* na = MSG_host_get_name(a);
- const char* nb = MSG_host_get_name(b);
- return strcmp(na, nb) < 0;
- }
-};
-
void hostdata::create()
{
void hostdata::create()
{
+ using std::placeholders::_1;
+ using std::placeholders::_2;
+
int nhosts = MSG_get_host_number();
m_host_t* host_list = MSG_get_host_table();
// only sort hosts for automatically created deployment
if (opt::auto_depl::enabled)
int nhosts = MSG_get_host_number();
m_host_t* host_list = MSG_get_host_table();
// only sort hosts for automatically created deployment
if (opt::auto_depl::enabled)
- std::sort(host_list, host_list + nhosts, m_host_less());
+ std::sort(host_list, host_list + nhosts,
+ std::bind(std::less<int>(),
+ std::bind(strcmp,
+ std::bind(MSG_host_get_name, _1),
+ std::bind(MSG_host_get_name, _2)), 0));
hosts.assign(host_list, host_list + nhosts);
xbt_free(host_list);
hosts.assign(host_list, host_list + nhosts);
xbt_free(host_list);