KallistiOS git master
Independent SDK for the Sega Dreamcast
Loading...
Searching...
No Matches
_pthreadtypes.h
Go to the documentation of this file.
1/* KallistiOS ##version##
2
3 sys/_pthreadtypes.h
4 Copyright (C) 2023, 2024 Lawrence Sebald
5
6*/
7
8#ifndef __SYS_PTHREADTYPES_H
9#define __SYS_PTHREADTYPES_H
10
11#include <sys/cdefs.h>
12__BEGIN_DECLS
13
14typedef unsigned long int pthread_t;
15
20
21typedef struct pthread_rwlockattr_t {
22 /* Empty */
23 char _unused;
25
26#ifndef __PTHREAD_HAVE_CONDATTR_TYPE
27#define __PTHREAD_HAVE_CONDATTR_TYPE 1
28#define __PTHREAD_CONDATTR_SIZE 16
29
34
35#undef __PTHREAD_CONDATTR_SIZE
36#endif /* !__PTHREAD_HAVE_CONDATTR_TYPE */
37
38typedef struct pthread_barrierattr_t {
39 /* Empty */
40 char _unused;
42
43/* The following types have no public elements. Their implementation is hidden
44 from the public header. */
45
46#ifndef __PTHREAD_HAVE_ATTR_TYPE
47#define __PTHREAD_HAVE_ATTR_TYPE 1
48#define __PTHREAD_ATTR_SIZE 32
49
50typedef union pthread_attr_t {
52 long int __align;
54
55#undef __PTHREAD_ATTR_SIZE
56#endif /* !__PTHREAD_HAVE_ATTR_TYPE */
57
58#ifndef __PTHREAD_HAVE_MUTEX_TYPE
59#define __PTHREAD_HAVE_MUTEX_TYPE 1
60#define __PTHREAD_MUTEX_SIZE 32
61
62typedef union pthread_mutex_t {
64 long int __align;
66
67#undef __PTHREAD_MUTEX_SIZE
68#endif /* !__pthread_have_mutex_type */
69
70#ifndef __PTHREAD_HAVE_COND_TYPE
71#define __PTHREAD_HAVE_COND_TYPE 1
72#define __PTHREAD_COND_SIZE 16
73
74typedef union pthread_cond_t {
76 long int __align;
78
79#undef __PTHREAD_COND_SIZE
80#endif /* !__PTHREAD_HAVE_COND_TYPE */
81
82#ifndef __PTHREAD_HAVE_RWLOCK_TYPE
83#define __PTHREAD_HAVE_RWLOCK_TYPE 1
84#define __PTHREAD_RWLOCK_SIZE 32
85
86typedef union pthread_rwlock_t {
88 long int __align;
90
91#undef __PTHREAD_RWLOCK_SIZE
92#endif /* !__PTHREAD_HAVE_RWLOCK_TYPE */
93
94#ifndef __PTHREAD_HAVE_BARRIER_TYPE
95#define __PTHREAD_HAVE_BARRIER_TYPE 1
96#define __PTHREAD_BARRIER_SIZE 64
97
98typedef union pthread_barrier_t {
100 long int __align;
102
103#undef __PTHREAD_BARRIER_SIZE
104#endif /* !__PTHREAD_HAVE_BARRIER_TYPE */
105
106__END_DECLS
107
108#endif /* !__SYS_PTHREADTYPES_H */
#define __PTHREAD_MUTEX_SIZE
Definition _pthreadtypes.h:60
#define __PTHREAD_ATTR_SIZE
Definition _pthreadtypes.h:48
unsigned long int pthread_t
Definition _pthreadtypes.h:14
#define __PTHREAD_BARRIER_SIZE
Definition _pthreadtypes.h:96
#define __PTHREAD_CONDATTR_SIZE
Definition _pthreadtypes.h:28
#define __PTHREAD_COND_SIZE
Definition _pthreadtypes.h:72
#define __PTHREAD_RWLOCK_SIZE
Definition _pthreadtypes.h:84
Definition _pthreadtypes.h:38
char _unused
Definition _pthreadtypes.h:40
Definition _pthreadtypes.h:16
int mtype
Definition _pthreadtypes.h:17
int robust
Definition _pthreadtypes.h:18
Definition _pthreadtypes.h:21
char _unused
Definition _pthreadtypes.h:23
Definition _pthreadtypes.h:50
unsigned char __data[__PTHREAD_ATTR_SIZE]
Definition _pthreadtypes.h:51
long int __align
Definition _pthreadtypes.h:52
Definition _pthreadtypes.h:98
unsigned char __data[__PTHREAD_BARRIER_SIZE]
Definition _pthreadtypes.h:99
long int __align
Definition _pthreadtypes.h:100
Definition _pthreadtypes.h:74
long int __align
Definition _pthreadtypes.h:76
unsigned char __data[__PTHREAD_COND_SIZE]
Definition _pthreadtypes.h:75
Definition _pthreadtypes.h:30
long int __align
Definition _pthreadtypes.h:32
unsigned char __data[__PTHREAD_CONDATTR_SIZE]
Definition _pthreadtypes.h:31
Definition _pthreadtypes.h:62
unsigned char __data[__PTHREAD_MUTEX_SIZE]
Definition _pthreadtypes.h:63
long int __align
Definition _pthreadtypes.h:64
Definition _pthreadtypes.h:86
unsigned char __data[__PTHREAD_RWLOCK_SIZE]
Definition _pthreadtypes.h:87
long int __align
Definition _pthreadtypes.h:88