]> AND Private Git Repository - loba.git/blobdiff - neighbor.cpp
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
Bug fix: only send to a lesser loaded neighbor!
[loba.git] / neighbor.cpp
index 8715396e9d2be53313dc35c85a34e88b19ba3a8d..c45fc8f3c4daa41627b3ec87f2a7ce72d9c85f9e 100644 (file)
@@ -1,16 +1,30 @@
+#include <limits>
+#include <msg/msg.h>
+
+XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(proc); // needed to compile neighbor.h
+
+#include "misc.h"
+
 #include "neighbor.h"
 
 neighbor::neighbor(const char* hostname)
 #include "neighbor.h"
 
 neighbor::neighbor(const char* hostname)
-    : name(hostname)
-    , ctrl_mbox(hostname)
-    , data_mbox(hostname)
+    : host((hostdata* )MSG_host_get_data(MSG_get_host_by_name(hostname)))
     , load(std::numeric_limits<double>::infinity())
     , debt(0.0)
     , load(std::numeric_limits<double>::infinity())
     , debt(0.0)
+    , to_send(0.0)
 {
 {
-    ctrl_mbox += "_ctrl";
-    data_mbox += "_data";
 }
 
 neighbor::~neighbor()
 {
 }
 }
 
 neighbor::~neighbor()
 {
 }
+
+void neighbor::print(bool verbose,
+                     e_xbt_log_priority_t logp, xbt_log_category_t cat) const
+{
+    if (verbose)
+        XCLOG4(cat, logp, "%s: load = %g ; debt = %g ; to_send = %g",
+              get_name(), get_load(), get_debt(), get_to_send());
+    else
+        XCLOG2(cat, logp, "%s: load = %g", get_name(), get_load());
+}