123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- /**
- * 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_CLFSMGMT
- #define _INC_CLFSMGMT
- #if (_WIN32_WINNT >= 0x0600)
- #ifdef __cplusplus
- extern "C" {
- #endif
- typedef enum _CLFS_MGMT_POLICY_TYPE {
- ClfsMgmtPolicyMaximumSize = 0x0,
- ClfsMgmtPolicyMinimumSize = 0x1,
- ClfsMgmtPolicyNewContainerSize = 0x2,
- ClfsMgmtPolicyGrowthRate = 0x3,
- ClfsMgmtPolicyLogTail = 0x4,
- ClfsMgmtPolicyAutoShrink = 0x5,
- ClfsMgmtPolicyAutoGrow = 0x6,
- ClfsMgmtPolicyNewContainerPrefix = 0x7,
- ClfsMgmtPolicyNewContainerSuffix = 0x8,
- ClfsMgmtPolicyNewContainerExtension = 9,
- ClfsMgmtPolicyInvalid = 10
- } CLFS_MGMT_POLICY_TYPE, *PCLFS_MGMT_POLICY_TYPE;
- typedef enum _CLFS_MGMT_NOTIFICATION_TYPE {
- ClfsMgmtAdvanceTailNotification = 0,
- ClfsMgmtLogFullHandlerNotification,
- ClfsMgmtLogUnpinnedNotification,
- ClfsMgmtLogWriteNotification
- } CLFS_MGMT_NOTIFICATION_TYPE;
- typedef struct _CLFS_MGMT_NOTIFICATION {
- CLFS_MGMT_NOTIFICATION_TYPE Notification;
- CLFS_LSN Lsn;
- USHORT LogIsPinned;
- } CLFS_MGMT_NOTIFICATION, *PCLFS_MGMT_NOTIFICATION;
- typedef struct _CLFS_MGMT_POLICY {
- ULONG Version;
- ULONG LengthInBytes;
- ULONG PolicyFlags;
- CLFS_MGMT_POLICY_TYPE PolicyType;
- union {
- struct {
- ULONG Containers;
- } MaximumSize;
- struct {
- ULONG Containers;
- } MinimumSize;
- struct {
- ULONG SizeInBytes;
- } NewContainerSize;
- struct {
- ULONG AbsoluteGrowthInContainers;
- ULONG RelativeGrowthPercentage;
- } GrowthRate;
- struct {
- ULONG MinimumAvailablePercentage;
- ULONG MinimumAvailableContainers;
- } LogTail;
- struct {
- ULONG Percentage;
- } AutoShrink;
- struct {
- ULONG Enabled;
- } AutoGrow;
- struct {
- USHORT PrefixLengthInBytes;
- WCHAR PrefixString[1];
- } NewContainerPrefix;
- struct {
- ULONGLONG NextContainerSuffix;
- } NewContainerSuffix;
- struct {
- USHORT ExtensionLengthInBytes;
- WCHAR ExtensionString[1];
- } NewContainerExtension;
- } PolicyParameters;
- } CLFS_MGMT_POLICY, *PCLFS_MGMT_POLICY;
- /* Conflict with CLFS_MGMT_POLICY_TYPE
- typedef struct _ClfsMgmtPolicyAutoGrow {
- ULONG Enabled;
- } ClfsMgmtPolicyAutoGrow;
- typedef struct _ClfsMgmtPolicyAutoShrink {
- ULONG Percentage;
- } ClfsMgmtPolicyAutoShrink;
- typedef struct _ClfsMgmtPolicyGrowthRate {
- ULONG AbsoluteGrowthInContainers;
- ULONG RelativeGrowthPercentage;
- } ClfsMgmtPolicyGrowthRate;
- typedef struct _ClfsMgmtPolicyLogTail {
- ULONG MinimumAvailablePercentage;
- ULONG MinimumAvailableContainers;
- } ClfsMgmtPolicyLogTail;
- typedef struct _ClfsMgmtPolicyMinimumSize {
- ULONG Containers;
- } ClfsMgmtPolicyMinimumSize;
- typedef struct _ClfsMgmtPolicyMaximumSize {
- ULONG Containers;
- } ClfsMgmtPolicyMaximumSize;
- typedef struct _ClfsMgmtPolicyNewContainerExtension {
- ULONG ExtensionLengthInBytes;
- WCHAR ExtensionString[1];
- } ClfsMgmtPolicyNewContainerExtension, *PClfsMgmtPolicyNewContainerExtension;
- typedef struct _ClfsMgmtPolicyNewContainerPrefix {
- USHORT PrefixLengthInBytes;
- WCHAR PrefixString[1];
- } ClfsMgmtPolicyNewContainerPrefix;
- typedef struct _ClfsMgmtPolicyNewContainerSize {
- ULONG SizeInBytes;
- } ClfsMgmtPolicyNewContainerSize;
- typedef struct _ClfsMgmtPolicyNewContainerSuffix {
- ULONGLONG NextContainerSuffix;
- } ClfsMgmtPolicyNewContainerSuffix, *PClfsMgmtPolicyNewContainerSuffix;
- */
- #ifdef __cplusplus
- }
- #endif
- #endif /*(_WIN32_WINNT >= 0x0600)*/
- #endif /*_INC_CLFSMGMT*/
|