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

Private GIT Repository
Fix error reporting in opt::parse_args.
[loba.git] / neighbor.h
index 9607c072f49c8dbd5de11adab45e3eaca3746e81..62b9b66bf90488b95a5c53f509cbbdfcff281401 100644 (file)
@@ -2,6 +2,7 @@
 #define NEIGHBOR_H
 
 #include <utility>
+#include <xbt/log.h>
 #include "hostdata.h"
 
 class neighbor {
@@ -10,21 +11,29 @@ public:
     ~neighbor();
 
     // returns name, ctrl or data mbox
-    const char* get_name() const        { return host->get_name(); }
+    const char* get_name() const        { return host->get_name();      }
     const char* get_ctrl_mbox() const   { return host->get_ctrl_mbox(); }
     const char* get_data_mbox() const   { return host->get_data_mbox(); }
 
     // Getter and setter for load
-    double get_load() const             { return load;   }
-    void set_load(double amount)        { load = amount; }
+    double get_load() const             { return load;    }
+    void set_load(double amount)        { load = amount;  }
+    void add_load(double amount)        { load += amount; }
 
     // Getter and setter for debt
     double get_debt() const             { return debt;   }
     void set_debt(double amount)        { debt = amount; }
 
     // Getter and setter for to_send
-    double get_to_send() const          { return to_send;   }
-    void set_to_send(double amount)     { to_send = amount; }
+    double get_to_send() const          { return to_send;    }
+    void set_to_send(double amount)     { to_send = amount;  }
+    void add_to_send(double amount)     { to_send += amount; }
+
+    // Prints its name and load on given category, with given
+    // priority.  If verbose is true, prints debt and to_send too.
+    void print(bool verbose = false,
+               e_xbt_log_priority_t logp = xbt_log_priority_info,
+               xbt_log_category_t cat = _XBT_LOGV(default)) const;
 
 private:
     const hostdata* host;       // pointer to this neighbor's hostdata