#include "msg/datatypes.h"
/************************** Global ******************************************/
+xbt_error_t MSG_config(const char *name, ...);
void MSG_global_init(void);
void MSG_global_init_args(int *argc, char **argv);
void MSG_set_verbosity(MSG_outputmode_t mode);
void MSG_paje_output(const char *filename);
double MSG_getClock(void);
+double MSG_get_clock(void);
/************************** Host handling ***********************************/
MSG_error_t MSG_host_set_data(m_host_t host, void *data);
const char *MSG_host_get_name(m_host_t host);
m_host_t MSG_host_self(void);
int MSG_get_host_msgload(m_host_t host);
-int MSG_get_msgload(void);
+/* int MSG_get_msgload(void); This function lacks specification; discard it */
+double MSG_get_host_speed(m_host_t h);
void MSG_create_environment(const char *file);
m_task_t MSG_task_create(const char *name, double compute_duration,
double message_size, void *data);
+m_task_t MSG_parallel_task_create(const char *name,
+ int host_nb,
+ const m_host_t *host_list,
+ double *computation_amount,
+ double *communication_amount,
+ void *data);
void *MSG_task_get_data(m_task_t task);
m_process_t MSG_task_get_sender(m_task_t task);
const char *MSG_task_get_name(m_task_t task);
-
+MSG_error_t MSG_task_cancel(m_task_t task);
MSG_error_t MSG_task_destroy(m_task_t task);
MSG_error_t MSG_task_get(m_task_t * task, m_channel_t channel);
+MSG_error_t MSG_task_get_with_time_out(m_task_t * task, m_channel_t channel,
+ double max_duration);
MSG_error_t MSG_task_put(m_task_t task, m_host_t dest,
m_channel_t channel);
MSG_error_t MSG_task_put_bounded(m_task_t task,
m_host_t dest, m_channel_t channel,
double max_rate);
MSG_error_t MSG_task_execute(m_task_t task);
+MSG_error_t MSG_parallel_task_execute(m_task_t task);
+
int MSG_task_Iprobe(m_channel_t channel);
int MSG_task_probe_from(m_channel_t channel);
+MSG_error_t MSG_channel_select_from(m_channel_t channel, double max_duration,
+ int *PID);
MSG_error_t MSG_process_sleep(double nb_sec);
MSG_error_t MSG_get_errno(void);
double MSG_task_get_compute_duration(m_task_t task);
+double MSG_task_get_remaining_computation(m_task_t task);
double MSG_task_get_data_size(m_task_t task);
/************************** Deprecated ***************************************/