XBT_PUBLIC(const char*) simcall_names[]; /* Name of each simcall */
#include "popping_enum.h" /* Definition of e_smx_simcall_t, with one value per simcall */
+#include "mc/mc_interface.h" /* Definition of mc_snapshot_t, used by one simcall */
-typedef int (*simix_match_func_t)(void *, void *, smx_action_t);
-typedef void (*simix_copy_data_func_t)(smx_action_t, void*, size_t);
+typedef int (*simix_match_func_t)(void *, void *, smx_synchro_t);
+typedef void (*simix_copy_data_func_t)(smx_synchro_t, void*, size_t);
typedef void (*simix_clean_func_t)(void *);
typedef void (*FPtr)(void); // Hide the ugliness
typedef struct s_smx_simcall {
e_smx_simcall_t call;
smx_process_t issuer;
-#ifdef HAVE_MC
int mc_value;
-#endif
union u_smx_scalar args[11];
union u_smx_scalar result;
} s_smx_simcall_t, *smx_simcall_t;
-#if HAVE_MC
#define SIMCALL_SET_MC_VALUE(simcall, value) ((simcall)->mc_value = (value))
#define SIMCALL_GET_MC_VALUE(simcall) ((simcall)->mc_value)
-#else
-#define SIMCALL_SET_MC_VALUE(simcall, value) ((void)0)
-#define SIMCALL_GET_MC_VALUE(simcall) 0
-#endif
#include "popping_accessors.h"
void SIMIX_simcall_answer(smx_simcall_t);
void SIMIX_simcall_handle(smx_simcall_t, int);
-void SIMIX_simcall_exit(smx_action_t);
+void SIMIX_simcall_exit(smx_synchro_t);
const char *SIMIX_simcall_name(e_smx_simcall_t kind);
-//FIXME put it in a better place
-xbt_dict_t simcall_HANDLER_asr_get_properties(smx_simcall_t simcall, const char *name);
SG_END_DECL()