X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ab1a94e98438ed2d29533aca9e613d667237c3d0..dac5d8074d0d4971410ad158c52f1bc6f1dda9a4:/include/simgrid/simix.h diff --git a/include/simgrid/simix.h b/include/simgrid/simix.h index 762e7aae26..95edc8c321 100644 --- a/include/simgrid/simix.h +++ b/include/simgrid/simix.h @@ -32,22 +32,21 @@ namespace simix { class Context; class ContextFactory; class Mutex; + class Mailbox; } } typedef simgrid::simix::Context *smx_context_t; typedef simgrid::simix::Process *smx_process_t; - -/** - * \ingroup simix_synchro_management - */ typedef simgrid::simix::Mutex *smx_mutex_t; +typedef simgrid::simix::Mailbox *smx_mailbox_t; #else typedef struct s_smx_context *smx_context_t; typedef struct s_smx_process *smx_process_t; typedef struct s_smx_mutex *smx_mutex_t; +typedef struct s_smx_mailbox *smx_mailbox_t; #endif @@ -110,10 +109,6 @@ typedef enum { /** @} */ /******************************* Networking ***********************************/ -/** - * \ingroup simix_mbox_management - */ -typedef struct s_smx_mailbox *smx_mailbox_t; /* Process creation/destruction callbacks */ typedef void (*void_pfn_smxprocess_t) (smx_process_t); @@ -129,17 +124,17 @@ SG_BEGIN_DECL() XBT_PUBLIC(xbt_dynar_t) SIMIX_process_get_runnable(); XBT_PUBLIC(smx_process_t) SIMIX_process_from_PID(int PID); -XBT_PUBLIC(xbt_dynar_t) SIMIX_processes_as_dynar(); +XBT_PUBLIC(xbt_dynar_t) SIMIX_processes_as_dynar(void); /* parallelism */ -XBT_PUBLIC(int) SIMIX_context_is_parallel(); -XBT_PUBLIC(int) SIMIX_context_get_nthreads(); +XBT_PUBLIC(int) SIMIX_context_is_parallel(void); +XBT_PUBLIC(int) SIMIX_context_get_nthreads(void); XBT_PUBLIC(void) SIMIX_context_set_nthreads(int nb_threads); XBT_PUBLIC(int) SIMIX_context_get_parallel_threshold(); XBT_PUBLIC(void) SIMIX_context_set_parallel_threshold(int threshold); -XBT_PUBLIC(e_xbt_parmap_mode_t) SIMIX_context_get_parallel_mode(); +XBT_PUBLIC(e_xbt_parmap_mode_t) SIMIX_context_get_parallel_mode(void); XBT_PUBLIC(void) SIMIX_context_set_parallel_mode(e_xbt_parmap_mode_t mode); -XBT_PUBLIC(int) SIMIX_is_maestro(); +XBT_PUBLIC(int) SIMIX_is_maestro(void); /********************************** Global ************************************/ @@ -164,7 +159,7 @@ typedef struct s_smx_timer* smx_timer_t; XBT_PUBLIC(smx_timer_t) SIMIX_timer_set(double date, void (*function)(void*), void *arg); XBT_PUBLIC(void) SIMIX_timer_remove(smx_timer_t timer); -XBT_PUBLIC(double) SIMIX_timer_next(); +XBT_PUBLIC(double) SIMIX_timer_next(void); XBT_PUBLIC(double) SIMIX_timer_get_date(smx_timer_t timer); XBT_PUBLIC(void) SIMIX_display_process_status(); @@ -176,7 +171,7 @@ XBT_PUBLIC(void) SIMIX_create_environment(const char *file); XBT_PUBLIC(void) SIMIX_function_register(const char *name, xbt_main_func_t code); XBT_PUBLIC(void) SIMIX_function_register_default(xbt_main_func_t code); -XBT_PUBLIC(void) SIMIX_init_application(); +XBT_PUBLIC(void) SIMIX_init_application(void); XBT_PUBLIC(void) SIMIX_launch_application(const char *file); XBT_PUBLIC(void) SIMIX_process_set_function(const char* process_host, @@ -204,21 +199,21 @@ XBT_PUBLIC(smx_process_t) SIMIX_process_attach( XBT_PUBLIC(void) SIMIX_process_detach(); /*********************************** Host *************************************/ -XBT_PUBLIC(sg_host_t) SIMIX_host_self(); -XBT_PUBLIC(const char*) SIMIX_host_self_get_name(); +XBT_PUBLIC(sg_host_t) SIMIX_host_self(void); +XBT_PUBLIC(const char*) SIMIX_host_self_get_name(void); XBT_PUBLIC(void) SIMIX_host_on(sg_host_t host); XBT_PUBLIC(void) SIMIX_host_off(sg_host_t host, smx_process_t issuer); XBT_PUBLIC(void) SIMIX_host_self_set_data(void *data); -XBT_PUBLIC(void*) SIMIX_host_self_get_data(); +XBT_PUBLIC(void*) SIMIX_host_self_get_data(void); /********************************* Process ************************************/ XBT_PUBLIC(smx_process_t) SIMIX_process_ref(smx_process_t process); XBT_PUBLIC(void) SIMIX_process_unref(smx_process_t process); -XBT_PUBLIC(int) SIMIX_process_count(); -XBT_PUBLIC(smx_process_t) SIMIX_process_self(); -XBT_PUBLIC(const char*) SIMIX_process_self_get_name(); +XBT_PUBLIC(int) SIMIX_process_count(void); +XBT_PUBLIC(smx_process_t) SIMIX_process_self(void); +XBT_PUBLIC(const char*) SIMIX_process_self_get_name(void); XBT_PUBLIC(void) SIMIX_process_self_set_data(void *data); -XBT_PUBLIC(void*) SIMIX_process_self_get_data(); +XBT_PUBLIC(void*) SIMIX_process_self_get_data(void); XBT_PUBLIC(smx_context_t) SIMIX_process_get_context(smx_process_t process); XBT_PUBLIC(void) SIMIX_process_set_context(smx_process_t p,smx_context_t c); XBT_PUBLIC(int) SIMIX_process_has_pending_comms(smx_process_t process); @@ -325,7 +320,6 @@ XBT_PUBLIC(e_smx_state_t) simcall_process_sleep(double duration); /***** Rendez-vous points *****/ XBT_PUBLIC(smx_mailbox_t) simcall_mbox_create(const char *name); -XBT_PUBLIC(smx_mailbox_t) simcall_mbox_get_by_name(const char *name); XBT_PUBLIC(smx_synchro_t) simcall_mbox_front(smx_mailbox_t mbox); XBT_PUBLIC(void) simcall_mbox_set_receiver(smx_mailbox_t mbox , smx_process_t process); @@ -364,10 +358,10 @@ XBT_PUBLIC(smx_synchro_t) simcall_comm_iprobe(smx_mailbox_t mbox, int type, int XBT_PUBLIC(void) simcall_comm_cancel(smx_synchro_t comm); /* FIXME: waitany is going to be a vararg function, and should take a timeout */ -XBT_PUBLIC(unsigned int) simcall_comm_waitany(xbt_dynar_t comms); +XBT_PUBLIC(unsigned int) simcall_comm_waitany(xbt_dynar_t comms, double timeout); XBT_PUBLIC(void) simcall_comm_wait(smx_synchro_t comm, double timeout); XBT_PUBLIC(int) simcall_comm_test(smx_synchro_t comm); -XBT_PUBLIC(int) simcall_comm_testany(xbt_dynar_t comms); +XBT_PUBLIC(int) simcall_comm_testany(smx_synchro_t* comms, size_t count); /************************** Tracing handling **********************************/ XBT_PUBLIC(void) simcall_set_category(smx_synchro_t synchro, const char *category);