+void communicator::send_info(const neighbor& dest, double amount)
+{
+ message* msg = new message(INFO_MSG, amount);
+ m_task_t task = MSG_task_create("load msg", 0.0, sizeof *msg, msg);
+ send(dest.get_ctrl_mbox(), task);
+}
+
+void communicator::send_credit(const neighbor& dest, double amount)
+{
+ message* msg = new message(CREDIT_MSG, amount);
+ m_task_t task = MSG_task_create("credit msg", 0.0, sizeof *msg, msg);
+ send(dest.get_ctrl_mbox(), task);
+}
+
+void communicator::send_load(const neighbor& dest, double amount)
+{
+ m_task_t task = MSG_task_create("data msg", 0.0, amount, NULL);
+ send(dest.get_data_mbox(), task);
+}