LibXenon
Bare-metal Xbox 360 homebrew library
Loading...
Searching...
No Matches
Macros | Typedefs | Functions
lock.h File Reference

Go to the source code of this file.

Macros

#define __LOCK_INIT(CLASS, NAME)   CLASS _LOCK_T NAME = 0
 
#define __LOCK_INIT_RECURSIVE(CLASS, NAME)   CLASS _LOCK_RECURSIVE_T NAME = 0
 
#define __lock_init(NAME)    __libc_lock_init(&(NAME),0)
 
#define __lock_init_recursive(NAME)    __libc_lock_init(&(NAME),1)
 
#define __lock_close(NAME)    __libc_lock_close(&(NAME))
 
#define __lock_close_recursive(NAME)    __libc_lock_close(&(NAME))
 
#define __lock_acquire(NAME)
 
#define __lock_acquire_recursive(NAME)
 
#define __lock_try_acquire(NAME)
 
#define __lock_try_acquire_recursive(NAME)
 
#define __lock_release(NAME)    __libc_lock_release(&(NAME))
 
#define __lock_release_recursive(NAME)    __libc_lock_release(&(NAME))
 

Typedefs

typedef int _LOCK_T
 
typedef int _LOCK_RECURSIVE_T
 

Functions

int __libc_lock_init (int *, int)
 
int __libc_lock_close (int *)
 
int __libc_lock_acquire (int *)
 
int __libc_lock_try_acquire (int *)
 
int __libc_lock_release (int *)
 

Macro Definition Documentation

◆ __lock_acquire

#define __lock_acquire (   NAME)
Value:
if(!(NAME)) __libc_lock_init(&(NAME),0); \
__libc_lock_acquire(&(NAME))
int __libc_lock_init(int *, int)
Definition: newlib.c:66

Definition at line 24 of file lock.h.

◆ __lock_acquire_recursive

#define __lock_acquire_recursive (   NAME)
Value:
if(!(NAME)) __libc_lock_init(&(NAME),1); \
__libc_lock_acquire(&(NAME))

Definition at line 28 of file lock.h.

◆ __lock_close

#define __lock_close (   NAME)     __libc_lock_close(&(NAME))

Definition at line 18 of file lock.h.

◆ __lock_close_recursive

#define __lock_close_recursive (   NAME)     __libc_lock_close(&(NAME))

Definition at line 21 of file lock.h.

◆ __LOCK_INIT

#define __LOCK_INIT (   CLASS,
  NAME 
)    CLASS _LOCK_T NAME = 0

Definition at line 9 of file lock.h.

◆ __lock_init

#define __lock_init (   NAME)     __libc_lock_init(&(NAME),0)

Definition at line 12 of file lock.h.

◆ __LOCK_INIT_RECURSIVE

#define __LOCK_INIT_RECURSIVE (   CLASS,
  NAME 
)    CLASS _LOCK_RECURSIVE_T NAME = 0

Definition at line 10 of file lock.h.

◆ __lock_init_recursive

#define __lock_init_recursive (   NAME)     __libc_lock_init(&(NAME),1)

Definition at line 15 of file lock.h.

◆ __lock_release

#define __lock_release (   NAME)     __libc_lock_release(&(NAME))

Definition at line 40 of file lock.h.

◆ __lock_release_recursive

#define __lock_release_recursive (   NAME)     __libc_lock_release(&(NAME))

Definition at line 43 of file lock.h.

◆ __lock_try_acquire

#define __lock_try_acquire (   NAME)
Value:
if(!(NAME)) __libc_lock_init(&(NAME),0); \
__libc_lock_try_acquire(&(NAME))

Definition at line 32 of file lock.h.

◆ __lock_try_acquire_recursive

#define __lock_try_acquire_recursive (   NAME)
Value:
if(!(NAME)) __libc_lock_init(&(NAME),1); \
__libc_lock_try_acquire(&(NAME))

Definition at line 36 of file lock.h.

Typedef Documentation

◆ _LOCK_RECURSIVE_T

typedef int _LOCK_RECURSIVE_T

Definition at line 7 of file lock.h.

◆ _LOCK_T

typedef int _LOCK_T

Definition at line 6 of file lock.h.

Function Documentation

◆ __libc_lock_acquire()

int __libc_lock_acquire ( int *  lock)

Definition at line 93 of file newlib.c.

◆ __libc_lock_close()

int __libc_lock_close ( int *  lock)

Definition at line 75 of file newlib.c.

◆ __libc_lock_init()

int __libc_lock_init ( int *  lock,
int  recursive 
)

Definition at line 66 of file newlib.c.

◆ __libc_lock_release()

int __libc_lock_release ( int *  lock)

Definition at line 84 of file newlib.c.

◆ __libc_lock_try_acquire()

int __libc_lock_try_acquire ( int *  )