ae2f_docs
Loading...
Searching...
No Matches
Ftx-WIN.auto.h
1
#
undef
__ae2f_MACRO_GENERATED
2
#
define
__ae2f_MACRO_GENERATED
1
3
4
#
include
<
ae2f
/
Macro
.
h
>
5
#
undef
__ae2f_MACRO_GENERATED
6
#
define
__ae2f_MACRO_GENERATED
1
7
8
/**
9
* @file Futex.auto.h
10
* */
11
#
ifndef
ae2f_Sys_Futex_auto_h
12
#
include
<
ae2f
/
Sys
/
Ftx
.
h
>
13
#
undef
__ae2f_MACRO_GENERATED
14
#
define
__ae2f_MACRO_GENERATED
1
15
#
define
ae2f_Sys_Futex_auto_h
16
17
/** synchronization link */
18
/** #pragma comment(lib, "synchronization") */
19
20
#
define
_ae2f_SysFtxEl_WIN
volatile
LONG
21
22
#
if
ae2f_Sys_WIN
(
!
)
0
23
24
#
define
_ae2f_SysFtxWait_imp_WIN
(
25
/** tparam */
26
27
28
/** param */
29
/* , ae2f_SysFtxEl_t */
ramtmp_wait
,
30
/* ae2f_SysFtxRet_t */
ret_err
,
31
/* ae2f_SysFtxEl_t* const */
prm_uaddr
,
32
/* const ae2f_SysFtxEl_t prm_val const struct timespec* const */
pprm_time_opt
\
33
)
\
34
{
35
(
ramtmp_wait
)
=
(
prm_val
)
;
36
(
ret_err
)
=
WaitOnAddress
(
37
prm_uaddr
38
,
&
(
ramtmp_wait
)
39
,
sizeof
(
ae2f_SysFtxEl_t
)
40
,
(
pprm_time_opt
)
?
(
pprm_time_opt
)
->
tv_nsec
+
(
pprm_time_opt
)
->
tv_sec
*
1000
:
INFINITE
41
)
42
?
ae2f_SysFtxWait_GOOD
43
:
ae2f_SysFtxWait_TMOUT
;
\
44
}
45
46
#
define
_ae2f_SysFtxWakeOne_WIN
(
47
/** tparam */
48
49
50
/** param */
51
/* , ae2f_SysFtxRet_t */
ret_err
,
52
/* ae2f_SysFtxEl_t* const */
prm_uaddr
\
53
)
\
54
{
55
WakeByAddressSingle
(
ae2f_reinterpret_cast
(
PVOID
,
uaddr
)
)
;
56
(
ret_err
)
=
ae2f_SysFtxWake_GOOD
;
\
57
}
58
59
#
endif
60
#
endif
61
62
#
undef
__ae2f_MACRO_GENERATED
63
64
#
define
__ae2f_MACRO_GENERATED
0
ae2f_Sys_WIN
#define ae2f_Sys_WIN
System does not support this version. <ae2f_SysInetMk::prm_VerReq>.
Definition
Sys.h:18
submod
ae2f
Sys
inc
ae2f
Sys
Ftx-WIN.auto.h
Generated by
1.15.0