#ifndef foosydneymutexhfoo #define foosydneymutexhfoo typedef struct sa_mutex sa_mutex_t; sa_mutex_t* sa_mutex_new(int recursive); void sa_mutex_free(sa_mutex_t *m); void sa_mutex_lock(sa_mutex_t *m); void sa_mutex_unlock(sa_mutex_t *m); int sa_mutex_try_lock(sa_mutex_t *m); typedef struct sa_cond sa_cond_t; sa_cond_t *sa_cond_new(void); void sa_cond_free(sa_cond_t *c); void sa_cond_signal(sa_cond_t *c, int broadcast); int sa_cond_wait(sa_cond_t *c, sa_mutex_t *m); #endif