-XBT_PUBLIC(msg_comm_t) MSG_task_isend(msg_task_t task, const char *alias);
-XBT_PUBLIC(msg_comm_t) MSG_task_isend_bounded(msg_task_t task, const char *alias, double maxrate);
-XBT_PUBLIC(msg_comm_t) MSG_task_isend_with_matching(msg_task_t task, const char *alias,
- int (*match_fun)(void*,void*, smx_synchro_t), void *match_data);
-
-XBT_PUBLIC(void) MSG_task_dsend(msg_task_t task, const char *alias, void_f_pvoid_t cleanup);
-XBT_PUBLIC(void) MSG_task_dsend_bounded(msg_task_t task, const char *alias, void_f_pvoid_t cleanup, double maxrate);
-XBT_PUBLIC(msg_comm_t) MSG_task_irecv(msg_task_t * task, const char *alias);
-XBT_PUBLIC(msg_comm_t) MSG_task_irecv_bounded(msg_task_t * task, const char *alias, double rate);
-XBT_PUBLIC(int) MSG_comm_test(msg_comm_t comm);
-XBT_PUBLIC(int) MSG_comm_testany(xbt_dynar_t comms);
-XBT_PUBLIC(void) MSG_comm_destroy(msg_comm_t comm);
-XBT_PUBLIC(msg_error_t) MSG_comm_wait(msg_comm_t comm, double timeout);
-XBT_PUBLIC(void) MSG_comm_waitall(msg_comm_t * comm, int nb_elem, double timeout);
-XBT_PUBLIC(int) MSG_comm_waitany(xbt_dynar_t comms);
-XBT_PUBLIC(msg_task_t) MSG_comm_get_task(msg_comm_t comm);
-XBT_PUBLIC(msg_error_t) MSG_comm_get_status(msg_comm_t comm);
-
-XBT_PUBLIC(int) MSG_task_listen(const char *alias);
-XBT_PUBLIC(msg_error_t) MSG_task_send_with_timeout(msg_task_t task, const char *alias, double timeout);
-XBT_PUBLIC(msg_error_t) MSG_task_send_with_timeout_bounded(msg_task_t task, const char *alias, double timeout, double maxrate);
-XBT_PUBLIC(msg_error_t) MSG_task_send(msg_task_t task, const char *alias);
-XBT_PUBLIC(msg_error_t) MSG_task_send_bounded(msg_task_t task, const char *alias, double rate);
-XBT_PUBLIC(int) MSG_task_listen_from(const char *alias);
-XBT_PUBLIC(void) MSG_task_set_category (msg_task_t task, const char *category);
-XBT_PUBLIC(const char *) MSG_task_get_category (msg_task_t task);
-
-/************************** Mailbox handling ************************************/
-/* @brief MSG_mailbox_new - create a new mailbox.
- * Creates a new mailbox identified by the key specified by the parameter alias and add it in the global dictionary.
- * @param alias The alias of the mailbox to create.
- * @return The newly created mailbox.
- */
-XBT_PUBLIC(msg_mailbox_t) MSG_mailbox_new(const char *alias);
-
-/* @brief MSG_mailbox_get_by_alias - get a mailbox from its alias.
- * Returns the mailbox associated with the key specified by the parameter alias. If the mailbox does not exists,
- * the function creates it.
- * @param alias The alias of the mailbox to return.
- * @return The mailbox associated with the alias specified as parameter or a new one if the key doesn't match.
- */
-XBT_PUBLIC(msg_mailbox_t) MSG_mailbox_get_by_alias(const char *alias);
-
-/* @brief MSG_mailbox_is_empty - test if a mailbox is empty.
- * Tests if a mailbox is empty (contains no msg task).
- * @param mailbox The mailbox to get test.
- * @return 1 if the mailbox is empty, 0 otherwise.
- */
-XBT_PUBLIC(int) MSG_mailbox_is_empty(msg_mailbox_t mailbox);
-
-/* @brief MSG_mailbox_set_async - set a mailbox as eager
- * Sets the mailbox to a permanent receiver mode. Messages sent to this mailbox will then be sent just after the send
- * is issued, without waiting for the corresponding receive.
- * This call should be done before issuing any receive, and on the receiver's side only
- * @param alias The alias of the mailbox to modify.
- */
-XBT_PUBLIC(void) MSG_mailbox_set_async(const char *alias);
-
-/* @brief MSG_mailbox_get_head - get the task at the head of a mailbox.
- * Returns the task at the head of the mailbox. This function does not remove the task from the mailbox.
- * @param mailbox The mailbox concerned by the operation.
- * @return The task at the head of the mailbox.
- */
-XBT_PUBLIC(msg_task_t) MSG_mailbox_front(msg_mailbox_t mailbox);
-
-XBT_PUBLIC(msg_error_t) MSG_mailbox_get_task_ext(msg_mailbox_t mailbox, msg_task_t * task, msg_host_t host,
- double timeout);
-XBT_PUBLIC(msg_error_t) MSG_mailbox_get_task_ext_bounded(msg_mailbox_t mailbox, msg_task_t *task, msg_host_t host,
- double timeout, double rate);
-
-/************************** Action handling **********************************/
-XBT_PUBLIC(msg_error_t) MSG_action_trace_run(char *path);
-XBT_PUBLIC(void) MSG_action_init(void);
-XBT_PUBLIC(void) MSG_action_exit(void);
-
-/** @brief Opaque type representing a semaphore
- * @ingroup msg_synchro
- * @hideinitializer
- */
-typedef struct s_smx_sem *msg_sem_t; // Yeah that's a rename of the smx_sem_t which doesnt require smx_sem_t to be declared here
-XBT_PUBLIC(msg_sem_t) MSG_sem_init(int initial_value);
-XBT_PUBLIC(void) MSG_sem_acquire(msg_sem_t sem);
-XBT_PUBLIC(msg_error_t) MSG_sem_acquire_timeout(msg_sem_t sem, double timeout);
-XBT_PUBLIC(void) MSG_sem_release(msg_sem_t sem);
-XBT_PUBLIC(void) MSG_sem_get_capacity(msg_sem_t sem);
-XBT_PUBLIC(void) MSG_sem_destroy(msg_sem_t sem);
-XBT_PUBLIC(int) MSG_sem_would_block(msg_sem_t sem);
-
-/** @brief Opaque type representing a barrier identifier
- * @ingroup msg_synchro
- * @hideinitializer
- */
-
-#define MSG_BARRIER_SERIAL_PROCESS -1
-typedef struct s_xbt_bar *msg_bar_t;
-XBT_PUBLIC(msg_bar_t) MSG_barrier_init( unsigned int count);
-XBT_PUBLIC(void) MSG_barrier_destroy(msg_bar_t bar);
-XBT_PUBLIC(int) MSG_barrier_wait(msg_bar_t bar);
-
-/** @brief Opaque type describing a Virtual Machine.
- * @ingroup msg_VMs
+XBT_PUBLIC msg_comm_t MSG_task_isend(msg_task_t task, const char* alias);
+XBT_PUBLIC msg_comm_t MSG_task_isend_bounded(msg_task_t task, const char* alias, double maxrate);
+
+XBT_PUBLIC void MSG_task_dsend(msg_task_t task, const char* alias, void_f_pvoid_t cleanup);
+XBT_PUBLIC void MSG_task_dsend_bounded(msg_task_t task, const char* alias, void_f_pvoid_t cleanup, double maxrate);
+XBT_PUBLIC msg_comm_t MSG_task_irecv(msg_task_t* task, const char* alias);
+XBT_PUBLIC msg_comm_t MSG_task_irecv_bounded(msg_task_t* task, const char* alias, double rate);
+XBT_PUBLIC int MSG_comm_test(msg_comm_t comm);
+XBT_PUBLIC int MSG_comm_testany(xbt_dynar_t comms);
+XBT_PUBLIC void MSG_comm_destroy(msg_comm_t comm);
+XBT_PUBLIC msg_error_t MSG_comm_wait(msg_comm_t comm, double timeout);
+XBT_PUBLIC void MSG_comm_waitall(msg_comm_t* comm, int nb_elem, double timeout);
+XBT_PUBLIC int MSG_comm_waitany(xbt_dynar_t comms);
+XBT_PUBLIC msg_task_t MSG_comm_get_task(msg_comm_t comm);
+XBT_PUBLIC msg_error_t MSG_comm_get_status(msg_comm_t comm);
+
+/** @brief Check if there is a communication going on in a mailbox.