X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/86a08ab9c895a99c7efb4ee38db24c3541deb6bd..7a4e264744a18d8953c3bd5e4a1df05f5d6088b9:/src/include/simix/simix.h diff --git a/src/include/simix/simix.h b/src/include/simix/simix.h index eb8503f500..6d62fd28a6 100644 --- a/src/include/simix/simix.h +++ b/src/include/simix/simix.h @@ -94,12 +94,6 @@ XBT_PUBLIC(smx_process_t) SIMIX_process_create(const char *name, char **argv, xbt_dict_t properties); -XBT_PUBLIC(void) SIMIX_jprocess_create(const char *name, - smx_host_t host, - void *data, - void *jprocess, void *jenv, - smx_process_t * res); - XBT_PUBLIC(void) SIMIX_process_kill(smx_process_t process); XBT_PUBLIC(void) SIMIX_process_cleanup(void *arg); XBT_PUBLIC(void) SIMIX_process_killall(void); @@ -117,6 +111,7 @@ XBT_PUBLIC(smx_process_t) SIMIX_process_self(void); XBT_PUBLIC(void) SIMIX_process_suspend(smx_process_t process); XBT_PUBLIC(void) SIMIX_process_resume(smx_process_t process); XBT_PUBLIC(int) SIMIX_process_is_suspended(smx_process_t process); +XBT_PUBLIC(int) SIMIX_process_is_blocked(smx_process_t process); /*property handlers*/ XBT_PUBLIC(xbt_dict_t) SIMIX_process_get_properties(smx_process_t host); @@ -174,8 +169,28 @@ XBT_PUBLIC(smx_action_t) SIMIX_action_parallel_execute(char *name, double amount, double rate); - void SIMIX_display_process_status(void); - +XBT_PUBLIC(char *) SIMIX_action_get_name(smx_action_t action); +XBT_PUBLIC(void) SIMIX_action_signal_all(smx_action_t action); +XBT_PUBLIC(void) SIMIX_display_process_status(void); +/************************** Comunication Handling *****************************/ + +/* Public */ +XBT_PUBLIC(smx_rvpoint_t) SIMIX_rvpoint_create(char *name); +XBT_PUBLIC(void) SIMIX_rvpoint_destroy(smx_rvpoint_t rvp); +XBT_PUBLIC(void) SIMIX_network_send(smx_rvpoint_t rdv, void *data, size_t size, double rate, double timeout); +XBT_PUBLIC(void) SIMIX_network_recv(smx_rvpoint_t rvp, void **data, size_t *size, double timeout); +XBT_PUBLIC(void) SIMIX_network_wait(smx_action_t comm); +XBT_PUBLIC(int) SIMIX_network_test(smx_action_t comm); + +/* These should be private to SIMIX */ +smx_comm_t SIMIX_communication_new(smx_host_t src_host, smx_host_t dst_host, + smx_rvpoint_t rdv); +void SIMIX_communication_destroy(smx_comm_t comm); +smx_comm_t SIMIX_rvpoint_get_receiver(smx_rvpoint_t rvp); +smx_comm_t SIMIX_rvpoint_get_sender(smx_rvpoint_t rvp); +static inline void SIMIX_rvpoint_push(smx_rvpoint_t rvp, smx_comm_t comm); +static inline smx_cond_t SIMIX_rvpoint_get_cond(smx_rvpoint_t rvp); +static inline smx_mutex_t SIMIX_rvpoint_get_comm_mutex(smx_rvpoint_t rvp); SG_END_DECL() #endif /* _SIMIX_SIMIX_H */