Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
kill 3 more functions around processes
[simgrid.git] / src / simix / popping_private.h
index 3415362..d532dbd 100644 (file)
@@ -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<void()> const* code);
+XBT_PRIVATE void SIMIX_run_blocking(std::function<void()> const* code);
 
 SG_END_DECL()