27
27
smx_mutex_t SIMIX_mutex_init(void);
28
28
void SIMIX_mutex_destroy(smx_mutex_t mutex);
29
void SIMIX_pre_mutex_lock(smx_simcall_t simcall);
29
void SIMIX_pre_mutex_lock(smx_simcall_t simcall, smx_mutex_t mutex);
30
30
int SIMIX_mutex_trylock(smx_mutex_t mutex, smx_process_t issuer);
31
31
void SIMIX_mutex_unlock(smx_mutex_t mutex, smx_process_t issuer);
33
33
smx_cond_t SIMIX_cond_init(void);
34
34
void SIMIX_cond_destroy(smx_cond_t cond);
35
35
void SIMIX_cond_signal(smx_cond_t cond);
36
void SIMIX_pre_cond_wait(smx_simcall_t simcall);
37
void SIMIX_pre_cond_wait_timeout(smx_simcall_t simcall);
36
void SIMIX_pre_cond_wait(smx_simcall_t simcall, smx_cond_t cond, smx_mutex_t mutex);
37
void SIMIX_pre_cond_wait_timeout(smx_simcall_t simcall, smx_cond_t cond,
38
smx_mutex_t mutex, double timeout);
38
39
void SIMIX_cond_broadcast(smx_cond_t cond);
40
41
smx_sem_t SIMIX_sem_init(unsigned int value);
41
42
void SIMIX_sem_destroy(smx_sem_t sem);
42
43
void SIMIX_sem_release(smx_sem_t sem);
43
44
int SIMIX_sem_would_block(smx_sem_t sem);
44
void SIMIX_pre_sem_acquire(smx_simcall_t simcall);
45
void SIMIX_pre_sem_acquire_timeout(smx_simcall_t simcall);
45
void SIMIX_pre_sem_acquire(smx_simcall_t simcall, smx_sem_t sem);
46
void SIMIX_pre_sem_acquire_timeout(smx_simcall_t simcall, smx_sem_t sem, double timeout);
46
47
int SIMIX_sem_get_capacity(smx_sem_t sem);
50
smx_mutex_t SIMIX_pre_mutex_init(smx_simcall_t simcall);
51
void SIMIX_pre_mutex_destroy(smx_simcall_t simcall, smx_mutex_t mutex);
52
int SIMIX_pre_mutex_trylock(smx_simcall_t simcall, smx_mutex_t mutex);
53
void SIMIX_pre_mutex_unlock(smx_simcall_t simcall, smx_mutex_t mutex);
54
smx_cond_t SIMIX_pre_cond_init(smx_simcall_t simcall);
55
void SIMIX_pre_cond_destroy(smx_simcall_t simcall, smx_cond_t cond);
56
void SIMIX_pre_cond_signal(smx_simcall_t simcall, smx_cond_t cond);
57
void SIMIX_pre_cond_broadcast(smx_simcall_t simcall, smx_cond_t cond);
58
smx_sem_t SIMIX_pre_sem_init(smx_simcall_t simcall, unsigned int value);
59
void SIMIX_pre_sem_destroy(smx_simcall_t simcall, smx_sem_t sem);
60
void SIMIX_pre_sem_release(smx_simcall_t simcall, smx_sem_t sem);
61
static XBT_INLINE int SIMIX_pre_sem_would_block(smx_simcall_t simcall,
64
return SIMIX_sem_would_block(sem);
66
int SIMIX_pre_sem_get_capacity(smx_simcall_t simcall, smx_sem_t sem);