X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ad9d9459261f6f55f69edc333689ad86f2a9f229..808bc801011b8291383a7fb87669eb67f46f3a07:/src/simix/popping_private.h diff --git a/src/simix/popping_private.h b/src/simix/popping_private.h index 341536202a..d532dbd5b8 100644 --- a/src/simix/popping_private.h +++ b/src/simix/popping_private.h @@ -42,24 +42,26 @@ union u_smx_scalar { /** * \brief Represents a simcall to the kernel. */ -typedef struct s_smx_simcall { +struct s_smx_simcall { e_smx_simcall_t call; smx_process_t issuer; + smx_timer_t timer; int mc_value; union u_smx_scalar args[11]; union u_smx_scalar result; -} s_smx_simcall_t, *smx_simcall_t; +}; #define SIMCALL_SET_MC_VALUE(simcall, value) ((simcall)->mc_value = (value)) #define SIMCALL_GET_MC_VALUE(simcall) ((simcall)->mc_value) /******************************** General *************************************/ -XBT_PRIVATE void SIMIX_simcall_answer(smx_simcall_t); -XBT_PRIVATE void SIMIX_simcall_handle(smx_simcall_t, int); -XBT_PRIVATE void SIMIX_simcall_exit(smx_synchro_t); +XBT_PRIVATE void SIMIX_simcall_answer(smx_simcall_t simcall); +XBT_PRIVATE void SIMIX_simcall_handle(smx_simcall_t simcall, int value); +XBT_PRIVATE void SIMIX_simcall_exit(smx_synchro_t synchro); XBT_PRIVATE const char *SIMIX_simcall_name(e_smx_simcall_t kind); -XBT_PRIVATE void SIMIX_run_kernel(void* code); +XBT_PRIVATE void SIMIX_run_kernel(std::function const* code); +XBT_PRIVATE void SIMIX_run_blocking(std::function const* code); SG_END_DECL()