const char *function_name,
xbt_dynar_t arguments);
-XBT_PUBLIC(double) MSG_get_clock(void);
+XBT_INLINE XBT_PUBLIC(double) MSG_get_clock(void);
XBT_PUBLIC(unsigned long int) MSG_get_sent_msg(void);
XBT_PUBLIC(void) MSG_task_set_name(m_task_t task, const char *name);
XBT_PUBLIC(MSG_error_t) MSG_task_cancel(m_task_t task);
XBT_PUBLIC(MSG_error_t) MSG_task_destroy(m_task_t task);
-XBT_PUBLIC(void) MSG_task_refcount_dec(m_task_t task);
XBT_PUBLIC(MSG_error_t) MSG_task_get(m_task_t * task, m_channel_t channel);
XBT_PUBLIC(MSG_error_t) MSG_task_get_with_timeout(m_task_t * task,
XBT_PUBLIC(int) MSG_task_Iprobe(m_channel_t channel);
XBT_PUBLIC(int) MSG_task_probe_from(m_channel_t channel);
XBT_PUBLIC(int) MSG_task_probe_from_host(int channel, m_host_t host);
-XBT_PUBLIC(MSG_error_t) MSG_channel_select_from(m_channel_t channel,
- double max_duration,
- int *PID);
XBT_PUBLIC(MSG_error_t) MSG_process_sleep(double nb_sec);
XBT_PUBLIC(MSG_error_t) MSG_get_errno(void);
XBT_PUBLIC(msg_comm_t) MSG_task_isend(m_task_t task, const char *alias);
XBT_PUBLIC(msg_comm_t) MSG_task_irecv(m_task_t * task, const char *alias);
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(m_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(int) MSG_task_listen_from_host(const char *alias,
m_host_t host);
-XBT_PUBLIC(MSG_error_t)
- MSG_alias_select_from(const char *alias, double timeout, int *PID);
-
XBT_PUBLIC(MSG_error_t)
MSG_task_send_with_timeout(m_task_t task, const char *alias,
double timeout);
double timeout);
/************************** Action handling **********************************/
-typedef void (*msg_action_fun) (xbt_dynar_t args);
+typedef void (*msg_action_fun) (char*const* args);
XBT_PUBLIC(void) MSG_action_register(const char *action_name,
msg_action_fun function);
XBT_PUBLIC(void) MSG_action_unregister(const char *action_name);
#include "instr/instr.h"
+/* Used only by the bindings */
+#include "simix/simix.h"
+XBT_PUBLIC(smx_context_t) MSG_process_get_smx_ctx(m_process_t process);
+
+
SG_END_DECL()
#endif