ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/Daodan/MSYS2/mingw32/i686-w64-mingw32/include/clfsw32.h
Revision: 1166
Committed: Tue Oct 26 14:22:36 2021 UTC (4 years ago) by rossy
Content type: text/x-chdr
File size: 7510 byte(s)
Log Message:
Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File Contents

# Content
1 /**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6 #ifndef _INC_CLFSW32
7 #define _INC_CLFSW32
8 #include <clfs.h>
9 #include <clfsmgmt.h>
10
11 #if (_WIN32_WINNT >= 0x0600)
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15
16 typedef PVOID (* CLFS_BLOCK_ALLOCATION) (ULONG cbBufferSize, PVOID pvUserContext);
17 typedef void (* CLFS_BLOCK_DEALLOCATION) (PVOID pvBuffer, PVOID pvUserContext);
18 typedef FILE *PFILE;
19 typedef ULONG (__stdcall * CLFS_PRINT_RECORD_ROUTINE) (PFILE, CLFS_RECORD_TYPE, PVOID, ULONG);
20
21 WINBOOL WINAPI AdvanceLogBase(PVOID pvMarshal,PCLFS_LSN plsnBase,ULONG fFlags,LPOVERLAPPED pOverlapped);
22
23 WINBOOL WINAPI AlignReservedLog(PVOID pvMarshal,ULONG cReservedRecords,LONGLONG rgcbReservation,PLONGLONG pcbAlignReservation);
24 WINBOOL WINAPI AllocReservedLog(PVOID pvMarshal,ULONG cReservedRecords,PLONGLONG pcbAdjustment);
25
26 WINBOOL WINAPI AddLogContainer(HANDLE hLog,PULONGLONG pcbContainer,LPWSTR pwszContainerPath,LPVOID pReserved);
27 WINBOOL WINAPI AddLogContainerSet(HANDLE hLog,USHORT cContainers,PULONGLONG pcbContainer,LPWSTR *rgwszContainerPath,PVOID Reserved);
28 WINBOOL WINAPI CloseAndResetLogFile(HANDLE hLog);
29
30 WINBOOL WINAPI CreateLogContainerScanContext(
31 HANDLE hLog,
32 ULONG cFromContainer,
33 ULONG cContainers,
34 CLFS_SCAN_MODE eScanMode,
35 PCLFS_SCAN_CONTEXT pcxScan,
36 LPOVERLAPPED pOverlapped
37 );
38
39 HANDLE WINAPI CreateLogFile(
40 LPCWSTR pszLogFileName,
41 ACCESS_MASK fDesiredAccess,
42 DWORD dwShareMode,
43 LPSECURITY_ATTRIBUTES psaLogFile,
44 ULONG fCreateDisposition,
45 ULONG fFlagsAndAttributes
46 );
47
48 WINBOOL WINAPI ScanLogContainers(
49 PCLFS_SCAN_CONTEXT pcxScan,
50 CLFS_SCAN_MODE eScanMode,
51 LPVOID pReserved
52 );
53
54 WINBOOL WINAPI CreateLogMarshallingArea(
55 HANDLE hLog,
56 CLFS_BLOCK_ALLOCATION pfnAllocBuffer,
57 CLFS_BLOCK_DEALLOCATION pfnFreeBuffer,
58 PVOID pvBlockAllocContext,
59 ULONG cbMarshallingBuffer,
60 ULONG cMaxWriteBuffers,
61 ULONG cMaxReadBuffers,
62 PVOID *ppvMarshal
63 );
64
65 WINBOOL WINAPI DeleteLogMarshallingArea(
66 PVOID pvMarshal
67 );
68
69 WINBOOL WINAPI DeleteLogByHandle(
70 HANDLE hLog
71 );
72
73 WINBOOL WINAPI DeleteLogFile(
74 LPCWSTR pszLogFileName,
75 PVOID pvReserved
76 );
77
78 WINBOOL WINAPI DeregisterManageableLogClient(
79 HANDLE hLog
80 );
81
82 WINBOOL WINAPI DumpLogRecords(
83 PWSTR pwszLogFileName,
84 CLFS_RECORD_TYPE fRecordType,
85 PCLFS_LSN plsnStart,
86 PCLFS_LSN plsnEnd,
87 PFILE pstrmOut,
88 CLFS_PRINT_RECORD_ROUTINE pfnPrintRecord,
89 CLFS_BLOCK_ALLOCATION pfnAllocBlock,
90 CLFS_BLOCK_DEALLOCATION pfnFreeBlock,
91 PVOID pvBlockAllocContext,
92 ULONG cbBlock,
93 ULONG cMaxBlocks
94 );
95
96 WINBOOL WINAPI ReadLogRecord(
97 PVOID pvMarshal,
98 PCLFS_LSN plsnFirst,
99 CLFS_CONTEXT_MODE eContextMode,
100 PVOID *ppvReadBuffer,
101 PULONG pcbReadBuffer,
102 PCLFS_RECORD_TYPE peRecordType,
103 PCLFS_LSN plsnUndoNext,
104 PCLFS_LSN plsnPrevious,
105 PVOID *ppvReadContext,
106 LPOVERLAPPED pOverlapped
107 );
108
109 WINBOOL WINAPI ReadNextLogRecord(
110 PVOID pvReadContext,
111 PVOID *ppvBuffer,
112 PULONG pcbBuffer,
113 PCLFS_RECORD_TYPE peRecordType,
114 PCLFS_LSN plsnUser,
115 PCLFS_LSN plsnUndoNext,
116 PCLFS_LSN plsnPrevious,
117 PCLFS_LSN plsnRecord,
118 LPOVERLAPPED pOverlapped
119 );
120
121 WINBOOL WINAPI FlushLogBuffers(
122 PVOID pvMarshal,
123 LPOVERLAPPED pOverlapped
124 );
125
126 WINBOOL WINAPI FlushLogToLsn(
127 PVOID pvMarshalContext,
128 PCLFS_LSN plsnFlush,
129 PCLFS_LSN plsnLastFlushed,
130 LPOVERLAPPED pOverlapped
131 );
132
133 WINBOOL WINAPI FreeReservedLog(
134 PVOID pvMarshal,
135 ULONG cReservedRecords,
136 PLONGLONG pcbAdjustment
137 );
138
139 WINBOOL WINAPI GetLogContainerName(
140 HANDLE hLog,
141 CLFS_CONTAINER_ID cidLogicalContainer,
142 LPCWSTR pwstrContainerName,
143 ULONG cLenContainerName,
144 PULONG pcActualLenContainerName
145 );
146
147 WINBOOL WINAPI GetLogFileInformation(
148 HANDLE hLog,
149 PCLFS_INFORMATION pinfoBuffer,
150 PULONG cbBuffer
151 );
152
153 WINBOOL WINAPI GetLogIoStatistics(
154 HANDLE hLog,
155 PVOID pvStatsBuffer,
156 ULONG cbStatsBuffer,
157 CLFS_IOSTATS_CLASS eStatsClass,
158 PULONG pcbStatsWritten
159 );
160
161 typedef LPVOID CLFS_LOG_ARCHIVE_CONTEXT;
162 typedef CLFS_LOG_ARCHIVE_CONTEXT *PCLFS_LOG_ARCHIVE_CONTEXT;
163
164 WINBOOL WINAPI GetNextLogArchiveExtent(
165 CLFS_LOG_ARCHIVE_CONTEXT pvArchiveContext,
166 CLFS_ARCHIVE_DESCRIPTOR rgadExtent[],
167 ULONG cDescriptors,
168 PULONG pcDescriptorsReturned
169 );
170
171 WINBOOL WINAPI PrepareLogArchive(
172 HANDLE hLog,
173 PWSTR pszBaseLogFileName,
174 ULONG cLen,
175 const PCLFS_LSN plsnLow,
176 const PCLFS_LSN plsnHigh,
177 PULONG pcActualLength,
178 PULONGLONG poffBaseLogFileData,
179 PULONGLONG pcbBaseLogFileLength,
180 PCLFS_LSN plsnBase,
181 PCLFS_LSN plsnLast,
182 PCLFS_LSN plsnCurrentArchiveTail,
183 PCLFS_LOG_ARCHIVE_CONTEXT ppvArchiveContext
184 );
185
186 WINBOOL WINAPI TerminateLogArchive(
187 CLFS_LOG_ARCHIVE_CONTEXT pvArchiveContext
188 );
189
190 ULONG WINAPI LsnBlockOffset(
191 const CLFS_LSN *plsn
192 );
193
194 CLFS_CONTAINER_ID WINAPI LsnContainer(
195 const CLFS_LSN *plsn
196 );
197
198 CLFS_LSN WINAPI LsnCreate(
199 CLFS_CONTAINER_ID cidContainer,
200 ULONG offBlock,
201 ULONG cRecord
202 );
203
204 ULONG WINAPI LsnRecordSequence(
205 const CLFS_LSN *plsn
206 );
207
208 WINBOOL WINAPI PrepareLogArchive(
209 HANDLE hLog,
210 PWSTR pszBaseLogFileName,
211 ULONG cLen,
212 const PCLFS_LSN plsnLow,
213 const PCLFS_LSN plsnHigh,
214 PULONG pcActualLength,
215 PULONGLONG poffBaseLogFileData,
216 PULONGLONG pcbBaseLogFileLength,
217 PCLFS_LSN plsnBase,
218 PCLFS_LSN plsnLast,
219 PCLFS_LSN plsnCurrentArchiveTail,
220 PCLFS_LOG_ARCHIVE_CONTEXT ppvArchiveContext
221 );
222
223 WINBOOL WINAPI QueryLogPolicy(
224 HANDLE hLog,
225 CLFS_MGMT_POLICY_TYPE ePolicyType,
226 PCLFS_MGMT_POLICY pPolicyBuffer,
227 PULONG pcbPolicyBuffer
228 );
229
230 WINBOOL WINAPI ReadLogArchiveMetadata(
231 CLFS_LOG_ARCHIVE_CONTEXT pvArchiveContext,
232 ULONG cbOffset,
233 ULONG cbBytesToRead,
234 PBYTE pbReadBuffer,
235 PULONG pcbBytesRead
236 );
237
238 WINBOOL WINAPI ReadLogRestartArea(
239 PVOID pvMarshal,
240 PVOID *ppvRestartBuffer,
241 PULONG pcbRestartBuffer,
242 PCLFS_LSN plsn,
243 PVOID *ppvContext,
244 LPOVERLAPPED pOverlapped
245 );
246
247 WINBOOL WINAPI ReadPreviousLogRestartArea(
248 PVOID pvReadContext,
249 PVOID *ppvRestartBuffer,
250 PULONG pcbRestartBuffer,
251 PCLFS_LSN plsnRestart,
252 LPOVERLAPPED pOverlapped
253 );
254
255 WINBOOL WINAPI RemoveLogContainer(
256 HANDLE hLog,
257 LPWSTR pwszContainerPath,
258 WINBOOL fForce,
259 LPVOID pReserved
260 );
261
262 WINBOOL WINAPI RemoveLogContainerSet(
263 HANDLE hLog,
264 USHORT cContainers,
265 LPWSTR *rgwszContainerPath,
266 WINBOOL fForce,
267 LPVOID pReserved
268 );
269
270 WINBOOL WINAPI ReserveAndAppendLog(
271 PVOID pvMarshal,
272 PCLFS_WRITE_ENTRY rgWriteEntries,
273 ULONG cWriteEntries,
274 PCLFS_LSN plsnUndoNext,
275 PCLFS_LSN plsnPrevious,
276 ULONG cReserveRecords,
277 LONGLONG rgcbReservation[],
278 ULONG fFlags,
279 PCLFS_LSN plsn,
280 LPOVERLAPPED pOverlapped
281 );
282
283 WINBOOL WINAPI ReserveAndAppendLogAligned(
284 PVOID pvMarshal,
285 PCLFS_WRITE_ENTRY rgWriteEntries,
286 ULONG cWriteEntries,
287 ULONG cbEntryAlignment,
288 PCLFS_LSN plsnUndoNext,
289 PCLFS_LSN plsnPrevious,
290 ULONG cReserveRecords,
291 LONGLONG rgcbReservation[],
292 ULONG fFlags,
293 PCLFS_LSN plsn,
294 LPOVERLAPPED overlapped
295 );
296
297 WINBOOL WINAPI SetEndOfLog(
298 HANDLE hLog,
299 PCLFS_LSN plsnEnd,
300 LPOVERLAPPED lpOverlapped
301 );
302
303 WINBOOL WINAPI SetLogArchiveMode(
304 HANDLE hLog,
305 CLFS_LOG_ARCHIVE_MODE eMode
306 );
307
308 WINBOOL WINAPI SetLogArchiveTail(
309 HANDLE hLog,
310 PCLFS_LSN plsnArchiveTail,
311 LPVOID pReserved
312 );
313
314 WINBOOL WINAPI TerminateReadLog(
315 PVOID pvCursorContext
316 );
317
318 WINBOOL WINAPI ValidateLog(
319 LPCWSTR pszLogFileName,
320 LPSECURITY_ATTRIBUTES psaLogFile,
321 PCLFS_INFORMATION pinfoBuffer,
322 PULONG pcbBuffer
323 );
324
325 #ifdef __cplusplus
326 }
327 #endif
328 #endif /* (_WIN32_WINNT >= 0x0600) */
329 #endif /*_INC_CLFSW32*/