ReactOS 0.4.16-dev-1946-g52006dd
ioapiset.h
Go to the documentation of this file.
1/*
2 * ioapiset.h
3 *
4 * Interface definitions for api-ms-win-core-io-l1
5 *
6 * This file is part of the ReactOS SDK.
7 *
8 * Contributors:
9 * Created by Timo Kreuzer <timo.kreuzer@reactos.org>
10 *
11 * THIS SOFTWARE IS NOT COPYRIGHTED
12 *
13 * This source code is offered for use in the public domain. You may
14 * use, modify or distribute it freely.
15 *
16 * This code is distributed in the hope that it will be useful but
17 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
18 * DISCLAIMED. This includes but is not limited to warranties of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
20 *
21 */
22
23#ifndef _IO_APISET_H_
24#define _IO_APISET_H_
25
26#pragma once
27
28#include <minwindef.h>
29
30#ifdef __cplusplus
31extern "C" {
32#endif
33
35BOOL
39
46 _In_opt_ HANDLE ExistingCompletionPort,
47 _In_ ULONG_PTR CompletionKey,
48 _In_ DWORD NumberOfConcurrentThreads);
49
51BOOL
54 _In_ HANDLE hDevice,
56 _In_reads_bytes_opt_(nInBufferSize) LPVOID lpInBuffer,
57 _In_ DWORD nInBufferSize,
58 _Out_writes_bytes_to_opt_(nOutBufferSize,*lpBytesReturned) LPVOID lpOutBuffer,
59 _In_ DWORD nOutBufferSize,
62
64BOOL
69 _Out_ LPDWORD lpNumberOfBytesTransferred,
70 _In_ BOOL bWait);
71
73BOOL
78 _Out_ LPDWORD lpNumberOfBytesTransferred,
79 _In_ DWORD dwMilliseconds,
80 _In_ BOOL bAlertable);
81
83BOOL
86 _In_ HANDLE CompletionPort,
87 _Out_ LPDWORD lpNumberOfBytesTransferred,
88 _Out_ PULONG_PTR lpCompletionKey,
90 _In_ DWORD dwMilliseconds);
91
93BOOL
96 _In_ HANDLE CompletionPort,
97 _In_ DWORD dwNumberOfBytesTransferred,
98 _In_ ULONG_PTR dwCompletionKey,
100
101#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
102
104BOOL
105WINAPI
107 _In_ HANDLE CompletionPort,
108 _Out_writes_to_(ulCount,*ulNumEntriesRemoved) LPOVERLAPPED_ENTRY lpCompletionPortEntries,
109 _In_ ULONG ulCount,
110 _Out_ PULONG ulNumEntriesRemoved,
111 _In_ DWORD dwMilliseconds,
112 _In_ BOOL fAlertable);
113
115BOOL
116WINAPI
120
122BOOL
123WINAPI
126
127#endif // (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
128
129#ifdef __cplusplus
130}
131#endif
132
133#endif // _IO_APISET_H_
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
_Must_inspect_result_ _In_opt_ PFLT_INSTANCE _Out_ PHANDLE FileHandle
Definition: fltkernel.h:1231
#define WINBASEAPI
Definition: green.h:8
WINBASEAPI BOOL WINAPI GetQueuedCompletionStatus(_In_ HANDLE CompletionPort, _Out_ LPDWORD lpNumberOfBytesTransferred, _Out_ PULONG_PTR lpCompletionKey, _Out_ LPOVERLAPPED *lpOverlapped, _In_ DWORD dwMilliseconds)
WINBASEAPI BOOL WINAPI GetOverlappedResult(_In_ HANDLE hFile, _In_ LPOVERLAPPED lpOverlapped, _Out_ LPDWORD lpNumberOfBytesTransferred, _In_ BOOL bWait)
WINBASEAPI BOOL WINAPI PostQueuedCompletionStatus(_In_ HANDLE CompletionPort, _In_ DWORD dwNumberOfBytesTransferred, _In_ ULONG_PTR dwCompletionKey, _In_opt_ LPOVERLAPPED lpOverlapped)
WINBASEAPI BOOL WINAPI DeviceIoControl(_In_ HANDLE hDevice, _In_ DWORD dwIoControlCode, _In_reads_bytes_opt_(nInBufferSize) LPVOID lpInBuffer, _In_ DWORD nInBufferSize, _Out_writes_bytes_to_opt_(nOutBufferSize, *lpBytesReturned) LPVOID lpOutBuffer, _In_ DWORD nOutBufferSize, _Out_opt_ LPDWORD lpBytesReturned, _Inout_opt_ LPOVERLAPPED lpOverlapped)
WINBASEAPI BOOL WINAPI CancelSynchronousIo(_In_ HANDLE hThread)
WINBASEAPI BOOL WINAPI CancelIo(_In_ HANDLE hFile)
WINBASEAPI BOOL WINAPI GetOverlappedResultEx(_In_ HANDLE hFile, _In_ LPOVERLAPPED lpOverlapped, _Out_ LPDWORD lpNumberOfBytesTransferred, _In_ DWORD dwMilliseconds, _In_ BOOL bAlertable)
WINBASEAPI BOOL WINAPI CancelIoEx(_In_ HANDLE hFile, _In_opt_ LPOVERLAPPED lpOverlapped)
WINBASEAPI BOOL WINAPI GetQueuedCompletionStatusEx(_In_ HANDLE CompletionPort, _Out_writes_to_(ulCount, *ulNumEntriesRemoved) LPOVERLAPPED_ENTRY lpCompletionPortEntries, _In_ ULONG ulCount, _Out_ PULONG ulNumEntriesRemoved, _In_ DWORD dwMilliseconds, _In_ BOOL fAlertable)
WINBASEAPI _Ret_maybenull_ HANDLE WINAPI CreateIoCompletionPort(_In_ HANDLE FileHandle, _In_opt_ HANDLE ExistingCompletionPort, _In_ ULONG_PTR CompletionKey, _In_ DWORD NumberOfConcurrentThreads)
_In_ HANDLE hFile
Definition: mswsock.h:90
_In_ HANDLE _In_ DWORD _In_ DWORD _Inout_opt_ LPOVERLAPPED lpOverlapped
Definition: mswsock.h:93
HANDLE hThread
Definition: wizard.c:28
#define _Out_opt_
Definition: no_sal2.h:214
#define _Ret_maybenull_
Definition: no_sal2.h:328
#define _Inout_opt_
Definition: no_sal2.h:216
#define _Out_
Definition: no_sal2.h:160
#define _In_
Definition: no_sal2.h:158
#define _In_opt_
Definition: no_sal2.h:212
#define _Out_writes_bytes_to_opt_(s, c)
Definition: no_sal2.h:240
#define _Out_writes_to_(s, c)
Definition: no_sal2.h:188
#define _In_reads_bytes_opt_(s)
Definition: no_sal2.h:224
Definition: minwinbase.h:234
uint32_t * PULONG_PTR
Definition: typedefs.h:65
uint32_t * PULONG
Definition: typedefs.h:59
uint32_t * LPDWORD
Definition: typedefs.h:59
uint32_t ULONG_PTR
Definition: typedefs.h:65
uint32_t ULONG
Definition: typedefs.h:59
_In_ DWORD _In_ DWORD _In_ DWORD _Out_ LPDWORD lpBytesReturned
Definition: winddi.h:1705
_In_ DWORD dwIoControlCode
Definition: winddi.h:1700
#define WINAPI
Definition: msvc.h:6