ReactOS 0.4.15-dev-7958-gcd0bb1a
wdfsync.h
Go to the documentation of this file.
1/*++
2
3Copyright (c) Microsoft Corporation. All rights reserved.
4
5_WdfVersionBuild_
6
7Module Name:
8
9 wdfsync.h
10
11Abstract:
12
13 This module contains contains the Windows Driver Framework synchronization
14 DDIs.
15
16Environment:
17
18 kernel mode only
19
20Revision History:
21
22
23--*/
24
25//
26// NOTE: This header is generated by stubwork. Please make any
27// modifications to the corresponding template files
28// (.x or .y) and use stubwork to regenerate the header
29//
30
31#ifndef _WDFSYNC_H_
32#define _WDFSYNC_H_
33
34#ifndef WDF_EXTERN_C
35 #ifdef __cplusplus
36 #define WDF_EXTERN_C extern "C"
37 #define WDF_EXTERN_C_START extern "C" {
38 #define WDF_EXTERN_C_END }
39 #else
40 #define WDF_EXTERN_C
41 #define WDF_EXTERN_C_START
42 #define WDF_EXTERN_C_END
43 #endif
44#endif
45
47
48
49
50#if (NTDDI_VERSION >= NTDDI_WIN2K)
51
52
53
54//
55// WDF Function: WdfObjectAcquireLock
56//
57typedef
60VOID
61(STDCALL *PFN_WDFOBJECTACQUIRELOCK)(
62 _In_
64 _In_
66 _Acquires_lock_(_Curr_)
68 );
69
72VOID
73WdfObjectAcquireLock(
74 _In_
76 _Acquires_lock_(_Curr_)
78 )
79{
81}
82
83//
84// WDF Function: WdfObjectReleaseLock
85//
86typedef
89VOID
90(STDCALL *PFN_WDFOBJECTRELEASELOCK)(
91 _In_
93 _In_
95 _Releases_lock_(_Curr_)
97 );
98
101VOID
102WdfObjectReleaseLock(
103 _In_
105 _Releases_lock_(_Curr_)
107 )
108{
110}
111
112//
113// WDF Function: WdfWaitLockCreate
114//
115typedef
118WDFAPI
120(STDCALL *PFN_WDFWAITLOCKCREATE)(
121 _In_
125 _Out_
126 WDFWAITLOCK* Lock
127 );
128
133WdfWaitLockCreate(
136 _Out_
137 WDFWAITLOCK* Lock
138 )
139{
141}
142
143//
144// WDF Function: WdfWaitLockAcquire
145//
146typedef
153WDFAPI
156 _In_
158 _In_
160 WDFWAITLOCK Lock,
163 );
164
174 _In_
176 WDFWAITLOCK Lock,
179 )
180{
182}
183
184//
185// WDF Function: WdfWaitLockRelease
186//
187typedef
189WDFAPI
190VOID
191(STDCALL *PFN_WDFWAITLOCKRELEASE)(
192 _In_
194 _In_
196 _Releases_lock_(_Curr_)
197 WDFWAITLOCK Lock
198 );
199
202VOID
203WdfWaitLockRelease(
204 _In_
206 _Releases_lock_(_Curr_)
207 WDFWAITLOCK Lock
208 )
209{
211}
212
213//
214// WDF Function: WdfSpinLockCreate
215//
216typedef
219WDFAPI
221(STDCALL *PFN_WDFSPINLOCKCREATE)(
222 _In_
226 _Out_
227 WDFSPINLOCK* SpinLock
228 );
229
234WdfSpinLockCreate(
237 _Out_
238 WDFSPINLOCK* SpinLock
239 )
240{
242}
243
244//
245// WDF Function: WdfSpinLockAcquire
246//
247typedef
250WDFAPI
251VOID
252(STDCALL *PFN_WDFSPINLOCKACQUIRE)(
253 _In_
255 _In_
257 _Acquires_lock_(_Curr_)
259 WDFSPINLOCK SpinLock
260 );
261
265VOID
266WdfSpinLockAcquire(
267 _In_
269 _Acquires_lock_(_Curr_)
271 WDFSPINLOCK SpinLock
272 )
273{
275}
276
277//
278// WDF Function: WdfSpinLockRelease
279//
280typedef
283WDFAPI
284VOID
285(STDCALL *PFN_WDFSPINLOCKRELEASE)(
286 _In_
288 _In_
290 _Releases_lock_(_Curr_)
292 WDFSPINLOCK SpinLock
293 );
294
298VOID
299WdfSpinLockRelease(
300 _In_
302 _Releases_lock_(_Curr_)
304 WDFSPINLOCK SpinLock
305 )
306{
308}
309
310
311
312#endif // (NTDDI_VERSION >= NTDDI_WIN2K)
313
314
316
317#endif // _WDFSYNC_H_
318
#define VOID
Definition: acefi.h:82
LONG NTSTATUS
Definition: precomp.h:26
return
Definition: dirsup.c:529
#define _Acquires_lock_(lock)
#define _Releases_lock_(lock)
#define NULL
Definition: types.h:112
#define NTSTATUS
Definition: precomp.h:21
#define _IRQL_requires_min_(irql)
Definition: driverspecs.h:231
#define _IRQL_restores_
Definition: driverspecs.h:233
#define _IRQL_saves_
Definition: driverspecs.h:235
#define _IRQL_raises_(irql)
Definition: driverspecs.h:228
#define PASSIVE_LEVEL
Definition: env_spec_w32.h:693
#define DISPATCH_LEVEL
Definition: env_spec_w32.h:696
DriverGlobals
#define _Always_(annos)
Definition: ms_sal.h:270
#define _Must_inspect_result_
Definition: ms_sal.h:558
#define _Out_
Definition: ms_sal.h:345
#define _When_(expr, annos)
Definition: ms_sal.h:254
#define _In_
Definition: ms_sal.h:308
#define _In_opt_
Definition: ms_sal.h:309
__GNU_EXTENSION typedef __int64 * PLONGLONG
Definition: ntbasedef.h:382
static ULONG Timeout
Definition: ping.c:61
#define STATUS_SUCCESS
Definition: shellext.h:65
#define STDCALL
Definition: wdf.h:45
#define WdfFunctions
Definition: wdf.h:66
_Must_inspect_result_ _In_ WDFCOLLECTION _In_ WDFOBJECT Object
PWDF_DRIVER_GLOBALS WdfDriverGlobals
@ WdfSpinLockAcquireTableIndex
Definition: wdffuncenum.h:341
@ WdfObjectReleaseLockTableIndex
Definition: wdffuncenum.h:336
@ WdfSpinLockReleaseTableIndex
Definition: wdffuncenum.h:342
@ WdfWaitLockCreateTableIndex
Definition: wdffuncenum.h:337
@ WdfWaitLockAcquireTableIndex
Definition: wdffuncenum.h:338
@ WdfWaitLockReleaseTableIndex
Definition: wdffuncenum.h:339
@ WdfObjectAcquireLockTableIndex
Definition: wdffuncenum.h:335
@ WdfSpinLockCreateTableIndex
Definition: wdffuncenum.h:340
_Must_inspect_result_ WDFAPI NTSTATUS(STDCALL * PFN_WDFWAITLOCKACQUIRE)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ _Requires_lock_not_held_(_Curr_) WDFWAITLOCK Lock, _In_opt_ PLONGLONG Timeout)
Definition: wdfsync.h:155
_Must_inspect_result_ FORCEINLINE NTSTATUS WdfWaitLockAcquire(_In_ _Requires_lock_not_held_(_Curr_) WDFWAITLOCK Lock, _In_opt_ PLONGLONG Timeout)
Definition: wdfsync.h:173
_In_ _Requires_lock_not_held_(_Curr_) _Acquires_lock_(_Curr_) _IRQL_saves_ WDFSPINLOCK SpinLock)
Definition: wdfsync.h:256
#define WDF_EXTERN_C_END
Definition: wdfsync.h:42
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFSPINLOCK * SpinLock
Definition: wdfsync.h:228
#define WDF_EXTERN_C_START
Definition: wdfsync.h:41
_Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS(STDCALL *PFN_WDFWAITLOCKCREATE)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals
Definition: wdfsync.h:117
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES SpinLockAttributes
Definition: wdfsync.h:225
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES LockAttributes
Definition: wdfsync.h:124
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFWAITLOCK * Lock
Definition: wdfsync.h:127
_In_ _Requires_lock_held_(_Curr_) _Releases_lock_(_Curr_) WDFOBJECT Object)
Definition: wdfsync.h:94
#define WDFAPI
Definition: wdftypes.h:53
#define FORCEINLINE
Definition: wdftypes.h:67