#ifndef DEF_MUTEX_H #define DEF_MUTEX_H #include #define MUTEX_LOCKED 1 #define MUTEX_UNLOCKED 0 //A mutex is just an uint32_t typedef uint32_t mutex_t; #ifdef __cplusplus extern "C" { #endif int mutex_lock(mutex_t* mutex); //wait for mutex to be free int mutex_lockE(mutex_t* mutex); //lock mutex only if free, returns !0 if locked, 0 if was busy void mutex_unlock(mutex_t* mutex); #ifdef __cplusplus } #endif #endif