-// handlers' prototypes
-smx_action_t simcall_HANDLER_comm_iprobe(smx_simcall_t simcall, smx_rdv_t rdv,
- int type,int src, int tag,
- int (*match_fun)(void *, void *, smx_action_t),
- void *data);
-smx_rdv_t simcall_HANDLER_rdv_create(smx_simcall_t simcall, const char *name);
-void simcall_HANDLER_rdv_destroy(smx_simcall_t simcall, smx_rdv_t rdv);
-smx_rdv_t simcall_HANDLER_rdv_get_by_name(smx_simcall_t simcall, const char *name);
-int simcall_HANDLER_rdv_comm_count_by_host(smx_simcall_t simcall, smx_rdv_t rdv, smx_host_t host);
-smx_action_t simcall_HANDLER_rdv_get_head(smx_simcall_t simcall, smx_rdv_t rdv);
-smx_process_t simcall_HANDLER_rdv_get_receiver(smx_simcall_t simcall, smx_rdv_t rdv);
-void simcall_HANDLER_rdv_set_receiver(smx_simcall_t simcall, smx_rdv_t rdv,
- smx_process_t process);
-void simcall_HANDLER_comm_send(smx_simcall_t simcall, smx_process_t src, smx_rdv_t rdv,
- double task_size, double rate,
- void *src_buff, size_t src_buff_size,
- int (*match_fun)(void *, void *,smx_action_t),
- void (*copy_data_fun)(smx_action_t, void*, size_t),
- void *data, double timeout);
-smx_action_t simcall_HANDLER_comm_isend(smx_simcall_t simcall, smx_process_t src, smx_rdv_t rdv,
- double task_size, double rate,
- void *src_buff, size_t src_buff_size,
- int (*match_fun)(void *, void *,smx_action_t),
- void (*clean_fun)(void *),
- void (*copy_data_fun)(smx_action_t, void*, size_t),
- void *data, int detached);
-void simcall_HANDLER_comm_recv(smx_simcall_t simcall, smx_rdv_t rdv,
- void *dst_buff, size_t *dst_buff_size,
- int (*match_fun)(void *, void *, smx_action_t),
- void (*copy_data_fun)(smx_action_t, void*, size_t),
- void *data, double timeout, double rate);
-smx_action_t simcall_HANDLER_comm_irecv(smx_simcall_t simcall, smx_rdv_t rdv,
- void *dst_buff, size_t *dst_buff_size,
- int (*match_fun)(void *, void *, smx_action_t),
- void (*copy_data_fun)(smx_action_t, void*, size_t),
- void *data, double rate);
-void simcall_HANDLER_comm_cancel(smx_simcall_t simcall, smx_action_t action);
-double simcall_HANDLER_comm_get_remains(smx_simcall_t simcall, smx_action_t action);
-e_smx_state_t simcall_HANDLER_comm_get_state(smx_simcall_t simcall, smx_action_t action);
-void* simcall_HANDLER_comm_get_src_data(smx_simcall_t simcall, smx_action_t action);
-void* simcall_HANDLER_comm_get_dst_data(smx_simcall_t simcall, smx_action_t action);
-smx_process_t simcall_HANDLER_comm_get_src_proc(smx_simcall_t simcall, smx_action_t action);
-smx_process_t simcall_HANDLER_comm_get_dst_proc(smx_simcall_t simcall, smx_action_t action);
-#ifdef HAVE_LATENCY_BOUND_TRACKING
-int simcall_HANDLER_comm_is_latency_bounded(smx_simcall_t simcall, smx_action_t action);
-#endif