diff options
Diffstat (limited to 'ctru-sys/src/synchronization.rs')
| -rw-r--r-- | ctru-sys/src/synchronization.rs | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/ctru-sys/src/synchronization.rs b/ctru-sys/src/synchronization.rs new file mode 100644 index 0000000..6715d53 --- /dev/null +++ b/ctru-sys/src/synchronization.rs @@ -0,0 +1,19 @@ +//TODO: Implement stuff that bindgen doesn't catch + +use Handle; + +use super::lock::*; + +pub type LightLock = _LOCK_T; +pub type RecursiveLock = _LOCK_RECURSIVE_T; +extern "C" { + pub fn __sync_get_arbiter() -> Handle; + pub fn LightLock_Init(lock: *mut LightLock); + pub fn LightLock_Lock(lock: *mut LightLock); + pub fn LightLock_TryLock(lock: *mut LightLock) -> i32; + pub fn LightLock_Unlock(lock: *mut LightLock); + pub fn RecursiveLock_Init(lock: *mut RecursiveLock); + pub fn RecursiveLock_Lock(lock: *mut RecursiveLock); + pub fn RecursiveLock_TryLock(lock: *mut RecursiveLock) -> i32; + pub fn RecursiveLock_Unlock(lock: *mut RecursiveLock); +} |