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
#define ae2f_Sys_WIN
System does not support this version. <ae2f_SysInetMk::prm_VerReq>.
Definition Sys.h:18