wut  v1.7.0
Wii U Toolchain
fastmutex.h
Go to the documentation of this file.
1 #pragma once
2 #include <wut.h>
3 #include "threadqueue.h"
4 
14 #ifdef __cplusplus
15 extern "C" {
16 #endif
17 
18 typedef struct OSFastMutex OSFastMutex;
19 typedef struct OSFastMutexLink OSFastMutexLink;
20 typedef struct OSFastCondition OSFastCondition;
21 
23 {
26 };
27 WUT_CHECK_OFFSET(OSFastMutexLink, 0x00, next);
28 WUT_CHECK_OFFSET(OSFastMutexLink, 0x04, prev);
29 WUT_CHECK_SIZE(OSFastMutexLink, 0x08);
30 
31 #define OS_FAST_MUTEX_TAG 0x664D7458u
32 
34 {
35  uint32_t tag;
36  const char *name;
37  WUT_UNKNOWN_BYTES(4);
40  WUT_UNKNOWN_BYTES(16);
41 };
42 WUT_CHECK_OFFSET(OSFastMutex, 0x00, tag);
43 WUT_CHECK_OFFSET(OSFastMutex, 0x04, name);
44 WUT_CHECK_OFFSET(OSFastMutex, 0x0c, queue);
45 WUT_CHECK_OFFSET(OSFastMutex, 0x14, link);
46 WUT_CHECK_SIZE(OSFastMutex, 0x2c);
47 
48 void
50  const char *name);
51 
52 void
54 
55 void
57 
58 BOOL
60 
61 #ifdef __cplusplus
62 }
63 #endif
64 
uint32_t tag
Definition: fastmutex.h:35
OSFastMutex * next
Definition: fastmutex.h:24
const char * name
Definition: fastmutex.h:36
OSFastMutex * prev
Definition: fastmutex.h:25
OSThreadSimpleQueue queue
Definition: fastmutex.h:37
OSFastMutexLink link
Definition: fastmutex.h:39
void OSFastMutex_Lock(OSFastMutex *mutex)
void OSFastMutex_Init(OSFastMutex *mutex, const char *name)
void OSFastMutex_Unlock(OSFastMutex *mutex)
BOOL OSFastMutex_TryLock(OSFastMutex *mutex)
int32_t BOOL
Definition: wut_types.h:7