continue;
if (l < my_load+2) {
found=true;
- pneigh[i]->set_load(l+1);
+ pneigh[i]->add_load(1);
pneigh[i]->add_to_send(1);
INFO1("sent to %s",pneigh[i]->get_name());
my_load--;
double balance = (my_load - min) / 2;
DEBUG6("%d:%g %d:%g %g %g", imin, min, imax, max, my_load, balance);
pneigh[imin]->set_to_send(balance);
- pneigh[imin]->set_load(min+balance);
+ pneigh[imin]->add_load(balance);
return balance;
} else {
return 0.0;
~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