Working example
This commit is contained in:
30
sdl3/sdl3_mutex.odin
Normal file
30
sdl3/sdl3_mutex.odin
Normal file
@@ -0,0 +1,30 @@
|
||||
package sdl3
|
||||
|
||||
Mutex :: struct {}
|
||||
RWLock :: struct {}
|
||||
Semaphore :: struct {}
|
||||
|
||||
@(default_calling_convention="c", link_prefix="SDL_", require_results)
|
||||
foreign lib {
|
||||
CreateMutex :: proc() -> ^Mutex ---
|
||||
LockMutex :: proc(mutex: ^Mutex) ---
|
||||
TryLockMutex :: proc(mutex: ^Mutex) -> bool ---
|
||||
UnlockMutex :: proc(mutex: ^Mutex) ---
|
||||
DestroyMutex :: proc(mutex: ^Mutex) ---
|
||||
|
||||
CreateRWLock :: proc() -> ^RWLock ---
|
||||
LockRWLockForReading :: proc(rwlock: ^RWLock) ---
|
||||
LockRWLockForWriting :: proc(rwlock: ^RWLock) ---
|
||||
TryLockRWLockForReading :: proc(rwlock: ^RWLock) -> bool ---
|
||||
TryLockRWLockForWriting :: proc(rwlock: ^RWLock) -> bool ---
|
||||
UnlockRWLock :: proc(rwlock: ^RWLock) ---
|
||||
DestroyRWLock :: proc(rwlock: ^RWLock) ---
|
||||
|
||||
CreateSemaphore :: proc(initial_value: Uint32) -> ^Semaphore ---
|
||||
DestroySemaphore :: proc(sem: ^Semaphore) ---
|
||||
GetSemaphoreValue :: proc(sem: ^Semaphore) -> Uint32 ---
|
||||
SignalSemaphore :: proc(sem: ^Semaphore) ---
|
||||
TryWaitSemaphore :: proc(sem: ^Semaphore) -> bool ---
|
||||
WaitSemaphore :: proc(sem: ^Semaphore) ---
|
||||
WaitSemaphoreTimeout :: proc(sem: ^Semaphore, timeout_ms: Sint32) ---
|
||||
}
|
||||
Reference in New Issue
Block a user