RetroArch
lwp_sema.h
Go to the documentation of this file.
1 #ifndef __LWP_SEMA_H__
2 #define __LWP_SEMA_H__
3 
4 #include <gctypes.h>
5 #include <lwp_threadq.h>
6 
7 #define LWP_SEMA_MODEFIFO 0
8 #define LWP_SEMA_MODEPRIORITY 1
9 
10 #define LWP_SEMA_SUCCESSFUL 0
11 #define LWP_SEMA_UNSATISFIED_NOWAIT 1
12 #define LWP_SEMA_DELETED 2
13 #define LWP_SEMA_TIMEOUT 3
14 #define LWP_SEMA_MAXCNT_EXCEEDED 4
15 
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19 
20 typedef struct _lwpsemattr {
23 } lwp_semattr;
24 
25 typedef struct _lwpsema {
29 } lwp_sema;
30 
31 void __lwp_sema_initialize(lwp_sema *sema,lwp_semattr *attrs,u32 init_count);
34 void __lwp_sema_flush(lwp_sema *sema,u32 status);
35 
36 #ifdef LIBOGC_INTERNAL
37 #include <libogc/lwp_sema.inl>
38 #endif
39 
40 #ifdef __cplusplus
41  }
42 #endif
43 
44 #endif
struct _lwpsema lwp_sema
GLbitfield GLuint64 timeout
Definition: glext.h:7831
Data type definitions.
Definition: lwp_tqdata.h:23
u32 __lwp_sema_surrender(lwp_sema *sema, u32 id)
Definition: lwp_sema.c:12
Definition: lwp_sema.h:25
u32 __lwp_sema_seize(lwp_sema *sema, u32 id, u32 wait, u64 timeout)
Definition: lwp_sema.c:30
lwp_thrqueue wait_queue
Definition: lwp_sema.h:26
Definition: lwp_sema.h:20
void __lwp_sema_flush(lwp_sema *sema, u32 status)
Definition: lwp_sema.c:60
void __lwp_sema_initialize(lwp_sema *sema, lwp_semattr *attrs, u32 init_count)
Definition: lwp_sema.c:4
uint64_t u64
64bit unsigned integer
Definition: gctypes.h:20
struct _lwpsemattr lwp_semattr
lwp_semattr attrs
Definition: lwp_sema.h:27
u32 count
Definition: lwp_sema.h:28
u32 mode
Definition: lwp_sema.h:22
int wait
Definition: wiiuse_internal.h:334
u32 max_cnt
Definition: lwp_sema.h:21
uint32_t u32
32bit unsigned integer
Definition: gctypes.h:19