mirror of
https://github.com/QB64Official/qb64.git
synced 2024-09-20 09:04:44 +00:00
93 lines
2.1 KiB
C
93 lines
2.1 KiB
C
|
/**
|
||
|
* This file has no copyright assigned and is placed in the Public Domain.
|
||
|
* This file is part of the mingw-w64 runtime package.
|
||
|
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||
|
*/
|
||
|
#ifndef _INC_TXFW32
|
||
|
#define _INC_TXFW32
|
||
|
#include <clfs.h>
|
||
|
#if (_WIN32_WINNT >= 0x0600)
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
|
||
|
typedef struct _TXF_ID {
|
||
|
__C89_NAMELESS struct {
|
||
|
LONGLONG LowPart;
|
||
|
LONGLONG HighPart;
|
||
|
} DUMMYSTRUCTNAME;
|
||
|
} TXF_ID, *PTXF_ID;
|
||
|
|
||
|
typedef struct _TXF_LOG_RECORD_AFFECTED_FILE {
|
||
|
USHORT Version;
|
||
|
ULONG RecordLength;
|
||
|
ULONG Flags;
|
||
|
TXF_ID TxfFileId;
|
||
|
UUID KtmGuid;
|
||
|
ULONG FileNameLength;
|
||
|
ULONG FileNameByteOffsetInStructure;
|
||
|
} TXF_LOG_RECORD_AFFECTED_FILE, *PTXF_LOG_RECORD_AFFECTED_FILE;
|
||
|
|
||
|
typedef struct _TXF_LOG_RECORD_TRUNCATE {
|
||
|
USHORT Version;
|
||
|
USHORT RecordType;
|
||
|
ULONG RecordLength;
|
||
|
ULONG Flags;
|
||
|
TXF_ID TxfFileId;
|
||
|
UUID KtmGuid;
|
||
|
LONGLONG NewFileSize;
|
||
|
ULONG FileNameLength;
|
||
|
ULONG FileNameByteOffsetInStructure;
|
||
|
} TXF_LOG_RECORD_TRUNCATE, *PTXF_LOG_RECORD_TRUNCATE;
|
||
|
|
||
|
typedef struct _TXF_LOG_RECORD_WRITE {
|
||
|
USHORT Version;
|
||
|
USHORT RecordType;
|
||
|
ULONG RecordLength;
|
||
|
ULONG Flags;
|
||
|
TXF_ID TxfFileId;
|
||
|
UUID KtmGuid;
|
||
|
LONGLONG ByteOffsetInFile;
|
||
|
ULONG NumBytesWritten;
|
||
|
ULONG ByteOffsetInStructure;
|
||
|
ULONG FileNameLength;
|
||
|
ULONG FileNameByteOffsetInStructure;
|
||
|
} TXF_LOG_RECORD_WRITE, *PTXF_LOG_RECORD_WRITE;
|
||
|
|
||
|
#define TXF_LOG_RECORD_TYPE_WRITE 1
|
||
|
#define TXF_LOG_RECORD_TYPE_TRUNCATE 2
|
||
|
#define TXF_LOG_RECORD_TYPE_AFFECTED_FILE 4
|
||
|
|
||
|
typedef struct _TXF_LOG_RECORD_BASE {
|
||
|
USHORT Version;
|
||
|
USHORT RecordType;
|
||
|
ULONG RecordLength;
|
||
|
} TXF_LOG_RECORD_BASE, *PTXF_LOG_RECORD_BASE;
|
||
|
|
||
|
WINBOOL WINAPI TxfLogCreateFileReadContext(
|
||
|
LPCWSTR LogPath,
|
||
|
CLFS_LSN BeginningLsn,
|
||
|
CLFS_LSN EndingLSN,
|
||
|
PTXF_ID TxfFileId,
|
||
|
PVOID *TxfLogContext
|
||
|
);
|
||
|
|
||
|
WINBOOL WINAPI TxfLogDestroyReadContext(
|
||
|
PVOID TxfLogContext
|
||
|
);
|
||
|
|
||
|
WINBOOL WINAPI TxfLogReadRecords(
|
||
|
PVOID TxfLogContext,
|
||
|
ULONG BufferLength,
|
||
|
PVOID Buffer,
|
||
|
PULONG BytesUsed,
|
||
|
PULONG RecordCount
|
||
|
);
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
#endif
|
||
|
#endif /* (_WIN32_WINNT >= 0x0600) */
|
||
|
#endif /*_INC_TXFW32*/
|