mirror of
https://gitlab.com/cznic/sqlite.git
synced 2025-05-17 23:26:41 +00:00
15804 lines
542 KiB
Go
15804 lines
542 KiB
Go
// Code generated by 'ccgo -o internal/mptest/main_windows_386.go -trace-translation-units testdata/sqlite-src-3330000/mptest/mptest.c -Itestdata/sqlite-amalgamation-3330000 -l modernc.org/sqlite/lib -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_WIN=1 -D_MSC_VER=1900', DO NOT EDIT.
|
|
|
|
package main
|
|
|
|
import (
|
|
"math"
|
|
"reflect"
|
|
"sync/atomic"
|
|
"unsafe"
|
|
|
|
"modernc.org/libc"
|
|
"modernc.org/sqlite/lib"
|
|
)
|
|
|
|
var _ = math.Pi
|
|
var _ reflect.Kind
|
|
var _ atomic.Value
|
|
var _ unsafe.Pointer
|
|
|
|
func main() { libc.Start(main1) }
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
const ( /* memoryapi.h:18:3: */
|
|
LowMemoryResourceNotification = 0
|
|
HighMemoryResourceNotification = 1
|
|
)
|
|
|
|
const ( /* minwinbase.h:100:3: */
|
|
FindExSearchNameMatch = 0
|
|
FindExSearchLimitToDirectories = 1
|
|
FindExSearchLimitToDevices = 2
|
|
FindExSearchMaxSearchOp = 3
|
|
)
|
|
|
|
const ( /* minwinbase.h:107:3: */
|
|
GetFileExInfoStandard = 0
|
|
GetFileExMaxInfoLevel = 1
|
|
)
|
|
|
|
const ( /* minwinbase.h:91:3: */
|
|
FindExInfoStandard = 0
|
|
FindExInfoBasic = 1
|
|
FindExInfoMaxInfoLevel = 2
|
|
)
|
|
|
|
const ( /* sysinfoapi.h:70:3: */
|
|
ComputerNameNetBIOS = 0
|
|
ComputerNameDnsHostname = 1
|
|
ComputerNameDnsDomain = 2
|
|
ComputerNameDnsFullyQualified = 3
|
|
ComputerNamePhysicalNetBIOS = 4
|
|
ComputerNamePhysicalDnsHostname = 5
|
|
ComputerNamePhysicalDnsDomain = 6
|
|
ComputerNamePhysicalDnsFullyQualified = 7
|
|
ComputerNameMax = 8
|
|
)
|
|
|
|
// TODO: Add RTL_UMS... to winnt.h header and add UMS-base API.
|
|
|
|
const ( /* winbase.h:1191:3: */
|
|
ThreadMemoryPriority = 0
|
|
ThreadAbsoluteCpuPriority = 1
|
|
ThreadInformationClassMax = 2
|
|
)
|
|
|
|
const ( /* winbase.h:1197:3: */
|
|
ProcessMemoryPriority = 0
|
|
ProcessInformationClassMax = 1
|
|
)
|
|
|
|
const ( /* winbase.h:1298:3: */
|
|
DEPPolicyAlwaysOff = 0
|
|
DEPPolicyAlwaysOn = 1
|
|
DEPPolicyOptIn = 2
|
|
DEPPolicyOptOut = 3
|
|
DEPTotalPolicyCount = 4
|
|
)
|
|
|
|
const ( /* winbase.h:2147:3: */
|
|
FindStreamInfoStandard = 0
|
|
FindStreamInfoMaxInfoLevel = 1
|
|
)
|
|
|
|
const ( /* winnls.h:720:3: */
|
|
COMPARE_STRING = 1
|
|
)
|
|
|
|
const ( /* winnls.h:756:3: */
|
|
GEO_NATION = 1
|
|
GEO_LATITUDE = 2
|
|
GEO_LONGITUDE = 3
|
|
GEO_ISO2 = 4
|
|
GEO_ISO3 = 5
|
|
GEO_RFC1766 = 6
|
|
GEO_LCID = 7
|
|
GEO_FRIENDLYNAME = 8
|
|
GEO_OFFICIALNAME = 9
|
|
GEO_TIMEZONES = 10
|
|
GEO_OFFICIALLANGUAGES = 11
|
|
GEO_ISO_UN_NUMBER = 12
|
|
GEO_PARENT = 13
|
|
)
|
|
|
|
const ( /* winnls.h:772:3: */
|
|
GEOCLASS_NATION = 16
|
|
GEOCLASS_REGION = 14
|
|
GEOCLASS_ALL = 0
|
|
)
|
|
|
|
const ( /* winnt.h:2945:5: */
|
|
SidTypeUser = 1
|
|
SidTypeGroup = 2
|
|
SidTypeDomain = 3
|
|
SidTypeAlias = 4
|
|
SidTypeWellKnownGroup = 5
|
|
SidTypeDeletedAccount = 6
|
|
SidTypeInvalid = 7
|
|
SidTypeUnknown = 8
|
|
SidTypeComputer = 9
|
|
SidTypeLabel = 10
|
|
SidTypeLogonSession = 11
|
|
)
|
|
|
|
const ( /* winnt.h:3184:5: */
|
|
WinNullSid = 0
|
|
WinWorldSid = 1
|
|
WinLocalSid = 2
|
|
WinCreatorOwnerSid = 3
|
|
WinCreatorGroupSid = 4
|
|
WinCreatorOwnerServerSid = 5
|
|
WinCreatorGroupServerSid = 6
|
|
WinNtAuthoritySid = 7
|
|
WinDialupSid = 8
|
|
WinNetworkSid = 9
|
|
WinBatchSid = 10
|
|
WinInteractiveSid = 11
|
|
WinServiceSid = 12
|
|
WinAnonymousSid = 13
|
|
WinProxySid = 14
|
|
WinEnterpriseControllersSid = 15
|
|
WinSelfSid = 16
|
|
WinAuthenticatedUserSid = 17
|
|
WinRestrictedCodeSid = 18
|
|
WinTerminalServerSid = 19
|
|
WinRemoteLogonIdSid = 20
|
|
WinLogonIdsSid = 21
|
|
WinLocalSystemSid = 22
|
|
WinLocalServiceSid = 23
|
|
WinNetworkServiceSid = 24
|
|
WinBuiltinDomainSid = 25
|
|
WinBuiltinAdministratorsSid = 26
|
|
WinBuiltinUsersSid = 27
|
|
WinBuiltinGuestsSid = 28
|
|
WinBuiltinPowerUsersSid = 29
|
|
WinBuiltinAccountOperatorsSid = 30
|
|
WinBuiltinSystemOperatorsSid = 31
|
|
WinBuiltinPrintOperatorsSid = 32
|
|
WinBuiltinBackupOperatorsSid = 33
|
|
WinBuiltinReplicatorSid = 34
|
|
WinBuiltinPreWindows2000CompatibleAccessSid = 35
|
|
WinBuiltinRemoteDesktopUsersSid = 36
|
|
WinBuiltinNetworkConfigurationOperatorsSid = 37
|
|
WinAccountAdministratorSid = 38
|
|
WinAccountGuestSid = 39
|
|
WinAccountKrbtgtSid = 40
|
|
WinAccountDomainAdminsSid = 41
|
|
WinAccountDomainUsersSid = 42
|
|
WinAccountDomainGuestsSid = 43
|
|
WinAccountComputersSid = 44
|
|
WinAccountControllersSid = 45
|
|
WinAccountCertAdminsSid = 46
|
|
WinAccountSchemaAdminsSid = 47
|
|
WinAccountEnterpriseAdminsSid = 48
|
|
WinAccountPolicyAdminsSid = 49
|
|
WinAccountRasAndIasServersSid = 50
|
|
WinNTLMAuthenticationSid = 51
|
|
WinDigestAuthenticationSid = 52
|
|
WinSChannelAuthenticationSid = 53
|
|
WinThisOrganizationSid = 54
|
|
WinOtherOrganizationSid = 55
|
|
WinBuiltinIncomingForestTrustBuildersSid = 56
|
|
WinBuiltinPerfMonitoringUsersSid = 57
|
|
WinBuiltinPerfLoggingUsersSid = 58
|
|
WinBuiltinAuthorizationAccessSid = 59
|
|
WinBuiltinTerminalServerLicenseServersSid = 60
|
|
WinBuiltinDCOMUsersSid = 61
|
|
WinBuiltinIUsersSid = 62
|
|
WinIUserSid = 63
|
|
WinBuiltinCryptoOperatorsSid = 64
|
|
WinUntrustedLabelSid = 65
|
|
WinLowLabelSid = 66
|
|
WinMediumLabelSid = 67
|
|
WinHighLabelSid = 68
|
|
WinSystemLabelSid = 69
|
|
WinWriteRestrictedCodeSid = 70
|
|
WinCreatorOwnerRightsSid = 71
|
|
WinCacheablePrincipalsGroupSid = 72
|
|
WinNonCacheablePrincipalsGroupSid = 73
|
|
WinEnterpriseReadonlyControllersSid = 74
|
|
WinAccountReadonlyControllersSid = 75
|
|
WinBuiltinEventLogReadersGroup = 76
|
|
WinNewEnterpriseReadonlyControllersSid = 77
|
|
WinBuiltinCertSvcDComAccessGroup = 78
|
|
WinMediumPlusLabelSid = 79
|
|
WinLocalLogonSid = 80
|
|
WinConsoleLogonSid = 81
|
|
WinThisOrganizationCertificateSid = 82
|
|
WinApplicationPackageAuthoritySid = 83
|
|
WinBuiltinAnyPackageSid = 84
|
|
WinCapabilityInternetClientSid = 85
|
|
WinCapabilityInternetClientServerSid = 86
|
|
WinCapabilityPrivateNetworkClientServerSid = 87
|
|
WinCapabilityPicturesLibrarySid = 88
|
|
WinCapabilityVideosLibrarySid = 89
|
|
WinCapabilityMusicLibrarySid = 90
|
|
WinCapabilityDocumentsLibrarySid = 91
|
|
WinCapabilitySharedUserCertificatesSid = 92
|
|
WinCapabilityEnterpriseAuthenticationSid = 93
|
|
WinCapabilityRemovableStorageSid = 94
|
|
WinBuiltinRDSRemoteAccessServersSid = 95
|
|
WinBuiltinRDSEndpointServersSid = 96
|
|
WinBuiltinRDSManagementServersSid = 97
|
|
WinUserModeDriversSid = 98
|
|
WinBuiltinHyperVAdminsSid = 99
|
|
WinAccountCloneableControllersSid = 100
|
|
WinBuiltinAccessControlAssistanceOperatorsSid = 101
|
|
WinBuiltinRemoteManagementUsersSid = 102
|
|
WinAuthenticationAuthorityAssertedSid = 103
|
|
WinAuthenticationServiceAssertedSid = 104
|
|
WinLocalAccountSid = 105
|
|
WinLocalAccountAndAdministratorSid = 106
|
|
WinAccountProtectedUsersSid = 107
|
|
WinCapabilityAppointmentsSid = 108
|
|
WinCapabilityContactsSid = 109
|
|
WinAccountDefaultSystemManagedSid = 110
|
|
WinBuiltinDefaultSystemManagedGroupSid = 111
|
|
WinBuiltinStorageReplicaAdminsSid = 112
|
|
WinAccountKeyAdminsSid = 113
|
|
WinAccountEnterpriseKeyAdminsSid = 114
|
|
WinAuthenticationKeyTrustSid = 115
|
|
WinAuthenticationKeyPropertyMFASid = 116
|
|
WinAuthenticationKeyPropertyAttestationSid = 117
|
|
)
|
|
|
|
const ( /* winnt.h:3495:5: */
|
|
AclRevisionInformation = 1
|
|
AclSizeInformation = 2
|
|
)
|
|
|
|
const ( /* winnt.h:3565:5: */
|
|
AuditEventObjectAccess = 0
|
|
AuditEventDirectoryServiceAccess = 1
|
|
)
|
|
|
|
const ( /* winnt.h:3597:5: */
|
|
AccessReasonNone = 0
|
|
AccessReasonAllowedAce = 65536
|
|
AccessReasonDeniedAce = 131072
|
|
AccessReasonAllowedParentAce = 196608
|
|
AccessReasonDeniedParentAce = 262144
|
|
AccessReasonNotGrantedByCape = 327680
|
|
AccessReasonNotGrantedByParentCape = 393216
|
|
AccessReasonNotGrantedToAppContainer = 458752
|
|
AccessReasonMissingPrivilege = 1048576
|
|
AccessReasonFromPrivilege = 2097152
|
|
AccessReasonIntegrityLevel = 3145728
|
|
AccessReasonOwnership = 4194304
|
|
AccessReasonNullDacl = 5242880
|
|
AccessReasonEmptyDacl = 6291456
|
|
AccessReasonNoSD = 7340032
|
|
AccessReasonNoGrant = 8388608
|
|
)
|
|
|
|
const ( /* winnt.h:3687:5: */
|
|
SecurityAnonymous = 0
|
|
SecurityIdentification = 1
|
|
SecurityImpersonation = 2
|
|
SecurityDelegation = 3
|
|
)
|
|
|
|
const ( /* winnt.h:3714:5: */
|
|
TokenPrimary = 1
|
|
TokenImpersonation = 2
|
|
)
|
|
|
|
const ( /* winnt.h:3719:5: */
|
|
TokenElevationTypeDefault = 1
|
|
TokenElevationTypeFull = 2
|
|
TokenElevationTypeLimited = 3
|
|
)
|
|
|
|
const ( /* winnt.h:3725:5: */
|
|
TokenUser = 1
|
|
TokenGroups = 2
|
|
TokenPrivileges = 3
|
|
TokenOwner = 4
|
|
TokenPrimaryGroup = 5
|
|
TokenDefaultDacl = 6
|
|
TokenSource = 7
|
|
TokenType = 8
|
|
TokenImpersonationLevel = 9
|
|
TokenStatistics = 10
|
|
TokenRestrictedSids = 11
|
|
TokenSessionId = 12
|
|
TokenGroupsAndPrivileges = 13
|
|
TokenSessionReference = 14
|
|
TokenSandBoxInert = 15
|
|
TokenAuditPolicy = 16
|
|
TokenOrigin = 17
|
|
TokenElevationType = 18
|
|
TokenLinkedToken = 19
|
|
TokenElevation = 20
|
|
TokenHasRestrictions = 21
|
|
TokenAccessInformation = 22
|
|
TokenVirtualizationAllowed = 23
|
|
TokenVirtualizationEnabled = 24
|
|
TokenIntegrityLevel = 25
|
|
TokenUIAccess = 26
|
|
TokenMandatoryPolicy = 27
|
|
TokenLogonSid = 28
|
|
TokenIsAppContainer = 29
|
|
TokenCapabilities = 30
|
|
TokenAppContainerSid = 31
|
|
TokenAppContainerNumber = 32
|
|
TokenUserClaimAttributes = 33
|
|
TokenDeviceClaimAttributes = 34
|
|
TokenRestrictedUserClaimAttributes = 35
|
|
TokenRestrictedDeviceClaimAttributes = 36
|
|
TokenDeviceGroups = 37
|
|
TokenRestrictedDeviceGroups = 38
|
|
TokenSecurityAttributes = 39
|
|
TokenIsRestricted = 40
|
|
MaxTokenInfoClass = 41
|
|
)
|
|
|
|
const ( /* winnt.h:3893:5: */
|
|
MandatoryLevelUntrusted = 0
|
|
MandatoryLevelLow = 1
|
|
MandatoryLevelMedium = 2
|
|
MandatoryLevelHigh = 3
|
|
MandatoryLevelSystem = 4
|
|
MandatoryLevelSecureProcess = 5
|
|
MandatoryLevelCount = 6
|
|
)
|
|
|
|
const ( /* winnt.h:4019:5: */
|
|
SeLearningModeInvalidType = 0
|
|
SeLearningModeSettings = 1
|
|
SeLearningModeMax = 2
|
|
)
|
|
|
|
const ( /* winnt.h:4223:5: */
|
|
PMCCounter = 0
|
|
MaxHardwareCounterType = 1
|
|
)
|
|
|
|
const ( /* winnt.h:4228:5: */
|
|
ProcessDEPPolicy = 0
|
|
ProcessASLRPolicy = 1
|
|
ProcessDynamicCodePolicy = 2
|
|
ProcessStrictHandleCheckPolicy = 3
|
|
ProcessSystemCallDisablePolicy = 4
|
|
ProcessMitigationOptionsMask = 5
|
|
ProcessExtensionPointDisablePolicy = 6
|
|
ProcessControlFlowGuardPolicy = 7
|
|
ProcessSignaturePolicy = 8
|
|
ProcessFontDisablePolicy = 9
|
|
ProcessImageLoadPolicy = 10
|
|
MaxProcessMitigationPolicy = 11
|
|
)
|
|
|
|
const ( /* winnt.h:4426:5: */
|
|
ToleranceLow = 1
|
|
ToleranceMedium = 2
|
|
ToleranceHigh = 3
|
|
)
|
|
|
|
const ( /* winnt.h:4432:5: */
|
|
ToleranceIntervalShort = 1
|
|
ToleranceIntervalMedium = 2
|
|
ToleranceIntervalLong = 3
|
|
)
|
|
|
|
const ( /* winnt.h:4551:5: */
|
|
JobObjectBasicAccountingInformation = 1
|
|
JobObjectBasicLimitInformation = 2
|
|
JobObjectBasicProcessIdList = 3
|
|
JobObjectBasicUIRestrictions = 4
|
|
JobObjectSecurityLimitInformation = 5
|
|
JobObjectEndOfJobTimeInformation = 6
|
|
JobObjectAssociateCompletionPortInformation = 7
|
|
JobObjectBasicAndIoAccountingInformation = 8
|
|
JobObjectExtendedLimitInformation = 9
|
|
JobObjectJobSetInformation = 10
|
|
JobObjectGroupInformation = 11
|
|
JobObjectNotificationLimitInformation = 12
|
|
JobObjectLimitViolationInformation = 13
|
|
JobObjectGroupInformationEx = 14
|
|
JobObjectCpuRateControlInformation = 15
|
|
JobObjectCompletionFilter = 16
|
|
JobObjectCompletionCounter = 17
|
|
JobObjectReserved1Information = 18
|
|
JobObjectReserved2Information = 19
|
|
JobObjectReserved3Information = 20
|
|
JobObjectReserved4Information = 21
|
|
JobObjectReserved5Information = 22
|
|
JobObjectReserved6Information = 23
|
|
JobObjectReserved7Information = 24
|
|
JobObjectReserved8Information = 25
|
|
MaxJobObjectInfoClass = 26
|
|
)
|
|
|
|
const ( /* winnt.h:4575:5: */
|
|
FirmwareTypeUnknown = 0
|
|
FirmwareTypeBios = 1
|
|
FirmwareTypeUefi = 2
|
|
FirmwareTypeMax = 3
|
|
)
|
|
|
|
const ( /* winnt.h:4600:5: */
|
|
RelationProcessorCore = 0
|
|
RelationNumaNode = 1
|
|
RelationCache = 2
|
|
RelationProcessorPackage = 3
|
|
RelationGroup = 4
|
|
RelationAll = 65535
|
|
)
|
|
|
|
const ( /* winnt.h:4607:5: */
|
|
CacheUnified = 0
|
|
CacheInstruction = 1
|
|
CacheData = 2
|
|
CacheTrace = 3
|
|
)
|
|
|
|
const ( /* winnt.h:467:1: */
|
|
UNSPECIFIED_COMPARTMENT_ID = 0
|
|
DEFAULT_COMPARTMENT_ID = 1
|
|
)
|
|
|
|
const ( /* winnt.h:5229:3: */
|
|
PowerSystemUnspecified = 0
|
|
PowerSystemWorking = 1
|
|
PowerSystemSleeping1 = 2
|
|
PowerSystemSleeping2 = 3
|
|
PowerSystemSleeping3 = 4
|
|
PowerSystemHibernate = 5
|
|
PowerSystemShutdown = 6
|
|
PowerSystemMaximum = 7
|
|
)
|
|
|
|
const ( /* winnt.h:5235:3: */
|
|
PowerActionNone = 0
|
|
PowerActionReserved = 1
|
|
PowerActionSleep = 2
|
|
PowerActionHibernate = 3
|
|
PowerActionShutdown = 4
|
|
PowerActionShutdownReset = 5
|
|
PowerActionShutdownOff = 6
|
|
PowerActionWarmEject = 7
|
|
)
|
|
|
|
const ( /* winnt.h:5241:3: */
|
|
PowerDeviceUnspecified = 0
|
|
PowerDeviceD0 = 1
|
|
PowerDeviceD1 = 2
|
|
PowerDeviceD2 = 3
|
|
PowerDeviceD3 = 4
|
|
PowerDeviceMaximum = 5
|
|
)
|
|
|
|
const ( /* winnt.h:5246:3: */
|
|
PowerMonitorOff = 0
|
|
PowerMonitorOn = 1
|
|
PowerMonitorDim = 2
|
|
)
|
|
|
|
const ( /* winnt.h:5250:3: */
|
|
PowerUserPresent = 0
|
|
PowerUserNotPresent = 1
|
|
PowerUserInactive = 2
|
|
PowerUserMaximum = 3
|
|
PowerUserInvalid = 3
|
|
)
|
|
|
|
const ( /* winnt.h:5266:3: */
|
|
LT_DONT_CARE = 0
|
|
LT_LOWEST_LATENCY = 1
|
|
)
|
|
|
|
const ( /* winnt.h:5281:3: */
|
|
PowerRequestDisplayRequired = 0
|
|
PowerRequestSystemRequired = 1
|
|
PowerRequestAwayModeRequired = 2
|
|
PowerRequestExecutionRequired = 3
|
|
)
|
|
|
|
const ( /* winnt.h:5309:5: */
|
|
SystemPowerPolicyAc = 0
|
|
SystemPowerPolicyDc = 1
|
|
VerifySystemPolicyAc = 2
|
|
VerifySystemPolicyDc = 3
|
|
SystemPowerCapabilities = 4
|
|
SystemBatteryState = 5
|
|
SystemPowerStateHandler = 6
|
|
ProcessorStateHandler = 7
|
|
SystemPowerPolicyCurrent = 8
|
|
AdministratorPowerPolicy = 9
|
|
SystemReserveHiberFile = 10
|
|
ProcessorInformation = 11
|
|
SystemPowerInformation = 12
|
|
ProcessorStateHandler2 = 13
|
|
LastWakeTime = 14
|
|
LastSleepTime = 15
|
|
SystemExecutionState = 16
|
|
SystemPowerStateNotifyHandler = 17
|
|
ProcessorPowerPolicyAc = 18
|
|
ProcessorPowerPolicyDc = 19
|
|
VerifyProcessorPowerPolicyAc = 20
|
|
VerifyProcessorPowerPolicyDc = 21
|
|
ProcessorPowerPolicyCurrent = 22
|
|
SystemPowerStateLogging = 23
|
|
SystemPowerLoggingEntry = 24
|
|
SetPowerSettingValue = 25
|
|
NotifyUserPowerSetting = 26
|
|
PowerInformationLevelUnused0 = 27
|
|
SystemMonitorHiberBootPowerOff = 28
|
|
SystemVideoState = 29
|
|
TraceApplicationPowerMessage = 30
|
|
TraceApplicationPowerMessageEnd = 31
|
|
ProcessorPerfStates = 32
|
|
ProcessorIdleStates = 33
|
|
ProcessorCap = 34
|
|
SystemWakeSource = 35
|
|
SystemHiberFileInformation = 36
|
|
TraceServicePowerMessage = 37
|
|
ProcessorLoad = 38
|
|
PowerShutdownNotification = 39
|
|
MonitorCapabilities = 40
|
|
SessionPowerInit = 41
|
|
SessionDisplayState = 42
|
|
PowerRequestCreate = 43
|
|
PowerRequestAction = 44
|
|
GetPowerRequestList = 45
|
|
ProcessorInformationEx = 46
|
|
NotifyUserModeLegacyPowerEvent = 47
|
|
GroupPark = 48
|
|
ProcessorIdleDomains = 49
|
|
WakeTimerList = 50
|
|
SystemHiberFileSize = 51
|
|
ProcessorIdleStatesHv = 52
|
|
ProcessorPerfStatesHv = 53
|
|
ProcessorPerfCapHv = 54
|
|
ProcessorSetIdle = 55
|
|
LogicalProcessorIdling = 56
|
|
UserPresence = 57
|
|
PowerSettingNotificationName = 58
|
|
GetPowerSettingValue = 59
|
|
IdleResiliency = 60
|
|
SessionRITState = 61
|
|
SessionConnectNotification = 62
|
|
SessionPowerCleanup = 63
|
|
SessionLockState = 64
|
|
SystemHiberbootState = 65
|
|
PlatformInformation = 66
|
|
PdcInvocation = 67
|
|
MonitorInvocation = 68
|
|
FirmwareTableInformationRegistered = 69
|
|
SetShutdownSelectedTime = 70
|
|
SuspendResumeInvocation = 71
|
|
PlmPowerRequestCreate = 72
|
|
ScreenOff = 73
|
|
CsDeviceNotification = 74
|
|
PlatformRole = 75
|
|
LastResumePerformance = 76
|
|
DisplayBurst = 77
|
|
ExitLatencySamplingPercentage = 78
|
|
ApplyLowPowerScenarioSettings = 79
|
|
PowerInformationLevelMaximum = 80
|
|
)
|
|
|
|
const ( /* winnt.h:5393:5: */
|
|
UserNotPresent = 0
|
|
UserPresent = 1
|
|
UserUnknown = 255
|
|
)
|
|
|
|
const ( /* winnt.h:5429:5: */
|
|
MonitorRequestReasonUnknown = 0
|
|
MonitorRequestReasonPowerButton = 1
|
|
MonitorRequestReasonRemoteConnection = 2
|
|
MonitorRequestReasonScMonitorpower = 3
|
|
MonitorRequestReasonUserInput = 4
|
|
MonitorRequestReasonAcDcDisplayBurst = 5
|
|
MonitorRequestReasonUserDisplayBurst = 6
|
|
MonitorRequestReasonPoSetSystemState = 7
|
|
MonitorRequestReasonSetThreadExecutionState = 8
|
|
MonitorRequestReasonFullWake = 9
|
|
MonitorRequestReasonSessionUnlock = 10
|
|
MonitorRequestReasonScreenOffRequest = 11
|
|
MonitorRequestReasonIdleTimeout = 12
|
|
MonitorRequestReasonPolicyChange = 13
|
|
MonitorRequestReasonMax = 14
|
|
)
|
|
|
|
const ( /* winnt.h:5459:5: */
|
|
PoAc = 0
|
|
PoDc = 1
|
|
PoHot = 2
|
|
PoConditionMaximum = 3
|
|
)
|
|
|
|
const ( /* winnt.h:5486:5: */
|
|
PlatformRoleUnspecified = 0
|
|
PlatformRoleDesktop = 1
|
|
PlatformRoleMobile = 2
|
|
PlatformRoleWorkstation = 3
|
|
PlatformRoleEnterpriseServer = 4
|
|
PlatformRoleSOHOServer = 5
|
|
PlatformRoleAppliancePC = 6
|
|
PlatformRolePerformanceServer = 7
|
|
PlatformRoleSlate = 8
|
|
PlatformRoleMaximum = 9
|
|
)
|
|
|
|
const ( /* winnt.h:6623:5: */
|
|
IMAGE_AUX_SYMBOL_TYPE_TOKEN_DEF = 1
|
|
)
|
|
|
|
const ( /* winnt.h:7494:5: */
|
|
IMPORT_OBJECT_CODE = 0
|
|
IMPORT_OBJECT_DATA = 1
|
|
IMPORT_OBJECT_CONST = 2
|
|
)
|
|
|
|
const ( /* winnt.h:7498:5: */
|
|
IMPORT_OBJECT_ORDINAL = 0
|
|
IMPORT_OBJECT_NAME = 1
|
|
IMPORT_OBJECT_NAME_NO_PREFIX = 2
|
|
IMPORT_OBJECT_NAME_UNDECORATE = 3
|
|
)
|
|
|
|
const ( /* winnt.h:7504:5: */
|
|
COMIMAGE_FLAGS_ILONLY = 1
|
|
COMIMAGE_FLAGS_32BITREQUIRED = 2
|
|
COMIMAGE_FLAGS_IL_LIBRARY = 4
|
|
COMIMAGE_FLAGS_STRONGNAMESIGNED = 8
|
|
COMIMAGE_FLAGS_TRACKDEBUGDATA = 65536
|
|
COR_VERSION_MAJOR_V2 = 2
|
|
COR_VERSION_MAJOR = 2
|
|
COR_VERSION_MINOR = 0
|
|
COR_DELETED_NAME_LENGTH = 8
|
|
COR_VTABLEGAP_NAME_LENGTH = 8
|
|
NATIVE_TYPE_MAX_CB = 1
|
|
COR_ILMETHOD_SECT_SMALL_MAX_DATASIZE = 255
|
|
IMAGE_COR_MIH_METHODRVA = 1
|
|
IMAGE_COR_MIH_EHRVA = 2
|
|
IMAGE_COR_MIH_BASICBLOCK = 8
|
|
COR_VTABLE_32BIT = 1
|
|
COR_VTABLE_64BIT = 2
|
|
COR_VTABLE_FROM_UNMANAGED = 4
|
|
COR_VTABLE_CALL_MOST_DERIVED = 16
|
|
IMAGE_COR_EATJ_THUNK_SIZE = 32
|
|
MAX_CLASS_NAME = 1024
|
|
MAX_PACKAGE_NAME = 1024
|
|
)
|
|
|
|
const ( /* winnt.h:7909:5: */
|
|
UmsThreadInvalidInfoClass = 0
|
|
UmsThreadUserContext = 1
|
|
UmsThreadPriority = 2
|
|
UmsThreadAffinity = 3
|
|
UmsThreadTeb = 4
|
|
UmsThreadIsSuspended = 5
|
|
UmsThreadIsTerminated = 6
|
|
UmsThreadMaxInfoClass = 7
|
|
)
|
|
|
|
const ( /* winnt.h:7920:5: */
|
|
UmsSchedulerStartup = 0
|
|
UmsSchedulerThreadBlocked = 1
|
|
UmsSchedulerThreadYield = 2
|
|
)
|
|
|
|
const ( /* winnt.h:7995:5: */
|
|
HeapCompatibilityInformation = 0
|
|
HeapEnableTerminationOnCorruption = 1
|
|
)
|
|
|
|
const ( /* winnt.h:8023:5: */
|
|
ActivationContextBasicInformation = 1
|
|
ActivationContextDetailedInformation = 2
|
|
AssemblyDetailedInformationInActivationContext = 3
|
|
FileInformationInAssemblyOfAssemblyInActivationContext = 4
|
|
RunlevelInformationInActivationContext = 5
|
|
CompatibilityInformationInActivationContext = 6
|
|
ActivationContextManifestResourceName = 7
|
|
MaxActivationContextInfoClass = 8
|
|
AssemblyDetailedInformationInActivationContxt = 3
|
|
FileInformationInAssemblyOfAssemblyInActivationContxt = 4
|
|
)
|
|
|
|
const ( /* winnt.h:8036:5: */
|
|
ACTCTX_RUN_LEVEL_UNSPECIFIED = 0
|
|
ACTCTX_RUN_LEVEL_AS_INVOKER = 1
|
|
ACTCTX_RUN_LEVEL_HIGHEST_AVAILABLE = 2
|
|
ACTCTX_RUN_LEVEL_REQUIRE_ADMIN = 3
|
|
ACTCTX_RUN_LEVEL_NUMBERS = 4
|
|
)
|
|
|
|
const ( /* winnt.h:8044:5: */
|
|
ACTCTX_COMPATIBILITY_ELEMENT_TYPE_UNKNOWN = 0
|
|
ACTCTX_COMPATIBILITY_ELEMENT_TYPE_OS = 1
|
|
ACTCTX_COMPATIBILITY_ELEMENT_TYPE_MITIGATION = 2
|
|
)
|
|
|
|
const ( /* winnt.h:8465:5: */
|
|
DriverType = 1
|
|
FileSystemType = 2
|
|
Win32ServiceOwnProcess = 16
|
|
Win32ServiceShareProcess = 32
|
|
AdapterType = 4
|
|
RecognizerType = 8
|
|
)
|
|
|
|
const ( /* winnt.h:8470:5: */
|
|
BootLoad = 0
|
|
SystemLoad = 1
|
|
AutoLoad = 2
|
|
DemandLoad = 3
|
|
DisableLoad = 4
|
|
)
|
|
|
|
const ( /* winnt.h:8475:5: */
|
|
IgnoreError = 0
|
|
NormalError = 1
|
|
SevereError = 2
|
|
CriticalError = 3
|
|
)
|
|
|
|
const ( /* winnt.h:8675:5: */
|
|
TapeDriveProblemNone = 0
|
|
TapeDriveReadWriteWarning = 1
|
|
TapeDriveReadWriteError = 2
|
|
TapeDriveReadWarning = 3
|
|
TapeDriveWriteWarning = 4
|
|
TapeDriveReadError = 5
|
|
TapeDriveWriteError = 6
|
|
TapeDriveHardwareError = 7
|
|
TapeDriveUnsupportedMedia = 8
|
|
TapeDriveScsiConnectionError = 9
|
|
TapeDriveTimetoClean = 10
|
|
TapeDriveCleanDriveNow = 11
|
|
TapeDriveMediaLifeExpired = 12
|
|
TapeDriveSnappedTape = 13
|
|
)
|
|
|
|
const ( /* winnt.h:8685:3: */
|
|
TP_CALLBACK_PRIORITY_HIGH = 0
|
|
TP_CALLBACK_PRIORITY_NORMAL = 1
|
|
TP_CALLBACK_PRIORITY_LOW = 2
|
|
TP_CALLBACK_PRIORITY_INVALID = 3
|
|
TP_CALLBACK_PRIORITY_COUNT = 3
|
|
)
|
|
|
|
const ( /* winnt.h:8878:7: */
|
|
TransactionOutcomeUndetermined = 1
|
|
TransactionOutcomeCommitted = 2
|
|
TransactionOutcomeAborted = 3
|
|
)
|
|
|
|
const ( /* winnt.h:8884:7: */
|
|
TransactionStateNormal = 1
|
|
TransactionStateIndoubt = 2
|
|
TransactionStateCommittedNotify = 3
|
|
)
|
|
|
|
const ( /* winnt.h:8956:7: */
|
|
TransactionBasicInformation = 0
|
|
TransactionPropertiesInformation = 1
|
|
TransactionEnlistmentInformation = 2
|
|
TransactionSuperiorEnlistmentInformation = 3
|
|
TransactionBindInformation = 4
|
|
TransactionDTCPrivateInformation = 5
|
|
)
|
|
|
|
const ( /* winnt.h:8965:7: */
|
|
TransactionManagerBasicInformation = 0
|
|
TransactionManagerLogInformation = 1
|
|
TransactionManagerLogPathInformation = 2
|
|
TransactionManagerOnlineProbeInformation = 3
|
|
TransactionManagerRecoveryInformation = 4
|
|
TransactionManagerOldestTransactionInformation = 5
|
|
)
|
|
|
|
const ( /* winnt.h:8974:7: */
|
|
ResourceManagerBasicInformation = 0
|
|
ResourceManagerCompletionInformation = 1
|
|
)
|
|
|
|
const ( /* winnt.h:8991:7: */
|
|
EnlistmentBasicInformation = 0
|
|
EnlistmentRecoveryInformation = 1
|
|
EnlistmentCrmInformation = 2
|
|
)
|
|
|
|
const ( /* winnt.h:9006:7: */
|
|
KTMOBJECT_TRANSACTION = 0
|
|
KTMOBJECT_TRANSACTION_MANAGER = 1
|
|
KTMOBJECT_RESOURCE_MANAGER = 2
|
|
KTMOBJECT_ENLISTMENT = 3
|
|
KTMOBJECT_INVALID = 4
|
|
)
|
|
|
|
const ( /* winsvc.h:106:3: */
|
|
SC_ACTION_NONE = 0
|
|
SC_ACTION_RESTART = 1
|
|
SC_ACTION_REBOOT = 2
|
|
SC_ACTION_RUN_COMMAND = 3
|
|
)
|
|
|
|
const ( /* winsvc.h:139:3: */
|
|
SC_STATUS_PROCESS_INFO = 0
|
|
)
|
|
|
|
const ( /* winsvc.h:143:3: */
|
|
SC_ENUM_PROCESS_INFO = 0
|
|
)
|
|
|
|
type ptrdiff_t = int32 /* <builtin>:3:26 */
|
|
|
|
type size_t = uint32 /* <builtin>:9:23 */
|
|
|
|
type wchar_t = uint16 /* <builtin>:15:24 */
|
|
|
|
type va_list = uintptr /* <builtin>:51:27 */
|
|
|
|
// CAPI3REF: 64-Bit Integer Types
|
|
// KEYWORDS: sqlite_int64 sqlite_uint64
|
|
//
|
|
// Because there is no cross-platform way to specify 64-bit integer types
|
|
// SQLite includes typedefs for 64-bit signed and unsigned integers.
|
|
//
|
|
// The sqlite3_int64 and sqlite3_uint64 are the preferred type definitions.
|
|
// The sqlite_int64 and sqlite_uint64 types are supported for backwards
|
|
// compatibility only.
|
|
//
|
|
// ^The sqlite3_int64 and sqlite_int64 types can store integer values
|
|
// between -9223372036854775808 and +9223372036854775807 inclusive. ^The
|
|
// sqlite3_uint64 and sqlite_uint64 types can store integer values
|
|
// between 0 and +18446744073709551615 inclusive.
|
|
type sqlite_int64 = int64 /* sqlite3.h:275:19 */
|
|
type sqlite_uint64 = uint64 /* sqlite3.h:276:28 */
|
|
type sqlite3_int64 = sqlite_int64 /* sqlite3.h:281:22 */
|
|
type sqlite3_uint64 = sqlite_uint64 /* sqlite3.h:282:23 */
|
|
|
|
// The type for a callback function.
|
|
// This is legacy and deprecated. It is included for historical
|
|
// compatibility and is not documented.
|
|
type sqlite3_callback = uintptr /* sqlite3.h:338:13 */
|
|
|
|
// CAPI3REF: Result Codes
|
|
// KEYWORDS: {result code definitions}
|
|
//
|
|
// Many SQLite functions return an integer result code from the set shown
|
|
// here in order to indicate success or failure.
|
|
//
|
|
// New error codes may be added in future versions of SQLite.
|
|
//
|
|
// See also: [extended result code definitions]
|
|
// beginning-of-error-codes
|
|
// end-of-error-codes
|
|
|
|
// CAPI3REF: Extended Result Codes
|
|
// KEYWORDS: {extended result code definitions}
|
|
//
|
|
// In its default configuration, SQLite API routines return one of 30 integer
|
|
// [result codes]. However, experience has shown that many of
|
|
// these result codes are too coarse-grained. They do not provide as
|
|
// much information about problems as programmers might like. In an effort to
|
|
// address this, newer versions of SQLite (version 3.3.8 [dateof:3.3.8]
|
|
// and later) include
|
|
// support for additional result codes that provide more detailed information
|
|
// about errors. These [extended result codes] are enabled or disabled
|
|
// on a per database connection basis using the
|
|
// [sqlite3_extended_result_codes()] API. Or, the extended code for
|
|
// the most recent error can be obtained using
|
|
// [sqlite3_extended_errcode()].
|
|
|
|
// CAPI3REF: Flags For File Open Operations
|
|
//
|
|
// These bit values are intended for use in the
|
|
// 3rd parameter to the [sqlite3_open_v2()] interface and
|
|
// in the 4th parameter to the [sqlite3_vfs.xOpen] method.
|
|
|
|
// Reserved: 0x00F00000
|
|
// Legacy compatibility:
|
|
|
|
// CAPI3REF: Device Characteristics
|
|
//
|
|
// The xDeviceCharacteristics method of the [sqlite3_io_methods]
|
|
// object returns an integer which is a vector of these
|
|
// bit values expressing I/O characteristics of the mass storage
|
|
// device that holds the file that the [sqlite3_io_methods]
|
|
// refers to.
|
|
//
|
|
// The SQLITE_IOCAP_ATOMIC property means that all writes of
|
|
// any size are atomic. The SQLITE_IOCAP_ATOMICnnn values
|
|
// mean that writes of blocks that are nnn bytes in size and
|
|
// are aligned to an address which is an integer multiple of
|
|
// nnn are atomic. The SQLITE_IOCAP_SAFE_APPEND value means
|
|
// that when data is appended to a file, the data is appended
|
|
// first then the size of the file is extended, never the other
|
|
// way around. The SQLITE_IOCAP_SEQUENTIAL property means that
|
|
// information is written to disk in the same order as calls
|
|
// to xWrite(). The SQLITE_IOCAP_POWERSAFE_OVERWRITE property means that
|
|
// after reboot following a crash or power loss, the only bytes in a
|
|
// file that were written at the application level might have changed
|
|
// and that adjacent bytes, even bytes within the same sector are
|
|
// guaranteed to be unchanged. The SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN
|
|
// flag indicates that a file cannot be deleted when open. The
|
|
// SQLITE_IOCAP_IMMUTABLE flag indicates that the file is on
|
|
// read-only media and cannot be changed even by processes with
|
|
// elevated privileges.
|
|
//
|
|
// The SQLITE_IOCAP_BATCH_ATOMIC property means that the underlying
|
|
// filesystem supports doing multiple write operations atomically when those
|
|
// write operations are bracketed by [SQLITE_FCNTL_BEGIN_ATOMIC_WRITE] and
|
|
// [SQLITE_FCNTL_COMMIT_ATOMIC_WRITE].
|
|
|
|
// CAPI3REF: File Locking Levels
|
|
//
|
|
// SQLite uses one of these integer values as the second
|
|
// argument to calls it makes to the xLock() and xUnlock() methods
|
|
// of an [sqlite3_io_methods] object.
|
|
|
|
// CAPI3REF: Synchronization Type Flags
|
|
//
|
|
// When SQLite invokes the xSync() method of an
|
|
// [sqlite3_io_methods] object it uses a combination of
|
|
// these integer values as the second argument.
|
|
//
|
|
// When the SQLITE_SYNC_DATAONLY flag is used, it means that the
|
|
// sync operation only needs to flush data to mass storage. Inode
|
|
// information need not be flushed. If the lower four bits of the flag
|
|
// equal SQLITE_SYNC_NORMAL, that means to use normal fsync() semantics.
|
|
// If the lower four bits equal SQLITE_SYNC_FULL, that means
|
|
// to use Mac OS X style fullsync instead of fsync().
|
|
//
|
|
// Do not confuse the SQLITE_SYNC_NORMAL and SQLITE_SYNC_FULL flags
|
|
// with the [PRAGMA synchronous]=NORMAL and [PRAGMA synchronous]=FULL
|
|
// settings. The [synchronous pragma] determines when calls to the
|
|
// xSync VFS method occur and applies uniformly across all platforms.
|
|
// The SQLITE_SYNC_NORMAL and SQLITE_SYNC_FULL flags determine how
|
|
// energetic or rigorous or forceful the sync operations are and
|
|
// only make a difference on Mac OSX for the default SQLite code.
|
|
// (Third-party VFS implementations might also make the distinction
|
|
// between SQLITE_SYNC_NORMAL and SQLITE_SYNC_FULL, but among the
|
|
// operating systems natively supported by SQLite, only Mac OSX
|
|
// cares about the difference.)
|
|
|
|
// CAPI3REF: OS Interface Open File Handle
|
|
//
|
|
// An [sqlite3_file] object represents an open file in the
|
|
// [sqlite3_vfs | OS interface layer]. Individual OS interface
|
|
// implementations will
|
|
// want to subclass this object by appending additional fields
|
|
// for their own use. The pMethods entry is a pointer to an
|
|
// [sqlite3_io_methods] object that defines methods for performing
|
|
// I/O operations on the open file.
|
|
type sqlite3_file1 = struct{ pMethods uintptr } /* sqlite3.h:683:9 */
|
|
|
|
// CAPI3REF: Result Codes
|
|
// KEYWORDS: {result code definitions}
|
|
//
|
|
// Many SQLite functions return an integer result code from the set shown
|
|
// here in order to indicate success or failure.
|
|
//
|
|
// New error codes may be added in future versions of SQLite.
|
|
//
|
|
// See also: [extended result code definitions]
|
|
// beginning-of-error-codes
|
|
// end-of-error-codes
|
|
|
|
// CAPI3REF: Extended Result Codes
|
|
// KEYWORDS: {extended result code definitions}
|
|
//
|
|
// In its default configuration, SQLite API routines return one of 30 integer
|
|
// [result codes]. However, experience has shown that many of
|
|
// these result codes are too coarse-grained. They do not provide as
|
|
// much information about problems as programmers might like. In an effort to
|
|
// address this, newer versions of SQLite (version 3.3.8 [dateof:3.3.8]
|
|
// and later) include
|
|
// support for additional result codes that provide more detailed information
|
|
// about errors. These [extended result codes] are enabled or disabled
|
|
// on a per database connection basis using the
|
|
// [sqlite3_extended_result_codes()] API. Or, the extended code for
|
|
// the most recent error can be obtained using
|
|
// [sqlite3_extended_errcode()].
|
|
|
|
// CAPI3REF: Flags For File Open Operations
|
|
//
|
|
// These bit values are intended for use in the
|
|
// 3rd parameter to the [sqlite3_open_v2()] interface and
|
|
// in the 4th parameter to the [sqlite3_vfs.xOpen] method.
|
|
|
|
// Reserved: 0x00F00000
|
|
// Legacy compatibility:
|
|
|
|
// CAPI3REF: Device Characteristics
|
|
//
|
|
// The xDeviceCharacteristics method of the [sqlite3_io_methods]
|
|
// object returns an integer which is a vector of these
|
|
// bit values expressing I/O characteristics of the mass storage
|
|
// device that holds the file that the [sqlite3_io_methods]
|
|
// refers to.
|
|
//
|
|
// The SQLITE_IOCAP_ATOMIC property means that all writes of
|
|
// any size are atomic. The SQLITE_IOCAP_ATOMICnnn values
|
|
// mean that writes of blocks that are nnn bytes in size and
|
|
// are aligned to an address which is an integer multiple of
|
|
// nnn are atomic. The SQLITE_IOCAP_SAFE_APPEND value means
|
|
// that when data is appended to a file, the data is appended
|
|
// first then the size of the file is extended, never the other
|
|
// way around. The SQLITE_IOCAP_SEQUENTIAL property means that
|
|
// information is written to disk in the same order as calls
|
|
// to xWrite(). The SQLITE_IOCAP_POWERSAFE_OVERWRITE property means that
|
|
// after reboot following a crash or power loss, the only bytes in a
|
|
// file that were written at the application level might have changed
|
|
// and that adjacent bytes, even bytes within the same sector are
|
|
// guaranteed to be unchanged. The SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN
|
|
// flag indicates that a file cannot be deleted when open. The
|
|
// SQLITE_IOCAP_IMMUTABLE flag indicates that the file is on
|
|
// read-only media and cannot be changed even by processes with
|
|
// elevated privileges.
|
|
//
|
|
// The SQLITE_IOCAP_BATCH_ATOMIC property means that the underlying
|
|
// filesystem supports doing multiple write operations atomically when those
|
|
// write operations are bracketed by [SQLITE_FCNTL_BEGIN_ATOMIC_WRITE] and
|
|
// [SQLITE_FCNTL_COMMIT_ATOMIC_WRITE].
|
|
|
|
// CAPI3REF: File Locking Levels
|
|
//
|
|
// SQLite uses one of these integer values as the second
|
|
// argument to calls it makes to the xLock() and xUnlock() methods
|
|
// of an [sqlite3_io_methods] object.
|
|
|
|
// CAPI3REF: Synchronization Type Flags
|
|
//
|
|
// When SQLite invokes the xSync() method of an
|
|
// [sqlite3_io_methods] object it uses a combination of
|
|
// these integer values as the second argument.
|
|
//
|
|
// When the SQLITE_SYNC_DATAONLY flag is used, it means that the
|
|
// sync operation only needs to flush data to mass storage. Inode
|
|
// information need not be flushed. If the lower four bits of the flag
|
|
// equal SQLITE_SYNC_NORMAL, that means to use normal fsync() semantics.
|
|
// If the lower four bits equal SQLITE_SYNC_FULL, that means
|
|
// to use Mac OS X style fullsync instead of fsync().
|
|
//
|
|
// Do not confuse the SQLITE_SYNC_NORMAL and SQLITE_SYNC_FULL flags
|
|
// with the [PRAGMA synchronous]=NORMAL and [PRAGMA synchronous]=FULL
|
|
// settings. The [synchronous pragma] determines when calls to the
|
|
// xSync VFS method occur and applies uniformly across all platforms.
|
|
// The SQLITE_SYNC_NORMAL and SQLITE_SYNC_FULL flags determine how
|
|
// energetic or rigorous or forceful the sync operations are and
|
|
// only make a difference on Mac OSX for the default SQLite code.
|
|
// (Third-party VFS implementations might also make the distinction
|
|
// between SQLITE_SYNC_NORMAL and SQLITE_SYNC_FULL, but among the
|
|
// operating systems natively supported by SQLite, only Mac OSX
|
|
// cares about the difference.)
|
|
|
|
// CAPI3REF: OS Interface Open File Handle
|
|
//
|
|
// An [sqlite3_file] object represents an open file in the
|
|
// [sqlite3_vfs | OS interface layer]. Individual OS interface
|
|
// implementations will
|
|
// want to subclass this object by appending additional fields
|
|
// for their own use. The pMethods entry is a pointer to an
|
|
// [sqlite3_io_methods] object that defines methods for performing
|
|
// I/O operations on the open file.
|
|
type sqlite3_file = sqlite3_file1 /* sqlite3.h:683:29 */
|
|
type sqlite3_io_methods1 = struct {
|
|
iVersion int32
|
|
xClose uintptr
|
|
xRead uintptr
|
|
xWrite uintptr
|
|
xTruncate uintptr
|
|
xSync uintptr
|
|
xFileSize uintptr
|
|
xLock uintptr
|
|
xUnlock uintptr
|
|
xCheckReservedLock uintptr
|
|
xFileControl uintptr
|
|
xSectorSize uintptr
|
|
xDeviceCharacteristics uintptr
|
|
xShmMap uintptr
|
|
xShmLock uintptr
|
|
xShmBarrier uintptr
|
|
xShmUnmap uintptr
|
|
xFetch uintptr
|
|
xUnfetch uintptr
|
|
} /* sqlite3.h:683:9 */
|
|
|
|
// CAPI3REF: OS Interface File Virtual Methods Object
|
|
//
|
|
// Every file opened by the [sqlite3_vfs.xOpen] method populates an
|
|
// [sqlite3_file] object (or, more commonly, a subclass of the
|
|
// [sqlite3_file] object) with a pointer to an instance of this object.
|
|
// This object defines the methods used to perform various operations
|
|
// against the open file represented by the [sqlite3_file] object.
|
|
//
|
|
// If the [sqlite3_vfs.xOpen] method sets the sqlite3_file.pMethods element
|
|
// to a non-NULL pointer, then the sqlite3_io_methods.xClose method
|
|
// may be invoked even if the [sqlite3_vfs.xOpen] reported that it failed. The
|
|
// only way to prevent a call to xClose following a failed [sqlite3_vfs.xOpen]
|
|
// is for the [sqlite3_vfs.xOpen] to set the sqlite3_file.pMethods element
|
|
// to NULL.
|
|
//
|
|
// The flags argument to xSync may be one of [SQLITE_SYNC_NORMAL] or
|
|
// [SQLITE_SYNC_FULL]. The first choice is the normal fsync().
|
|
// The second choice is a Mac OS X style fullsync. The [SQLITE_SYNC_DATAONLY]
|
|
// flag may be ORed in to indicate that only the data of the file
|
|
// and not its inode needs to be synced.
|
|
//
|
|
// The integer values to xLock() and xUnlock() are one of
|
|
// <ul>
|
|
// <li> [SQLITE_LOCK_NONE],
|
|
// <li> [SQLITE_LOCK_SHARED],
|
|
// <li> [SQLITE_LOCK_RESERVED],
|
|
// <li> [SQLITE_LOCK_PENDING], or
|
|
// <li> [SQLITE_LOCK_EXCLUSIVE].
|
|
// </ul>
|
|
// xLock() increases the lock. xUnlock() decreases the lock.
|
|
// The xCheckReservedLock() method checks whether any database connection,
|
|
// either in this process or in some other process, is holding a RESERVED,
|
|
// PENDING, or EXCLUSIVE lock on the file. It returns true
|
|
// if such a lock exists and false otherwise.
|
|
//
|
|
// The xFileControl() method is a generic interface that allows custom
|
|
// VFS implementations to directly control an open file using the
|
|
// [sqlite3_file_control()] interface. The second "op" argument is an
|
|
// integer opcode. The third argument is a generic pointer intended to
|
|
// point to a structure that may contain arguments or space in which to
|
|
// write return values. Potential uses for xFileControl() might be
|
|
// functions to enable blocking locks with timeouts, to change the
|
|
// locking strategy (for example to use dot-file locks), to inquire
|
|
// about the status of a lock, or to break stale locks. The SQLite
|
|
// core reserves all opcodes less than 100 for its own use.
|
|
// A [file control opcodes | list of opcodes] less than 100 is available.
|
|
// Applications that define a custom xFileControl method should use opcodes
|
|
// greater than 100 to avoid conflicts. VFS implementations should
|
|
// return [SQLITE_NOTFOUND] for file control opcodes that they do not
|
|
// recognize.
|
|
//
|
|
// The xSectorSize() method returns the sector size of the
|
|
// device that underlies the file. The sector size is the
|
|
// minimum write that can be performed without disturbing
|
|
// other bytes in the file. The xDeviceCharacteristics()
|
|
// method returns a bit vector describing behaviors of the
|
|
// underlying device:
|
|
//
|
|
// <ul>
|
|
// <li> [SQLITE_IOCAP_ATOMIC]
|
|
// <li> [SQLITE_IOCAP_ATOMIC512]
|
|
// <li> [SQLITE_IOCAP_ATOMIC1K]
|
|
// <li> [SQLITE_IOCAP_ATOMIC2K]
|
|
// <li> [SQLITE_IOCAP_ATOMIC4K]
|
|
// <li> [SQLITE_IOCAP_ATOMIC8K]
|
|
// <li> [SQLITE_IOCAP_ATOMIC16K]
|
|
// <li> [SQLITE_IOCAP_ATOMIC32K]
|
|
// <li> [SQLITE_IOCAP_ATOMIC64K]
|
|
// <li> [SQLITE_IOCAP_SAFE_APPEND]
|
|
// <li> [SQLITE_IOCAP_SEQUENTIAL]
|
|
// <li> [SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN]
|
|
// <li> [SQLITE_IOCAP_POWERSAFE_OVERWRITE]
|
|
// <li> [SQLITE_IOCAP_IMMUTABLE]
|
|
// <li> [SQLITE_IOCAP_BATCH_ATOMIC]
|
|
// </ul>
|
|
//
|
|
// The SQLITE_IOCAP_ATOMIC property means that all writes of
|
|
// any size are atomic. The SQLITE_IOCAP_ATOMICnnn values
|
|
// mean that writes of blocks that are nnn bytes in size and
|
|
// are aligned to an address which is an integer multiple of
|
|
// nnn are atomic. The SQLITE_IOCAP_SAFE_APPEND value means
|
|
// that when data is appended to a file, the data is appended
|
|
// first then the size of the file is extended, never the other
|
|
// way around. The SQLITE_IOCAP_SEQUENTIAL property means that
|
|
// information is written to disk in the same order as calls
|
|
// to xWrite().
|
|
//
|
|
// If xRead() returns SQLITE_IOERR_SHORT_READ it must also fill
|
|
// in the unread portions of the buffer with zeros. A VFS that
|
|
// fails to zero-fill short reads might seem to work. However,
|
|
// failure to zero-fill short reads will eventually lead to
|
|
// database corruption.
|
|
type sqlite3_io_methods = sqlite3_io_methods1 /* sqlite3.h:782:35 */
|
|
|
|
// CAPI3REF: OS Interface Object
|
|
//
|
|
// An instance of the sqlite3_vfs object defines the interface between
|
|
// the SQLite core and the underlying operating system. The "vfs"
|
|
// in the name of the object stands for "virtual file system". See
|
|
// the [VFS | VFS documentation] for further information.
|
|
//
|
|
// The VFS interface is sometimes extended by adding new methods onto
|
|
// the end. Each time such an extension occurs, the iVersion field
|
|
// is incremented. The iVersion value started out as 1 in
|
|
// SQLite [version 3.5.0] on [dateof:3.5.0], then increased to 2
|
|
// with SQLite [version 3.7.0] on [dateof:3.7.0], and then increased
|
|
// to 3 with SQLite [version 3.7.6] on [dateof:3.7.6]. Additional fields
|
|
// may be appended to the sqlite3_vfs object and the iVersion value
|
|
// may increase again in future versions of SQLite.
|
|
// Note that due to an oversight, the structure
|
|
// of the sqlite3_vfs object changed in the transition from
|
|
// SQLite [version 3.5.9] to [version 3.6.0] on [dateof:3.6.0]
|
|
// and yet the iVersion field was not increased.
|
|
//
|
|
// The szOsFile field is the size of the subclassed [sqlite3_file]
|
|
// structure used by this VFS. mxPathname is the maximum length of
|
|
// a pathname in this VFS.
|
|
//
|
|
// Registered sqlite3_vfs objects are kept on a linked list formed by
|
|
// the pNext pointer. The [sqlite3_vfs_register()]
|
|
// and [sqlite3_vfs_unregister()] interfaces manage this list
|
|
// in a thread-safe way. The [sqlite3_vfs_find()] interface
|
|
// searches the list. Neither the application code nor the VFS
|
|
// implementation should use the pNext pointer.
|
|
//
|
|
// The pNext field is the only field in the sqlite3_vfs
|
|
// structure that SQLite will ever modify. SQLite will only access
|
|
// or modify this field while holding a particular static mutex.
|
|
// The application should never modify anything within the sqlite3_vfs
|
|
// object once the object has been registered.
|
|
//
|
|
// The zName field holds the name of the VFS module. The name must
|
|
// be unique across all VFS modules.
|
|
//
|
|
// [[sqlite3_vfs.xOpen]]
|
|
// ^SQLite guarantees that the zFilename parameter to xOpen
|
|
// is either a NULL pointer or string obtained
|
|
// from xFullPathname() with an optional suffix added.
|
|
// ^If a suffix is added to the zFilename parameter, it will
|
|
// consist of a single "-" character followed by no more than
|
|
// 11 alphanumeric and/or "-" characters.
|
|
// ^SQLite further guarantees that
|
|
// the string will be valid and unchanged until xClose() is
|
|
// called. Because of the previous sentence,
|
|
// the [sqlite3_file] can safely store a pointer to the
|
|
// filename if it needs to remember the filename for some reason.
|
|
// If the zFilename parameter to xOpen is a NULL pointer then xOpen
|
|
// must invent its own temporary name for the file. ^Whenever the
|
|
// xFilename parameter is NULL it will also be the case that the
|
|
// flags parameter will include [SQLITE_OPEN_DELETEONCLOSE].
|
|
//
|
|
// The flags argument to xOpen() includes all bits set in
|
|
// the flags argument to [sqlite3_open_v2()]. Or if [sqlite3_open()]
|
|
// or [sqlite3_open16()] is used, then flags includes at least
|
|
// [SQLITE_OPEN_READWRITE] | [SQLITE_OPEN_CREATE].
|
|
// If xOpen() opens a file read-only then it sets *pOutFlags to
|
|
// include [SQLITE_OPEN_READONLY]. Other bits in *pOutFlags may be set.
|
|
//
|
|
// ^(SQLite will also add one of the following flags to the xOpen()
|
|
// call, depending on the object being opened:
|
|
//
|
|
// <ul>
|
|
// <li> [SQLITE_OPEN_MAIN_DB]
|
|
// <li> [SQLITE_OPEN_MAIN_JOURNAL]
|
|
// <li> [SQLITE_OPEN_TEMP_DB]
|
|
// <li> [SQLITE_OPEN_TEMP_JOURNAL]
|
|
// <li> [SQLITE_OPEN_TRANSIENT_DB]
|
|
// <li> [SQLITE_OPEN_SUBJOURNAL]
|
|
// <li> [SQLITE_OPEN_SUPER_JOURNAL]
|
|
// <li> [SQLITE_OPEN_WAL]
|
|
// </ul>)^
|
|
//
|
|
// The file I/O implementation can use the object type flags to
|
|
// change the way it deals with files. For example, an application
|
|
// that does not care about crash recovery or rollback might make
|
|
// the open of a journal file a no-op. Writes to this journal would
|
|
// also be no-ops, and any attempt to read the journal would return
|
|
// SQLITE_IOERR. Or the implementation might recognize that a database
|
|
// file will be doing page-aligned sector reads and writes in a random
|
|
// order and set up its I/O subsystem accordingly.
|
|
//
|
|
// SQLite might also add one of the following flags to the xOpen method:
|
|
//
|
|
// <ul>
|
|
// <li> [SQLITE_OPEN_DELETEONCLOSE]
|
|
// <li> [SQLITE_OPEN_EXCLUSIVE]
|
|
// </ul>
|
|
//
|
|
// The [SQLITE_OPEN_DELETEONCLOSE] flag means the file should be
|
|
// deleted when it is closed. ^The [SQLITE_OPEN_DELETEONCLOSE]
|
|
// will be set for TEMP databases and their journals, transient
|
|
// databases, and subjournals.
|
|
//
|
|
// ^The [SQLITE_OPEN_EXCLUSIVE] flag is always used in conjunction
|
|
// with the [SQLITE_OPEN_CREATE] flag, which are both directly
|
|
// analogous to the O_EXCL and O_CREAT flags of the POSIX open()
|
|
// API. The SQLITE_OPEN_EXCLUSIVE flag, when paired with the
|
|
// SQLITE_OPEN_CREATE, is used to indicate that file should always
|
|
// be created, and that it is an error if it already exists.
|
|
// It is <i>not</i> used to indicate the file should be opened
|
|
// for exclusive access.
|
|
//
|
|
// ^At least szOsFile bytes of memory are allocated by SQLite
|
|
// to hold the [sqlite3_file] structure passed as the third
|
|
// argument to xOpen. The xOpen method does not have to
|
|
// allocate the structure; it should just fill it in. Note that
|
|
// the xOpen method must set the sqlite3_file.pMethods to either
|
|
// a valid [sqlite3_io_methods] object or to NULL. xOpen must do
|
|
// this even if the open fails. SQLite expects that the sqlite3_file.pMethods
|
|
// element will be valid after xOpen returns regardless of the success
|
|
// or failure of the xOpen call.
|
|
//
|
|
// [[sqlite3_vfs.xAccess]]
|
|
// ^The flags argument to xAccess() may be [SQLITE_ACCESS_EXISTS]
|
|
// to test for the existence of a file, or [SQLITE_ACCESS_READWRITE] to
|
|
// test whether a file is readable and writable, or [SQLITE_ACCESS_READ]
|
|
// to test whether a file is at least readable. The SQLITE_ACCESS_READ
|
|
// flag is never actually used and is not implemented in the built-in
|
|
// VFSes of SQLite. The file is named by the second argument and can be a
|
|
// directory. The xAccess method returns [SQLITE_OK] on success or some
|
|
// non-zero error code if there is an I/O error or if the name of
|
|
// the file given in the second argument is illegal. If SQLITE_OK
|
|
// is returned, then non-zero or zero is written into *pResOut to indicate
|
|
// whether or not the file is accessible.
|
|
//
|
|
// ^SQLite will always allocate at least mxPathname+1 bytes for the
|
|
// output buffer xFullPathname. The exact size of the output buffer
|
|
// is also passed as a parameter to both methods. If the output buffer
|
|
// is not large enough, [SQLITE_CANTOPEN] should be returned. Since this is
|
|
// handled as a fatal error by SQLite, vfs implementations should endeavor
|
|
// to prevent this by setting mxPathname to a sufficiently large value.
|
|
//
|
|
// The xRandomness(), xSleep(), xCurrentTime(), and xCurrentTimeInt64()
|
|
// interfaces are not strictly a part of the filesystem, but they are
|
|
// included in the VFS structure for completeness.
|
|
// The xRandomness() function attempts to return nBytes bytes
|
|
// of good-quality randomness into zOut. The return value is
|
|
// the actual number of bytes of randomness obtained.
|
|
// The xSleep() method causes the calling thread to sleep for at
|
|
// least the number of microseconds given. ^The xCurrentTime()
|
|
// method returns a Julian Day Number for the current date and time as
|
|
// a floating point value.
|
|
// ^The xCurrentTimeInt64() method returns, as an integer, the Julian
|
|
// Day Number multiplied by 86400000 (the number of milliseconds in
|
|
// a 24-hour day).
|
|
// ^SQLite will use the xCurrentTimeInt64() method to get the current
|
|
// date and time if that method is available (if iVersion is 2 or
|
|
// greater and the function pointer is not NULL) and will fall back
|
|
// to xCurrentTime() if xCurrentTimeInt64() is unavailable.
|
|
//
|
|
// ^The xSetSystemCall(), xGetSystemCall(), and xNestSystemCall() interfaces
|
|
// are not used by the SQLite core. These optional interfaces are provided
|
|
// by some VFSes to facilitate testing of the VFS code. By overriding
|
|
// system calls with functions under its control, a test program can
|
|
// simulate faults and error conditions that would otherwise be difficult
|
|
// or impossible to induce. The set of system calls that can be overridden
|
|
// varies from one VFS to another, and from one version of the same VFS to the
|
|
// next. Applications that use these interfaces must be prepared for any
|
|
// or all of these interfaces to be NULL or for their behavior to change
|
|
// from one release to the next. Applications must not attempt to access
|
|
// any of these methods if the iVersion of the VFS is less than 3.
|
|
type sqlite3_vfs1 = struct {
|
|
iVersion int32
|
|
szOsFile int32
|
|
mxPathname int32
|
|
pNext uintptr
|
|
zName uintptr
|
|
pAppData uintptr
|
|
xOpen uintptr
|
|
xDelete uintptr
|
|
xAccess uintptr
|
|
xFullPathname uintptr
|
|
xDlOpen uintptr
|
|
xDlError uintptr
|
|
xDlSym uintptr
|
|
xDlClose uintptr
|
|
xRandomness uintptr
|
|
xSleep uintptr
|
|
xCurrentTime uintptr
|
|
xGetLastError uintptr
|
|
xCurrentTimeInt64 uintptr
|
|
xSetSystemCall uintptr
|
|
xGetSystemCall uintptr
|
|
xNextSystemCall uintptr
|
|
} /* sqlite3.h:1367:9 */
|
|
|
|
// CAPI3REF: OS Interface Object
|
|
//
|
|
// An instance of the sqlite3_vfs object defines the interface between
|
|
// the SQLite core and the underlying operating system. The "vfs"
|
|
// in the name of the object stands for "virtual file system". See
|
|
// the [VFS | VFS documentation] for further information.
|
|
//
|
|
// The VFS interface is sometimes extended by adding new methods onto
|
|
// the end. Each time such an extension occurs, the iVersion field
|
|
// is incremented. The iVersion value started out as 1 in
|
|
// SQLite [version 3.5.0] on [dateof:3.5.0], then increased to 2
|
|
// with SQLite [version 3.7.0] on [dateof:3.7.0], and then increased
|
|
// to 3 with SQLite [version 3.7.6] on [dateof:3.7.6]. Additional fields
|
|
// may be appended to the sqlite3_vfs object and the iVersion value
|
|
// may increase again in future versions of SQLite.
|
|
// Note that due to an oversight, the structure
|
|
// of the sqlite3_vfs object changed in the transition from
|
|
// SQLite [version 3.5.9] to [version 3.6.0] on [dateof:3.6.0]
|
|
// and yet the iVersion field was not increased.
|
|
//
|
|
// The szOsFile field is the size of the subclassed [sqlite3_file]
|
|
// structure used by this VFS. mxPathname is the maximum length of
|
|
// a pathname in this VFS.
|
|
//
|
|
// Registered sqlite3_vfs objects are kept on a linked list formed by
|
|
// the pNext pointer. The [sqlite3_vfs_register()]
|
|
// and [sqlite3_vfs_unregister()] interfaces manage this list
|
|
// in a thread-safe way. The [sqlite3_vfs_find()] interface
|
|
// searches the list. Neither the application code nor the VFS
|
|
// implementation should use the pNext pointer.
|
|
//
|
|
// The pNext field is the only field in the sqlite3_vfs
|
|
// structure that SQLite will ever modify. SQLite will only access
|
|
// or modify this field while holding a particular static mutex.
|
|
// The application should never modify anything within the sqlite3_vfs
|
|
// object once the object has been registered.
|
|
//
|
|
// The zName field holds the name of the VFS module. The name must
|
|
// be unique across all VFS modules.
|
|
//
|
|
// [[sqlite3_vfs.xOpen]]
|
|
// ^SQLite guarantees that the zFilename parameter to xOpen
|
|
// is either a NULL pointer or string obtained
|
|
// from xFullPathname() with an optional suffix added.
|
|
// ^If a suffix is added to the zFilename parameter, it will
|
|
// consist of a single "-" character followed by no more than
|
|
// 11 alphanumeric and/or "-" characters.
|
|
// ^SQLite further guarantees that
|
|
// the string will be valid and unchanged until xClose() is
|
|
// called. Because of the previous sentence,
|
|
// the [sqlite3_file] can safely store a pointer to the
|
|
// filename if it needs to remember the filename for some reason.
|
|
// If the zFilename parameter to xOpen is a NULL pointer then xOpen
|
|
// must invent its own temporary name for the file. ^Whenever the
|
|
// xFilename parameter is NULL it will also be the case that the
|
|
// flags parameter will include [SQLITE_OPEN_DELETEONCLOSE].
|
|
//
|
|
// The flags argument to xOpen() includes all bits set in
|
|
// the flags argument to [sqlite3_open_v2()]. Or if [sqlite3_open()]
|
|
// or [sqlite3_open16()] is used, then flags includes at least
|
|
// [SQLITE_OPEN_READWRITE] | [SQLITE_OPEN_CREATE].
|
|
// If xOpen() opens a file read-only then it sets *pOutFlags to
|
|
// include [SQLITE_OPEN_READONLY]. Other bits in *pOutFlags may be set.
|
|
//
|
|
// ^(SQLite will also add one of the following flags to the xOpen()
|
|
// call, depending on the object being opened:
|
|
//
|
|
// <ul>
|
|
// <li> [SQLITE_OPEN_MAIN_DB]
|
|
// <li> [SQLITE_OPEN_MAIN_JOURNAL]
|
|
// <li> [SQLITE_OPEN_TEMP_DB]
|
|
// <li> [SQLITE_OPEN_TEMP_JOURNAL]
|
|
// <li> [SQLITE_OPEN_TRANSIENT_DB]
|
|
// <li> [SQLITE_OPEN_SUBJOURNAL]
|
|
// <li> [SQLITE_OPEN_SUPER_JOURNAL]
|
|
// <li> [SQLITE_OPEN_WAL]
|
|
// </ul>)^
|
|
//
|
|
// The file I/O implementation can use the object type flags to
|
|
// change the way it deals with files. For example, an application
|
|
// that does not care about crash recovery or rollback might make
|
|
// the open of a journal file a no-op. Writes to this journal would
|
|
// also be no-ops, and any attempt to read the journal would return
|
|
// SQLITE_IOERR. Or the implementation might recognize that a database
|
|
// file will be doing page-aligned sector reads and writes in a random
|
|
// order and set up its I/O subsystem accordingly.
|
|
//
|
|
// SQLite might also add one of the following flags to the xOpen method:
|
|
//
|
|
// <ul>
|
|
// <li> [SQLITE_OPEN_DELETEONCLOSE]
|
|
// <li> [SQLITE_OPEN_EXCLUSIVE]
|
|
// </ul>
|
|
//
|
|
// The [SQLITE_OPEN_DELETEONCLOSE] flag means the file should be
|
|
// deleted when it is closed. ^The [SQLITE_OPEN_DELETEONCLOSE]
|
|
// will be set for TEMP databases and their journals, transient
|
|
// databases, and subjournals.
|
|
//
|
|
// ^The [SQLITE_OPEN_EXCLUSIVE] flag is always used in conjunction
|
|
// with the [SQLITE_OPEN_CREATE] flag, which are both directly
|
|
// analogous to the O_EXCL and O_CREAT flags of the POSIX open()
|
|
// API. The SQLITE_OPEN_EXCLUSIVE flag, when paired with the
|
|
// SQLITE_OPEN_CREATE, is used to indicate that file should always
|
|
// be created, and that it is an error if it already exists.
|
|
// It is <i>not</i> used to indicate the file should be opened
|
|
// for exclusive access.
|
|
//
|
|
// ^At least szOsFile bytes of memory are allocated by SQLite
|
|
// to hold the [sqlite3_file] structure passed as the third
|
|
// argument to xOpen. The xOpen method does not have to
|
|
// allocate the structure; it should just fill it in. Note that
|
|
// the xOpen method must set the sqlite3_file.pMethods to either
|
|
// a valid [sqlite3_io_methods] object or to NULL. xOpen must do
|
|
// this even if the open fails. SQLite expects that the sqlite3_file.pMethods
|
|
// element will be valid after xOpen returns regardless of the success
|
|
// or failure of the xOpen call.
|
|
//
|
|
// [[sqlite3_vfs.xAccess]]
|
|
// ^The flags argument to xAccess() may be [SQLITE_ACCESS_EXISTS]
|
|
// to test for the existence of a file, or [SQLITE_ACCESS_READWRITE] to
|
|
// test whether a file is readable and writable, or [SQLITE_ACCESS_READ]
|
|
// to test whether a file is at least readable. The SQLITE_ACCESS_READ
|
|
// flag is never actually used and is not implemented in the built-in
|
|
// VFSes of SQLite. The file is named by the second argument and can be a
|
|
// directory. The xAccess method returns [SQLITE_OK] on success or some
|
|
// non-zero error code if there is an I/O error or if the name of
|
|
// the file given in the second argument is illegal. If SQLITE_OK
|
|
// is returned, then non-zero or zero is written into *pResOut to indicate
|
|
// whether or not the file is accessible.
|
|
//
|
|
// ^SQLite will always allocate at least mxPathname+1 bytes for the
|
|
// output buffer xFullPathname. The exact size of the output buffer
|
|
// is also passed as a parameter to both methods. If the output buffer
|
|
// is not large enough, [SQLITE_CANTOPEN] should be returned. Since this is
|
|
// handled as a fatal error by SQLite, vfs implementations should endeavor
|
|
// to prevent this by setting mxPathname to a sufficiently large value.
|
|
//
|
|
// The xRandomness(), xSleep(), xCurrentTime(), and xCurrentTimeInt64()
|
|
// interfaces are not strictly a part of the filesystem, but they are
|
|
// included in the VFS structure for completeness.
|
|
// The xRandomness() function attempts to return nBytes bytes
|
|
// of good-quality randomness into zOut. The return value is
|
|
// the actual number of bytes of randomness obtained.
|
|
// The xSleep() method causes the calling thread to sleep for at
|
|
// least the number of microseconds given. ^The xCurrentTime()
|
|
// method returns a Julian Day Number for the current date and time as
|
|
// a floating point value.
|
|
// ^The xCurrentTimeInt64() method returns, as an integer, the Julian
|
|
// Day Number multiplied by 86400000 (the number of milliseconds in
|
|
// a 24-hour day).
|
|
// ^SQLite will use the xCurrentTimeInt64() method to get the current
|
|
// date and time if that method is available (if iVersion is 2 or
|
|
// greater and the function pointer is not NULL) and will fall back
|
|
// to xCurrentTime() if xCurrentTimeInt64() is unavailable.
|
|
//
|
|
// ^The xSetSystemCall(), xGetSystemCall(), and xNestSystemCall() interfaces
|
|
// are not used by the SQLite core. These optional interfaces are provided
|
|
// by some VFSes to facilitate testing of the VFS code. By overriding
|
|
// system calls with functions under its control, a test program can
|
|
// simulate faults and error conditions that would otherwise be difficult
|
|
// or impossible to induce. The set of system calls that can be overridden
|
|
// varies from one VFS to another, and from one version of the same VFS to the
|
|
// next. Applications that use these interfaces must be prepared for any
|
|
// or all of these interfaces to be NULL or for their behavior to change
|
|
// from one release to the next. Applications must not attempt to access
|
|
// any of these methods if the iVersion of the VFS is less than 3.
|
|
type sqlite3_vfs = sqlite3_vfs1 /* sqlite3.h:1367:28 */
|
|
type sqlite3_syscall_ptr = uintptr /* sqlite3.h:1368:14 */
|
|
|
|
// CAPI3REF: Memory Allocation Routines
|
|
//
|
|
// An instance of this object defines the interface between SQLite
|
|
// and low-level memory allocation routines.
|
|
//
|
|
// This object is used in only one place in the SQLite interface.
|
|
// A pointer to an instance of this object is the argument to
|
|
// [sqlite3_config()] when the configuration option is
|
|
// [SQLITE_CONFIG_MALLOC] or [SQLITE_CONFIG_GETMALLOC].
|
|
// By creating an instance of this object
|
|
// and passing it to [sqlite3_config]([SQLITE_CONFIG_MALLOC])
|
|
// during configuration, an application can specify an alternative
|
|
// memory allocation subsystem for SQLite to use for all of its
|
|
// dynamic memory needs.
|
|
//
|
|
// Note that SQLite comes with several [built-in memory allocators]
|
|
// that are perfectly adequate for the overwhelming majority of applications
|
|
// and that this object is only useful to a tiny minority of applications
|
|
// with specialized memory allocation requirements. This object is
|
|
// also used during testing of SQLite in order to specify an alternative
|
|
// memory allocator that simulates memory out-of-memory conditions in
|
|
// order to verify that SQLite recovers gracefully from such
|
|
// conditions.
|
|
//
|
|
// The xMalloc, xRealloc, and xFree methods must work like the
|
|
// malloc(), realloc() and free() functions from the standard C library.
|
|
// ^SQLite guarantees that the second argument to
|
|
// xRealloc is always a value returned by a prior call to xRoundup.
|
|
//
|
|
// xSize should return the allocated size of a memory allocation
|
|
// previously obtained from xMalloc or xRealloc. The allocated size
|
|
// is always at least as big as the requested size but may be larger.
|
|
//
|
|
// The xRoundup method returns what would be the allocated size of
|
|
// a memory allocation given a particular requested size. Most memory
|
|
// allocators round up memory allocations at least to the next multiple
|
|
// of 8. Some allocators round up to a larger multiple or to a power of 2.
|
|
// Every memory allocation request coming in through [sqlite3_malloc()]
|
|
// or [sqlite3_realloc()] first calls xRoundup. If xRoundup returns 0,
|
|
// that causes the corresponding memory allocation to fail.
|
|
//
|
|
// The xInit method initializes the memory allocator. For example,
|
|
// it might allocate any required mutexes or initialize internal data
|
|
// structures. The xShutdown method is invoked (indirectly) by
|
|
// [sqlite3_shutdown()] and should deallocate any resources acquired
|
|
// by xInit. The pAppData pointer is used as the only parameter to
|
|
// xInit and xShutdown.
|
|
//
|
|
// SQLite holds the [SQLITE_MUTEX_STATIC_MAIN] mutex when it invokes
|
|
// the xInit method, so the xInit method need not be threadsafe. The
|
|
// xShutdown method is only called from [sqlite3_shutdown()] so it does
|
|
// not need to be threadsafe either. For all other methods, SQLite
|
|
// holds the [SQLITE_MUTEX_STATIC_MEM] mutex as long as the
|
|
// [SQLITE_CONFIG_MEMSTATUS] configuration option is turned on (which
|
|
// it is by default) and so the methods are automatically serialized.
|
|
// However, if [SQLITE_CONFIG_MEMSTATUS] is disabled, then the other
|
|
// methods must be threadsafe or else make their own arrangements for
|
|
// serialization.
|
|
//
|
|
// SQLite will never invoke xInit() more than once without an intervening
|
|
// call to xShutdown().
|
|
type sqlite3_mem_methods1 = struct {
|
|
xMalloc uintptr
|
|
xFree uintptr
|
|
xRealloc uintptr
|
|
xSize uintptr
|
|
xRoundup uintptr
|
|
xInit uintptr
|
|
xShutdown uintptr
|
|
pAppData uintptr
|
|
} /* sqlite3.h:1665:9 */
|
|
|
|
// CAPI3REF: Memory Allocation Routines
|
|
//
|
|
// An instance of this object defines the interface between SQLite
|
|
// and low-level memory allocation routines.
|
|
//
|
|
// This object is used in only one place in the SQLite interface.
|
|
// A pointer to an instance of this object is the argument to
|
|
// [sqlite3_config()] when the configuration option is
|
|
// [SQLITE_CONFIG_MALLOC] or [SQLITE_CONFIG_GETMALLOC].
|
|
// By creating an instance of this object
|
|
// and passing it to [sqlite3_config]([SQLITE_CONFIG_MALLOC])
|
|
// during configuration, an application can specify an alternative
|
|
// memory allocation subsystem for SQLite to use for all of its
|
|
// dynamic memory needs.
|
|
//
|
|
// Note that SQLite comes with several [built-in memory allocators]
|
|
// that are perfectly adequate for the overwhelming majority of applications
|
|
// and that this object is only useful to a tiny minority of applications
|
|
// with specialized memory allocation requirements. This object is
|
|
// also used during testing of SQLite in order to specify an alternative
|
|
// memory allocator that simulates memory out-of-memory conditions in
|
|
// order to verify that SQLite recovers gracefully from such
|
|
// conditions.
|
|
//
|
|
// The xMalloc, xRealloc, and xFree methods must work like the
|
|
// malloc(), realloc() and free() functions from the standard C library.
|
|
// ^SQLite guarantees that the second argument to
|
|
// xRealloc is always a value returned by a prior call to xRoundup.
|
|
//
|
|
// xSize should return the allocated size of a memory allocation
|
|
// previously obtained from xMalloc or xRealloc. The allocated size
|
|
// is always at least as big as the requested size but may be larger.
|
|
//
|
|
// The xRoundup method returns what would be the allocated size of
|
|
// a memory allocation given a particular requested size. Most memory
|
|
// allocators round up memory allocations at least to the next multiple
|
|
// of 8. Some allocators round up to a larger multiple or to a power of 2.
|
|
// Every memory allocation request coming in through [sqlite3_malloc()]
|
|
// or [sqlite3_realloc()] first calls xRoundup. If xRoundup returns 0,
|
|
// that causes the corresponding memory allocation to fail.
|
|
//
|
|
// The xInit method initializes the memory allocator. For example,
|
|
// it might allocate any required mutexes or initialize internal data
|
|
// structures. The xShutdown method is invoked (indirectly) by
|
|
// [sqlite3_shutdown()] and should deallocate any resources acquired
|
|
// by xInit. The pAppData pointer is used as the only parameter to
|
|
// xInit and xShutdown.
|
|
//
|
|
// SQLite holds the [SQLITE_MUTEX_STATIC_MAIN] mutex when it invokes
|
|
// the xInit method, so the xInit method need not be threadsafe. The
|
|
// xShutdown method is only called from [sqlite3_shutdown()] so it does
|
|
// not need to be threadsafe either. For all other methods, SQLite
|
|
// holds the [SQLITE_MUTEX_STATIC_MEM] mutex as long as the
|
|
// [SQLITE_CONFIG_MEMSTATUS] configuration option is turned on (which
|
|
// it is by default) and so the methods are automatically serialized.
|
|
// However, if [SQLITE_CONFIG_MEMSTATUS] is disabled, then the other
|
|
// methods must be threadsafe or else make their own arrangements for
|
|
// serialization.
|
|
//
|
|
// SQLite will never invoke xInit() more than once without an intervening
|
|
// call to xShutdown().
|
|
type sqlite3_mem_methods = sqlite3_mem_methods1 /* sqlite3.h:1665:36 */
|
|
|
|
// CAPI3REF: Constants Defining Special Destructor Behavior
|
|
//
|
|
// These are special values for the destructor that is passed in as the
|
|
// final argument to routines like [sqlite3_result_blob()]. ^If the destructor
|
|
// argument is SQLITE_STATIC, it means that the content pointer is constant
|
|
// and will never change. It does not need to be destroyed. ^The
|
|
// SQLITE_TRANSIENT value means that the content will likely change in
|
|
// the near future and that SQLite should make its own private copy of
|
|
// the content before returning.
|
|
//
|
|
// The typedef is necessary to work around problems in certain
|
|
// C++ compilers.
|
|
type sqlite3_destructor_type = uintptr /* sqlite3.h:5621:14 */
|
|
|
|
// The interface to the virtual-table mechanism is currently considered
|
|
// to be experimental. The interface might change in incompatible ways.
|
|
// If this is a problem for you, do not use the interface at this time.
|
|
//
|
|
// When the virtual-table mechanism stabilizes, we will declare the
|
|
// interface fixed, support it indefinitely, and remove this comment.
|
|
|
|
// Structures used by the virtual table interface
|
|
type sqlite3_vtab1 = struct {
|
|
pModule uintptr
|
|
nRef int32
|
|
zErrMsg uintptr
|
|
} /* sqlite3.h:6689:9 */
|
|
|
|
// The interface to the virtual-table mechanism is currently considered
|
|
// to be experimental. The interface might change in incompatible ways.
|
|
// If this is a problem for you, do not use the interface at this time.
|
|
//
|
|
// When the virtual-table mechanism stabilizes, we will declare the
|
|
// interface fixed, support it indefinitely, and remove this comment.
|
|
|
|
// Structures used by the virtual table interface
|
|
type sqlite3_vtab = sqlite3_vtab1 /* sqlite3.h:6689:29 */
|
|
type sqlite3_index_info1 = struct {
|
|
nConstraint int32
|
|
aConstraint uintptr
|
|
nOrderBy int32
|
|
aOrderBy uintptr
|
|
aConstraintUsage uintptr
|
|
idxNum int32
|
|
idxStr uintptr
|
|
needToFreeIdxStr int32
|
|
orderByConsumed int32
|
|
_ [4]byte
|
|
estimatedCost float64
|
|
estimatedRows sqlite3_int64
|
|
idxFlags int32
|
|
_ [4]byte
|
|
colUsed sqlite3_uint64
|
|
} /* sqlite3.h:6690:9 */
|
|
|
|
type sqlite3_index_info = sqlite3_index_info1 /* sqlite3.h:6690:35 */
|
|
type sqlite3_vtab_cursor1 = struct{ pVtab uintptr } /* sqlite3.h:6691:9 */
|
|
|
|
type sqlite3_vtab_cursor = sqlite3_vtab_cursor1 /* sqlite3.h:6691:36 */
|
|
type sqlite3_module1 = struct {
|
|
iVersion int32
|
|
xCreate uintptr
|
|
xConnect uintptr
|
|
xBestIndex uintptr
|
|
xDisconnect uintptr
|
|
xDestroy uintptr
|
|
xOpen uintptr
|
|
xClose uintptr
|
|
xFilter uintptr
|
|
xNext uintptr
|
|
xEof uintptr
|
|
xColumn uintptr
|
|
xRowid uintptr
|
|
xUpdate uintptr
|
|
xBegin uintptr
|
|
xSync uintptr
|
|
xCommit uintptr
|
|
xRollback uintptr
|
|
xFindFunction uintptr
|
|
xRename uintptr
|
|
xSavepoint uintptr
|
|
xRelease uintptr
|
|
xRollbackTo uintptr
|
|
xShadowName uintptr
|
|
} /* sqlite3.h:6689:9 */
|
|
|
|
type sqlite3_module = sqlite3_module1 /* sqlite3.h:6692:31 */
|
|
|
|
// CAPI3REF: Virtual Table Indexing Information
|
|
// KEYWORDS: sqlite3_index_info
|
|
//
|
|
// The sqlite3_index_info structure and its substructures is used as part
|
|
// of the [virtual table] interface to
|
|
// pass information into and receive the reply from the [xBestIndex]
|
|
// method of a [virtual table module]. The fields under **Inputs** are the
|
|
// inputs to xBestIndex and are read-only. xBestIndex inserts its
|
|
// results into the **Outputs** fields.
|
|
//
|
|
// ^(The aConstraint[] array records WHERE clause constraints of the form:
|
|
//
|
|
// <blockquote>column OP expr</blockquote>
|
|
//
|
|
// where OP is =, <, <=, >, or >=.)^ ^(The particular operator is
|
|
// stored in aConstraint[].op using one of the
|
|
// [SQLITE_INDEX_CONSTRAINT_EQ | SQLITE_INDEX_CONSTRAINT_ values].)^
|
|
// ^(The index of the column is stored in
|
|
// aConstraint[].iColumn.)^ ^(aConstraint[].usable is TRUE if the
|
|
// expr on the right-hand side can be evaluated (and thus the constraint
|
|
// is usable) and false if it cannot.)^
|
|
//
|
|
// ^The optimizer automatically inverts terms of the form "expr OP column"
|
|
// and makes other simplifications to the WHERE clause in an attempt to
|
|
// get as many WHERE clause terms into the form shown above as possible.
|
|
// ^The aConstraint[] array only reports WHERE clause terms that are
|
|
// relevant to the particular virtual table being queried.
|
|
//
|
|
// ^Information about the ORDER BY clause is stored in aOrderBy[].
|
|
// ^Each term of aOrderBy records a column of the ORDER BY clause.
|
|
//
|
|
// The colUsed field indicates which columns of the virtual table may be
|
|
// required by the current scan. Virtual table columns are numbered from
|
|
// zero in the order in which they appear within the CREATE TABLE statement
|
|
// passed to sqlite3_declare_vtab(). For the first 63 columns (columns 0-62),
|
|
// the corresponding bit is set within the colUsed mask if the column may be
|
|
// required by SQLite. If the table has at least 64 columns and any column
|
|
// to the right of the first 63 is required, then bit 63 of colUsed is also
|
|
// set. In other words, column iCol may be required if the expression
|
|
// (colUsed & ((sqlite3_uint64)1 << (iCol>=63 ? 63 : iCol))) evaluates to
|
|
// non-zero.
|
|
//
|
|
// The [xBestIndex] method must fill aConstraintUsage[] with information
|
|
// about what parameters to pass to xFilter. ^If argvIndex>0 then
|
|
// the right-hand side of the corresponding aConstraint[] is evaluated
|
|
// and becomes the argvIndex-th entry in argv. ^(If aConstraintUsage[].omit
|
|
// is true, then the constraint is assumed to be fully handled by the
|
|
// virtual table and might not be checked again by the byte code.)^ ^(The
|
|
// aConstraintUsage[].omit flag is an optimization hint. When the omit flag
|
|
// is left in its default setting of false, the constraint will always be
|
|
// checked separately in byte code. If the omit flag is change to true, then
|
|
// the constraint may or may not be checked in byte code. In other words,
|
|
// when the omit flag is true there is no guarantee that the constraint will
|
|
// not be checked again using byte code.)^
|
|
//
|
|
// ^The idxNum and idxPtr values are recorded and passed into the
|
|
// [xFilter] method.
|
|
// ^[sqlite3_free()] is used to free idxPtr if and only if
|
|
// needToFreeIdxPtr is true.
|
|
//
|
|
// ^The orderByConsumed means that output from [xFilter]/[xNext] will occur in
|
|
// the correct order to satisfy the ORDER BY clause so that no separate
|
|
// sorting step is required.
|
|
//
|
|
// ^The estimatedCost value is an estimate of the cost of a particular
|
|
// strategy. A cost of N indicates that the cost of the strategy is similar
|
|
// to a linear scan of an SQLite table with N rows. A cost of log(N)
|
|
// indicates that the expense of the operation is similar to that of a
|
|
// binary search on a unique indexed field of an SQLite table with N rows.
|
|
//
|
|
// ^The estimatedRows value is an estimate of the number of rows that
|
|
// will be returned by the strategy.
|
|
//
|
|
// The xBestIndex method may optionally populate the idxFlags field with a
|
|
// mask of SQLITE_INDEX_SCAN_* flags. Currently there is only one such flag -
|
|
// SQLITE_INDEX_SCAN_UNIQUE. If the xBestIndex method sets this flag, SQLite
|
|
// assumes that the strategy may visit at most one row.
|
|
//
|
|
// Additionally, if xBestIndex sets the SQLITE_INDEX_SCAN_UNIQUE flag, then
|
|
// SQLite also assumes that if a call to the xUpdate() method is made as
|
|
// part of the same statement to delete or update a virtual table row and the
|
|
// implementation returns SQLITE_CONSTRAINT, then there is no need to rollback
|
|
// any database changes. In other words, if the xUpdate() returns
|
|
// SQLITE_CONSTRAINT, the database contents must be exactly as they were
|
|
// before xUpdate was called. By contrast, if SQLITE_INDEX_SCAN_UNIQUE is not
|
|
// set and xUpdate returns SQLITE_CONSTRAINT, any database changes made by
|
|
// the xUpdate method are automatically rolled back by SQLite.
|
|
//
|
|
// IMPORTANT: The estimatedRows field was added to the sqlite3_index_info
|
|
// structure for SQLite [version 3.8.2] ([dateof:3.8.2]).
|
|
// If a virtual table extension is
|
|
// used with an SQLite version earlier than 3.8.2, the results of attempting
|
|
// to read or write the estimatedRows field are undefined (but are likely
|
|
// to include crashing the application). The estimatedRows field should
|
|
// therefore only be used if [sqlite3_libversion_number()] returns a
|
|
// value greater than or equal to 3008002. Similarly, the idxFlags field
|
|
// was added for [version 3.9.0] ([dateof:3.9.0]).
|
|
// It may therefore only be used if
|
|
// sqlite3_libversion_number() returns a value greater than or equal to
|
|
// 3009000.
|
|
type sqlite3_index_constraint = struct {
|
|
iColumn int32
|
|
op uint8
|
|
usable uint8
|
|
_ [2]byte
|
|
iTermOffset int32
|
|
} /* sqlite3.h:6690:9 */
|
|
|
|
// CAPI3REF: Virtual Table Indexing Information
|
|
// KEYWORDS: sqlite3_index_info
|
|
//
|
|
// The sqlite3_index_info structure and its substructures is used as part
|
|
// of the [virtual table] interface to
|
|
// pass information into and receive the reply from the [xBestIndex]
|
|
// method of a [virtual table module]. The fields under **Inputs** are the
|
|
// inputs to xBestIndex and are read-only. xBestIndex inserts its
|
|
// results into the **Outputs** fields.
|
|
//
|
|
// ^(The aConstraint[] array records WHERE clause constraints of the form:
|
|
//
|
|
// <blockquote>column OP expr</blockquote>
|
|
//
|
|
// where OP is =, <, <=, >, or >=.)^ ^(The particular operator is
|
|
// stored in aConstraint[].op using one of the
|
|
// [SQLITE_INDEX_CONSTRAINT_EQ | SQLITE_INDEX_CONSTRAINT_ values].)^
|
|
// ^(The index of the column is stored in
|
|
// aConstraint[].iColumn.)^ ^(aConstraint[].usable is TRUE if the
|
|
// expr on the right-hand side can be evaluated (and thus the constraint
|
|
// is usable) and false if it cannot.)^
|
|
//
|
|
// ^The optimizer automatically inverts terms of the form "expr OP column"
|
|
// and makes other simplifications to the WHERE clause in an attempt to
|
|
// get as many WHERE clause terms into the form shown above as possible.
|
|
// ^The aConstraint[] array only reports WHERE clause terms that are
|
|
// relevant to the particular virtual table being queried.
|
|
//
|
|
// ^Information about the ORDER BY clause is stored in aOrderBy[].
|
|
// ^Each term of aOrderBy records a column of the ORDER BY clause.
|
|
//
|
|
// The colUsed field indicates which columns of the virtual table may be
|
|
// required by the current scan. Virtual table columns are numbered from
|
|
// zero in the order in which they appear within the CREATE TABLE statement
|
|
// passed to sqlite3_declare_vtab(). For the first 63 columns (columns 0-62),
|
|
// the corresponding bit is set within the colUsed mask if the column may be
|
|
// required by SQLite. If the table has at least 64 columns and any column
|
|
// to the right of the first 63 is required, then bit 63 of colUsed is also
|
|
// set. In other words, column iCol may be required if the expression
|
|
// (colUsed & ((sqlite3_uint64)1 << (iCol>=63 ? 63 : iCol))) evaluates to
|
|
// non-zero.
|
|
//
|
|
// The [xBestIndex] method must fill aConstraintUsage[] with information
|
|
// about what parameters to pass to xFilter. ^If argvIndex>0 then
|
|
// the right-hand side of the corresponding aConstraint[] is evaluated
|
|
// and becomes the argvIndex-th entry in argv. ^(If aConstraintUsage[].omit
|
|
// is true, then the constraint is assumed to be fully handled by the
|
|
// virtual table and might not be checked again by the byte code.)^ ^(The
|
|
// aConstraintUsage[].omit flag is an optimization hint. When the omit flag
|
|
// is left in its default setting of false, the constraint will always be
|
|
// checked separately in byte code. If the omit flag is change to true, then
|
|
// the constraint may or may not be checked in byte code. In other words,
|
|
// when the omit flag is true there is no guarantee that the constraint will
|
|
// not be checked again using byte code.)^
|
|
//
|
|
// ^The idxNum and idxPtr values are recorded and passed into the
|
|
// [xFilter] method.
|
|
// ^[sqlite3_free()] is used to free idxPtr if and only if
|
|
// needToFreeIdxPtr is true.
|
|
//
|
|
// ^The orderByConsumed means that output from [xFilter]/[xNext] will occur in
|
|
// the correct order to satisfy the ORDER BY clause so that no separate
|
|
// sorting step is required.
|
|
//
|
|
// ^The estimatedCost value is an estimate of the cost of a particular
|
|
// strategy. A cost of N indicates that the cost of the strategy is similar
|
|
// to a linear scan of an SQLite table with N rows. A cost of log(N)
|
|
// indicates that the expense of the operation is similar to that of a
|
|
// binary search on a unique indexed field of an SQLite table with N rows.
|
|
//
|
|
// ^The estimatedRows value is an estimate of the number of rows that
|
|
// will be returned by the strategy.
|
|
//
|
|
// The xBestIndex method may optionally populate the idxFlags field with a
|
|
// mask of SQLITE_INDEX_SCAN_* flags. Currently there is only one such flag -
|
|
// SQLITE_INDEX_SCAN_UNIQUE. If the xBestIndex method sets this flag, SQLite
|
|
// assumes that the strategy may visit at most one row.
|
|
//
|
|
// Additionally, if xBestIndex sets the SQLITE_INDEX_SCAN_UNIQUE flag, then
|
|
// SQLite also assumes that if a call to the xUpdate() method is made as
|
|
// part of the same statement to delete or update a virtual table row and the
|
|
// implementation returns SQLITE_CONSTRAINT, then there is no need to rollback
|
|
// any database changes. In other words, if the xUpdate() returns
|
|
// SQLITE_CONSTRAINT, the database contents must be exactly as they were
|
|
// before xUpdate was called. By contrast, if SQLITE_INDEX_SCAN_UNIQUE is not
|
|
// set and xUpdate returns SQLITE_CONSTRAINT, any database changes made by
|
|
// the xUpdate method are automatically rolled back by SQLite.
|
|
//
|
|
// IMPORTANT: The estimatedRows field was added to the sqlite3_index_info
|
|
// structure for SQLite [version 3.8.2] ([dateof:3.8.2]).
|
|
// If a virtual table extension is
|
|
// used with an SQLite version earlier than 3.8.2, the results of attempting
|
|
// to read or write the estimatedRows field are undefined (but are likely
|
|
// to include crashing the application). The estimatedRows field should
|
|
// therefore only be used if [sqlite3_libversion_number()] returns a
|
|
// value greater than or equal to 3008002. Similarly, the idxFlags field
|
|
// was added for [version 3.9.0] ([dateof:3.9.0]).
|
|
// It may therefore only be used if
|
|
// sqlite3_libversion_number() returns a value greater than or equal to
|
|
// 3009000.
|
|
type sqlite3_index_orderby = struct {
|
|
iColumn int32
|
|
desc uint8
|
|
_ [3]byte
|
|
} /* sqlite3.h:6690:9 */
|
|
|
|
// CAPI3REF: Virtual Table Indexing Information
|
|
// KEYWORDS: sqlite3_index_info
|
|
//
|
|
// The sqlite3_index_info structure and its substructures is used as part
|
|
// of the [virtual table] interface to
|
|
// pass information into and receive the reply from the [xBestIndex]
|
|
// method of a [virtual table module]. The fields under **Inputs** are the
|
|
// inputs to xBestIndex and are read-only. xBestIndex inserts its
|
|
// results into the **Outputs** fields.
|
|
//
|
|
// ^(The aConstraint[] array records WHERE clause constraints of the form:
|
|
//
|
|
// <blockquote>column OP expr</blockquote>
|
|
//
|
|
// where OP is =, <, <=, >, or >=.)^ ^(The particular operator is
|
|
// stored in aConstraint[].op using one of the
|
|
// [SQLITE_INDEX_CONSTRAINT_EQ | SQLITE_INDEX_CONSTRAINT_ values].)^
|
|
// ^(The index of the column is stored in
|
|
// aConstraint[].iColumn.)^ ^(aConstraint[].usable is TRUE if the
|
|
// expr on the right-hand side can be evaluated (and thus the constraint
|
|
// is usable) and false if it cannot.)^
|
|
//
|
|
// ^The optimizer automatically inverts terms of the form "expr OP column"
|
|
// and makes other simplifications to the WHERE clause in an attempt to
|
|
// get as many WHERE clause terms into the form shown above as possible.
|
|
// ^The aConstraint[] array only reports WHERE clause terms that are
|
|
// relevant to the particular virtual table being queried.
|
|
//
|
|
// ^Information about the ORDER BY clause is stored in aOrderBy[].
|
|
// ^Each term of aOrderBy records a column of the ORDER BY clause.
|
|
//
|
|
// The colUsed field indicates which columns of the virtual table may be
|
|
// required by the current scan. Virtual table columns are numbered from
|
|
// zero in the order in which they appear within the CREATE TABLE statement
|
|
// passed to sqlite3_declare_vtab(). For the first 63 columns (columns 0-62),
|
|
// the corresponding bit is set within the colUsed mask if the column may be
|
|
// required by SQLite. If the table has at least 64 columns and any column
|
|
// to the right of the first 63 is required, then bit 63 of colUsed is also
|
|
// set. In other words, column iCol may be required if the expression
|
|
// (colUsed & ((sqlite3_uint64)1 << (iCol>=63 ? 63 : iCol))) evaluates to
|
|
// non-zero.
|
|
//
|
|
// The [xBestIndex] method must fill aConstraintUsage[] with information
|
|
// about what parameters to pass to xFilter. ^If argvIndex>0 then
|
|
// the right-hand side of the corresponding aConstraint[] is evaluated
|
|
// and becomes the argvIndex-th entry in argv. ^(If aConstraintUsage[].omit
|
|
// is true, then the constraint is assumed to be fully handled by the
|
|
// virtual table and might not be checked again by the byte code.)^ ^(The
|
|
// aConstraintUsage[].omit flag is an optimization hint. When the omit flag
|
|
// is left in its default setting of false, the constraint will always be
|
|
// checked separately in byte code. If the omit flag is change to true, then
|
|
// the constraint may or may not be checked in byte code. In other words,
|
|
// when the omit flag is true there is no guarantee that the constraint will
|
|
// not be checked again using byte code.)^
|
|
//
|
|
// ^The idxNum and idxPtr values are recorded and passed into the
|
|
// [xFilter] method.
|
|
// ^[sqlite3_free()] is used to free idxPtr if and only if
|
|
// needToFreeIdxPtr is true.
|
|
//
|
|
// ^The orderByConsumed means that output from [xFilter]/[xNext] will occur in
|
|
// the correct order to satisfy the ORDER BY clause so that no separate
|
|
// sorting step is required.
|
|
//
|
|
// ^The estimatedCost value is an estimate of the cost of a particular
|
|
// strategy. A cost of N indicates that the cost of the strategy is similar
|
|
// to a linear scan of an SQLite table with N rows. A cost of log(N)
|
|
// indicates that the expense of the operation is similar to that of a
|
|
// binary search on a unique indexed field of an SQLite table with N rows.
|
|
//
|
|
// ^The estimatedRows value is an estimate of the number of rows that
|
|
// will be returned by the strategy.
|
|
//
|
|
// The xBestIndex method may optionally populate the idxFlags field with a
|
|
// mask of SQLITE_INDEX_SCAN_* flags. Currently there is only one such flag -
|
|
// SQLITE_INDEX_SCAN_UNIQUE. If the xBestIndex method sets this flag, SQLite
|
|
// assumes that the strategy may visit at most one row.
|
|
//
|
|
// Additionally, if xBestIndex sets the SQLITE_INDEX_SCAN_UNIQUE flag, then
|
|
// SQLite also assumes that if a call to the xUpdate() method is made as
|
|
// part of the same statement to delete or update a virtual table row and the
|
|
// implementation returns SQLITE_CONSTRAINT, then there is no need to rollback
|
|
// any database changes. In other words, if the xUpdate() returns
|
|
// SQLITE_CONSTRAINT, the database contents must be exactly as they were
|
|
// before xUpdate was called. By contrast, if SQLITE_INDEX_SCAN_UNIQUE is not
|
|
// set and xUpdate returns SQLITE_CONSTRAINT, any database changes made by
|
|
// the xUpdate method are automatically rolled back by SQLite.
|
|
//
|
|
// IMPORTANT: The estimatedRows field was added to the sqlite3_index_info
|
|
// structure for SQLite [version 3.8.2] ([dateof:3.8.2]).
|
|
// If a virtual table extension is
|
|
// used with an SQLite version earlier than 3.8.2, the results of attempting
|
|
// to read or write the estimatedRows field are undefined (but are likely
|
|
// to include crashing the application). The estimatedRows field should
|
|
// therefore only be used if [sqlite3_libversion_number()] returns a
|
|
// value greater than or equal to 3008002. Similarly, the idxFlags field
|
|
// was added for [version 3.9.0] ([dateof:3.9.0]).
|
|
// It may therefore only be used if
|
|
// sqlite3_libversion_number() returns a value greater than or equal to
|
|
// 3009000.
|
|
type sqlite3_index_constraint_usage = struct {
|
|
argvIndex int32
|
|
omit uint8
|
|
_ [3]byte
|
|
} /* sqlite3.h:6690:9 */
|
|
|
|
// CAPI3REF: Mutex Methods Object
|
|
//
|
|
// An instance of this structure defines the low-level routines
|
|
// used to allocate and use mutexes.
|
|
//
|
|
// Usually, the default mutex implementations provided by SQLite are
|
|
// sufficient, however the application has the option of substituting a custom
|
|
// implementation for specialized deployments or systems for which SQLite
|
|
// does not provide a suitable implementation. In this case, the application
|
|
// creates and populates an instance of this structure to pass
|
|
// to sqlite3_config() along with the [SQLITE_CONFIG_MUTEX] option.
|
|
// Additionally, an instance of this structure can be used as an
|
|
// output variable when querying the system for the current mutex
|
|
// implementation, using the [SQLITE_CONFIG_GETMUTEX] option.
|
|
//
|
|
// ^The xMutexInit method defined by this structure is invoked as
|
|
// part of system initialization by the sqlite3_initialize() function.
|
|
// ^The xMutexInit routine is called by SQLite exactly once for each
|
|
// effective call to [sqlite3_initialize()].
|
|
//
|
|
// ^The xMutexEnd method defined by this structure is invoked as
|
|
// part of system shutdown by the sqlite3_shutdown() function. The
|
|
// implementation of this method is expected to release all outstanding
|
|
// resources obtained by the mutex methods implementation, especially
|
|
// those obtained by the xMutexInit method. ^The xMutexEnd()
|
|
// interface is invoked exactly once for each call to [sqlite3_shutdown()].
|
|
//
|
|
// ^(The remaining seven methods defined by this structure (xMutexAlloc,
|
|
// xMutexFree, xMutexEnter, xMutexTry, xMutexLeave, xMutexHeld and
|
|
// xMutexNotheld) implement the following interfaces (respectively):
|
|
//
|
|
// <ul>
|
|
// <li> [sqlite3_mutex_alloc()] </li>
|
|
// <li> [sqlite3_mutex_free()] </li>
|
|
// <li> [sqlite3_mutex_enter()] </li>
|
|
// <li> [sqlite3_mutex_try()] </li>
|
|
// <li> [sqlite3_mutex_leave()] </li>
|
|
// <li> [sqlite3_mutex_held()] </li>
|
|
// <li> [sqlite3_mutex_notheld()] </li>
|
|
// </ul>)^
|
|
//
|
|
// The only difference is that the public sqlite3_XXX functions enumerated
|
|
// above silently ignore any invocations that pass a NULL pointer instead
|
|
// of a valid mutex handle. The implementations of the methods defined
|
|
// by this structure are not required to handle this case. The results
|
|
// of passing a NULL pointer instead of a valid mutex handle are undefined
|
|
// (i.e. it is acceptable to provide an implementation that segfaults if
|
|
// it is passed a NULL pointer).
|
|
//
|
|
// The xMutexInit() method must be threadsafe. It must be harmless to
|
|
// invoke xMutexInit() multiple times within the same process and without
|
|
// intervening calls to xMutexEnd(). Second and subsequent calls to
|
|
// xMutexInit() must be no-ops.
|
|
//
|
|
// xMutexInit() must not use SQLite memory allocation ([sqlite3_malloc()]
|
|
// and its associates). Similarly, xMutexAlloc() must not use SQLite memory
|
|
// allocation for a static mutex. ^However xMutexAlloc() may use SQLite
|
|
// memory allocation for a fast or recursive mutex.
|
|
//
|
|
// ^SQLite will invoke the xMutexEnd() method when [sqlite3_shutdown()] is
|
|
// called, but only if the prior call to xMutexInit returned SQLITE_OK.
|
|
// If xMutexInit fails in any way, it is expected to clean up after itself
|
|
// prior to returning.
|
|
type sqlite3_mutex_methods1 = struct {
|
|
xMutexInit uintptr
|
|
xMutexEnd uintptr
|
|
xMutexAlloc uintptr
|
|
xMutexFree uintptr
|
|
xMutexEnter uintptr
|
|
xMutexTry uintptr
|
|
xMutexLeave uintptr
|
|
xMutexHeld uintptr
|
|
xMutexNotheld uintptr
|
|
} /* sqlite3.h:7524:9 */
|
|
|
|
// CAPI3REF: Mutex Methods Object
|
|
//
|
|
// An instance of this structure defines the low-level routines
|
|
// used to allocate and use mutexes.
|
|
//
|
|
// Usually, the default mutex implementations provided by SQLite are
|
|
// sufficient, however the application has the option of substituting a custom
|
|
// implementation for specialized deployments or systems for which SQLite
|
|
// does not provide a suitable implementation. In this case, the application
|
|
// creates and populates an instance of this structure to pass
|
|
// to sqlite3_config() along with the [SQLITE_CONFIG_MUTEX] option.
|
|
// Additionally, an instance of this structure can be used as an
|
|
// output variable when querying the system for the current mutex
|
|
// implementation, using the [SQLITE_CONFIG_GETMUTEX] option.
|
|
//
|
|
// ^The xMutexInit method defined by this structure is invoked as
|
|
// part of system initialization by the sqlite3_initialize() function.
|
|
// ^The xMutexInit routine is called by SQLite exactly once for each
|
|
// effective call to [sqlite3_initialize()].
|
|
//
|
|
// ^The xMutexEnd method defined by this structure is invoked as
|
|
// part of system shutdown by the sqlite3_shutdown() function. The
|
|
// implementation of this method is expected to release all outstanding
|
|
// resources obtained by the mutex methods implementation, especially
|
|
// those obtained by the xMutexInit method. ^The xMutexEnd()
|
|
// interface is invoked exactly once for each call to [sqlite3_shutdown()].
|
|
//
|
|
// ^(The remaining seven methods defined by this structure (xMutexAlloc,
|
|
// xMutexFree, xMutexEnter, xMutexTry, xMutexLeave, xMutexHeld and
|
|
// xMutexNotheld) implement the following interfaces (respectively):
|
|
//
|
|
// <ul>
|
|
// <li> [sqlite3_mutex_alloc()] </li>
|
|
// <li> [sqlite3_mutex_free()] </li>
|
|
// <li> [sqlite3_mutex_enter()] </li>
|
|
// <li> [sqlite3_mutex_try()] </li>
|
|
// <li> [sqlite3_mutex_leave()] </li>
|
|
// <li> [sqlite3_mutex_held()] </li>
|
|
// <li> [sqlite3_mutex_notheld()] </li>
|
|
// </ul>)^
|
|
//
|
|
// The only difference is that the public sqlite3_XXX functions enumerated
|
|
// above silently ignore any invocations that pass a NULL pointer instead
|
|
// of a valid mutex handle. The implementations of the methods defined
|
|
// by this structure are not required to handle this case. The results
|
|
// of passing a NULL pointer instead of a valid mutex handle are undefined
|
|
// (i.e. it is acceptable to provide an implementation that segfaults if
|
|
// it is passed a NULL pointer).
|
|
//
|
|
// The xMutexInit() method must be threadsafe. It must be harmless to
|
|
// invoke xMutexInit() multiple times within the same process and without
|
|
// intervening calls to xMutexEnd(). Second and subsequent calls to
|
|
// xMutexInit() must be no-ops.
|
|
//
|
|
// xMutexInit() must not use SQLite memory allocation ([sqlite3_malloc()]
|
|
// and its associates). Similarly, xMutexAlloc() must not use SQLite memory
|
|
// allocation for a static mutex. ^However xMutexAlloc() may use SQLite
|
|
// memory allocation for a fast or recursive mutex.
|
|
//
|
|
// ^SQLite will invoke the xMutexEnd() method when [sqlite3_shutdown()] is
|
|
// called, but only if the prior call to xMutexInit returned SQLITE_OK.
|
|
// If xMutexInit fails in any way, it is expected to clean up after itself
|
|
// prior to returning.
|
|
type sqlite3_mutex_methods = sqlite3_mutex_methods1 /* sqlite3.h:7524:38 */
|
|
|
|
// CAPI3REF: Custom Page Cache Object
|
|
//
|
|
// The sqlite3_pcache_page object represents a single page in the
|
|
// page cache. The page cache will allocate instances of this
|
|
// object. Various methods of the page cache use pointers to instances
|
|
// of this object as parameters or as their return value.
|
|
//
|
|
// See [sqlite3_pcache_methods2] for additional information.
|
|
type sqlite3_pcache_page1 = struct {
|
|
pBuf uintptr
|
|
pExtra uintptr
|
|
} /* sqlite3.h:8277:9 */
|
|
|
|
// CAPI3REF: Custom Page Cache Object
|
|
//
|
|
// The sqlite3_pcache_page object represents a single page in the
|
|
// page cache. The page cache will allocate instances of this
|
|
// object. Various methods of the page cache use pointers to instances
|
|
// of this object as parameters or as their return value.
|
|
//
|
|
// See [sqlite3_pcache_methods2] for additional information.
|
|
type sqlite3_pcache_page = sqlite3_pcache_page1 /* sqlite3.h:8277:36 */
|
|
|
|
// CAPI3REF: Application Defined Page Cache.
|
|
// KEYWORDS: {page cache}
|
|
//
|
|
// ^(The [sqlite3_config]([SQLITE_CONFIG_PCACHE2], ...) interface can
|
|
// register an alternative page cache implementation by passing in an
|
|
// instance of the sqlite3_pcache_methods2 structure.)^
|
|
// In many applications, most of the heap memory allocated by
|
|
// SQLite is used for the page cache.
|
|
// By implementing a
|
|
// custom page cache using this API, an application can better control
|
|
// the amount of memory consumed by SQLite, the way in which
|
|
// that memory is allocated and released, and the policies used to
|
|
// determine exactly which parts of a database file are cached and for
|
|
// how long.
|
|
//
|
|
// The alternative page cache mechanism is an
|
|
// extreme measure that is only needed by the most demanding applications.
|
|
// The built-in page cache is recommended for most uses.
|
|
//
|
|
// ^(The contents of the sqlite3_pcache_methods2 structure are copied to an
|
|
// internal buffer by SQLite within the call to [sqlite3_config]. Hence
|
|
// the application may discard the parameter after the call to
|
|
// [sqlite3_config()] returns.)^
|
|
//
|
|
// [[the xInit() page cache method]]
|
|
// ^(The xInit() method is called once for each effective
|
|
// call to [sqlite3_initialize()])^
|
|
// (usually only once during the lifetime of the process). ^(The xInit()
|
|
// method is passed a copy of the sqlite3_pcache_methods2.pArg value.)^
|
|
// The intent of the xInit() method is to set up global data structures
|
|
// required by the custom page cache implementation.
|
|
// ^(If the xInit() method is NULL, then the
|
|
// built-in default page cache is used instead of the application defined
|
|
// page cache.)^
|
|
//
|
|
// [[the xShutdown() page cache method]]
|
|
// ^The xShutdown() method is called by [sqlite3_shutdown()].
|
|
// It can be used to clean up
|
|
// any outstanding resources before process shutdown, if required.
|
|
// ^The xShutdown() method may be NULL.
|
|
//
|
|
// ^SQLite automatically serializes calls to the xInit method,
|
|
// so the xInit method need not be threadsafe. ^The
|
|
// xShutdown method is only called from [sqlite3_shutdown()] so it does
|
|
// not need to be threadsafe either. All other methods must be threadsafe
|
|
// in multithreaded applications.
|
|
//
|
|
// ^SQLite will never invoke xInit() more than once without an intervening
|
|
// call to xShutdown().
|
|
//
|
|
// [[the xCreate() page cache methods]]
|
|
// ^SQLite invokes the xCreate() method to construct a new cache instance.
|
|
// SQLite will typically create one cache instance for each open database file,
|
|
// though this is not guaranteed. ^The
|
|
// first parameter, szPage, is the size in bytes of the pages that must
|
|
// be allocated by the cache. ^szPage will always a power of two. ^The
|
|
// second parameter szExtra is a number of bytes of extra storage
|
|
// associated with each page cache entry. ^The szExtra parameter will
|
|
// a number less than 250. SQLite will use the
|
|
// extra szExtra bytes on each page to store metadata about the underlying
|
|
// database page on disk. The value passed into szExtra depends
|
|
// on the SQLite version, the target platform, and how SQLite was compiled.
|
|
// ^The third argument to xCreate(), bPurgeable, is true if the cache being
|
|
// created will be used to cache database pages of a file stored on disk, or
|
|
// false if it is used for an in-memory database. The cache implementation
|
|
// does not have to do anything special based with the value of bPurgeable;
|
|
// it is purely advisory. ^On a cache where bPurgeable is false, SQLite will
|
|
// never invoke xUnpin() except to deliberately delete a page.
|
|
// ^In other words, calls to xUnpin() on a cache with bPurgeable set to
|
|
// false will always have the "discard" flag set to true.
|
|
// ^Hence, a cache created with bPurgeable false will
|
|
// never contain any unpinned pages.
|
|
//
|
|
// [[the xCachesize() page cache method]]
|
|
// ^(The xCachesize() method may be called at any time by SQLite to set the
|
|
// suggested maximum cache-size (number of pages stored by) the cache
|
|
// instance passed as the first argument. This is the value configured using
|
|
// the SQLite "[PRAGMA cache_size]" command.)^ As with the bPurgeable
|
|
// parameter, the implementation is not required to do anything with this
|
|
// value; it is advisory only.
|
|
//
|
|
// [[the xPagecount() page cache methods]]
|
|
// The xPagecount() method must return the number of pages currently
|
|
// stored in the cache, both pinned and unpinned.
|
|
//
|
|
// [[the xFetch() page cache methods]]
|
|
// The xFetch() method locates a page in the cache and returns a pointer to
|
|
// an sqlite3_pcache_page object associated with that page, or a NULL pointer.
|
|
// The pBuf element of the returned sqlite3_pcache_page object will be a
|
|
// pointer to a buffer of szPage bytes used to store the content of a
|
|
// single database page. The pExtra element of sqlite3_pcache_page will be
|
|
// a pointer to the szExtra bytes of extra storage that SQLite has requested
|
|
// for each entry in the page cache.
|
|
//
|
|
// The page to be fetched is determined by the key. ^The minimum key value
|
|
// is 1. After it has been retrieved using xFetch, the page is considered
|
|
// to be "pinned".
|
|
//
|
|
// If the requested page is already in the page cache, then the page cache
|
|
// implementation must return a pointer to the page buffer with its content
|
|
// intact. If the requested page is not already in the cache, then the
|
|
// cache implementation should use the value of the createFlag
|
|
// parameter to help it determined what action to take:
|
|
//
|
|
// <table border=1 width=85% align=center>
|
|
// <tr><th> createFlag <th> Behavior when page is not already in cache
|
|
// <tr><td> 0 <td> Do not allocate a new page. Return NULL.
|
|
// <tr><td> 1 <td> Allocate a new page if it easy and convenient to do so.
|
|
// Otherwise return NULL.
|
|
// <tr><td> 2 <td> Make every effort to allocate a new page. Only return
|
|
// NULL if allocating a new page is effectively impossible.
|
|
// </table>
|
|
//
|
|
// ^(SQLite will normally invoke xFetch() with a createFlag of 0 or 1. SQLite
|
|
// will only use a createFlag of 2 after a prior call with a createFlag of 1
|
|
// failed.)^ In between the xFetch() calls, SQLite may
|
|
// attempt to unpin one or more cache pages by spilling the content of
|
|
// pinned pages to disk and synching the operating system disk cache.
|
|
//
|
|
// [[the xUnpin() page cache method]]
|
|
// ^xUnpin() is called by SQLite with a pointer to a currently pinned page
|
|
// as its second argument. If the third parameter, discard, is non-zero,
|
|
// then the page must be evicted from the cache.
|
|
// ^If the discard parameter is
|
|
// zero, then the page may be discarded or retained at the discretion of
|
|
// page cache implementation. ^The page cache implementation
|
|
// may choose to evict unpinned pages at any time.
|
|
//
|
|
// The cache must not perform any reference counting. A single
|
|
// call to xUnpin() unpins the page regardless of the number of prior calls
|
|
// to xFetch().
|
|
//
|
|
// [[the xRekey() page cache methods]]
|
|
// The xRekey() method is used to change the key value associated with the
|
|
// page passed as the second argument. If the cache
|
|
// previously contains an entry associated with newKey, it must be
|
|
// discarded. ^Any prior cache entry associated with newKey is guaranteed not
|
|
// to be pinned.
|
|
//
|
|
// When SQLite calls the xTruncate() method, the cache must discard all
|
|
// existing cache entries with page numbers (keys) greater than or equal
|
|
// to the value of the iLimit parameter passed to xTruncate(). If any
|
|
// of these pages are pinned, they are implicitly unpinned, meaning that
|
|
// they can be safely discarded.
|
|
//
|
|
// [[the xDestroy() page cache method]]
|
|
// ^The xDestroy() method is used to delete a cache allocated by xCreate().
|
|
// All resources associated with the specified cache should be freed. ^After
|
|
// calling the xDestroy() method, SQLite considers the [sqlite3_pcache*]
|
|
// handle invalid, and will not use it with any other sqlite3_pcache_methods2
|
|
// functions.
|
|
//
|
|
// [[the xShrink() page cache method]]
|
|
// ^SQLite invokes the xShrink() method when it wants the page cache to
|
|
// free up as much of heap memory as possible. The page cache implementation
|
|
// is not obligated to free any memory, but well-behaved implementations should
|
|
// do their best.
|
|
type sqlite3_pcache_methods21 = struct {
|
|
iVersion int32
|
|
pArg uintptr
|
|
xInit uintptr
|
|
xShutdown uintptr
|
|
xCreate uintptr
|
|
xCachesize uintptr
|
|
xPagecount uintptr
|
|
xFetch uintptr
|
|
xUnpin uintptr
|
|
xRekey uintptr
|
|
xTruncate uintptr
|
|
xDestroy uintptr
|
|
xShrink uintptr
|
|
} /* sqlite3.h:8442:9 */
|
|
|
|
// CAPI3REF: Application Defined Page Cache.
|
|
// KEYWORDS: {page cache}
|
|
//
|
|
// ^(The [sqlite3_config]([SQLITE_CONFIG_PCACHE2], ...) interface can
|
|
// register an alternative page cache implementation by passing in an
|
|
// instance of the sqlite3_pcache_methods2 structure.)^
|
|
// In many applications, most of the heap memory allocated by
|
|
// SQLite is used for the page cache.
|
|
// By implementing a
|
|
// custom page cache using this API, an application can better control
|
|
// the amount of memory consumed by SQLite, the way in which
|
|
// that memory is allocated and released, and the policies used to
|
|
// determine exactly which parts of a database file are cached and for
|
|
// how long.
|
|
//
|
|
// The alternative page cache mechanism is an
|
|
// extreme measure that is only needed by the most demanding applications.
|
|
// The built-in page cache is recommended for most uses.
|
|
//
|
|
// ^(The contents of the sqlite3_pcache_methods2 structure are copied to an
|
|
// internal buffer by SQLite within the call to [sqlite3_config]. Hence
|
|
// the application may discard the parameter after the call to
|
|
// [sqlite3_config()] returns.)^
|
|
//
|
|
// [[the xInit() page cache method]]
|
|
// ^(The xInit() method is called once for each effective
|
|
// call to [sqlite3_initialize()])^
|
|
// (usually only once during the lifetime of the process). ^(The xInit()
|
|
// method is passed a copy of the sqlite3_pcache_methods2.pArg value.)^
|
|
// The intent of the xInit() method is to set up global data structures
|
|
// required by the custom page cache implementation.
|
|
// ^(If the xInit() method is NULL, then the
|
|
// built-in default page cache is used instead of the application defined
|
|
// page cache.)^
|
|
//
|
|
// [[the xShutdown() page cache method]]
|
|
// ^The xShutdown() method is called by [sqlite3_shutdown()].
|
|
// It can be used to clean up
|
|
// any outstanding resources before process shutdown, if required.
|
|
// ^The xShutdown() method may be NULL.
|
|
//
|
|
// ^SQLite automatically serializes calls to the xInit method,
|
|
// so the xInit method need not be threadsafe. ^The
|
|
// xShutdown method is only called from [sqlite3_shutdown()] so it does
|
|
// not need to be threadsafe either. All other methods must be threadsafe
|
|
// in multithreaded applications.
|
|
//
|
|
// ^SQLite will never invoke xInit() more than once without an intervening
|
|
// call to xShutdown().
|
|
//
|
|
// [[the xCreate() page cache methods]]
|
|
// ^SQLite invokes the xCreate() method to construct a new cache instance.
|
|
// SQLite will typically create one cache instance for each open database file,
|
|
// though this is not guaranteed. ^The
|
|
// first parameter, szPage, is the size in bytes of the pages that must
|
|
// be allocated by the cache. ^szPage will always a power of two. ^The
|
|
// second parameter szExtra is a number of bytes of extra storage
|
|
// associated with each page cache entry. ^The szExtra parameter will
|
|
// a number less than 250. SQLite will use the
|
|
// extra szExtra bytes on each page to store metadata about the underlying
|
|
// database page on disk. The value passed into szExtra depends
|
|
// on the SQLite version, the target platform, and how SQLite was compiled.
|
|
// ^The third argument to xCreate(), bPurgeable, is true if the cache being
|
|
// created will be used to cache database pages of a file stored on disk, or
|
|
// false if it is used for an in-memory database. The cache implementation
|
|
// does not have to do anything special based with the value of bPurgeable;
|
|
// it is purely advisory. ^On a cache where bPurgeable is false, SQLite will
|
|
// never invoke xUnpin() except to deliberately delete a page.
|
|
// ^In other words, calls to xUnpin() on a cache with bPurgeable set to
|
|
// false will always have the "discard" flag set to true.
|
|
// ^Hence, a cache created with bPurgeable false will
|
|
// never contain any unpinned pages.
|
|
//
|
|
// [[the xCachesize() page cache method]]
|
|
// ^(The xCachesize() method may be called at any time by SQLite to set the
|
|
// suggested maximum cache-size (number of pages stored by) the cache
|
|
// instance passed as the first argument. This is the value configured using
|
|
// the SQLite "[PRAGMA cache_size]" command.)^ As with the bPurgeable
|
|
// parameter, the implementation is not required to do anything with this
|
|
// value; it is advisory only.
|
|
//
|
|
// [[the xPagecount() page cache methods]]
|
|
// The xPagecount() method must return the number of pages currently
|
|
// stored in the cache, both pinned and unpinned.
|
|
//
|
|
// [[the xFetch() page cache methods]]
|
|
// The xFetch() method locates a page in the cache and returns a pointer to
|
|
// an sqlite3_pcache_page object associated with that page, or a NULL pointer.
|
|
// The pBuf element of the returned sqlite3_pcache_page object will be a
|
|
// pointer to a buffer of szPage bytes used to store the content of a
|
|
// single database page. The pExtra element of sqlite3_pcache_page will be
|
|
// a pointer to the szExtra bytes of extra storage that SQLite has requested
|
|
// for each entry in the page cache.
|
|
//
|
|
// The page to be fetched is determined by the key. ^The minimum key value
|
|
// is 1. After it has been retrieved using xFetch, the page is considered
|
|
// to be "pinned".
|
|
//
|
|
// If the requested page is already in the page cache, then the page cache
|
|
// implementation must return a pointer to the page buffer with its content
|
|
// intact. If the requested page is not already in the cache, then the
|
|
// cache implementation should use the value of the createFlag
|
|
// parameter to help it determined what action to take:
|
|
//
|
|
// <table border=1 width=85% align=center>
|
|
// <tr><th> createFlag <th> Behavior when page is not already in cache
|
|
// <tr><td> 0 <td> Do not allocate a new page. Return NULL.
|
|
// <tr><td> 1 <td> Allocate a new page if it easy and convenient to do so.
|
|
// Otherwise return NULL.
|
|
// <tr><td> 2 <td> Make every effort to allocate a new page. Only return
|
|
// NULL if allocating a new page is effectively impossible.
|
|
// </table>
|
|
//
|
|
// ^(SQLite will normally invoke xFetch() with a createFlag of 0 or 1. SQLite
|
|
// will only use a createFlag of 2 after a prior call with a createFlag of 1
|
|
// failed.)^ In between the xFetch() calls, SQLite may
|
|
// attempt to unpin one or more cache pages by spilling the content of
|
|
// pinned pages to disk and synching the operating system disk cache.
|
|
//
|
|
// [[the xUnpin() page cache method]]
|
|
// ^xUnpin() is called by SQLite with a pointer to a currently pinned page
|
|
// as its second argument. If the third parameter, discard, is non-zero,
|
|
// then the page must be evicted from the cache.
|
|
// ^If the discard parameter is
|
|
// zero, then the page may be discarded or retained at the discretion of
|
|
// page cache implementation. ^The page cache implementation
|
|
// may choose to evict unpinned pages at any time.
|
|
//
|
|
// The cache must not perform any reference counting. A single
|
|
// call to xUnpin() unpins the page regardless of the number of prior calls
|
|
// to xFetch().
|
|
//
|
|
// [[the xRekey() page cache methods]]
|
|
// The xRekey() method is used to change the key value associated with the
|
|
// page passed as the second argument. If the cache
|
|
// previously contains an entry associated with newKey, it must be
|
|
// discarded. ^Any prior cache entry associated with newKey is guaranteed not
|
|
// to be pinned.
|
|
//
|
|
// When SQLite calls the xTruncate() method, the cache must discard all
|
|
// existing cache entries with page numbers (keys) greater than or equal
|
|
// to the value of the iLimit parameter passed to xTruncate(). If any
|
|
// of these pages are pinned, they are implicitly unpinned, meaning that
|
|
// they can be safely discarded.
|
|
//
|
|
// [[the xDestroy() page cache method]]
|
|
// ^The xDestroy() method is used to delete a cache allocated by xCreate().
|
|
// All resources associated with the specified cache should be freed. ^After
|
|
// calling the xDestroy() method, SQLite considers the [sqlite3_pcache*]
|
|
// handle invalid, and will not use it with any other sqlite3_pcache_methods2
|
|
// functions.
|
|
//
|
|
// [[the xShrink() page cache method]]
|
|
// ^SQLite invokes the xShrink() method when it wants the page cache to
|
|
// free up as much of heap memory as possible. The page cache implementation
|
|
// is not obligated to free any memory, but well-behaved implementations should
|
|
// do their best.
|
|
type sqlite3_pcache_methods2 = sqlite3_pcache_methods21 /* sqlite3.h:8442:40 */
|
|
|
|
// This is the obsolete pcache_methods object that has now been replaced
|
|
// by sqlite3_pcache_methods2. This object is not used by SQLite. It is
|
|
// retained in the header file for backwards compatibility only.
|
|
type sqlite3_pcache_methods1 = struct {
|
|
pArg uintptr
|
|
xInit uintptr
|
|
xShutdown uintptr
|
|
xCreate uintptr
|
|
xCachesize uintptr
|
|
xPagecount uintptr
|
|
xFetch uintptr
|
|
xUnpin uintptr
|
|
xRekey uintptr
|
|
xTruncate uintptr
|
|
xDestroy uintptr
|
|
} /* sqlite3.h:8465:9 */
|
|
|
|
// This is the obsolete pcache_methods object that has now been replaced
|
|
// by sqlite3_pcache_methods2. This object is not used by SQLite. It is
|
|
// retained in the header file for backwards compatibility only.
|
|
type sqlite3_pcache_methods = sqlite3_pcache_methods1 /* sqlite3.h:8465:39 */
|
|
|
|
// CAPI3REF: Database Snapshot
|
|
// KEYWORDS: {snapshot} {sqlite3_snapshot}
|
|
//
|
|
// An instance of the snapshot object records the state of a [WAL mode]
|
|
// database for some specific point in history.
|
|
//
|
|
// In [WAL mode], multiple [database connections] that are open on the
|
|
// same database file can each be reading a different historical version
|
|
// of the database file. When a [database connection] begins a read
|
|
// transaction, that connection sees an unchanging copy of the database
|
|
// as it existed for the point in time when the transaction first started.
|
|
// Subsequent changes to the database from other connections are not seen
|
|
// by the reader until a new read transaction is started.
|
|
//
|
|
// The sqlite3_snapshot object records state information about an historical
|
|
// version of the database file so that it is possible to later open a new read
|
|
// transaction that sees that historical version of the database rather than
|
|
// the most recent version.
|
|
type sqlite3_snapshot1 = struct{ hidden [48]uint8 } /* sqlite3.h:9512:9 */
|
|
|
|
// CAPI3REF: Database Snapshot
|
|
// KEYWORDS: {snapshot} {sqlite3_snapshot}
|
|
//
|
|
// An instance of the snapshot object records the state of a [WAL mode]
|
|
// database for some specific point in history.
|
|
//
|
|
// In [WAL mode], multiple [database connections] that are open on the
|
|
// same database file can each be reading a different historical version
|
|
// of the database file. When a [database connection] begins a read
|
|
// transaction, that connection sees an unchanging copy of the database
|
|
// as it existed for the point in time when the transaction first started.
|
|
// Subsequent changes to the database from other connections are not seen
|
|
// by the reader until a new read transaction is started.
|
|
//
|
|
// The sqlite3_snapshot object records state information about an historical
|
|
// version of the database file so that it is possible to later open a new read
|
|
// transaction that sees that historical version of the database rather than
|
|
// the most recent version.
|
|
type sqlite3_snapshot = sqlite3_snapshot1 /* sqlite3.h:9514:3 */
|
|
|
|
// CAPI3REF: Flags for sqlite3_deserialize()
|
|
//
|
|
// The following are allowed values for 6th argument (the F argument) to
|
|
// the [sqlite3_deserialize(D,S,P,N,M,F)] interface.
|
|
//
|
|
// The SQLITE_DESERIALIZE_FREEONCLOSE means that the database serialization
|
|
// in the P argument is held in memory obtained from [sqlite3_malloc64()]
|
|
// and that SQLite should take ownership of this memory and automatically
|
|
// free it when it has finished using it. Without this flag, the caller
|
|
// is responsible for freeing any dynamically allocated memory.
|
|
//
|
|
// The SQLITE_DESERIALIZE_RESIZEABLE flag means that SQLite is allowed to
|
|
// grow the size of the database using calls to [sqlite3_realloc64()]. This
|
|
// flag should only be used if SQLITE_DESERIALIZE_FREEONCLOSE is also used.
|
|
// Without this flag, the deserialized database cannot increase in size beyond
|
|
// the number of bytes specified by the M parameter.
|
|
//
|
|
// The SQLITE_DESERIALIZE_READONLY flag means that the deserialized database
|
|
// should be treated as read-only.
|
|
|
|
// Undo the hack that converts floating point types to integer for
|
|
// builds on processors without floating point support.
|
|
|
|
//******* Begin file sqlite3rtree.h ********
|
|
// 2010 August 30
|
|
//
|
|
// The author disclaims copyright to this source code. In place of
|
|
// a legal notice, here is a blessing:
|
|
//
|
|
// May you do good and not evil.
|
|
// May you find forgiveness for yourself and forgive others.
|
|
// May you share freely, never taking more than you give.
|
|
//
|
|
//
|
|
|
|
type sqlite3_rtree_geometry1 = struct {
|
|
pContext uintptr
|
|
nParam int32
|
|
aParam uintptr
|
|
pUser uintptr
|
|
xDelUser uintptr
|
|
} /* sqlite3.h:9839:9 */
|
|
|
|
// CAPI3REF: Flags for sqlite3_deserialize()
|
|
//
|
|
// The following are allowed values for 6th argument (the F argument) to
|
|
// the [sqlite3_deserialize(D,S,P,N,M,F)] interface.
|
|
//
|
|
// The SQLITE_DESERIALIZE_FREEONCLOSE means that the database serialization
|
|
// in the P argument is held in memory obtained from [sqlite3_malloc64()]
|
|
// and that SQLite should take ownership of this memory and automatically
|
|
// free it when it has finished using it. Without this flag, the caller
|
|
// is responsible for freeing any dynamically allocated memory.
|
|
//
|
|
// The SQLITE_DESERIALIZE_RESIZEABLE flag means that SQLite is allowed to
|
|
// grow the size of the database using calls to [sqlite3_realloc64()]. This
|
|
// flag should only be used if SQLITE_DESERIALIZE_FREEONCLOSE is also used.
|
|
// Without this flag, the deserialized database cannot increase in size beyond
|
|
// the number of bytes specified by the M parameter.
|
|
//
|
|
// The SQLITE_DESERIALIZE_READONLY flag means that the deserialized database
|
|
// should be treated as read-only.
|
|
|
|
// Undo the hack that converts floating point types to integer for
|
|
// builds on processors without floating point support.
|
|
|
|
//******* Begin file sqlite3rtree.h ********
|
|
// 2010 August 30
|
|
//
|
|
// The author disclaims copyright to this source code. In place of
|
|
// a legal notice, here is a blessing:
|
|
//
|
|
// May you do good and not evil.
|
|
// May you find forgiveness for yourself and forgive others.
|
|
// May you share freely, never taking more than you give.
|
|
//
|
|
//
|
|
|
|
type sqlite3_rtree_geometry = sqlite3_rtree_geometry1 /* sqlite3.h:9839:39 */
|
|
type sqlite3_rtree_query_info1 = struct {
|
|
pContext uintptr
|
|
nParam int32
|
|
aParam uintptr
|
|
pUser uintptr
|
|
xDelUser uintptr
|
|
aCoord uintptr
|
|
anQueue uintptr
|
|
nCoord int32
|
|
iLevel int32
|
|
mxLevel int32
|
|
iRowid sqlite3_int64
|
|
rParentScore sqlite3_rtree_dbl
|
|
eParentWithin int32
|
|
eWithin int32
|
|
rScore sqlite3_rtree_dbl
|
|
apSqlParam uintptr
|
|
_ [4]byte
|
|
} /* sqlite3.h:9840:9 */
|
|
|
|
type sqlite3_rtree_query_info = sqlite3_rtree_query_info1 /* sqlite3.h:9840:41 */
|
|
|
|
// The double-precision datatype used by RTree depends on the
|
|
// SQLITE_RTREE_INT_ONLY compile-time option.
|
|
type sqlite3_rtree_dbl = float64 /* sqlite3.h:9848:18 */
|
|
|
|
// Allowed values for sqlite3_rtree_query.eWithin and .eParentWithin.
|
|
|
|
//******* End of sqlite3rtree.h ********
|
|
//******* Begin file sqlite3session.h ********
|
|
|
|
//******* End of sqlite3session.h ********
|
|
//******* Begin file fts5.h ********
|
|
// 2014 May 31
|
|
//
|
|
// The author disclaims copyright to this source code. In place of
|
|
// a legal notice, here is a blessing:
|
|
//
|
|
// May you do good and not evil.
|
|
// May you find forgiveness for yourself and forgive others.
|
|
// May you share freely, never taking more than you give.
|
|
//
|
|
//
|
|
//
|
|
// Interfaces to extend FTS5. Using the interfaces defined in this file,
|
|
// FTS5 may be extended with:
|
|
//
|
|
// * custom tokenizers, and
|
|
// * custom auxiliary functions.
|
|
|
|
// ************************************************************************
|
|
//
|
|
// CUSTOM AUXILIARY FUNCTIONS
|
|
//
|
|
// Virtual table implementations may overload SQL functions by implementing
|
|
// the sqlite3_module.xFindFunction() method.
|
|
|
|
type Fts5ExtensionApi1 = struct {
|
|
iVersion int32
|
|
xUserData uintptr
|
|
xColumnCount uintptr
|
|
xRowCount uintptr
|
|
xColumnTotalSize uintptr
|
|
xTokenize uintptr
|
|
xPhraseCount uintptr
|
|
xPhraseSize uintptr
|
|
xInstCount uintptr
|
|
xInst uintptr
|
|
xRowid uintptr
|
|
xColumnText uintptr
|
|
xColumnSize uintptr
|
|
xQueryPhrase uintptr
|
|
xSetAuxdata uintptr
|
|
xGetAuxdata uintptr
|
|
xPhraseFirst uintptr
|
|
xPhraseNext uintptr
|
|
xPhraseFirstColumn uintptr
|
|
xPhraseNextColumn uintptr
|
|
} /* sqlite3.h:11634:9 */
|
|
|
|
// Allowed values for sqlite3_rtree_query.eWithin and .eParentWithin.
|
|
|
|
//******* End of sqlite3rtree.h ********
|
|
//******* Begin file sqlite3session.h ********
|
|
|
|
//******* End of sqlite3session.h ********
|
|
//******* Begin file fts5.h ********
|
|
// 2014 May 31
|
|
//
|
|
// The author disclaims copyright to this source code. In place of
|
|
// a legal notice, here is a blessing:
|
|
//
|
|
// May you do good and not evil.
|
|
// May you find forgiveness for yourself and forgive others.
|
|
// May you share freely, never taking more than you give.
|
|
//
|
|
//
|
|
//
|
|
// Interfaces to extend FTS5. Using the interfaces defined in this file,
|
|
// FTS5 may be extended with:
|
|
//
|
|
// * custom tokenizers, and
|
|
// * custom auxiliary functions.
|
|
|
|
// ************************************************************************
|
|
//
|
|
// CUSTOM AUXILIARY FUNCTIONS
|
|
//
|
|
// Virtual table implementations may overload SQL functions by implementing
|
|
// the sqlite3_module.xFindFunction() method.
|
|
|
|
type Fts5ExtensionApi = Fts5ExtensionApi1 /* sqlite3.h:11634:33 */
|
|
type Fts5PhraseIter1 = struct {
|
|
a uintptr
|
|
b uintptr
|
|
} /* sqlite3.h:11636:9 */
|
|
|
|
type Fts5PhraseIter = Fts5PhraseIter1 /* sqlite3.h:11636:31 */
|
|
|
|
type fts5_extension_function = uintptr /* sqlite3.h:11638:14 */
|
|
type fts5_tokenizer1 = struct {
|
|
xCreate uintptr
|
|
xDelete uintptr
|
|
xTokenize uintptr
|
|
} /* sqlite3.h:12097:9 */
|
|
|
|
type fts5_tokenizer = fts5_tokenizer1 /* sqlite3.h:12097:31 */
|
|
|
|
// Flags that may be passed as the third argument to xTokenize()
|
|
|
|
// Flags that may be passed by the tokenizer implementation back to FTS5
|
|
// as the third argument to the supplied xToken callback.
|
|
|
|
//
|
|
// END OF CUSTOM TOKENIZERS
|
|
//
|
|
|
|
// ************************************************************************
|
|
//
|
|
// FTS5 EXTENSION REGISTRATION API
|
|
type fts5_api1 = struct {
|
|
iVersion int32
|
|
xCreateTokenizer uintptr
|
|
xFindTokenizer uintptr
|
|
xCreateFunction uintptr
|
|
} /* sqlite3.h:12133:9 */
|
|
|
|
// Flags that may be passed as the third argument to xTokenize()
|
|
|
|
// Flags that may be passed by the tokenizer implementation back to FTS5
|
|
// as the third argument to the supplied xToken callback.
|
|
|
|
//
|
|
// END OF CUSTOM TOKENIZERS
|
|
//
|
|
|
|
// ************************************************************************
|
|
//
|
|
// FTS5 EXTENSION REGISTRATION API
|
|
type fts5_api = fts5_api1 /* sqlite3.h:12133:25 */
|
|
|
|
type ssize_t = int32 /* crtdefs.h:47:13 */
|
|
|
|
type rsize_t = size_t /* crtdefs.h:52:16 */
|
|
|
|
type intptr_t = int32 /* crtdefs.h:64:13 */
|
|
|
|
type uintptr_t = uint32 /* crtdefs.h:77:22 */
|
|
|
|
type wint_t = uint16 /* crtdefs.h:106:24 */
|
|
type wctype_t = uint16 /* crtdefs.h:107:24 */
|
|
|
|
type errno_t = int32 /* crtdefs.h:113:13 */
|
|
|
|
type time_t = int32 /* crtdefs.h:136:20 */
|
|
|
|
type threadlocaleinfostruct = struct {
|
|
refcount int32
|
|
lc_codepage uint32
|
|
lc_collate_cp uint32
|
|
lc_handle [6]uint32
|
|
lc_id [6]LC_ID
|
|
lc_category [6]struct {
|
|
locale uintptr
|
|
wlocale uintptr
|
|
refcount uintptr
|
|
wrefcount uintptr
|
|
}
|
|
lc_clike int32
|
|
mb_cur_max int32
|
|
lconv_intl_refcount uintptr
|
|
lconv_num_refcount uintptr
|
|
lconv_mon_refcount uintptr
|
|
lconv uintptr
|
|
ctype1_refcount uintptr
|
|
ctype1 uintptr
|
|
pctype uintptr
|
|
pclmap uintptr
|
|
pcumap uintptr
|
|
lc_time_curr uintptr
|
|
} /* crtdefs.h:422:1 */
|
|
|
|
type pthreadlocinfo = uintptr /* crtdefs.h:424:39 */
|
|
type pthreadmbcinfo = uintptr /* crtdefs.h:425:36 */
|
|
|
|
type localeinfo_struct = struct {
|
|
locinfo pthreadlocinfo
|
|
mbcinfo pthreadmbcinfo
|
|
} /* crtdefs.h:428:9 */
|
|
|
|
type _locale_tstruct = localeinfo_struct /* crtdefs.h:431:3 */
|
|
type _locale_t = uintptr /* crtdefs.h:431:19 */
|
|
|
|
type tagLC_ID = struct {
|
|
wLanguage uint16
|
|
wCountry uint16
|
|
wCodePage uint16
|
|
} /* crtdefs.h:422:1 */
|
|
|
|
type LC_ID = tagLC_ID /* crtdefs.h:439:3 */
|
|
type LPLC_ID = uintptr /* crtdefs.h:439:9 */
|
|
|
|
type threadlocinfo = threadlocaleinfostruct /* crtdefs.h:468:3 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// Undefine __mingw_<printf> macros.
|
|
|
|
type _iobuf = struct {
|
|
_ptr uintptr
|
|
_cnt int32
|
|
_base uintptr
|
|
_flag int32
|
|
_file int32
|
|
_charbuf int32
|
|
_bufsiz int32
|
|
_tmpfname uintptr
|
|
} /* stdio.h:26:3 */
|
|
|
|
type FILE = _iobuf /* stdio.h:36:25 */
|
|
|
|
type _off_t = int32 /* _mingw_off_t.h:5:16 */
|
|
type off32_t = int32 /* _mingw_off_t.h:7:16 */
|
|
|
|
type _off64_t = int64 /* _mingw_off_t.h:13:39 */
|
|
type off64_t = int64 /* _mingw_off_t.h:15:39 */
|
|
|
|
type off_t = off64_t /* _mingw_off_t.h:24:17 */ // A pointer to an array of FILE
|
|
|
|
type fpos_t = int64 /* stdio.h:104:37 */
|
|
|
|
func vsnwprintf(tls *libc.TLS, s uintptr, n size_t, format uintptr, arg va_list) int32 { /* stdio.h:1213:15: */
|
|
return libc.X_vsnwprintf(tls, s, n, format, arg)
|
|
|
|
}
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
func vswprintf(tls *libc.TLS, __stream uintptr, __count size_t, __format uintptr, __local_argv uintptr) int32 { /* swprintf.inl:27:5: */
|
|
return vsnwprintf(tls, __stream, __count, __format, __local_argv)
|
|
}
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// Define __mingw_<printf> macros.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// sdkddkver.h: Version definitions for SDK and DDK. Originally
|
|
// from ReactOS PSDK/DDK, this file is in the public domain:
|
|
//
|
|
// 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.
|
|
|
|
// _WIN32_WINNT
|
|
|
|
// _WIN32_IE
|
|
|
|
// Mappings Between IE Version and Windows Version
|
|
|
|
// NTDDI_VERSION
|
|
|
|
// Version Fields in NTDDI_VERSION
|
|
|
|
// Macros to Extract Version Fields From NTDDI_VERSION
|
|
|
|
// Macros to get the NTDDI for a given WIN32
|
|
|
|
// Select Default WIN32_WINNT Value
|
|
|
|
// Choose NTDDI Version
|
|
|
|
// Choose WINVER Value
|
|
|
|
// Choose IE Version
|
|
|
|
// Make Sure NTDDI_VERSION and _WIN32_WINNT Match
|
|
|
|
// Some kludge for Obj-C.
|
|
// For Obj-C the 'interface' is a keyword, but interface is used
|
|
// in midl-code too. To resolve this conflict for at least the
|
|
// main windows API header, we define it here temporary.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type _EXCEPTION_POINTERS = struct {
|
|
ExceptionRecord PEXCEPTION_RECORD
|
|
ContextRecord PCONTEXT
|
|
} /* excpt.h:17:3 */
|
|
|
|
type _EXCEPTION_RECORD = struct {
|
|
ExceptionCode DWORD
|
|
ExceptionFlags DWORD
|
|
ExceptionRecord uintptr
|
|
ExceptionAddress PVOID
|
|
NumberParameters DWORD
|
|
ExceptionInformation [15]ULONG_PTR
|
|
} /* excpt.h:17:3 */
|
|
|
|
type _CONTEXT = struct {
|
|
ContextFlags DWORD
|
|
Dr0 DWORD
|
|
Dr1 DWORD
|
|
Dr2 DWORD
|
|
Dr3 DWORD
|
|
Dr6 DWORD
|
|
Dr7 DWORD
|
|
FloatSave FLOATING_SAVE_AREA
|
|
SegGs DWORD
|
|
SegFs DWORD
|
|
SegEs DWORD
|
|
SegDs DWORD
|
|
Edi DWORD
|
|
Esi DWORD
|
|
Ebx DWORD
|
|
Edx DWORD
|
|
Ecx DWORD
|
|
Eax DWORD
|
|
Ebp DWORD
|
|
Eip DWORD
|
|
SegCs DWORD
|
|
EFlags DWORD
|
|
Esp DWORD
|
|
SegSs DWORD
|
|
ExtendedRegisters [512]BYTE
|
|
} /* excpt.h:17:3 */
|
|
|
|
// CRT stuff
|
|
type _PHNDLR = uintptr /* excpt.h:66:16 */
|
|
|
|
type _XCPT_ACTION = struct {
|
|
XcptNum uint32
|
|
SigNum int32
|
|
XcptAction _PHNDLR
|
|
} /* excpt.h:68:3 */
|
|
|
|
// The type of function that is expected as an exception handler to be
|
|
// installed with __try1.
|
|
type PEXCEPTION_HANDLER = uintptr /* excpt.h:87:33 */
|
|
|
|
// Copyright (C) 1989, 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
|
|
//
|
|
// This file is part of GCC.
|
|
//
|
|
// GCC is free software; you can redistribute it and/or modify
|
|
// it under the terms of the GNU General Public License as published by
|
|
// the Free Software Foundation; either version 2, or (at your option)
|
|
// any later version.
|
|
//
|
|
// GCC is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
// GNU General Public License for more details.
|
|
//
|
|
// You should have received a copy of the GNU General Public License
|
|
// along with GCC; see the file COPYING. If not, write to
|
|
// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
|
|
// Boston, MA 02110-1301, USA.
|
|
|
|
// As a special exception, if you include this header file into source
|
|
// files compiled by GCC, this header file does not by itself cause
|
|
// the resulting executable to be covered by the GNU General Public
|
|
// License. This exception does not however invalidate any other
|
|
// reasons why the executable file might be covered by the GNU General
|
|
// Public License.
|
|
|
|
// ISO C Standard: 7.15 Variable arguments <stdarg.h>
|
|
|
|
// include mingw stuff
|
|
// *
|
|
// 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.
|
|
|
|
// Copyright (C) 1989-2018 Free Software Foundation, Inc.
|
|
//
|
|
// This file is part of GCC.
|
|
//
|
|
// GCC is free software; you can redistribute it and/or modify
|
|
// it under the terms of the GNU General Public License as published by
|
|
// the Free Software Foundation; either version 3, or (at your option)
|
|
// any later version.
|
|
//
|
|
// GCC is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
// GNU General Public License for more details.
|
|
//
|
|
// Under Section 7 of GPL version 3, you are granted additional
|
|
// permissions described in the GCC Runtime Library Exception, version
|
|
// 3.1, as published by the Free Software Foundation.
|
|
//
|
|
// You should have received a copy of the GNU General Public License and
|
|
// a copy of the GCC Runtime Library Exception along with this program;
|
|
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
|
// <http://www.gnu.org/licenses/>.
|
|
|
|
// ISO C Standard: 7.15 Variable arguments <stdarg.h>
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// WINAPI_FAMILY can be either desktop + App, or App.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// Pointer parameters
|
|
|
|
// Optional pointer parameters
|
|
|
|
// Output pointer parameters
|
|
|
|
// Output reference parameters
|
|
|
|
// Return values
|
|
|
|
// Other common annotations
|
|
|
|
// Function annotations
|
|
|
|
// Success/failure annotations
|
|
|
|
// Buffer properties
|
|
|
|
// Field properties
|
|
|
|
// Structural annotations
|
|
|
|
// printf/scanf annotations
|
|
|
|
// Analysis
|
|
|
|
// FIXME: __in macro conflicts with argument names in libstdc++. For this reason,
|
|
// we disable it for C++. This should be fixed in libstdc++ so we can uncomment
|
|
// it in fixed version here.
|
|
|
|
// Renamed __null to SAL__null for avoiding private keyword conflicts between
|
|
// gcc and MS world.
|
|
|
|
// PROJECT: ReactOS DDK
|
|
// COPYRIGHT: This file is in the Public Domain.
|
|
// FILE: driverspecs.h
|
|
// ABSTRACT: This header stubs out Driver Verifier annotations to
|
|
// allow drivers using them to compile with our header set.
|
|
|
|
// Stubs
|
|
|
|
type ULONG = uint32 /* minwindef.h:24:29 */
|
|
type PULONG = uintptr /* minwindef.h:25:17 */
|
|
type USHORT = uint16 /* minwindef.h:26:26 */
|
|
type PUSHORT = uintptr /* minwindef.h:27:18 */
|
|
type UCHAR = uint8 /* minwindef.h:28:25 */
|
|
type PUCHAR = uintptr /* minwindef.h:29:17 */
|
|
type PSZ = uintptr /* minwindef.h:30:16 */
|
|
|
|
type WINBOOL = int32 /* minwindef.h:127:13 */
|
|
type BOOL = int32 /* minwindef.h:131:15 */
|
|
type PBOOL = uintptr /* minwindef.h:134:14 */
|
|
type LPBOOL = uintptr /* minwindef.h:135:14 */
|
|
|
|
type BYTE = uint8 /* minwindef.h:139:25 */
|
|
type WORD = uint16 /* minwindef.h:140:26 */
|
|
type DWORD = uint32 /* minwindef.h:141:29 */
|
|
type FLOAT = float32 /* minwindef.h:142:17 */
|
|
type PFLOAT = uintptr /* minwindef.h:143:17 */
|
|
type PBYTE = uintptr /* minwindef.h:144:16 */
|
|
type LPBYTE = uintptr /* minwindef.h:145:16 */
|
|
type PINT = uintptr /* minwindef.h:146:15 */
|
|
type LPINT = uintptr /* minwindef.h:147:15 */
|
|
type PWORD = uintptr /* minwindef.h:148:16 */
|
|
type LPWORD = uintptr /* minwindef.h:149:16 */
|
|
type LPLONG = uintptr /* minwindef.h:150:20 */
|
|
type PDWORD = uintptr /* minwindef.h:151:17 */
|
|
type LPDWORD = uintptr /* minwindef.h:152:17 */
|
|
type LPVOID = uintptr /* minwindef.h:153:16 */
|
|
type LPCVOID = uintptr /* minwindef.h:156:22 */
|
|
type INT = int32 /* minwindef.h:158:15 */
|
|
type UINT = uint32 /* minwindef.h:159:24 */
|
|
type PUINT = uintptr /* minwindef.h:160:24 */
|
|
|
|
// *
|
|
// sdkddkver.h: Version definitions for SDK and DDK. Originally
|
|
// from ReactOS PSDK/DDK, this file is in the public domain:
|
|
//
|
|
// 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.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
// *
|
|
// 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.
|
|
|
|
type POINTER_64_INT = uint32 /* basetsd.h:13:23 */
|
|
|
|
type INT8 = int8 /* basetsd.h:29:23 */
|
|
type PINT8 = uintptr /* basetsd.h:29:28 */
|
|
type INT16 = int16 /* basetsd.h:30:24 */
|
|
type PINT16 = uintptr /* basetsd.h:30:30 */
|
|
type INT32 = int32 /* basetsd.h:31:22 */
|
|
type PINT32 = uintptr /* basetsd.h:31:28 */
|
|
type INT64 = int64 /* basetsd.h:32:44 */
|
|
type PINT64 = uintptr /* basetsd.h:32:50 */
|
|
type UINT8 = uint8 /* basetsd.h:33:25 */
|
|
type PUINT8 = uintptr /* basetsd.h:33:31 */
|
|
type UINT16 = uint16 /* basetsd.h:34:26 */
|
|
type PUINT16 = uintptr /* basetsd.h:34:33 */
|
|
type UINT32 = uint32 /* basetsd.h:35:24 */
|
|
type PUINT32 = uintptr /* basetsd.h:35:31 */
|
|
type UINT64 = uint64 /* basetsd.h:36:46 */
|
|
type PUINT64 = uintptr /* basetsd.h:36:53 */
|
|
type LONG32 = int32 /* basetsd.h:37:22 */
|
|
type PLONG32 = uintptr /* basetsd.h:37:29 */
|
|
type ULONG32 = uint32 /* basetsd.h:38:24 */
|
|
type PULONG32 = uintptr /* basetsd.h:38:32 */
|
|
type DWORD32 = uint32 /* basetsd.h:39:24 */
|
|
type PDWORD32 = uintptr /* basetsd.h:39:32 */
|
|
|
|
type INT_PTR = int32 /* basetsd.h:52:15 */
|
|
type PINT_PTR = uintptr /* basetsd.h:52:23 */
|
|
type UINT_PTR = uint32 /* basetsd.h:53:24 */
|
|
type PUINT_PTR = uintptr /* basetsd.h:53:33 */
|
|
type LONG_PTR = int32 /* basetsd.h:54:16 */
|
|
type PLONG_PTR = uintptr /* basetsd.h:54:25 */
|
|
type ULONG_PTR = uint32 /* basetsd.h:55:25 */
|
|
type PULONG_PTR = uintptr /* basetsd.h:55:35 */
|
|
|
|
type UHALF_PTR = uint16 /* basetsd.h:97:26 */
|
|
type PUHALF_PTR = uintptr /* basetsd.h:97:36 */
|
|
type HALF_PTR = int16 /* basetsd.h:98:17 */
|
|
type PHALF_PTR = uintptr /* basetsd.h:98:26 */
|
|
type SHANDLE_PTR = int32 /* basetsd.h:99:20 */
|
|
type HANDLE_PTR = uint32 /* basetsd.h:100:29 */
|
|
|
|
type SIZE_T = ULONG_PTR /* basetsd.h:147:39 */
|
|
type PSIZE_T = uintptr /* basetsd.h:147:46 */
|
|
type SSIZE_T = LONG_PTR /* basetsd.h:148:38 */
|
|
type PSSIZE_T = uintptr /* basetsd.h:148:46 */
|
|
|
|
type DWORD_PTR = ULONG_PTR /* basetsd.h:191:39 */
|
|
type PDWORD_PTR = uintptr /* basetsd.h:191:49 */
|
|
type LONG64 = int64 /* basetsd.h:192:37 */
|
|
type PLONG64 = uintptr /* basetsd.h:192:44 */
|
|
type ULONG64 = uint64 /* basetsd.h:193:46 */
|
|
type PULONG64 = uintptr /* basetsd.h:193:54 */
|
|
type DWORD64 = uint64 /* basetsd.h:194:46 */
|
|
type PDWORD64 = uintptr /* basetsd.h:194:54 */
|
|
type KAFFINITY = ULONG_PTR /* basetsd.h:195:39 */
|
|
type PKAFFINITY = uintptr /* basetsd.h:196:39 */
|
|
|
|
type PVOID = uintptr /* winnt.h:257:16 */
|
|
type PVOID64 = uintptr /* winnt.h:258:16 */
|
|
|
|
type CHAR = int8 /* winnt.h:285:16 */
|
|
type SHORT = int16 /* winnt.h:286:17 */
|
|
type LONG = int32 /* winnt.h:287:20 */
|
|
|
|
type WCHAR = wchar_t /* winnt.h:295:19 */
|
|
type PWCHAR = uintptr /* winnt.h:297:17 */
|
|
type LPWCH = uintptr /* winnt.h:297:25 */
|
|
type PWCH = uintptr /* winnt.h:297:32 */
|
|
type LPCWCH = uintptr /* winnt.h:298:23 */
|
|
type PCWCH = uintptr /* winnt.h:298:31 */
|
|
type NWPSTR = uintptr /* winnt.h:299:17 */
|
|
type LPWSTR = uintptr /* winnt.h:299:25 */
|
|
type PWSTR = uintptr /* winnt.h:299:33 */
|
|
type PZPWSTR = uintptr /* winnt.h:300:17 */
|
|
type PCZPWSTR = uintptr /* winnt.h:301:23 */
|
|
type LPUWSTR = uintptr /* winnt.h:302:27 */
|
|
type PUWSTR = uintptr /* winnt.h:302:36 */
|
|
type LPCWSTR = uintptr /* winnt.h:303:23 */
|
|
type PCWSTR = uintptr /* winnt.h:303:32 */
|
|
type PZPCWSTR = uintptr /* winnt.h:304:18 */
|
|
type LPCUWSTR = uintptr /* winnt.h:305:33 */
|
|
type PCUWSTR = uintptr /* winnt.h:305:43 */
|
|
type PZZWSTR = uintptr /* winnt.h:306:17 */
|
|
type PCZZWSTR = uintptr /* winnt.h:307:23 */
|
|
type PUZZWSTR = uintptr /* winnt.h:308:27 */
|
|
type PCUZZWSTR = uintptr /* winnt.h:309:33 */
|
|
type PNZWCH = uintptr /* winnt.h:310:17 */
|
|
type PCNZWCH = uintptr /* winnt.h:311:23 */
|
|
type PUNZWCH = uintptr /* winnt.h:312:27 */
|
|
type PCUNZWCH = uintptr /* winnt.h:313:33 */
|
|
|
|
type PCHAR = uintptr /* winnt.h:334:16 */
|
|
type LPCH = uintptr /* winnt.h:334:23 */
|
|
type PCH = uintptr /* winnt.h:334:29 */
|
|
type LPCCH = uintptr /* winnt.h:335:22 */
|
|
type PCCH = uintptr /* winnt.h:335:29 */
|
|
type NPSTR = uintptr /* winnt.h:336:16 */
|
|
type LPSTR = uintptr /* winnt.h:336:23 */
|
|
type PSTR = uintptr /* winnt.h:336:30 */
|
|
type PZPSTR = uintptr /* winnt.h:337:16 */
|
|
type PCZPSTR = uintptr /* winnt.h:338:22 */
|
|
type LPCSTR = uintptr /* winnt.h:339:22 */
|
|
type PCSTR = uintptr /* winnt.h:339:30 */
|
|
type PZPCSTR = uintptr /* winnt.h:340:17 */
|
|
type PZZSTR = uintptr /* winnt.h:341:16 */
|
|
type PCZZSTR = uintptr /* winnt.h:342:22 */
|
|
type PNZCH = uintptr /* winnt.h:343:16 */
|
|
type PCNZCH = uintptr /* winnt.h:344:22 */
|
|
|
|
type TCHAR = int8 /* winnt.h:373:16 */
|
|
type PTCHAR = uintptr /* winnt.h:373:23 */
|
|
type TBYTE = uint8 /* winnt.h:374:25 */
|
|
type PTBYTE = uintptr /* winnt.h:374:32 */
|
|
|
|
type LPTCH = LPSTR /* winnt.h:377:17 */
|
|
type PTCH = LPSTR /* winnt.h:377:23 */
|
|
type LPCTCH = LPCCH /* winnt.h:378:17 */
|
|
type PCTCH = LPCCH /* winnt.h:378:24 */
|
|
type PTSTR = LPSTR /* winnt.h:379:17 */
|
|
type LPTSTR = LPSTR /* winnt.h:379:23 */
|
|
type PUTSTR = LPSTR /* winnt.h:379:30 */
|
|
type LPUTSTR = LPSTR /* winnt.h:379:37 */
|
|
type PCTSTR = LPCSTR /* winnt.h:380:18 */
|
|
type LPCTSTR = LPCSTR /* winnt.h:380:25 */
|
|
type PCUTSTR = LPCSTR /* winnt.h:380:33 */
|
|
type LPCUTSTR = LPCSTR /* winnt.h:380:41 */
|
|
type PZZTSTR = PZZSTR /* winnt.h:381:18 */
|
|
type PUZZTSTR = PZZSTR /* winnt.h:381:27 */
|
|
type PCZZTSTR = PCZZSTR /* winnt.h:382:19 */
|
|
type PCUZZTSTR = PCZZSTR /* winnt.h:382:29 */
|
|
type PZPTSTR = PZPSTR /* winnt.h:383:18 */
|
|
type PNZTCH = PNZCH /* winnt.h:384:17 */
|
|
type PUNZTCH = PNZCH /* winnt.h:384:25 */
|
|
type PCNZTCH = PCNZCH /* winnt.h:385:18 */
|
|
type PCUNZTCH = PCNZCH /* winnt.h:385:27 */
|
|
|
|
type PSHORT = uintptr /* winnt.h:392:17 */
|
|
type PLONG = uintptr /* winnt.h:393:16 */
|
|
|
|
type _GROUP_AFFINITY = struct {
|
|
Mask KAFFINITY
|
|
Group WORD
|
|
Reserved [3]WORD
|
|
} /* winnt.h:397:9 */
|
|
|
|
type GROUP_AFFINITY = _GROUP_AFFINITY /* winnt.h:401:3 */
|
|
type PGROUP_AFFINITY = uintptr /* winnt.h:401:19 */
|
|
|
|
type HANDLE = uintptr /* winnt.h:405:16 */
|
|
|
|
type PHANDLE = uintptr /* winnt.h:412:18 */
|
|
type FCHAR = BYTE /* winnt.h:413:16 */
|
|
type FSHORT = WORD /* winnt.h:414:16 */
|
|
type FLONG = DWORD /* winnt.h:415:17 */
|
|
|
|
type HRESULT = LONG /* winnt.h:419:16 */
|
|
|
|
// Keep in sync with basetyps.h header.
|
|
|
|
type CCHAR = int8 /* winnt.h:453:16 */
|
|
type LCID = DWORD /* winnt.h:456:15 */
|
|
type PLCID = PDWORD /* winnt.h:458:18 */
|
|
type LANGID = WORD /* winnt.h:461:16 */
|
|
|
|
type COMPARTMENT_ID = uint32 /* winnt.h:470:3 */
|
|
type PCOMPARTMENT_ID = uintptr /* winnt.h:470:18 */
|
|
|
|
type _FLOAT128 = struct {
|
|
LowPart int64
|
|
HighPart int64
|
|
} /* winnt.h:482:13 */
|
|
|
|
type FLOAT128 = _FLOAT128 /* winnt.h:485:5 */
|
|
|
|
type PFLOAT128 = uintptr /* winnt.h:487:20 */
|
|
|
|
type LONGLONG = int64 /* winnt.h:490:37 */
|
|
type ULONGLONG = uint64 /* winnt.h:491:46 */
|
|
|
|
type PLONGLONG = uintptr /* winnt.h:495:20 */
|
|
type PULONGLONG = uintptr /* winnt.h:496:21 */
|
|
type USN = LONGLONG /* winnt.h:497:20 */
|
|
|
|
type _LARGE_INTEGER = struct {
|
|
_ [0]uint64
|
|
s struct {
|
|
LowPart DWORD
|
|
HighPart LONG
|
|
}
|
|
} /* winnt.h:505:11 */
|
|
|
|
type LARGE_INTEGER = _LARGE_INTEGER /* winnt.h:516:5 */
|
|
|
|
type PLARGE_INTEGER = uintptr /* winnt.h:518:25 */
|
|
|
|
type _ULARGE_INTEGER = struct {
|
|
_ [0]uint64
|
|
s struct {
|
|
LowPart DWORD
|
|
HighPart DWORD
|
|
}
|
|
} /* winnt.h:523:11 */
|
|
|
|
type ULARGE_INTEGER = _ULARGE_INTEGER /* winnt.h:534:5 */
|
|
|
|
type PULARGE_INTEGER = uintptr /* winnt.h:536:26 */
|
|
|
|
type _LUID = struct {
|
|
LowPart DWORD
|
|
HighPart LONG
|
|
} /* winnt.h:538:11 */
|
|
|
|
type LUID = _LUID /* winnt.h:541:5 */
|
|
type PLUID = uintptr /* winnt.h:541:10 */
|
|
|
|
type DWORDLONG = ULONGLONG /* winnt.h:546:21 */
|
|
type PDWORDLONG = uintptr /* winnt.h:547:21 */
|
|
|
|
type BOOLEAN = BYTE /* winnt.h:605:16 */
|
|
type PBOOLEAN = uintptr /* winnt.h:607:19 */
|
|
|
|
type _LIST_ENTRY = struct {
|
|
Flink uintptr
|
|
Blink uintptr
|
|
} /* winnt.h:612:11 */
|
|
|
|
type LIST_ENTRY = _LIST_ENTRY /* winnt.h:615:5 */
|
|
type PLIST_ENTRY = uintptr /* winnt.h:615:16 */
|
|
type PRLIST_ENTRY = uintptr /* winnt.h:615:29 */
|
|
|
|
type _SINGLE_LIST_ENTRY = struct{ Next uintptr } /* winnt.h:617:11 */
|
|
|
|
type SINGLE_LIST_ENTRY = _SINGLE_LIST_ENTRY /* winnt.h:619:5 */
|
|
type PSINGLE_LIST_ENTRY = uintptr /* winnt.h:619:23 */
|
|
|
|
type LIST_ENTRY321 = struct {
|
|
Flink DWORD
|
|
Blink DWORD
|
|
} /* winnt.h:621:11 */
|
|
|
|
type LIST_ENTRY32 = LIST_ENTRY321 /* winnt.h:624:5 */
|
|
type PLIST_ENTRY32 = uintptr /* winnt.h:625:24 */
|
|
|
|
type LIST_ENTRY641 = struct {
|
|
Flink ULONGLONG
|
|
Blink ULONGLONG
|
|
} /* winnt.h:627:11 */
|
|
|
|
type LIST_ENTRY64 = LIST_ENTRY641 /* winnt.h:630:5 */
|
|
type PLIST_ENTRY64 = uintptr /* winnt.h:631:24 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// Make sure __LONG32 is defined.
|
|
// *
|
|
// 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.
|
|
|
|
type _GUID = struct {
|
|
Data1 uint32
|
|
Data2 uint16
|
|
Data3 uint16
|
|
Data4 [8]uint8
|
|
} /* guiddef.h:19:9 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// Make sure __LONG32 is defined.
|
|
// *
|
|
// 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.
|
|
|
|
type GUID = _GUID /* guiddef.h:24:3 */
|
|
|
|
// __declspec(selectany) must be applied to initialized objects on GCC 5 hence must not be used here.
|
|
|
|
type LPGUID = uintptr /* guiddef.h:77:14 */
|
|
|
|
type LPCGUID = uintptr /* guiddef.h:82:20 */
|
|
|
|
type IID = GUID /* guiddef.h:88:14 */
|
|
type LPIID = uintptr /* guiddef.h:89:13 */
|
|
|
|
type CLSID = GUID /* guiddef.h:96:14 */
|
|
|
|
type LPCLSID = uintptr /* guiddef.h:99:15 */
|
|
|
|
type FMTID = GUID /* guiddef.h:103:14 */
|
|
type LPFMTID = uintptr /* guiddef.h:104:15 */
|
|
|
|
type _OBJECTID = struct {
|
|
Lineage GUID
|
|
Uniquifier DWORD
|
|
} /* winnt.h:639:11 */
|
|
|
|
type OBJECTID = _OBJECTID /* winnt.h:642:5 */
|
|
type PEXCEPTION_ROUTINE = uintptr /* winnt.h:709:31 */
|
|
|
|
// ??? #define SUBLANG_ROMANIAN_MOLDOVA 0x01 ???
|
|
|
|
type KSPIN_LOCK = ULONG_PTR /* winnt.h:1383:21 */
|
|
type PKSPIN_LOCK = uintptr /* winnt.h:1384:22 */
|
|
|
|
type _M128A = struct {
|
|
Low ULONGLONG
|
|
High LONGLONG
|
|
} /* winnt.h:1386:13 */
|
|
|
|
type M128A = _M128A /* winnt.h:1389:7 */
|
|
type PM128A = uintptr /* winnt.h:1389:13 */
|
|
|
|
type _XSAVE_FORMAT = struct {
|
|
ControlWord WORD
|
|
StatusWord WORD
|
|
TagWord BYTE
|
|
Reserved1 BYTE
|
|
ErrorOpcode WORD
|
|
ErrorOffset DWORD
|
|
ErrorSelector WORD
|
|
Reserved2 WORD
|
|
DataOffset DWORD
|
|
DataSelector WORD
|
|
Reserved3 WORD
|
|
MxCsr DWORD
|
|
MxCsr_Mask DWORD
|
|
FloatRegisters [8]M128A
|
|
XmmRegisters [8]M128A
|
|
Reserved4 [220]BYTE
|
|
Cr0NpxState DWORD
|
|
} /* winnt.h:1391:13 */
|
|
|
|
type XSAVE_FORMAT = _XSAVE_FORMAT /* winnt.h:1414:7 */
|
|
type PXSAVE_FORMAT = uintptr /* winnt.h:1414:20 */
|
|
|
|
type _XSAVE_AREA_HEADER = struct {
|
|
Mask DWORD64
|
|
Reserved [7]DWORD64
|
|
} /* winnt.h:1416:13 */
|
|
|
|
type XSAVE_AREA_HEADER = _XSAVE_AREA_HEADER /* winnt.h:1419:7 */
|
|
type PXSAVE_AREA_HEADER = uintptr /* winnt.h:1419:25 */
|
|
|
|
type _XSAVE_AREA = struct {
|
|
LegacyState XSAVE_FORMAT
|
|
Header XSAVE_AREA_HEADER
|
|
} /* winnt.h:1421:13 */
|
|
|
|
type XSAVE_AREA = _XSAVE_AREA /* winnt.h:1424:7 */
|
|
type PXSAVE_AREA = uintptr /* winnt.h:1424:18 */
|
|
|
|
type _XSTATE_CONTEXT = struct {
|
|
Mask DWORD64
|
|
Length DWORD
|
|
Reserved1 DWORD
|
|
Area PXSAVE_AREA
|
|
Reserved2 DWORD
|
|
Buffer PVOID
|
|
Reserved3 DWORD
|
|
} /* winnt.h:1426:13 */
|
|
|
|
type XSTATE_CONTEXT = _XSTATE_CONTEXT /* winnt.h:1438:7 */
|
|
type PXSTATE_CONTEXT = uintptr /* winnt.h:1438:22 */
|
|
|
|
type _SCOPE_TABLE_AMD64 = struct {
|
|
Count DWORD
|
|
ScopeRecord [1]struct {
|
|
BeginAddress DWORD
|
|
EndAddress DWORD
|
|
HandlerAddress DWORD
|
|
JumpTarget DWORD
|
|
}
|
|
} /* winnt.h:1440:13 */
|
|
|
|
type SCOPE_TABLE_AMD64 = _SCOPE_TABLE_AMD64 /* winnt.h:1448:7 */
|
|
type PSCOPE_TABLE_AMD64 = uintptr /* winnt.h:1448:25 */
|
|
|
|
type _FLOATING_SAVE_AREA = struct {
|
|
ControlWord DWORD
|
|
StatusWord DWORD
|
|
TagWord DWORD
|
|
ErrorOffset DWORD
|
|
ErrorSelector DWORD
|
|
DataOffset DWORD
|
|
DataSelector DWORD
|
|
RegisterArea [80]BYTE
|
|
Cr0NpxState DWORD
|
|
} /* excpt.h:17:3 */
|
|
|
|
type FLOATING_SAVE_AREA = _FLOATING_SAVE_AREA /* winnt.h:2371:7 */
|
|
|
|
type PFLOATING_SAVE_AREA = uintptr /* winnt.h:2373:32 */
|
|
|
|
type CONTEXT = _CONTEXT /* winnt.h:2402:7 */
|
|
|
|
type PCONTEXT = uintptr /* winnt.h:2404:21 */
|
|
|
|
// LONG WINAPI InterlockedIncrement(LONG volatile *); moved to psdk_inc/intrin-impl.h
|
|
// LONG WINAPI InterlockedDecrement(LONG volatile *); moved to psdk_inc/intrin-impl.h
|
|
// LONG WINAPI InterlockedExchange(LONG volatile *, LONG); moved to psdk_inc/intrin-impl.h
|
|
|
|
type _LDT_ENTRY = struct {
|
|
LimitLow WORD
|
|
BaseLow WORD
|
|
HighWord struct {
|
|
_ [0]uint32
|
|
Bytes struct {
|
|
BaseMid BYTE
|
|
Flags1 BYTE
|
|
Flags2 BYTE
|
|
BaseHi BYTE
|
|
}
|
|
}
|
|
} /* winnt.h:2415:13 */
|
|
|
|
// LONG WINAPI InterlockedIncrement(LONG volatile *); moved to psdk_inc/intrin-impl.h
|
|
// LONG WINAPI InterlockedDecrement(LONG volatile *); moved to psdk_inc/intrin-impl.h
|
|
// LONG WINAPI InterlockedExchange(LONG volatile *, LONG); moved to psdk_inc/intrin-impl.h
|
|
|
|
type LDT_ENTRY = _LDT_ENTRY /* winnt.h:2438:7 */
|
|
type PLDT_ENTRY = uintptr /* winnt.h:2438:17 */
|
|
|
|
// http://www.nynaeve.net/?p=99
|
|
|
|
type EXCEPTION_RECORD = _EXCEPTION_RECORD /* winnt.h:2783:7 */
|
|
|
|
type PEXCEPTION_RECORD = uintptr /* winnt.h:2785:30 */
|
|
|
|
type _EXCEPTION_RECORD32 = struct {
|
|
ExceptionCode DWORD
|
|
ExceptionFlags DWORD
|
|
ExceptionRecord DWORD
|
|
ExceptionAddress DWORD
|
|
NumberParameters DWORD
|
|
ExceptionInformation [15]DWORD
|
|
} /* winnt.h:2787:13 */
|
|
|
|
type EXCEPTION_RECORD32 = _EXCEPTION_RECORD32 /* winnt.h:2794:7 */
|
|
type PEXCEPTION_RECORD32 = uintptr /* winnt.h:2794:26 */
|
|
|
|
type _EXCEPTION_RECORD64 = struct {
|
|
ExceptionCode DWORD
|
|
ExceptionFlags DWORD
|
|
ExceptionRecord DWORD64
|
|
ExceptionAddress DWORD64
|
|
NumberParameters DWORD
|
|
__unusedAlignment DWORD
|
|
ExceptionInformation [15]DWORD64
|
|
} /* winnt.h:2796:13 */
|
|
|
|
type EXCEPTION_RECORD64 = _EXCEPTION_RECORD64 /* winnt.h:2804:7 */
|
|
type PEXCEPTION_RECORD64 = uintptr /* winnt.h:2804:26 */
|
|
|
|
type EXCEPTION_POINTERS = _EXCEPTION_POINTERS /* winnt.h:2809:7 */
|
|
type PEXCEPTION_POINTERS = uintptr /* winnt.h:2809:26 */
|
|
|
|
type PACCESS_TOKEN = PVOID /* winnt.h:2871:19 */
|
|
type PSECURITY_DESCRIPTOR = PVOID /* winnt.h:2872:19 */
|
|
type PSID = PVOID /* winnt.h:2873:19 */
|
|
type PCLAIMS_BLOB = PVOID /* winnt.h:2874:19 */
|
|
type ACCESS_MASK = DWORD /* winnt.h:2875:19 */
|
|
type PACCESS_MASK = uintptr /* winnt.h:2876:25 */
|
|
|
|
type _GENERIC_MAPPING = struct {
|
|
GenericRead ACCESS_MASK
|
|
GenericWrite ACCESS_MASK
|
|
GenericExecute ACCESS_MASK
|
|
GenericAll ACCESS_MASK
|
|
} /* winnt.h:2902:13 */
|
|
|
|
type GENERIC_MAPPING = _GENERIC_MAPPING /* winnt.h:2907:7 */
|
|
type PGENERIC_MAPPING = uintptr /* winnt.h:2908:29 */
|
|
|
|
// *
|
|
// 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.
|
|
type _LUID_AND_ATTRIBUTES = struct {
|
|
Luid LUID
|
|
Attributes DWORD
|
|
} /* winnt.h:2911:13 */
|
|
|
|
// *
|
|
// 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.
|
|
type LUID_AND_ATTRIBUTES = _LUID_AND_ATTRIBUTES /* winnt.h:2914:7 */
|
|
type PLUID_AND_ATTRIBUTES = uintptr /* winnt.h:2914:27 */
|
|
type LUID_AND_ATTRIBUTES_ARRAY = [1]LUID_AND_ATTRIBUTES /* winnt.h:2915:33 */
|
|
type PLUID_AND_ATTRIBUTES_ARRAY = uintptr /* winnt.h:2916:39 */
|
|
// *
|
|
// 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.
|
|
|
|
type _SID_IDENTIFIER_AUTHORITY = struct{ Value [6]BYTE } /* winnt.h:2921:13 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type SID_IDENTIFIER_AUTHORITY = _SID_IDENTIFIER_AUTHORITY /* winnt.h:2923:7 */
|
|
type PSID_IDENTIFIER_AUTHORITY = uintptr /* winnt.h:2923:32 */
|
|
|
|
type _SID = struct {
|
|
Revision BYTE
|
|
SubAuthorityCount BYTE
|
|
IdentifierAuthority SID_IDENTIFIER_AUTHORITY
|
|
SubAuthority [1]DWORD
|
|
} /* winnt.h:2928:13 */
|
|
|
|
type SID = _SID /* winnt.h:2933:7 */
|
|
type PISID = uintptr /* winnt.h:2933:11 */
|
|
|
|
type SID_NAME_USE = uint32 /* winnt.h:2947:7 */
|
|
type PSID_NAME_USE = uintptr /* winnt.h:2947:20 */
|
|
|
|
type _SID_AND_ATTRIBUTES = struct {
|
|
Sid PSID
|
|
Attributes DWORD
|
|
} /* winnt.h:2949:13 */
|
|
|
|
type SID_AND_ATTRIBUTES = _SID_AND_ATTRIBUTES /* winnt.h:2956:7 */
|
|
type PSID_AND_ATTRIBUTES = uintptr /* winnt.h:2956:26 */
|
|
|
|
type SID_AND_ATTRIBUTES_ARRAY = [1]SID_AND_ATTRIBUTES /* winnt.h:2958:32 */
|
|
type PSID_AND_ATTRIBUTES_ARRAY = uintptr /* winnt.h:2959:38 */
|
|
|
|
type SID_HASH_ENTRY = ULONG_PTR /* winnt.h:2961:23 */
|
|
type PSID_HASH_ENTRY = uintptr /* winnt.h:2961:39 */
|
|
|
|
type _SID_AND_ATTRIBUTES_HASH = struct {
|
|
SidCount DWORD
|
|
SidAttr PSID_AND_ATTRIBUTES
|
|
Hash [32]SID_HASH_ENTRY
|
|
} /* winnt.h:2963:13 */
|
|
|
|
type SID_AND_ATTRIBUTES_HASH = _SID_AND_ATTRIBUTES_HASH /* winnt.h:2967:7 */
|
|
type PSID_AND_ATTRIBUTES_HASH = uintptr /* winnt.h:2967:32 */
|
|
|
|
type WELL_KNOWN_SID_TYPE = uint32 /* winnt.h:3251:3 */
|
|
|
|
type _ACL = struct {
|
|
AclRevision BYTE
|
|
Sbz1 BYTE
|
|
AclSize WORD
|
|
AceCount WORD
|
|
Sbz2 WORD
|
|
} /* winnt.h:3281:13 */
|
|
|
|
type ACL = _ACL /* winnt.h:3287:7 */
|
|
type PACL = uintptr /* winnt.h:3288:17 */
|
|
|
|
type _ACE_HEADER = struct {
|
|
AceType BYTE
|
|
AceFlags BYTE
|
|
AceSize WORD
|
|
} /* winnt.h:3290:13 */
|
|
|
|
type ACE_HEADER = _ACE_HEADER /* winnt.h:3294:7 */
|
|
type PACE_HEADER = uintptr /* winnt.h:3295:24 */
|
|
|
|
type _ACCESS_ALLOWED_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
SidStart DWORD
|
|
} /* winnt.h:3341:13 */
|
|
|
|
type ACCESS_ALLOWED_ACE = _ACCESS_ALLOWED_ACE /* winnt.h:3345:7 */
|
|
|
|
type PACCESS_ALLOWED_ACE = uintptr /* winnt.h:3347:32 */
|
|
|
|
type _ACCESS_DENIED_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
SidStart DWORD
|
|
} /* winnt.h:3349:13 */
|
|
|
|
type ACCESS_DENIED_ACE = _ACCESS_DENIED_ACE /* winnt.h:3353:7 */
|
|
type PACCESS_DENIED_ACE = uintptr /* winnt.h:3354:31 */
|
|
|
|
type _SYSTEM_AUDIT_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
SidStart DWORD
|
|
} /* winnt.h:3356:13 */
|
|
|
|
type SYSTEM_AUDIT_ACE = _SYSTEM_AUDIT_ACE /* winnt.h:3360:7 */
|
|
type PSYSTEM_AUDIT_ACE = uintptr /* winnt.h:3361:30 */
|
|
|
|
type _SYSTEM_ALARM_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
SidStart DWORD
|
|
} /* winnt.h:3363:13 */
|
|
|
|
type SYSTEM_ALARM_ACE = _SYSTEM_ALARM_ACE /* winnt.h:3367:7 */
|
|
type PSYSTEM_ALARM_ACE = uintptr /* winnt.h:3368:30 */
|
|
|
|
type _SYSTEM_RESOURCE_ATTRIBUTE_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
SidStart DWORD
|
|
} /* winnt.h:3370:13 */
|
|
|
|
type SYSTEM_RESOURCE_ATTRIBUTE_ACE = _SYSTEM_RESOURCE_ATTRIBUTE_ACE /* winnt.h:3374:7 */
|
|
type PSYSTEM_RESOURCE_ATTRIBUTE_ACE = uintptr /* winnt.h:3374:37 */
|
|
|
|
type _SYSTEM_SCOPED_POLICY_ID_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
SidStart DWORD
|
|
} /* winnt.h:3376:13 */
|
|
|
|
type SYSTEM_SCOPED_POLICY_ID_ACE = _SYSTEM_SCOPED_POLICY_ID_ACE /* winnt.h:3380:7 */
|
|
type PSYSTEM_SCOPED_POLICY_ID_ACE = uintptr /* winnt.h:3380:35 */
|
|
|
|
type _SYSTEM_MANDATORY_LABEL_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
SidStart DWORD
|
|
} /* winnt.h:3382:13 */
|
|
|
|
type SYSTEM_MANDATORY_LABEL_ACE = _SYSTEM_MANDATORY_LABEL_ACE /* winnt.h:3386:7 */
|
|
type PSYSTEM_MANDATORY_LABEL_ACE = uintptr /* winnt.h:3386:35 */
|
|
|
|
type _ACCESS_ALLOWED_OBJECT_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
Flags DWORD
|
|
ObjectType GUID
|
|
InheritedObjectType GUID
|
|
SidStart DWORD
|
|
} /* winnt.h:3394:13 */
|
|
|
|
type ACCESS_ALLOWED_OBJECT_ACE = _ACCESS_ALLOWED_OBJECT_ACE /* winnt.h:3401:7 */
|
|
type PACCESS_ALLOWED_OBJECT_ACE = uintptr /* winnt.h:3401:33 */
|
|
|
|
type _ACCESS_DENIED_OBJECT_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
Flags DWORD
|
|
ObjectType GUID
|
|
InheritedObjectType GUID
|
|
SidStart DWORD
|
|
} /* winnt.h:3403:13 */
|
|
|
|
type ACCESS_DENIED_OBJECT_ACE = _ACCESS_DENIED_OBJECT_ACE /* winnt.h:3410:7 */
|
|
type PACCESS_DENIED_OBJECT_ACE = uintptr /* winnt.h:3410:32 */
|
|
|
|
type _SYSTEM_AUDIT_OBJECT_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
Flags DWORD
|
|
ObjectType GUID
|
|
InheritedObjectType GUID
|
|
SidStart DWORD
|
|
} /* winnt.h:3412:13 */
|
|
|
|
type SYSTEM_AUDIT_OBJECT_ACE = _SYSTEM_AUDIT_OBJECT_ACE /* winnt.h:3419:7 */
|
|
type PSYSTEM_AUDIT_OBJECT_ACE = uintptr /* winnt.h:3419:31 */
|
|
|
|
type _SYSTEM_ALARM_OBJECT_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
Flags DWORD
|
|
ObjectType GUID
|
|
InheritedObjectType GUID
|
|
SidStart DWORD
|
|
} /* winnt.h:3421:13 */
|
|
|
|
type SYSTEM_ALARM_OBJECT_ACE = _SYSTEM_ALARM_OBJECT_ACE /* winnt.h:3428:7 */
|
|
type PSYSTEM_ALARM_OBJECT_ACE = uintptr /* winnt.h:3428:31 */
|
|
|
|
type _ACCESS_ALLOWED_CALLBACK_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
SidStart DWORD
|
|
} /* winnt.h:3430:13 */
|
|
|
|
type ACCESS_ALLOWED_CALLBACK_ACE = _ACCESS_ALLOWED_CALLBACK_ACE /* winnt.h:3434:7 */
|
|
type PACCESS_ALLOWED_CALLBACK_ACE = uintptr /* winnt.h:3434:35 */
|
|
|
|
type _ACCESS_DENIED_CALLBACK_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
SidStart DWORD
|
|
} /* winnt.h:3436:13 */
|
|
|
|
type ACCESS_DENIED_CALLBACK_ACE = _ACCESS_DENIED_CALLBACK_ACE /* winnt.h:3440:7 */
|
|
type PACCESS_DENIED_CALLBACK_ACE = uintptr /* winnt.h:3440:34 */
|
|
|
|
type _SYSTEM_AUDIT_CALLBACK_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
SidStart DWORD
|
|
} /* winnt.h:3442:13 */
|
|
|
|
type SYSTEM_AUDIT_CALLBACK_ACE = _SYSTEM_AUDIT_CALLBACK_ACE /* winnt.h:3446:7 */
|
|
type PSYSTEM_AUDIT_CALLBACK_ACE = uintptr /* winnt.h:3446:33 */
|
|
|
|
type _SYSTEM_ALARM_CALLBACK_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
SidStart DWORD
|
|
} /* winnt.h:3448:13 */
|
|
|
|
type SYSTEM_ALARM_CALLBACK_ACE = _SYSTEM_ALARM_CALLBACK_ACE /* winnt.h:3452:7 */
|
|
type PSYSTEM_ALARM_CALLBACK_ACE = uintptr /* winnt.h:3452:33 */
|
|
|
|
type _ACCESS_ALLOWED_CALLBACK_OBJECT_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
Flags DWORD
|
|
ObjectType GUID
|
|
InheritedObjectType GUID
|
|
SidStart DWORD
|
|
} /* winnt.h:3454:13 */
|
|
|
|
type ACCESS_ALLOWED_CALLBACK_OBJECT_ACE = _ACCESS_ALLOWED_CALLBACK_OBJECT_ACE /* winnt.h:3462:7 */
|
|
type PACCESS_ALLOWED_CALLBACK_OBJECT_ACE = uintptr /* winnt.h:3462:42 */
|
|
|
|
type _ACCESS_DENIED_CALLBACK_OBJECT_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
Flags DWORD
|
|
ObjectType GUID
|
|
InheritedObjectType GUID
|
|
SidStart DWORD
|
|
} /* winnt.h:3464:13 */
|
|
|
|
type ACCESS_DENIED_CALLBACK_OBJECT_ACE = _ACCESS_DENIED_CALLBACK_OBJECT_ACE /* winnt.h:3471:7 */
|
|
type PACCESS_DENIED_CALLBACK_OBJECT_ACE = uintptr /* winnt.h:3471:41 */
|
|
|
|
type _SYSTEM_AUDIT_CALLBACK_OBJECT_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
Flags DWORD
|
|
ObjectType GUID
|
|
InheritedObjectType GUID
|
|
SidStart DWORD
|
|
} /* winnt.h:3473:13 */
|
|
|
|
type SYSTEM_AUDIT_CALLBACK_OBJECT_ACE = _SYSTEM_AUDIT_CALLBACK_OBJECT_ACE /* winnt.h:3480:7 */
|
|
type PSYSTEM_AUDIT_CALLBACK_OBJECT_ACE = uintptr /* winnt.h:3480:40 */
|
|
|
|
type _SYSTEM_ALARM_CALLBACK_OBJECT_ACE = struct {
|
|
Header ACE_HEADER
|
|
Mask ACCESS_MASK
|
|
Flags DWORD
|
|
ObjectType GUID
|
|
InheritedObjectType GUID
|
|
SidStart DWORD
|
|
} /* winnt.h:3482:13 */
|
|
|
|
type SYSTEM_ALARM_CALLBACK_OBJECT_ACE = _SYSTEM_ALARM_CALLBACK_OBJECT_ACE /* winnt.h:3490:7 */
|
|
type PSYSTEM_ALARM_CALLBACK_OBJECT_ACE = uintptr /* winnt.h:3490:40 */
|
|
|
|
type ACL_INFORMATION_CLASS = uint32 /* winnt.h:3497:7 */
|
|
|
|
type _ACL_REVISION_INFORMATION = struct{ AclRevision DWORD } /* winnt.h:3499:13 */
|
|
|
|
type ACL_REVISION_INFORMATION = _ACL_REVISION_INFORMATION /* winnt.h:3501:7 */
|
|
type PACL_REVISION_INFORMATION = uintptr /* winnt.h:3502:38 */
|
|
|
|
type _ACL_SIZE_INFORMATION = struct {
|
|
AceCount DWORD
|
|
AclBytesInUse DWORD
|
|
AclBytesFree DWORD
|
|
} /* winnt.h:3504:13 */
|
|
|
|
type ACL_SIZE_INFORMATION = _ACL_SIZE_INFORMATION /* winnt.h:3508:7 */
|
|
type PACL_SIZE_INFORMATION = uintptr /* winnt.h:3509:34 */
|
|
|
|
type SECURITY_DESCRIPTOR_CONTROL = WORD /* winnt.h:3516:18 */
|
|
type PSECURITY_DESCRIPTOR_CONTROL = uintptr /* winnt.h:3516:46 */
|
|
|
|
type _SECURITY_DESCRIPTOR_RELATIVE = struct {
|
|
Revision BYTE
|
|
Sbz1 BYTE
|
|
Control SECURITY_DESCRIPTOR_CONTROL
|
|
Owner DWORD
|
|
Group DWORD
|
|
Sacl DWORD
|
|
Dacl DWORD
|
|
} /* winnt.h:3533:13 */
|
|
|
|
type SECURITY_DESCRIPTOR_RELATIVE = _SECURITY_DESCRIPTOR_RELATIVE /* winnt.h:3541:7 */
|
|
type PISECURITY_DESCRIPTOR_RELATIVE = uintptr /* winnt.h:3541:36 */
|
|
|
|
type _SECURITY_DESCRIPTOR = struct {
|
|
Revision BYTE
|
|
Sbz1 BYTE
|
|
Control SECURITY_DESCRIPTOR_CONTROL
|
|
Owner PSID
|
|
Group PSID
|
|
Sacl PACL
|
|
Dacl PACL
|
|
} /* winnt.h:3543:13 */
|
|
|
|
type SECURITY_DESCRIPTOR = _SECURITY_DESCRIPTOR /* winnt.h:3551:7 */
|
|
type PISECURITY_DESCRIPTOR = uintptr /* winnt.h:3551:27 */
|
|
|
|
type _OBJECT_TYPE_LIST = struct {
|
|
Level WORD
|
|
Sbz WORD
|
|
ObjectType uintptr
|
|
} /* winnt.h:3553:13 */
|
|
|
|
type OBJECT_TYPE_LIST = _OBJECT_TYPE_LIST /* winnt.h:3557:7 */
|
|
type POBJECT_TYPE_LIST = uintptr /* winnt.h:3557:24 */
|
|
|
|
type AUDIT_EVENT_TYPE = uint32 /* winnt.h:3567:7 */
|
|
type PAUDIT_EVENT_TYPE = uintptr /* winnt.h:3567:24 */
|
|
|
|
type _PRIVILEGE_SET = struct {
|
|
PrivilegeCount DWORD
|
|
Control DWORD
|
|
Privilege [1]LUID_AND_ATTRIBUTES
|
|
} /* winnt.h:3585:13 */
|
|
|
|
type PRIVILEGE_SET = _PRIVILEGE_SET /* winnt.h:3589:7 */
|
|
type PPRIVILEGE_SET = uintptr /* winnt.h:3589:21 */
|
|
|
|
type ACCESS_REASON_TYPE = uint32 /* winnt.h:3614:7 */
|
|
type ACCESS_REASON = DWORD /* winnt.h:3615:19 */
|
|
|
|
type _ACCESS_REASONS = struct{ Data [32]ACCESS_REASON } /* winnt.h:3617:13 */
|
|
|
|
type ACCESS_REASONS = _ACCESS_REASONS /* winnt.h:3619:7 */
|
|
type PACCESS_REASONS = uintptr /* winnt.h:3619:22 */
|
|
|
|
type _SE_SECURITY_DESCRIPTOR = struct {
|
|
Size DWORD
|
|
Flags DWORD
|
|
SecurityDescriptor PSECURITY_DESCRIPTOR
|
|
} /* winnt.h:3625:13 */
|
|
|
|
type SE_SECURITY_DESCRIPTOR = _SE_SECURITY_DESCRIPTOR /* winnt.h:3629:7 */
|
|
type PSE_SECURITY_DESCRIPTOR = uintptr /* winnt.h:3629:30 */
|
|
|
|
type _SE_ACCESS_REQUEST = struct {
|
|
Size DWORD
|
|
SeSecurityDescriptor PSE_SECURITY_DESCRIPTOR
|
|
DesiredAccess ACCESS_MASK
|
|
PreviouslyGrantedAccess ACCESS_MASK
|
|
PrincipalSelfSid PSID
|
|
GenericMapping PGENERIC_MAPPING
|
|
ObjectTypeListCount DWORD
|
|
ObjectTypeList POBJECT_TYPE_LIST
|
|
} /* winnt.h:3631:13 */
|
|
|
|
type SE_ACCESS_REQUEST = _SE_ACCESS_REQUEST /* winnt.h:3640:7 */
|
|
type PSE_ACCESS_REQUEST = uintptr /* winnt.h:3640:25 */
|
|
|
|
type _SE_ACCESS_REPLY = struct {
|
|
Size DWORD
|
|
ResultListCount DWORD
|
|
GrantedAccess PACCESS_MASK
|
|
AccessStatus PDWORD
|
|
AccessReason PACCESS_REASONS
|
|
Privileges uintptr
|
|
} /* winnt.h:3642:13 */
|
|
|
|
type SE_ACCESS_REPLY = _SE_ACCESS_REPLY /* winnt.h:3649:7 */
|
|
type PSE_ACCESS_REPLY = uintptr /* winnt.h:3649:23 */
|
|
|
|
type SECURITY_IMPERSONATION_LEVEL = uint32 /* winnt.h:3689:7 */
|
|
type PSECURITY_IMPERSONATION_LEVEL = uintptr /* winnt.h:3689:36 */
|
|
|
|
type TOKEN_TYPE = uint32 /* winnt.h:3716:7 */
|
|
type PTOKEN_TYPE = uintptr /* winnt.h:3717:24 */
|
|
|
|
type TOKEN_ELEVATION_TYPE = uint32 /* winnt.h:3723:7 */
|
|
type PTOKEN_ELEVATION_TYPE = uintptr /* winnt.h:3723:29 */
|
|
|
|
type TOKEN_INFORMATION_CLASS = uint32 /* winnt.h:3767:7 */
|
|
type PTOKEN_INFORMATION_CLASS = uintptr /* winnt.h:3767:31 */
|
|
|
|
type _TOKEN_USER = struct{ User SID_AND_ATTRIBUTES } /* winnt.h:3769:13 */
|
|
|
|
type TOKEN_USER = _TOKEN_USER /* winnt.h:3771:7 */
|
|
type PTOKEN_USER = uintptr /* winnt.h:3771:18 */
|
|
|
|
type _TOKEN_GROUPS = struct {
|
|
GroupCount DWORD
|
|
Groups [1]SID_AND_ATTRIBUTES
|
|
} /* winnt.h:3773:13 */
|
|
|
|
type TOKEN_GROUPS = _TOKEN_GROUPS /* winnt.h:3780:7 */
|
|
type PTOKEN_GROUPS = uintptr /* winnt.h:3780:20 */
|
|
|
|
type _TOKEN_PRIVILEGES = struct {
|
|
PrivilegeCount DWORD
|
|
Privileges [1]LUID_AND_ATTRIBUTES
|
|
} /* winnt.h:3782:13 */
|
|
|
|
type TOKEN_PRIVILEGES = _TOKEN_PRIVILEGES /* winnt.h:3785:7 */
|
|
type PTOKEN_PRIVILEGES = uintptr /* winnt.h:3785:24 */
|
|
|
|
type _TOKEN_OWNER = struct{ Owner PSID } /* winnt.h:3787:13 */
|
|
|
|
type TOKEN_OWNER = _TOKEN_OWNER /* winnt.h:3789:7 */
|
|
type PTOKEN_OWNER = uintptr /* winnt.h:3789:19 */
|
|
|
|
type _TOKEN_PRIMARY_GROUP = struct{ PrimaryGroup PSID } /* winnt.h:3791:13 */
|
|
|
|
type TOKEN_PRIMARY_GROUP = _TOKEN_PRIMARY_GROUP /* winnt.h:3793:7 */
|
|
type PTOKEN_PRIMARY_GROUP = uintptr /* winnt.h:3793:27 */
|
|
|
|
type _TOKEN_DEFAULT_DACL = struct{ DefaultDacl PACL } /* winnt.h:3795:13 */
|
|
|
|
type TOKEN_DEFAULT_DACL = _TOKEN_DEFAULT_DACL /* winnt.h:3797:7 */
|
|
type PTOKEN_DEFAULT_DACL = uintptr /* winnt.h:3797:26 */
|
|
|
|
type _TOKEN_USER_CLAIMS = struct{ UserClaims PCLAIMS_BLOB } /* winnt.h:3799:13 */
|
|
|
|
type TOKEN_USER_CLAIMS = _TOKEN_USER_CLAIMS /* winnt.h:3801:7 */
|
|
type PTOKEN_USER_CLAIMS = uintptr /* winnt.h:3801:25 */
|
|
|
|
type _TOKEN_DEVICE_CLAIMS = struct{ DeviceClaims PCLAIMS_BLOB } /* winnt.h:3803:13 */
|
|
|
|
type TOKEN_DEVICE_CLAIMS = _TOKEN_DEVICE_CLAIMS /* winnt.h:3805:7 */
|
|
type PTOKEN_DEVICE_CLAIMS = uintptr /* winnt.h:3805:27 */
|
|
|
|
type _TOKEN_GROUPS_AND_PRIVILEGES = struct {
|
|
SidCount DWORD
|
|
SidLength DWORD
|
|
Sids PSID_AND_ATTRIBUTES
|
|
RestrictedSidCount DWORD
|
|
RestrictedSidLength DWORD
|
|
RestrictedSids PSID_AND_ATTRIBUTES
|
|
PrivilegeCount DWORD
|
|
PrivilegeLength DWORD
|
|
Privileges PLUID_AND_ATTRIBUTES
|
|
AuthenticationId LUID
|
|
} /* winnt.h:3807:13 */
|
|
|
|
type TOKEN_GROUPS_AND_PRIVILEGES = _TOKEN_GROUPS_AND_PRIVILEGES /* winnt.h:3818:7 */
|
|
type PTOKEN_GROUPS_AND_PRIVILEGES = uintptr /* winnt.h:3818:35 */
|
|
|
|
type _TOKEN_LINKED_TOKEN = struct{ LinkedToken HANDLE } /* winnt.h:3820:13 */
|
|
|
|
type TOKEN_LINKED_TOKEN = _TOKEN_LINKED_TOKEN /* winnt.h:3822:7 */
|
|
type PTOKEN_LINKED_TOKEN = uintptr /* winnt.h:3822:26 */
|
|
|
|
type _TOKEN_ELEVATION = struct{ TokenIsElevated DWORD } /* winnt.h:3824:13 */
|
|
|
|
type TOKEN_ELEVATION = _TOKEN_ELEVATION /* winnt.h:3826:7 */
|
|
type PTOKEN_ELEVATION = uintptr /* winnt.h:3826:23 */
|
|
|
|
type _TOKEN_MANDATORY_LABEL = struct{ Label SID_AND_ATTRIBUTES } /* winnt.h:3828:13 */
|
|
|
|
type TOKEN_MANDATORY_LABEL = _TOKEN_MANDATORY_LABEL /* winnt.h:3830:7 */
|
|
type PTOKEN_MANDATORY_LABEL = uintptr /* winnt.h:3830:29 */
|
|
|
|
type _TOKEN_MANDATORY_POLICY = struct{ Policy DWORD } /* winnt.h:3838:13 */
|
|
|
|
type TOKEN_MANDATORY_POLICY = _TOKEN_MANDATORY_POLICY /* winnt.h:3840:7 */
|
|
type PTOKEN_MANDATORY_POLICY = uintptr /* winnt.h:3840:30 */
|
|
|
|
type _TOKEN_ACCESS_INFORMATION = struct {
|
|
SidHash PSID_AND_ATTRIBUTES_HASH
|
|
RestrictedSidHash PSID_AND_ATTRIBUTES_HASH
|
|
Privileges PTOKEN_PRIVILEGES
|
|
AuthenticationId LUID
|
|
TokenType TOKEN_TYPE
|
|
ImpersonationLevel SECURITY_IMPERSONATION_LEVEL
|
|
MandatoryPolicy TOKEN_MANDATORY_POLICY
|
|
Flags DWORD
|
|
AppContainerNumber DWORD
|
|
PackageSid PSID
|
|
CapabilitiesHash PSID_AND_ATTRIBUTES_HASH
|
|
} /* winnt.h:3842:13 */
|
|
|
|
type TOKEN_ACCESS_INFORMATION = _TOKEN_ACCESS_INFORMATION /* winnt.h:3854:7 */
|
|
type PTOKEN_ACCESS_INFORMATION = uintptr /* winnt.h:3854:32 */
|
|
|
|
type _TOKEN_AUDIT_POLICY = struct{ PerUserPolicy [29]UCHAR } /* winnt.h:3858:13 */
|
|
|
|
type TOKEN_AUDIT_POLICY = _TOKEN_AUDIT_POLICY /* winnt.h:3860:7 */
|
|
type PTOKEN_AUDIT_POLICY = uintptr /* winnt.h:3860:27 */
|
|
|
|
type _TOKEN_SOURCE = struct {
|
|
SourceName [8]CHAR
|
|
SourceIdentifier LUID
|
|
} /* winnt.h:3864:13 */
|
|
|
|
type TOKEN_SOURCE = _TOKEN_SOURCE /* winnt.h:3867:7 */
|
|
type PTOKEN_SOURCE = uintptr /* winnt.h:3867:20 */
|
|
|
|
type _TOKEN_STATISTICS = struct {
|
|
TokenId LUID
|
|
AuthenticationId LUID
|
|
ExpirationTime LARGE_INTEGER
|
|
TokenType TOKEN_TYPE
|
|
ImpersonationLevel SECURITY_IMPERSONATION_LEVEL
|
|
DynamicCharged DWORD
|
|
DynamicAvailable DWORD
|
|
GroupCount DWORD
|
|
PrivilegeCount DWORD
|
|
ModifiedId LUID
|
|
} /* winnt.h:3869:13 */
|
|
|
|
type TOKEN_STATISTICS = _TOKEN_STATISTICS /* winnt.h:3880:7 */
|
|
type PTOKEN_STATISTICS = uintptr /* winnt.h:3880:24 */
|
|
|
|
type _TOKEN_CONTROL = struct {
|
|
TokenId LUID
|
|
AuthenticationId LUID
|
|
ModifiedId LUID
|
|
TokenSource TOKEN_SOURCE
|
|
} /* winnt.h:3882:13 */
|
|
|
|
type TOKEN_CONTROL = _TOKEN_CONTROL /* winnt.h:3887:7 */
|
|
type PTOKEN_CONTROL = uintptr /* winnt.h:3887:21 */
|
|
|
|
type _TOKEN_ORIGIN = struct{ OriginatingLogonSession LUID } /* winnt.h:3889:13 */
|
|
|
|
type TOKEN_ORIGIN = _TOKEN_ORIGIN /* winnt.h:3891:7 */
|
|
type PTOKEN_ORIGIN = uintptr /* winnt.h:3891:20 */
|
|
|
|
type MANDATORY_LEVEL = uint32 /* winnt.h:3901:7 */
|
|
type PMANDATORY_LEVEL = uintptr /* winnt.h:3901:23 */
|
|
|
|
type _TOKEN_APPCONTAINER_INFORMATION = struct{ TokenAppContainer PSID } /* winnt.h:3903:13 */
|
|
|
|
type TOKEN_APPCONTAINER_INFORMATION = _TOKEN_APPCONTAINER_INFORMATION /* winnt.h:3905:7 */
|
|
type PTOKEN_APPCONTAINER_INFORMATION = uintptr /* winnt.h:3905:38 */
|
|
|
|
type _CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE = struct {
|
|
Version DWORD64
|
|
Name PWSTR
|
|
_ [4]byte
|
|
} /* winnt.h:3915:13 */
|
|
|
|
type CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE = _CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE /* winnt.h:3918:7 */
|
|
type PCLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE = uintptr /* winnt.h:3918:43 */
|
|
|
|
type _CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE = struct {
|
|
pValue PVOID
|
|
ValueLength DWORD
|
|
} /* winnt.h:3920:13 */
|
|
|
|
type CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE = _CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE /* winnt.h:3923:7 */
|
|
type PCLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE = uintptr /* winnt.h:3923:52 */
|
|
|
|
type _CLAIM_SECURITY_ATTRIBUTE_V1 = struct {
|
|
Name PWSTR
|
|
ValueType WORD
|
|
Reserved WORD
|
|
Flags DWORD
|
|
ValueCount DWORD
|
|
Values struct{ pInt64 PLONG64 }
|
|
} /* winnt.h:3936:13 */
|
|
|
|
type CLAIM_SECURITY_ATTRIBUTE_V1 = _CLAIM_SECURITY_ATTRIBUTE_V1 /* winnt.h:3949:7 */
|
|
type PCLAIM_SECURITY_ATTRIBUTE_V1 = uintptr /* winnt.h:3949:35 */
|
|
|
|
type _CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 = struct {
|
|
Name DWORD
|
|
ValueType WORD
|
|
Reserved WORD
|
|
Flags DWORD
|
|
ValueCount DWORD
|
|
Values struct{ pInt64 [1]DWORD }
|
|
} /* winnt.h:3951:13 */
|
|
|
|
type CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 = _CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 /* winnt.h:3964:7 */
|
|
type PCLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 = uintptr /* winnt.h:3964:44 */
|
|
|
|
type _CLAIM_SECURITY_ATTRIBUTES_INFORMATION = struct {
|
|
Version WORD
|
|
Reserved WORD
|
|
AttributeCount DWORD
|
|
Attribute struct{ pAttributeV1 PCLAIM_SECURITY_ATTRIBUTE_V1 }
|
|
} /* winnt.h:3970:13 */
|
|
|
|
type CLAIM_SECURITY_ATTRIBUTES_INFORMATION = _CLAIM_SECURITY_ATTRIBUTES_INFORMATION /* winnt.h:3977:7 */
|
|
type PCLAIM_SECURITY_ATTRIBUTES_INFORMATION = uintptr /* winnt.h:3977:45 */
|
|
|
|
type SECURITY_CONTEXT_TRACKING_MODE = BOOLEAN /* winnt.h:3982:21 */
|
|
type PSECURITY_CONTEXT_TRACKING_MODE = uintptr /* winnt.h:3982:52 */
|
|
|
|
type _SECURITY_QUALITY_OF_SERVICE = struct {
|
|
Length DWORD
|
|
ImpersonationLevel SECURITY_IMPERSONATION_LEVEL
|
|
ContextTrackingMode SECURITY_CONTEXT_TRACKING_MODE
|
|
EffectiveOnly BOOLEAN
|
|
_ [2]byte
|
|
} /* winnt.h:3984:13 */
|
|
|
|
type SECURITY_QUALITY_OF_SERVICE = _SECURITY_QUALITY_OF_SERVICE /* winnt.h:3989:7 */
|
|
type PSECURITY_QUALITY_OF_SERVICE = uintptr /* winnt.h:3989:35 */
|
|
|
|
type _SE_IMPERSONATION_STATE = struct {
|
|
Token PACCESS_TOKEN
|
|
CopyOnOpen BOOLEAN
|
|
EffectiveOnly BOOLEAN
|
|
_ [2]byte
|
|
Level SECURITY_IMPERSONATION_LEVEL
|
|
} /* winnt.h:3991:13 */
|
|
|
|
type SE_IMPERSONATION_STATE = _SE_IMPERSONATION_STATE /* winnt.h:3996:7 */
|
|
type PSE_IMPERSONATION_STATE = uintptr /* winnt.h:3996:30 */
|
|
|
|
type SECURITY_INFORMATION = DWORD /* winnt.h:4003:19 */
|
|
type PSECURITY_INFORMATION = uintptr /* winnt.h:4003:40 */
|
|
|
|
type SE_LEARNING_MODE_DATA_TYPE = uint32 /* winnt.h:4023:7 */
|
|
|
|
type _SECURITY_CAPABILITIES = struct {
|
|
AppContainerSid PSID
|
|
Capabilities PSID_AND_ATTRIBUTES
|
|
CapabilityCount DWORD
|
|
Reserved DWORD
|
|
} /* winnt.h:4027:13 */
|
|
|
|
type SECURITY_CAPABILITIES = _SECURITY_CAPABILITIES /* winnt.h:4032:7 */
|
|
type PSECURITY_CAPABILITIES = uintptr /* winnt.h:4032:29 */
|
|
type LPSECURITY_CAPABILITIES = uintptr /* winnt.h:4032:53 */
|
|
|
|
type _JOB_SET_ARRAY = struct {
|
|
JobHandle HANDLE
|
|
MemberLevel DWORD
|
|
Flags DWORD
|
|
} /* winnt.h:4087:13 */
|
|
|
|
type JOB_SET_ARRAY = _JOB_SET_ARRAY /* winnt.h:4091:7 */
|
|
type PJOB_SET_ARRAY = uintptr /* winnt.h:4091:21 */
|
|
|
|
type _EXCEPTION_REGISTRATION_RECORD = struct {
|
|
__0 struct{ Next uintptr }
|
|
__4 struct{ Handler PEXCEPTION_ROUTINE }
|
|
} /* winnt.h:4097:13 */
|
|
|
|
type EXCEPTION_REGISTRATION_RECORD = _EXCEPTION_REGISTRATION_RECORD /* winnt.h:4106:7 */
|
|
|
|
type PEXCEPTION_REGISTRATION_RECORD = uintptr /* winnt.h:4108:43 */
|
|
|
|
type EXCEPTION_REGISTRATION = EXCEPTION_REGISTRATION_RECORD /* winnt.h:4110:43 */
|
|
type PEXCEPTION_REGISTRATION = PEXCEPTION_REGISTRATION_RECORD /* winnt.h:4111:44 */
|
|
|
|
type _NT_TIB = struct {
|
|
ExceptionList uintptr
|
|
StackBase PVOID
|
|
StackLimit PVOID
|
|
SubSystemTib PVOID
|
|
__16 struct{ FiberData PVOID }
|
|
ArbitraryUserPointer PVOID
|
|
Self uintptr
|
|
} /* winnt.h:4116:28 */
|
|
|
|
type NT_TIB = _NT_TIB /* winnt.h:4127:7 */
|
|
type PNT_TIB = uintptr /* winnt.h:4128:20 */
|
|
|
|
type _NT_TIB32 = struct {
|
|
ExceptionList DWORD
|
|
StackBase DWORD
|
|
StackLimit DWORD
|
|
SubSystemTib DWORD
|
|
__16 struct{ FiberData DWORD }
|
|
ArbitraryUserPointer DWORD
|
|
Self DWORD
|
|
} /* winnt.h:4131:28 */
|
|
|
|
type NT_TIB32 = _NT_TIB32 /* winnt.h:4142:7 */
|
|
type PNT_TIB32 = uintptr /* winnt.h:4142:16 */
|
|
|
|
type _NT_TIB64 = struct {
|
|
ExceptionList DWORD64
|
|
StackBase DWORD64
|
|
StackLimit DWORD64
|
|
SubSystemTib DWORD64
|
|
__32 struct{ FiberData DWORD64 }
|
|
ArbitraryUserPointer DWORD64
|
|
Self DWORD64
|
|
} /* winnt.h:4144:28 */
|
|
|
|
type NT_TIB64 = _NT_TIB64 /* winnt.h:4155:7 */
|
|
type PNT_TIB64 = uintptr /* winnt.h:4155:16 */
|
|
|
|
type _UMS_CREATE_THREAD_ATTRIBUTES = struct {
|
|
UmsVersion DWORD
|
|
UmsContext PVOID
|
|
UmsCompletionList PVOID
|
|
} /* winnt.h:4166:13 */
|
|
|
|
type UMS_CREATE_THREAD_ATTRIBUTES = _UMS_CREATE_THREAD_ATTRIBUTES /* winnt.h:4170:7 */
|
|
type PUMS_CREATE_THREAD_ATTRIBUTES = uintptr /* winnt.h:4170:36 */
|
|
|
|
type _QUOTA_LIMITS = struct {
|
|
PagedPoolLimit SIZE_T
|
|
NonPagedPoolLimit SIZE_T
|
|
MinimumWorkingSetSize SIZE_T
|
|
MaximumWorkingSetSize SIZE_T
|
|
PagefileLimit SIZE_T
|
|
_ [4]byte
|
|
TimeLimit LARGE_INTEGER
|
|
} /* winnt.h:4172:13 */
|
|
|
|
type QUOTA_LIMITS = _QUOTA_LIMITS /* winnt.h:4179:7 */
|
|
type PQUOTA_LIMITS = uintptr /* winnt.h:4179:20 */
|
|
|
|
type _RATE_QUOTA_LIMIT = struct{ RateData DWORD } /* winnt.h:4187:13 */
|
|
|
|
type RATE_QUOTA_LIMIT = _RATE_QUOTA_LIMIT /* winnt.h:4193:7 */
|
|
type PRATE_QUOTA_LIMIT = uintptr /* winnt.h:4193:25 */
|
|
|
|
type _QUOTA_LIMITS_EX = struct {
|
|
PagedPoolLimit SIZE_T
|
|
NonPagedPoolLimit SIZE_T
|
|
MinimumWorkingSetSize SIZE_T
|
|
MaximumWorkingSetSize SIZE_T
|
|
PagefileLimit SIZE_T
|
|
_ [4]byte
|
|
TimeLimit LARGE_INTEGER
|
|
WorkingSetLimit SIZE_T
|
|
Reserved2 SIZE_T
|
|
Reserved3 SIZE_T
|
|
Reserved4 SIZE_T
|
|
Flags DWORD
|
|
CpuRateLimit RATE_QUOTA_LIMIT
|
|
} /* winnt.h:4195:13 */
|
|
|
|
type QUOTA_LIMITS_EX = _QUOTA_LIMITS_EX /* winnt.h:4208:7 */
|
|
type PQUOTA_LIMITS_EX = uintptr /* winnt.h:4208:23 */
|
|
|
|
type _IO_COUNTERS = struct {
|
|
ReadOperationCount ULONGLONG
|
|
WriteOperationCount ULONGLONG
|
|
OtherOperationCount ULONGLONG
|
|
ReadTransferCount ULONGLONG
|
|
WriteTransferCount ULONGLONG
|
|
OtherTransferCount ULONGLONG
|
|
} /* winnt.h:4210:13 */
|
|
|
|
type IO_COUNTERS = _IO_COUNTERS /* winnt.h:4217:7 */
|
|
type PIO_COUNTERS = uintptr /* winnt.h:4218:25 */
|
|
|
|
type HARDWARE_COUNTER_TYPE = uint32 /* winnt.h:4226:7 */
|
|
type PHARDWARE_COUNTER_TYPE = uintptr /* winnt.h:4226:30 */
|
|
|
|
type PROCESS_MITIGATION_POLICY = uint32 /* winnt.h:4241:7 */
|
|
type PPROCESS_MITIGATION_POLICY = uintptr /* winnt.h:4241:33 */
|
|
|
|
type _PROCESS_MITIGATION_ASLR_POLICY = struct{ __0 struct{ Flags DWORD } } /* winnt.h:4243:13 */
|
|
|
|
type PROCESS_MITIGATION_ASLR_POLICY = _PROCESS_MITIGATION_ASLR_POLICY /* winnt.h:4254:7 */
|
|
type PPROCESS_MITIGATION_ASLR_POLICY = uintptr /* winnt.h:4254:38 */
|
|
|
|
type _PROCESS_MITIGATION_DEP_POLICY = struct {
|
|
__0 struct{ Flags DWORD }
|
|
Permanent BOOLEAN
|
|
_ [3]byte
|
|
} /* winnt.h:4256:13 */
|
|
|
|
type PROCESS_MITIGATION_DEP_POLICY = _PROCESS_MITIGATION_DEP_POLICY /* winnt.h:4266:7 */
|
|
type PPROCESS_MITIGATION_DEP_POLICY = uintptr /* winnt.h:4266:37 */
|
|
|
|
type _PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY = struct{ __0 struct{ Flags DWORD } } /* winnt.h:4268:13 */
|
|
|
|
type PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY = _PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY /* winnt.h:4277:7 */
|
|
type PPROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY = uintptr /* winnt.h:4277:53 */
|
|
|
|
type _PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY = struct{ __0 struct{ Flags DWORD } } /* winnt.h:4279:13 */
|
|
|
|
type PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY = _PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY /* winnt.h:4287:7 */
|
|
type PPROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY = uintptr /* winnt.h:4287:53 */
|
|
|
|
type _PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY = struct{ __0 struct{ Flags DWORD } } /* winnt.h:4289:13 */
|
|
|
|
type PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY = _PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY /* winnt.h:4297:7 */
|
|
type PPROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY = uintptr /* winnt.h:4297:57 */
|
|
|
|
type _PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY = struct{ __0 struct{ Flags DWORD } } /* winnt.h:4299:13 */
|
|
|
|
type PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY = _PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY /* winnt.h:4309:7 */
|
|
type PPROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY = uintptr /* winnt.h:4309:53 */
|
|
|
|
type _PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY = struct{ __0 struct{ Flags DWORD } } /* winnt.h:4311:13 */
|
|
|
|
type PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY = _PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY /* winnt.h:4321:7 */
|
|
type PPROCESS_MITIGATION_BINARY_SIGNATURE_POLICY = uintptr /* winnt.h:4321:51 */
|
|
|
|
type _PROCESS_MITIGATION_DYNAMIC_CODE_POLICY = struct {
|
|
__0 struct {
|
|
Flags DWORD
|
|
_ [4]byte
|
|
}
|
|
} /* winnt.h:4323:13 */
|
|
|
|
type PROCESS_MITIGATION_DYNAMIC_CODE_POLICY = _PROCESS_MITIGATION_DYNAMIC_CODE_POLICY /* winnt.h:4333:7 */
|
|
type PPROCESS_MITIGATION_DYNAMIC_CODE_POLICY = uintptr /* winnt.h:4333:47 */
|
|
|
|
type _PROCESS_MITIGATION_FONT_DISABLE_POLICY = struct{ __0 struct{ Flags DWORD } } /* winnt.h:4335:13 */
|
|
|
|
type PROCESS_MITIGATION_FONT_DISABLE_POLICY = _PROCESS_MITIGATION_FONT_DISABLE_POLICY /* winnt.h:4344:7 */
|
|
type PPROCESS_MITIGATION_FONT_DISABLE_POLICY = uintptr /* winnt.h:4344:47 */
|
|
|
|
type _PROCESS_MITIGATION_IMAGE_LOAD_POLICY = struct{ __0 struct{ Flags DWORD } } /* winnt.h:4346:13 */
|
|
|
|
type PROCESS_MITIGATION_IMAGE_LOAD_POLICY = _PROCESS_MITIGATION_IMAGE_LOAD_POLICY /* winnt.h:4356:7 */
|
|
type PPROCESS_MITIGATION_IMAGE_LOAD_POLICY = uintptr /* winnt.h:4356:45 */
|
|
|
|
type _JOBOBJECT_BASIC_ACCOUNTING_INFORMATION = struct {
|
|
TotalUserTime LARGE_INTEGER
|
|
TotalKernelTime LARGE_INTEGER
|
|
ThisPeriodTotalUserTime LARGE_INTEGER
|
|
ThisPeriodTotalKernelTime LARGE_INTEGER
|
|
TotalPageFaultCount DWORD
|
|
TotalProcesses DWORD
|
|
ActiveProcesses DWORD
|
|
TotalTerminatedProcesses DWORD
|
|
} /* winnt.h:4358:13 */
|
|
|
|
type JOBOBJECT_BASIC_ACCOUNTING_INFORMATION = _JOBOBJECT_BASIC_ACCOUNTING_INFORMATION /* winnt.h:4367:7 */
|
|
type PJOBOBJECT_BASIC_ACCOUNTING_INFORMATION = uintptr /* winnt.h:4367:46 */
|
|
|
|
type _JOBOBJECT_BASIC_LIMIT_INFORMATION = struct {
|
|
PerProcessUserTimeLimit LARGE_INTEGER
|
|
PerJobUserTimeLimit LARGE_INTEGER
|
|
LimitFlags DWORD
|
|
MinimumWorkingSetSize SIZE_T
|
|
MaximumWorkingSetSize SIZE_T
|
|
ActiveProcessLimit DWORD
|
|
Affinity ULONG_PTR
|
|
PriorityClass DWORD
|
|
SchedulingClass DWORD
|
|
_ [4]byte
|
|
} /* winnt.h:4369:13 */
|
|
|
|
type JOBOBJECT_BASIC_LIMIT_INFORMATION = _JOBOBJECT_BASIC_LIMIT_INFORMATION /* winnt.h:4379:7 */
|
|
type PJOBOBJECT_BASIC_LIMIT_INFORMATION = uintptr /* winnt.h:4379:41 */
|
|
|
|
type _JOBOBJECT_EXTENDED_LIMIT_INFORMATION = struct {
|
|
BasicLimitInformation JOBOBJECT_BASIC_LIMIT_INFORMATION
|
|
IoInfo IO_COUNTERS
|
|
ProcessMemoryLimit SIZE_T
|
|
JobMemoryLimit SIZE_T
|
|
PeakProcessMemoryUsed SIZE_T
|
|
PeakJobMemoryUsed SIZE_T
|
|
} /* winnt.h:4381:13 */
|
|
|
|
type JOBOBJECT_EXTENDED_LIMIT_INFORMATION = _JOBOBJECT_EXTENDED_LIMIT_INFORMATION /* winnt.h:4388:7 */
|
|
type PJOBOBJECT_EXTENDED_LIMIT_INFORMATION = uintptr /* winnt.h:4388:44 */
|
|
|
|
type _JOBOBJECT_BASIC_PROCESS_ID_LIST = struct {
|
|
NumberOfAssignedProcesses DWORD
|
|
NumberOfProcessIdsInList DWORD
|
|
ProcessIdList [1]ULONG_PTR
|
|
} /* winnt.h:4390:13 */
|
|
|
|
type JOBOBJECT_BASIC_PROCESS_ID_LIST = _JOBOBJECT_BASIC_PROCESS_ID_LIST /* winnt.h:4394:7 */
|
|
type PJOBOBJECT_BASIC_PROCESS_ID_LIST = uintptr /* winnt.h:4394:39 */
|
|
|
|
type _JOBOBJECT_BASIC_UI_RESTRICTIONS = struct{ UIRestrictionsClass DWORD } /* winnt.h:4396:13 */
|
|
|
|
type JOBOBJECT_BASIC_UI_RESTRICTIONS = _JOBOBJECT_BASIC_UI_RESTRICTIONS /* winnt.h:4398:7 */
|
|
type PJOBOBJECT_BASIC_UI_RESTRICTIONS = uintptr /* winnt.h:4398:39 */
|
|
|
|
type _JOBOBJECT_SECURITY_LIMIT_INFORMATION = struct {
|
|
SecurityLimitFlags DWORD
|
|
JobToken HANDLE
|
|
SidsToDisable PTOKEN_GROUPS
|
|
PrivilegesToDelete PTOKEN_PRIVILEGES
|
|
RestrictedSids PTOKEN_GROUPS
|
|
} /* winnt.h:4400:13 */
|
|
|
|
type JOBOBJECT_SECURITY_LIMIT_INFORMATION = _JOBOBJECT_SECURITY_LIMIT_INFORMATION /* winnt.h:4406:7 */
|
|
type PJOBOBJECT_SECURITY_LIMIT_INFORMATION = uintptr /* winnt.h:4406:44 */
|
|
|
|
type _JOBOBJECT_END_OF_JOB_TIME_INFORMATION = struct{ EndOfJobTimeAction DWORD } /* winnt.h:4408:13 */
|
|
|
|
type JOBOBJECT_END_OF_JOB_TIME_INFORMATION = _JOBOBJECT_END_OF_JOB_TIME_INFORMATION /* winnt.h:4410:7 */
|
|
type PJOBOBJECT_END_OF_JOB_TIME_INFORMATION = uintptr /* winnt.h:4410:45 */
|
|
|
|
type _JOBOBJECT_ASSOCIATE_COMPLETION_PORT = struct {
|
|
CompletionKey PVOID
|
|
CompletionPort HANDLE
|
|
} /* winnt.h:4412:13 */
|
|
|
|
type JOBOBJECT_ASSOCIATE_COMPLETION_PORT = _JOBOBJECT_ASSOCIATE_COMPLETION_PORT /* winnt.h:4415:7 */
|
|
type PJOBOBJECT_ASSOCIATE_COMPLETION_PORT = uintptr /* winnt.h:4415:43 */
|
|
|
|
type _JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION = struct {
|
|
BasicInfo JOBOBJECT_BASIC_ACCOUNTING_INFORMATION
|
|
IoInfo IO_COUNTERS
|
|
} /* winnt.h:4417:13 */
|
|
|
|
type JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION = _JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION /* winnt.h:4420:7 */
|
|
type PJOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION = uintptr /* winnt.h:4420:53 */
|
|
|
|
type _JOBOBJECT_JOBSET_INFORMATION = struct{ MemberLevel DWORD } /* winnt.h:4422:13 */
|
|
|
|
type JOBOBJECT_JOBSET_INFORMATION = _JOBOBJECT_JOBSET_INFORMATION /* winnt.h:4424:7 */
|
|
type PJOBOBJECT_JOBSET_INFORMATION = uintptr /* winnt.h:4424:36 */
|
|
|
|
type JOBOBJECT_RATE_CONTROL_TOLERANCE = uint32 /* winnt.h:4430:7 */
|
|
|
|
type JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL = uint32 /* winnt.h:4436:7 */
|
|
|
|
type _JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION = struct {
|
|
IoReadBytesLimit DWORD64
|
|
IoWriteBytesLimit DWORD64
|
|
PerJobUserTimeLimit LARGE_INTEGER
|
|
JobMemoryLimit DWORD64
|
|
RateControlTolerance JOBOBJECT_RATE_CONTROL_TOLERANCE
|
|
RateControlToleranceInterval JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL
|
|
LimitFlags DWORD
|
|
_ [4]byte
|
|
} /* winnt.h:4438:13 */
|
|
|
|
type JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION = _JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION /* winnt.h:4446:7 */
|
|
type PJOBOBJECT_NOTIFICATION_LIMIT_INFORMATION = uintptr /* winnt.h:4446:48 */
|
|
|
|
type _JOBOBJECT_LIMIT_VIOLATION_INFORMATION = struct {
|
|
LimitFlags DWORD
|
|
ViolationLimitFlags DWORD
|
|
IoReadBytes DWORD64
|
|
IoReadBytesLimit DWORD64
|
|
IoWriteBytes DWORD64
|
|
IoWriteBytesLimit DWORD64
|
|
PerJobUserTime LARGE_INTEGER
|
|
PerJobUserTimeLimit LARGE_INTEGER
|
|
JobMemory DWORD64
|
|
JobMemoryLimit DWORD64
|
|
RateControlTolerance JOBOBJECT_RATE_CONTROL_TOLERANCE
|
|
RateControlToleranceLimit JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL
|
|
} /* winnt.h:4448:13 */
|
|
|
|
type JOBOBJECT_LIMIT_VIOLATION_INFORMATION = _JOBOBJECT_LIMIT_VIOLATION_INFORMATION /* winnt.h:4461:7 */
|
|
type PJOBOBJECT_LIMIT_VIOLATION_INFORMATION = uintptr /* winnt.h:4461:45 */
|
|
|
|
type _JOBOBJECT_CPU_RATE_CONTROL_INFORMATION = struct {
|
|
ControlFlags DWORD
|
|
__4 struct{ CpuRate DWORD }
|
|
} /* winnt.h:4463:13 */
|
|
|
|
type JOBOBJECT_CPU_RATE_CONTROL_INFORMATION = _JOBOBJECT_CPU_RATE_CONTROL_INFORMATION /* winnt.h:4469:7 */
|
|
type PJOBOBJECT_CPU_RATE_CONTROL_INFORMATION = uintptr /* winnt.h:4469:46 */
|
|
|
|
type JOBOBJECTINFOCLASS = uint32 /* winnt.h:4573:7 */
|
|
|
|
type FIRMWARE_TYPE = uint32 /* winnt.h:4580:7 */
|
|
type PFIRMWARE_TYPE = uintptr /* winnt.h:4580:21 */
|
|
|
|
type LOGICAL_PROCESSOR_RELATIONSHIP = uint32 /* winnt.h:4603:7 */
|
|
|
|
type PROCESSOR_CACHE_TYPE = uint32 /* winnt.h:4609:7 */
|
|
|
|
type _CACHE_DESCRIPTOR = struct {
|
|
Level BYTE
|
|
Associativity BYTE
|
|
LineSize WORD
|
|
Size DWORD
|
|
Type PROCESSOR_CACHE_TYPE
|
|
} /* winnt.h:4613:13 */
|
|
|
|
type CACHE_DESCRIPTOR = _CACHE_DESCRIPTOR /* winnt.h:4619:7 */
|
|
type PCACHE_DESCRIPTOR = uintptr /* winnt.h:4619:24 */
|
|
|
|
type _SYSTEM_LOGICAL_PROCESSOR_INFORMATION = struct {
|
|
ProcessorMask ULONG_PTR
|
|
Relationship LOGICAL_PROCESSOR_RELATIONSHIP
|
|
u struct {
|
|
_ [0]uint64
|
|
ProcessorCore struct{ Flags BYTE }
|
|
_ [15]byte
|
|
}
|
|
} /* winnt.h:4621:13 */
|
|
|
|
type SYSTEM_LOGICAL_PROCESSOR_INFORMATION = _SYSTEM_LOGICAL_PROCESSOR_INFORMATION /* winnt.h:4634:7 */
|
|
type PSYSTEM_LOGICAL_PROCESSOR_INFORMATION = uintptr /* winnt.h:4634:44 */
|
|
|
|
type _PROCESSOR_RELATIONSHIP = struct {
|
|
Flags BYTE
|
|
Reserved [21]BYTE
|
|
GroupCount WORD
|
|
GroupMask [1]GROUP_AFFINITY
|
|
} /* winnt.h:4636:13 */
|
|
|
|
type PROCESSOR_RELATIONSHIP = _PROCESSOR_RELATIONSHIP /* winnt.h:4641:7 */
|
|
type PPROCESSOR_RELATIONSHIP = uintptr /* winnt.h:4641:30 */
|
|
|
|
type _NUMA_NODE_RELATIONSHIP = struct {
|
|
NodeNumber DWORD
|
|
Reserved [20]BYTE
|
|
GroupMask GROUP_AFFINITY
|
|
} /* winnt.h:4643:13 */
|
|
|
|
type NUMA_NODE_RELATIONSHIP = _NUMA_NODE_RELATIONSHIP /* winnt.h:4647:7 */
|
|
type PNUMA_NODE_RELATIONSHIP = uintptr /* winnt.h:4647:30 */
|
|
|
|
type _CACHE_RELATIONSHIP = struct {
|
|
Level BYTE
|
|
Associativity BYTE
|
|
LineSize WORD
|
|
CacheSize DWORD
|
|
Type PROCESSOR_CACHE_TYPE
|
|
Reserved [20]BYTE
|
|
GroupMask GROUP_AFFINITY
|
|
} /* winnt.h:4649:13 */
|
|
|
|
type CACHE_RELATIONSHIP = _CACHE_RELATIONSHIP /* winnt.h:4657:7 */
|
|
type PCACHE_RELATIONSHIP = uintptr /* winnt.h:4657:26 */
|
|
|
|
type _PROCESSOR_GROUP_INFO = struct {
|
|
MaximumProcessorCount BYTE
|
|
ActiveProcessorCount BYTE
|
|
Reserved [38]BYTE
|
|
ActiveProcessorMask KAFFINITY
|
|
} /* winnt.h:4659:13 */
|
|
|
|
type PROCESSOR_GROUP_INFO = _PROCESSOR_GROUP_INFO /* winnt.h:4664:7 */
|
|
type PPROCESSOR_GROUP_INFO = uintptr /* winnt.h:4664:28 */
|
|
|
|
type _GROUP_RELATIONSHIP = struct {
|
|
MaximumGroupCount WORD
|
|
ActiveGroupCount WORD
|
|
Reserved [20]BYTE
|
|
GroupInfo [1]PROCESSOR_GROUP_INFO
|
|
} /* winnt.h:4666:13 */
|
|
|
|
type GROUP_RELATIONSHIP = _GROUP_RELATIONSHIP /* winnt.h:4671:7 */
|
|
type PGROUP_RELATIONSHIP = uintptr /* winnt.h:4671:26 */
|
|
|
|
type _SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX = struct {
|
|
Relationship LOGICAL_PROCESSOR_RELATIONSHIP
|
|
Size DWORD
|
|
u struct {
|
|
Processor PROCESSOR_RELATIONSHIP
|
|
_ [32]byte
|
|
}
|
|
} /* winnt.h:4673:5 */
|
|
|
|
type SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX = _SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX /* winnt.h:4684:61 */
|
|
type PSYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX = uintptr /* winnt.h:4684:101 */
|
|
|
|
type _SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION = struct{ CycleTime DWORD64 } /* winnt.h:4686:13 */
|
|
|
|
type SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION = _SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION /* winnt.h:4688:7 */
|
|
type PSYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION = uintptr /* winnt.h:4688:47 */
|
|
|
|
type _XSTATE_FEATURE = struct {
|
|
Offset DWORD
|
|
Size DWORD
|
|
} /* winnt.h:4771:13 */
|
|
|
|
type XSTATE_FEATURE = _XSTATE_FEATURE /* winnt.h:4774:7 */
|
|
type PXSTATE_FEATURE = uintptr /* winnt.h:4774:22 */
|
|
|
|
type _XSTATE_CONFIGURATION = struct {
|
|
EnabledFeatures DWORD64
|
|
EnabledVolatileFeatures DWORD64
|
|
Size DWORD
|
|
OptimizedSave uint8 /* DWORD OptimizedSave: 1 */
|
|
_ [3]byte
|
|
Features [64]XSTATE_FEATURE
|
|
} /* winnt.h:4776:13 */
|
|
|
|
type XSTATE_CONFIGURATION = _XSTATE_CONFIGURATION /* winnt.h:4782:7 */
|
|
type PXSTATE_CONFIGURATION = uintptr /* winnt.h:4782:28 */
|
|
|
|
type _MEMORY_BASIC_INFORMATION = struct {
|
|
BaseAddress PVOID
|
|
AllocationBase PVOID
|
|
AllocationProtect DWORD
|
|
RegionSize SIZE_T
|
|
State DWORD
|
|
Protect DWORD
|
|
Type DWORD
|
|
} /* winnt.h:4784:13 */
|
|
|
|
type MEMORY_BASIC_INFORMATION = _MEMORY_BASIC_INFORMATION /* winnt.h:4792:7 */
|
|
type PMEMORY_BASIC_INFORMATION = uintptr /* winnt.h:4792:32 */
|
|
|
|
type _MEMORY_BASIC_INFORMATION32 = struct {
|
|
BaseAddress DWORD
|
|
AllocationBase DWORD
|
|
AllocationProtect DWORD
|
|
RegionSize DWORD
|
|
State DWORD
|
|
Protect DWORD
|
|
Type DWORD
|
|
} /* winnt.h:4794:13 */
|
|
|
|
type MEMORY_BASIC_INFORMATION32 = _MEMORY_BASIC_INFORMATION32 /* winnt.h:4802:7 */
|
|
type PMEMORY_BASIC_INFORMATION32 = uintptr /* winnt.h:4802:34 */
|
|
|
|
type _MEMORY_BASIC_INFORMATION64 = struct {
|
|
BaseAddress ULONGLONG
|
|
AllocationBase ULONGLONG
|
|
AllocationProtect DWORD
|
|
__alignment1 DWORD
|
|
RegionSize ULONGLONG
|
|
State DWORD
|
|
Protect DWORD
|
|
Type DWORD
|
|
__alignment2 DWORD
|
|
} /* winnt.h:4804:13 */
|
|
|
|
type MEMORY_BASIC_INFORMATION64 = _MEMORY_BASIC_INFORMATION64 /* winnt.h:4814:7 */
|
|
type PMEMORY_BASIC_INFORMATION64 = uintptr /* winnt.h:4814:34 */
|
|
|
|
type FILE_ID_1281 = struct {
|
|
LowPart ULONGLONG
|
|
HighPart ULONGLONG
|
|
} /* winnt.h:4981:13 */
|
|
|
|
type FILE_ID_128 = FILE_ID_1281 /* winnt.h:4984:7 */
|
|
type PFILE_ID_128 = uintptr /* winnt.h:4984:20 */
|
|
|
|
type _FILE_NOTIFY_INFORMATION = struct {
|
|
NextEntryOffset DWORD
|
|
Action DWORD
|
|
FileNameLength DWORD
|
|
FileName [1]WCHAR
|
|
_ [2]byte
|
|
} /* winnt.h:4986:13 */
|
|
|
|
type FILE_NOTIFY_INFORMATION = _FILE_NOTIFY_INFORMATION /* winnt.h:4991:7 */
|
|
type PFILE_NOTIFY_INFORMATION = uintptr /* winnt.h:4991:31 */
|
|
|
|
type _FILE_SEGMENT_ELEMENT = struct {
|
|
_ [0]uint64
|
|
Buffer PVOID64
|
|
_ [4]byte
|
|
} /* winnt.h:4993:13 */
|
|
|
|
type FILE_SEGMENT_ELEMENT = _FILE_SEGMENT_ELEMENT /* winnt.h:4996:7 */
|
|
type PFILE_SEGMENT_ELEMENT = uintptr /* winnt.h:4996:28 */
|
|
|
|
type _REPARSE_GUID_DATA_BUFFER = struct {
|
|
ReparseTag DWORD
|
|
ReparseDataLength WORD
|
|
Reserved WORD
|
|
ReparseGuid GUID
|
|
GenericReparseBuffer struct{ DataBuffer [1]BYTE }
|
|
_ [3]byte
|
|
} /* winnt.h:4998:13 */
|
|
|
|
type REPARSE_GUID_DATA_BUFFER = _REPARSE_GUID_DATA_BUFFER /* winnt.h:5006:7 */
|
|
type PREPARSE_GUID_DATA_BUFFER = uintptr /* winnt.h:5006:32 */
|
|
|
|
type SYSTEM_POWER_STATE = uint32 /* winnt.h:5231:5 */
|
|
type PSYSTEM_POWER_STATE = uintptr /* winnt.h:5231:24 */
|
|
|
|
type POWER_ACTION = uint32 /* winnt.h:5239:5 */
|
|
type PPOWER_ACTION = uintptr /* winnt.h:5239:18 */
|
|
|
|
type DEVICE_POWER_STATE = uint32 /* winnt.h:5244:5 */
|
|
type PDEVICE_POWER_STATE = uintptr /* winnt.h:5244:24 */
|
|
|
|
type MONITOR_DISPLAY_STATE = uint32 /* winnt.h:5248:5 */
|
|
type PMONITOR_DISPLAY_STATE = uintptr /* winnt.h:5248:28 */
|
|
|
|
type USER_ACTIVITY_PRESENCE = uint32 /* winnt.h:5256:5 */
|
|
type PUSER_ACTIVITY_PRESENCE = uintptr /* winnt.h:5256:28 */
|
|
|
|
type EXECUTION_STATE = DWORD /* winnt.h:5264:17 */
|
|
type PEXECUTION_STATE = uintptr /* winnt.h:5264:34 */
|
|
|
|
type LATENCY_TIME = uint32 /* winnt.h:5268:5 */
|
|
|
|
type POWER_REQUEST_TYPE = uint32 /* winnt.h:5286:5 */
|
|
type PPOWER_REQUEST_TYPE = uintptr /* winnt.h:5286:24 */
|
|
|
|
type CM_Power_Data_s = struct {
|
|
PD_Size DWORD
|
|
PD_MostRecentPowerState DEVICE_POWER_STATE
|
|
PD_Capabilities DWORD
|
|
PD_D1Latency DWORD
|
|
PD_D2Latency DWORD
|
|
PD_D3Latency DWORD
|
|
PD_PowerStateMapping [7]DEVICE_POWER_STATE
|
|
PD_DeepestSystemWake SYSTEM_POWER_STATE
|
|
} /* winnt.h:5298:13 */
|
|
|
|
type CM_POWER_DATA = CM_Power_Data_s /* winnt.h:5307:7 */
|
|
type PCM_POWER_DATA = uintptr /* winnt.h:5307:21 */
|
|
|
|
type POWER_INFORMATION_LEVEL = uint32 /* winnt.h:5391:7 */
|
|
|
|
type POWER_USER_PRESENCE_TYPE = uint32 /* winnt.h:5397:7 */
|
|
type PPOWER_USER_PRESENCE_TYPE = uintptr /* winnt.h:5397:32 */
|
|
|
|
type _POWER_USER_PRESENCE = struct{ UserPresence POWER_USER_PRESENCE_TYPE } /* winnt.h:5399:13 */
|
|
|
|
type POWER_USER_PRESENCE = _POWER_USER_PRESENCE /* winnt.h:5401:7 */
|
|
type PPOWER_USER_PRESENCE = uintptr /* winnt.h:5401:27 */
|
|
|
|
type _POWER_SESSION_CONNECT = struct {
|
|
Connected BOOLEAN
|
|
Console BOOLEAN
|
|
} /* winnt.h:5403:13 */
|
|
|
|
type POWER_SESSION_CONNECT = _POWER_SESSION_CONNECT /* winnt.h:5406:7 */
|
|
type PPOWER_SESSION_CONNECT = uintptr /* winnt.h:5406:29 */
|
|
|
|
type _POWER_SESSION_TIMEOUTS = struct {
|
|
InputTimeout DWORD
|
|
DisplayTimeout DWORD
|
|
} /* winnt.h:5408:13 */
|
|
|
|
type POWER_SESSION_TIMEOUTS = _POWER_SESSION_TIMEOUTS /* winnt.h:5411:7 */
|
|
type PPOWER_SESSION_TIMEOUTS = uintptr /* winnt.h:5411:30 */
|
|
|
|
type _POWER_SESSION_RIT_STATE = struct {
|
|
Active BOOLEAN
|
|
_ [3]byte
|
|
LastInputTime DWORD
|
|
} /* winnt.h:5413:13 */
|
|
|
|
type POWER_SESSION_RIT_STATE = _POWER_SESSION_RIT_STATE /* winnt.h:5416:7 */
|
|
type PPOWER_SESSION_RIT_STATE = uintptr /* winnt.h:5416:31 */
|
|
|
|
type _POWER_SESSION_WINLOGON = struct {
|
|
SessionId DWORD
|
|
Console BOOLEAN
|
|
Locked BOOLEAN
|
|
_ [2]byte
|
|
} /* winnt.h:5418:13 */
|
|
|
|
type POWER_SESSION_WINLOGON = _POWER_SESSION_WINLOGON /* winnt.h:5422:7 */
|
|
type PPOWER_SESSION_WINLOGON = uintptr /* winnt.h:5422:30 */
|
|
|
|
type _POWER_IDLE_RESILIENCY = struct {
|
|
CoalescingTimeout DWORD
|
|
IdleResiliencyPeriod DWORD
|
|
} /* winnt.h:5424:13 */
|
|
|
|
type POWER_IDLE_RESILIENCY = _POWER_IDLE_RESILIENCY /* winnt.h:5427:7 */
|
|
type PPOWER_IDLE_RESILIENCY = uintptr /* winnt.h:5427:29 */
|
|
|
|
type POWER_MONITOR_REQUEST_REASON = uint32 /* winnt.h:5445:7 */
|
|
|
|
type _POWER_MONITOR_INVOCATION = struct {
|
|
On BOOLEAN
|
|
Console BOOLEAN
|
|
_ [2]byte
|
|
RequestReason POWER_MONITOR_REQUEST_REASON
|
|
} /* winnt.h:5447:13 */
|
|
|
|
type POWER_MONITOR_INVOCATION = _POWER_MONITOR_INVOCATION /* winnt.h:5451:7 */
|
|
type PPOWER_MONITOR_INVOCATION = uintptr /* winnt.h:5451:32 */
|
|
|
|
type _RESUME_PERFORMANCE = struct {
|
|
PostTimeMs DWORD
|
|
_ [4]byte
|
|
TotalResumeTimeMs ULONGLONG
|
|
ResumeCompleteTimestamp ULONGLONG
|
|
} /* winnt.h:5453:13 */
|
|
|
|
type RESUME_PERFORMANCE = _RESUME_PERFORMANCE /* winnt.h:5457:7 */
|
|
type PRESUME_PERFORMANCE = uintptr /* winnt.h:5457:26 */
|
|
|
|
type SYSTEM_POWER_CONDITION = uint32 /* winnt.h:5464:7 */
|
|
|
|
type SET_POWER_SETTING_VALUE = struct {
|
|
Version DWORD
|
|
Guid GUID
|
|
PowerCondition SYSTEM_POWER_CONDITION
|
|
DataLength DWORD
|
|
Data [1]BYTE
|
|
_ [3]byte
|
|
} /* winnt.h:5472:7 */
|
|
type PSET_POWER_SETTING_VALUE = uintptr /* winnt.h:5472:31 */
|
|
|
|
type NOTIFY_USER_POWER_SETTING = struct{ Guid GUID } /* winnt.h:5478:7 */
|
|
type PNOTIFY_USER_POWER_SETTING = uintptr /* winnt.h:5478:33 */
|
|
|
|
type _APPLICATIONLAUNCH_SETTING_VALUE = struct {
|
|
ActivationTime LARGE_INTEGER
|
|
Flags DWORD
|
|
ButtonInstanceID DWORD
|
|
} /* winnt.h:5480:13 */
|
|
|
|
type APPLICATIONLAUNCH_SETTING_VALUE = _APPLICATIONLAUNCH_SETTING_VALUE /* winnt.h:5484:7 */
|
|
type PAPPLICATIONLAUNCH_SETTING_VALUE = uintptr /* winnt.h:5484:39 */
|
|
|
|
type POWER_PLATFORM_ROLE = uint32 /* winnt.h:5497:7 */
|
|
type PPOWER_PLATFORM_ROLE = uintptr /* winnt.h:5497:27 */
|
|
|
|
type _POWER_PLATFORM_INFORMATION = struct{ AoAc BOOLEAN } /* winnt.h:5499:13 */
|
|
|
|
type POWER_PLATFORM_INFORMATION = _POWER_PLATFORM_INFORMATION /* winnt.h:5501:7 */
|
|
type PPOWER_PLATFORM_INFORMATION = uintptr /* winnt.h:5501:34 */
|
|
|
|
type BATTERY_REPORTING_SCALE = struct {
|
|
Granularity DWORD
|
|
Capacity DWORD
|
|
} /* winnt.h:5520:7 */
|
|
type PBATTERY_REPORTING_SCALE = uintptr /* winnt.h:5520:31 */
|
|
|
|
type PPM_WMI_LEGACY_PERFSTATE = struct {
|
|
Frequency DWORD
|
|
Flags DWORD
|
|
PercentFrequency DWORD
|
|
} /* winnt.h:5526:7 */
|
|
type PPPM_WMI_LEGACY_PERFSTATE = uintptr /* winnt.h:5526:32 */
|
|
|
|
type PPM_WMI_IDLE_STATE = struct {
|
|
Latency DWORD
|
|
Power DWORD
|
|
TimeCheck DWORD
|
|
PromotePercent BYTE
|
|
DemotePercent BYTE
|
|
StateType BYTE
|
|
Reserved BYTE
|
|
StateFlags DWORD
|
|
Context DWORD
|
|
IdleHandler DWORD
|
|
Reserved1 DWORD
|
|
} /* winnt.h:5540:7 */
|
|
type PPPM_WMI_IDLE_STATE = uintptr /* winnt.h:5540:26 */
|
|
|
|
type PPM_WMI_IDLE_STATES = struct {
|
|
Type DWORD
|
|
Count DWORD
|
|
TargetState DWORD
|
|
OldState DWORD
|
|
TargetProcessors DWORD64
|
|
State [1]PPM_WMI_IDLE_STATE
|
|
} /* winnt.h:5549:7 */
|
|
type PPPM_WMI_IDLE_STATES = uintptr /* winnt.h:5549:27 */
|
|
|
|
type PPM_WMI_IDLE_STATES_EX = struct {
|
|
Type DWORD
|
|
Count DWORD
|
|
TargetState DWORD
|
|
OldState DWORD
|
|
TargetProcessors PVOID
|
|
State [1]PPM_WMI_IDLE_STATE
|
|
} /* winnt.h:5558:7 */
|
|
type PPPM_WMI_IDLE_STATES_EX = uintptr /* winnt.h:5558:30 */
|
|
|
|
type PPM_WMI_PERF_STATE = struct {
|
|
Frequency DWORD
|
|
Power DWORD
|
|
PercentFrequency BYTE
|
|
IncreaseLevel BYTE
|
|
DecreaseLevel BYTE
|
|
Type BYTE
|
|
IncreaseTime DWORD
|
|
DecreaseTime DWORD
|
|
_ [4]byte
|
|
Control DWORD64
|
|
Status DWORD64
|
|
HitCount DWORD
|
|
Reserved1 DWORD
|
|
Reserved2 DWORD64
|
|
Reserved3 DWORD64
|
|
} /* winnt.h:5575:7 */
|
|
type PPPM_WMI_PERF_STATE = uintptr /* winnt.h:5575:26 */
|
|
|
|
type PPM_WMI_PERF_STATES = struct {
|
|
Count DWORD
|
|
MaxFrequency DWORD
|
|
CurrentState DWORD
|
|
MaxPerfState DWORD
|
|
MinPerfState DWORD
|
|
LowestPerfState DWORD
|
|
ThermalConstraint DWORD
|
|
BusyAdjThreshold BYTE
|
|
PolicyType BYTE
|
|
Type BYTE
|
|
Reserved BYTE
|
|
TimerInterval DWORD
|
|
_ [4]byte
|
|
TargetProcessors DWORD64
|
|
PStateHandler DWORD
|
|
PStateContext DWORD
|
|
TStateHandler DWORD
|
|
TStateContext DWORD
|
|
FeedbackHandler DWORD
|
|
Reserved1 DWORD
|
|
Reserved2 DWORD64
|
|
State [1]PPM_WMI_PERF_STATE
|
|
} /* winnt.h:5599:7 */
|
|
type PPPM_WMI_PERF_STATES = uintptr /* winnt.h:5599:27 */
|
|
|
|
type PPM_WMI_PERF_STATES_EX = struct {
|
|
Count DWORD
|
|
MaxFrequency DWORD
|
|
CurrentState DWORD
|
|
MaxPerfState DWORD
|
|
MinPerfState DWORD
|
|
LowestPerfState DWORD
|
|
ThermalConstraint DWORD
|
|
BusyAdjThreshold BYTE
|
|
PolicyType BYTE
|
|
Type BYTE
|
|
Reserved BYTE
|
|
TimerInterval DWORD
|
|
TargetProcessors PVOID
|
|
PStateHandler DWORD
|
|
PStateContext DWORD
|
|
TStateHandler DWORD
|
|
TStateContext DWORD
|
|
FeedbackHandler DWORD
|
|
Reserved1 DWORD
|
|
Reserved2 DWORD64
|
|
State [1]PPM_WMI_PERF_STATE
|
|
} /* winnt.h:5623:7 */
|
|
type PPPM_WMI_PERF_STATES_EX = uintptr /* winnt.h:5623:30 */
|
|
|
|
type PPM_IDLE_STATE_ACCOUNTING = struct {
|
|
IdleTransitions DWORD
|
|
FailedTransitions DWORD
|
|
InvalidBucketIndex DWORD
|
|
_ [4]byte
|
|
TotalTime DWORD64
|
|
IdleTimeBuckets [6]DWORD
|
|
} /* winnt.h:5634:7 */
|
|
type PPPM_IDLE_STATE_ACCOUNTING = uintptr /* winnt.h:5634:33 */
|
|
|
|
type PPM_IDLE_ACCOUNTING = struct {
|
|
StateCount DWORD
|
|
TotalTransitions DWORD
|
|
ResetCount DWORD
|
|
_ [4]byte
|
|
StartTime DWORD64
|
|
State [1]PPM_IDLE_STATE_ACCOUNTING
|
|
} /* winnt.h:5642:7 */
|
|
type PPPM_IDLE_ACCOUNTING = uintptr /* winnt.h:5642:27 */
|
|
|
|
type PPM_IDLE_STATE_BUCKET_EX = struct {
|
|
TotalTimeUs DWORD64
|
|
MinTimeUs DWORD
|
|
MaxTimeUs DWORD
|
|
Count DWORD
|
|
_ [4]byte
|
|
} /* winnt.h:5649:7 */
|
|
type PPPM_IDLE_STATE_BUCKET_EX = uintptr /* winnt.h:5649:32 */
|
|
|
|
type PPM_IDLE_STATE_ACCOUNTING_EX = struct {
|
|
TotalTime DWORD64
|
|
IdleTransitions DWORD
|
|
FailedTransitions DWORD
|
|
InvalidBucketIndex DWORD
|
|
MinTimeUs DWORD
|
|
MaxTimeUs DWORD
|
|
CancelledTransitions DWORD
|
|
IdleTimeBuckets [16]PPM_IDLE_STATE_BUCKET_EX
|
|
} /* winnt.h:5660:7 */
|
|
type PPPM_IDLE_STATE_ACCOUNTING_EX = uintptr /* winnt.h:5660:36 */
|
|
|
|
type PPM_IDLE_ACCOUNTING_EX = struct {
|
|
StateCount DWORD
|
|
TotalTransitions DWORD
|
|
ResetCount DWORD
|
|
AbortCount DWORD
|
|
StartTime DWORD64
|
|
State [1]PPM_IDLE_STATE_ACCOUNTING_EX
|
|
} /* winnt.h:5669:7 */
|
|
type PPPM_IDLE_ACCOUNTING_EX = uintptr /* winnt.h:5669:30 */
|
|
|
|
type PPM_PERFSTATE_EVENT = struct {
|
|
State DWORD
|
|
Status DWORD
|
|
Latency DWORD
|
|
Speed DWORD
|
|
Processor DWORD
|
|
} /* winnt.h:5713:7 */
|
|
type PPPM_PERFSTATE_EVENT = uintptr /* winnt.h:5713:27 */
|
|
|
|
type PPM_PERFSTATE_DOMAIN_EVENT = struct {
|
|
State DWORD
|
|
Latency DWORD
|
|
Speed DWORD
|
|
_ [4]byte
|
|
Processors DWORD64
|
|
} /* winnt.h:5720:7 */
|
|
type PPPM_PERFSTATE_DOMAIN_EVENT = uintptr /* winnt.h:5720:34 */
|
|
|
|
type PPM_IDLESTATE_EVENT = struct {
|
|
NewState DWORD
|
|
OldState DWORD
|
|
Processors DWORD64
|
|
} /* winnt.h:5726:7 */
|
|
type PPPM_IDLESTATE_EVENT = uintptr /* winnt.h:5726:27 */
|
|
|
|
type PPM_THERMALCHANGE_EVENT = struct {
|
|
ThermalConstraint DWORD
|
|
_ [4]byte
|
|
Processors DWORD64
|
|
} /* winnt.h:5731:7 */
|
|
type PPPM_THERMALCHANGE_EVENT = uintptr /* winnt.h:5731:31 */
|
|
type PPM_THERMAL_POLICY_EVENT = struct {
|
|
Mode BYTE
|
|
_ [7]byte
|
|
Processors DWORD64
|
|
} /* winnt.h:5735:7 */
|
|
type PPPM_THERMAL_POLICY_EVENT = uintptr /* winnt.h:5735:32 */
|
|
|
|
type POWER_ACTION_POLICY = struct {
|
|
Action POWER_ACTION
|
|
Flags DWORD
|
|
EventCode DWORD
|
|
} /* winnt.h:5752:7 */
|
|
type PPOWER_ACTION_POLICY = uintptr /* winnt.h:5752:27 */
|
|
|
|
type PROCESSOR_IDLESTATE_INFO = struct {
|
|
TimeCheck DWORD
|
|
DemotePercent BYTE
|
|
PromotePercent BYTE
|
|
Spare [2]BYTE
|
|
} /* winnt.h:5787:7 */
|
|
type PPROCESSOR_IDLESTATE_INFO = uintptr /* winnt.h:5787:32 */
|
|
|
|
type SYSTEM_POWER_LEVEL = struct {
|
|
Enable BOOLEAN
|
|
Spare [3]BYTE
|
|
BatteryLevel DWORD
|
|
PowerPolicy POWER_ACTION_POLICY
|
|
MinSystemState SYSTEM_POWER_STATE
|
|
} /* winnt.h:5795:7 */
|
|
type PSYSTEM_POWER_LEVEL = uintptr /* winnt.h:5795:26 */
|
|
|
|
type _SYSTEM_POWER_POLICY = struct {
|
|
Revision DWORD
|
|
PowerButton POWER_ACTION_POLICY
|
|
SleepButton POWER_ACTION_POLICY
|
|
LidClose POWER_ACTION_POLICY
|
|
LidOpenWake SYSTEM_POWER_STATE
|
|
Reserved DWORD
|
|
Idle POWER_ACTION_POLICY
|
|
IdleTimeout DWORD
|
|
IdleSensitivity BYTE
|
|
DynamicThrottle BYTE
|
|
Spare2 [2]BYTE
|
|
MinSleep SYSTEM_POWER_STATE
|
|
MaxSleep SYSTEM_POWER_STATE
|
|
ReducedLatencySleep SYSTEM_POWER_STATE
|
|
WinLogonFlags DWORD
|
|
Spare3 DWORD
|
|
DozeS4Timeout DWORD
|
|
BroadcastCapacityResolution DWORD
|
|
DischargePolicy [4]SYSTEM_POWER_LEVEL
|
|
VideoTimeout DWORD
|
|
VideoDimDisplay BOOLEAN
|
|
_ [3]byte
|
|
VideoReserved [3]DWORD
|
|
SpindownTimeout DWORD
|
|
OptimizeForPower BOOLEAN
|
|
FanThrottleTolerance BYTE
|
|
ForcedThrottle BYTE
|
|
MinThrottle BYTE
|
|
OverThrottled POWER_ACTION_POLICY
|
|
} /* winnt.h:5797:13 */
|
|
|
|
type SYSTEM_POWER_POLICY = _SYSTEM_POWER_POLICY /* winnt.h:5826:7 */
|
|
type PSYSTEM_POWER_POLICY = uintptr /* winnt.h:5826:27 */
|
|
|
|
type PROCESSOR_IDLESTATE_POLICY = struct {
|
|
Revision WORD
|
|
Flags struct{ AsWORD WORD }
|
|
PolicyCount DWORD
|
|
Policy [3]PROCESSOR_IDLESTATE_INFO
|
|
} /* winnt.h:5846:7 */
|
|
type PPROCESSOR_IDLESTATE_POLICY = uintptr /* winnt.h:5846:34 */
|
|
|
|
type _PROCESSOR_POWER_POLICY_INFO = struct {
|
|
TimeCheck DWORD
|
|
DemoteLimit DWORD
|
|
PromoteLimit DWORD
|
|
DemotePercent BYTE
|
|
PromotePercent BYTE
|
|
Spare [2]BYTE
|
|
AllowDemotion uint32 /* DWORD AllowDemotion: 1, DWORD AllowPromotion: 1, DWORD Reserved: 30 */
|
|
} /* winnt.h:5848:13 */
|
|
|
|
type PROCESSOR_POWER_POLICY_INFO = _PROCESSOR_POWER_POLICY_INFO /* winnt.h:5858:7 */
|
|
type PPROCESSOR_POWER_POLICY_INFO = uintptr /* winnt.h:5858:35 */
|
|
|
|
type _PROCESSOR_POWER_POLICY = struct {
|
|
Revision DWORD
|
|
DynamicThrottle BYTE
|
|
Spare [3]BYTE
|
|
DisableCStates uint32 /* DWORD DisableCStates: 1, DWORD Reserved: 31 */
|
|
PolicyCount DWORD
|
|
Policy [3]PROCESSOR_POWER_POLICY_INFO
|
|
} /* winnt.h:5860:13 */
|
|
|
|
type PROCESSOR_POWER_POLICY = _PROCESSOR_POWER_POLICY /* winnt.h:5868:7 */
|
|
type PPROCESSOR_POWER_POLICY = uintptr /* winnt.h:5868:30 */
|
|
|
|
type PROCESSOR_PERFSTATE_POLICY = struct {
|
|
Revision DWORD
|
|
MaxThrottle BYTE
|
|
MinThrottle BYTE
|
|
BusyAdjThreshold BYTE
|
|
u struct{ Spare BYTE }
|
|
TimeCheck DWORD
|
|
IncreaseTime DWORD
|
|
DecreaseTime DWORD
|
|
IncreasePercent DWORD
|
|
DecreasePercent DWORD
|
|
} /* winnt.h:5892:7 */
|
|
type PPROCESSOR_PERFSTATE_POLICY = uintptr /* winnt.h:5892:34 */
|
|
|
|
type _ADMINISTRATOR_POWER_POLICY = struct {
|
|
MinSleep SYSTEM_POWER_STATE
|
|
MaxSleep SYSTEM_POWER_STATE
|
|
MinVideoTimeout DWORD
|
|
MaxVideoTimeout DWORD
|
|
MinSpindownTimeout DWORD
|
|
MaxSpindownTimeout DWORD
|
|
} /* winnt.h:5894:13 */
|
|
|
|
type ADMINISTRATOR_POWER_POLICY = _ADMINISTRATOR_POWER_POLICY /* winnt.h:5901:7 */
|
|
type PADMINISTRATOR_POWER_POLICY = uintptr /* winnt.h:5901:34 */
|
|
|
|
type SYSTEM_POWER_CAPABILITIES = struct {
|
|
PowerButtonPresent BOOLEAN
|
|
SleepButtonPresent BOOLEAN
|
|
LidPresent BOOLEAN
|
|
SystemS1 BOOLEAN
|
|
SystemS2 BOOLEAN
|
|
SystemS3 BOOLEAN
|
|
SystemS4 BOOLEAN
|
|
SystemS5 BOOLEAN
|
|
HiberFilePresent BOOLEAN
|
|
FullWake BOOLEAN
|
|
VideoDimPresent BOOLEAN
|
|
ApmPresent BOOLEAN
|
|
UpsPresent BOOLEAN
|
|
ThermalControl BOOLEAN
|
|
ProcessorThrottle BOOLEAN
|
|
ProcessorMinThrottle BYTE
|
|
ProcessorMaxThrottle BYTE
|
|
FastSystemS4 BOOLEAN
|
|
spare2 [3]BYTE
|
|
DiskSpinDown BOOLEAN
|
|
spare3 [8]BYTE
|
|
SystemBatteriesPresent BOOLEAN
|
|
BatteriesAreShortTerm BOOLEAN
|
|
BatteryScale [3]BATTERY_REPORTING_SCALE
|
|
AcOnLineWake SYSTEM_POWER_STATE
|
|
SoftLidWake SYSTEM_POWER_STATE
|
|
RtcWake SYSTEM_POWER_STATE
|
|
MinDeviceWakeState SYSTEM_POWER_STATE
|
|
DefaultLowLatencyWake SYSTEM_POWER_STATE
|
|
} /* winnt.h:5933:7 */
|
|
type PSYSTEM_POWER_CAPABILITIES = uintptr /* winnt.h:5933:33 */
|
|
|
|
type SYSTEM_BATTERY_STATE = struct {
|
|
AcOnLine BOOLEAN
|
|
BatteryPresent BOOLEAN
|
|
Charging BOOLEAN
|
|
Discharging BOOLEAN
|
|
Spare1 [4]BOOLEAN
|
|
MaxCapacity DWORD
|
|
RemainingCapacity DWORD
|
|
Rate DWORD
|
|
EstimatedTime DWORD
|
|
DefaultAlert1 DWORD
|
|
DefaultAlert2 DWORD
|
|
} /* winnt.h:5947:7 */
|
|
type PSYSTEM_BATTERY_STATE = uintptr /* winnt.h:5947:28 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type _IMAGE_DOS_HEADER = struct {
|
|
e_magic WORD
|
|
e_cblp WORD
|
|
e_cp WORD
|
|
e_crlc WORD
|
|
e_cparhdr WORD
|
|
e_minalloc WORD
|
|
e_maxalloc WORD
|
|
e_ss WORD
|
|
e_sp WORD
|
|
e_csum WORD
|
|
e_ip WORD
|
|
e_cs WORD
|
|
e_lfarlc WORD
|
|
e_ovno WORD
|
|
e_res [4]WORD
|
|
e_oemid WORD
|
|
e_oeminfo WORD
|
|
e_res2 [10]WORD
|
|
e_lfanew LONG
|
|
} /* winnt.h:5959:13 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type IMAGE_DOS_HEADER = _IMAGE_DOS_HEADER /* winnt.h:5979:7 */
|
|
type PIMAGE_DOS_HEADER = uintptr /* winnt.h:5979:24 */
|
|
|
|
type _IMAGE_OS2_HEADER = struct {
|
|
ne_magic WORD
|
|
ne_ver CHAR
|
|
ne_rev CHAR
|
|
ne_enttab WORD
|
|
ne_cbenttab WORD
|
|
ne_crc LONG
|
|
ne_flags WORD
|
|
ne_autodata WORD
|
|
ne_heap WORD
|
|
ne_stack WORD
|
|
ne_csip LONG
|
|
ne_sssp LONG
|
|
ne_cseg WORD
|
|
ne_cmod WORD
|
|
ne_cbnrestab WORD
|
|
ne_segtab WORD
|
|
ne_rsrctab WORD
|
|
ne_restab WORD
|
|
ne_modtab WORD
|
|
ne_imptab WORD
|
|
ne_nrestab LONG
|
|
ne_cmovent WORD
|
|
ne_align WORD
|
|
ne_cres WORD
|
|
ne_exetyp BYTE
|
|
ne_flagsothers BYTE
|
|
ne_pretthunks WORD
|
|
ne_psegrefbytes WORD
|
|
ne_swaparea WORD
|
|
ne_expver WORD
|
|
} /* winnt.h:5981:13 */
|
|
|
|
type IMAGE_OS2_HEADER = _IMAGE_OS2_HEADER /* winnt.h:6012:7 */
|
|
type PIMAGE_OS2_HEADER = uintptr /* winnt.h:6012:24 */
|
|
|
|
type _IMAGE_VXD_HEADER = struct {
|
|
e32_magic WORD
|
|
e32_border BYTE
|
|
e32_worder BYTE
|
|
e32_level DWORD
|
|
e32_cpu WORD
|
|
e32_os WORD
|
|
e32_ver DWORD
|
|
e32_mflags DWORD
|
|
e32_mpages DWORD
|
|
e32_startobj DWORD
|
|
e32_eip DWORD
|
|
e32_stackobj DWORD
|
|
e32_esp DWORD
|
|
e32_pagesize DWORD
|
|
e32_lastpagesize DWORD
|
|
e32_fixupsize DWORD
|
|
e32_fixupsum DWORD
|
|
e32_ldrsize DWORD
|
|
e32_ldrsum DWORD
|
|
e32_objtab DWORD
|
|
e32_objcnt DWORD
|
|
e32_objmap DWORD
|
|
e32_itermap DWORD
|
|
e32_rsrctab DWORD
|
|
e32_rsrccnt DWORD
|
|
e32_restab DWORD
|
|
e32_enttab DWORD
|
|
e32_dirtab DWORD
|
|
e32_dircnt DWORD
|
|
e32_fpagetab DWORD
|
|
e32_frectab DWORD
|
|
e32_impmod DWORD
|
|
e32_impmodcnt DWORD
|
|
e32_impproc DWORD
|
|
e32_pagesum DWORD
|
|
e32_datapage DWORD
|
|
e32_preload DWORD
|
|
e32_nrestab DWORD
|
|
e32_cbnrestab DWORD
|
|
e32_nressum DWORD
|
|
e32_autodata DWORD
|
|
e32_debuginfo DWORD
|
|
e32_debuglen DWORD
|
|
e32_instpreload DWORD
|
|
e32_instdemand DWORD
|
|
e32_heapsize DWORD
|
|
e32_res3 [12]BYTE
|
|
e32_winresoff DWORD
|
|
e32_winreslen DWORD
|
|
e32_devid WORD
|
|
e32_ddkver WORD
|
|
} /* winnt.h:6014:13 */
|
|
|
|
type IMAGE_VXD_HEADER = _IMAGE_VXD_HEADER /* winnt.h:6066:7 */
|
|
type PIMAGE_VXD_HEADER = uintptr /* winnt.h:6066:24 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type _IMAGE_FILE_HEADER = struct {
|
|
Machine WORD
|
|
NumberOfSections WORD
|
|
TimeDateStamp DWORD
|
|
PointerToSymbolTable DWORD
|
|
NumberOfSymbols DWORD
|
|
SizeOfOptionalHeader WORD
|
|
Characteristics WORD
|
|
} /* winnt.h:6070:13 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type IMAGE_FILE_HEADER = _IMAGE_FILE_HEADER /* winnt.h:6078:7 */
|
|
type PIMAGE_FILE_HEADER = uintptr /* winnt.h:6078:25 */
|
|
|
|
type _IMAGE_DATA_DIRECTORY = struct {
|
|
VirtualAddress DWORD
|
|
Size DWORD
|
|
} /* winnt.h:6131:13 */
|
|
|
|
type IMAGE_DATA_DIRECTORY = _IMAGE_DATA_DIRECTORY /* winnt.h:6134:7 */
|
|
type PIMAGE_DATA_DIRECTORY = uintptr /* winnt.h:6134:28 */
|
|
|
|
type _IMAGE_OPTIONAL_HEADER = struct {
|
|
Magic WORD
|
|
MajorLinkerVersion BYTE
|
|
MinorLinkerVersion BYTE
|
|
SizeOfCode DWORD
|
|
SizeOfInitializedData DWORD
|
|
SizeOfUninitializedData DWORD
|
|
AddressOfEntryPoint DWORD
|
|
BaseOfCode DWORD
|
|
BaseOfData DWORD
|
|
ImageBase DWORD
|
|
SectionAlignment DWORD
|
|
FileAlignment DWORD
|
|
MajorOperatingSystemVersion WORD
|
|
MinorOperatingSystemVersion WORD
|
|
MajorImageVersion WORD
|
|
MinorImageVersion WORD
|
|
MajorSubsystemVersion WORD
|
|
MinorSubsystemVersion WORD
|
|
Win32VersionValue DWORD
|
|
SizeOfImage DWORD
|
|
SizeOfHeaders DWORD
|
|
CheckSum DWORD
|
|
Subsystem WORD
|
|
DllCharacteristics WORD
|
|
SizeOfStackReserve DWORD
|
|
SizeOfStackCommit DWORD
|
|
SizeOfHeapReserve DWORD
|
|
SizeOfHeapCommit DWORD
|
|
LoaderFlags DWORD
|
|
NumberOfRvaAndSizes DWORD
|
|
DataDirectory [16]IMAGE_DATA_DIRECTORY
|
|
} /* winnt.h:6138:13 */
|
|
|
|
type IMAGE_OPTIONAL_HEADER32 = _IMAGE_OPTIONAL_HEADER /* winnt.h:6171:7 */
|
|
type PIMAGE_OPTIONAL_HEADER32 = uintptr /* winnt.h:6171:31 */
|
|
|
|
type _IMAGE_ROM_OPTIONAL_HEADER = struct {
|
|
Magic WORD
|
|
MajorLinkerVersion BYTE
|
|
MinorLinkerVersion BYTE
|
|
SizeOfCode DWORD
|
|
SizeOfInitializedData DWORD
|
|
SizeOfUninitializedData DWORD
|
|
AddressOfEntryPoint DWORD
|
|
BaseOfCode DWORD
|
|
BaseOfData DWORD
|
|
BaseOfBss DWORD
|
|
GprMask DWORD
|
|
CprMask [4]DWORD
|
|
GpValue DWORD
|
|
} /* winnt.h:6173:13 */
|
|
|
|
type IMAGE_ROM_OPTIONAL_HEADER = _IMAGE_ROM_OPTIONAL_HEADER /* winnt.h:6187:7 */
|
|
type PIMAGE_ROM_OPTIONAL_HEADER = uintptr /* winnt.h:6187:33 */
|
|
|
|
type _IMAGE_OPTIONAL_HEADER64 = struct {
|
|
Magic WORD
|
|
MajorLinkerVersion BYTE
|
|
MinorLinkerVersion BYTE
|
|
SizeOfCode DWORD
|
|
SizeOfInitializedData DWORD
|
|
SizeOfUninitializedData DWORD
|
|
AddressOfEntryPoint DWORD
|
|
BaseOfCode DWORD
|
|
ImageBase ULONGLONG
|
|
SectionAlignment DWORD
|
|
FileAlignment DWORD
|
|
MajorOperatingSystemVersion WORD
|
|
MinorOperatingSystemVersion WORD
|
|
MajorImageVersion WORD
|
|
MinorImageVersion WORD
|
|
MajorSubsystemVersion WORD
|
|
MinorSubsystemVersion WORD
|
|
Win32VersionValue DWORD
|
|
SizeOfImage DWORD
|
|
SizeOfHeaders DWORD
|
|
CheckSum DWORD
|
|
Subsystem WORD
|
|
DllCharacteristics WORD
|
|
SizeOfStackReserve ULONGLONG
|
|
SizeOfStackCommit ULONGLONG
|
|
SizeOfHeapReserve ULONGLONG
|
|
SizeOfHeapCommit ULONGLONG
|
|
LoaderFlags DWORD
|
|
NumberOfRvaAndSizes DWORD
|
|
DataDirectory [16]IMAGE_DATA_DIRECTORY
|
|
} /* winnt.h:6189:13 */
|
|
|
|
type IMAGE_OPTIONAL_HEADER64 = _IMAGE_OPTIONAL_HEADER64 /* winnt.h:6220:7 */
|
|
type PIMAGE_OPTIONAL_HEADER64 = uintptr /* winnt.h:6220:31 */
|
|
|
|
type IMAGE_OPTIONAL_HEADER = IMAGE_OPTIONAL_HEADER32 /* winnt.h:6237:37 */
|
|
type PIMAGE_OPTIONAL_HEADER = PIMAGE_OPTIONAL_HEADER32 /* winnt.h:6238:38 */
|
|
|
|
type _IMAGE_NT_HEADERS64 = struct {
|
|
Signature DWORD
|
|
FileHeader IMAGE_FILE_HEADER
|
|
OptionalHeader IMAGE_OPTIONAL_HEADER64
|
|
} /* winnt.h:6243:13 */
|
|
|
|
type IMAGE_NT_HEADERS64 = _IMAGE_NT_HEADERS64 /* winnt.h:6247:7 */
|
|
type PIMAGE_NT_HEADERS64 = uintptr /* winnt.h:6247:26 */
|
|
|
|
type _IMAGE_NT_HEADERS = struct {
|
|
Signature DWORD
|
|
FileHeader IMAGE_FILE_HEADER
|
|
OptionalHeader IMAGE_OPTIONAL_HEADER32
|
|
} /* winnt.h:6249:13 */
|
|
|
|
type IMAGE_NT_HEADERS32 = _IMAGE_NT_HEADERS /* winnt.h:6253:7 */
|
|
type PIMAGE_NT_HEADERS32 = uintptr /* winnt.h:6253:26 */
|
|
|
|
type _IMAGE_ROM_HEADERS = struct {
|
|
FileHeader IMAGE_FILE_HEADER
|
|
OptionalHeader IMAGE_ROM_OPTIONAL_HEADER
|
|
} /* winnt.h:6255:13 */
|
|
|
|
type IMAGE_ROM_HEADERS = _IMAGE_ROM_HEADERS /* winnt.h:6258:7 */
|
|
type PIMAGE_ROM_HEADERS = uintptr /* winnt.h:6258:25 */
|
|
|
|
type IMAGE_NT_HEADERS = IMAGE_NT_HEADERS32 /* winnt.h:6264:32 */
|
|
type PIMAGE_NT_HEADERS = PIMAGE_NT_HEADERS32 /* winnt.h:6265:33 */
|
|
|
|
type ANON_OBJECT_HEADER1 = struct {
|
|
Sig1 WORD
|
|
Sig2 WORD
|
|
Version WORD
|
|
Machine WORD
|
|
TimeDateStamp DWORD
|
|
ClassID CLSID
|
|
SizeOfData DWORD
|
|
} /* winnt.h:6313:13 */
|
|
|
|
type ANON_OBJECT_HEADER = ANON_OBJECT_HEADER1 /* winnt.h:6321:7 */
|
|
|
|
type ANON_OBJECT_HEADER_V21 = struct {
|
|
Sig1 WORD
|
|
Sig2 WORD
|
|
Version WORD
|
|
Machine WORD
|
|
TimeDateStamp DWORD
|
|
ClassID CLSID
|
|
SizeOfData DWORD
|
|
Flags DWORD
|
|
MetaDataSize DWORD
|
|
MetaDataOffset DWORD
|
|
} /* winnt.h:6323:13 */
|
|
|
|
type ANON_OBJECT_HEADER_V2 = ANON_OBJECT_HEADER_V21 /* winnt.h:6334:7 */
|
|
|
|
type ANON_OBJECT_HEADER_BIGOBJ1 = struct {
|
|
Sig1 WORD
|
|
Sig2 WORD
|
|
Version WORD
|
|
Machine WORD
|
|
TimeDateStamp DWORD
|
|
ClassID CLSID
|
|
SizeOfData DWORD
|
|
Flags DWORD
|
|
MetaDataSize DWORD
|
|
MetaDataOffset DWORD
|
|
NumberOfSections DWORD
|
|
PointerToSymbolTable DWORD
|
|
NumberOfSymbols DWORD
|
|
} /* winnt.h:6336:13 */
|
|
|
|
type ANON_OBJECT_HEADER_BIGOBJ = ANON_OBJECT_HEADER_BIGOBJ1 /* winnt.h:6350:7 */
|
|
|
|
type _IMAGE_SECTION_HEADER = struct {
|
|
Name [8]BYTE
|
|
Misc struct{ PhysicalAddress DWORD }
|
|
VirtualAddress DWORD
|
|
SizeOfRawData DWORD
|
|
PointerToRawData DWORD
|
|
PointerToRelocations DWORD
|
|
PointerToLinenumbers DWORD
|
|
NumberOfRelocations WORD
|
|
NumberOfLinenumbers WORD
|
|
Characteristics DWORD
|
|
} /* winnt.h:6354:13 */
|
|
|
|
type IMAGE_SECTION_HEADER = _IMAGE_SECTION_HEADER /* winnt.h:6368:7 */
|
|
type PIMAGE_SECTION_HEADER = uintptr /* winnt.h:6368:28 */
|
|
|
|
// *
|
|
// 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.
|
|
type _IMAGE_SYMBOL = struct {
|
|
N struct {
|
|
_ [0]uint32
|
|
ShortName [8]BYTE
|
|
}
|
|
Value DWORD
|
|
SectionNumber SHORT
|
|
Type WORD
|
|
StorageClass BYTE
|
|
NumberOfAuxSymbols BYTE
|
|
_ [2]byte
|
|
} /* winnt.h:6418:13 */
|
|
|
|
// *
|
|
// 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.
|
|
type IMAGE_SYMBOL = _IMAGE_SYMBOL /* winnt.h:6432:7 */
|
|
type PIMAGE_SYMBOL = uintptr /* winnt.h:6433:36 */
|
|
|
|
type _IMAGE_SYMBOL_EX = struct {
|
|
N struct {
|
|
_ [0]uint32
|
|
ShortName [8]BYTE
|
|
}
|
|
Value DWORD
|
|
SectionNumber LONG
|
|
Type WORD
|
|
StorageClass BYTE
|
|
NumberOfAuxSymbols BYTE
|
|
} /* winnt.h:6437:13 */
|
|
|
|
type IMAGE_SYMBOL_EX = _IMAGE_SYMBOL_EX /* winnt.h:6451:7 */
|
|
type PIMAGE_SYMBOL_EX = uintptr /* winnt.h:6451:33 */
|
|
|
|
// *
|
|
// 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.
|
|
type IMAGE_AUX_SYMBOL_TOKEN_DEF1 = struct {
|
|
bAuxType BYTE
|
|
bReserved BYTE
|
|
_ [2]byte
|
|
SymbolTableIndex DWORD
|
|
rgbReserved [12]BYTE
|
|
} /* winnt.h:6544:13 */
|
|
|
|
// *
|
|
// 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.
|
|
type IMAGE_AUX_SYMBOL_TOKEN_DEF = IMAGE_AUX_SYMBOL_TOKEN_DEF1 /* winnt.h:6549:7 */
|
|
type PIMAGE_AUX_SYMBOL_TOKEN_DEF = uintptr /* winnt.h:6549:44 */
|
|
// *
|
|
// 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.
|
|
|
|
type _IMAGE_AUX_SYMBOL = struct {
|
|
Sym struct {
|
|
TagIndex DWORD
|
|
Misc struct {
|
|
_ [0]uint32
|
|
LnSz struct {
|
|
Linenumber WORD
|
|
Size WORD
|
|
}
|
|
}
|
|
FcnAry struct {
|
|
Function struct {
|
|
PointerToLinenumber DWORD
|
|
PointerToNextFunction DWORD
|
|
}
|
|
}
|
|
TvIndex WORD
|
|
_ [2]byte
|
|
}
|
|
} /* winnt.h:6552:13 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type IMAGE_AUX_SYMBOL = _IMAGE_AUX_SYMBOL /* winnt.h:6589:7 */
|
|
type PIMAGE_AUX_SYMBOL = uintptr /* winnt.h:6589:34 */
|
|
|
|
type _IMAGE_AUX_SYMBOL_EX = struct {
|
|
Sym struct {
|
|
WeakDefaultSymIndex DWORD
|
|
WeakSearchType DWORD
|
|
rgbReserved [12]BYTE
|
|
}
|
|
_ [4]byte
|
|
} /* winnt.h:6591:13 */
|
|
|
|
type IMAGE_AUX_SYMBOL_EX = _IMAGE_AUX_SYMBOL_EX /* winnt.h:6619:7 */
|
|
type PIMAGE_AUX_SYMBOL_EX = uintptr /* winnt.h:6619:37 */
|
|
|
|
type IMAGE_AUX_SYMBOL_TYPE = uint32 /* winnt.h:6625:7 */
|
|
|
|
type _IMAGE_RELOCATION = struct {
|
|
u struct{ VirtualAddress DWORD }
|
|
SymbolTableIndex DWORD
|
|
Type WORD
|
|
_ [2]byte
|
|
} /* winnt.h:6639:13 */
|
|
|
|
type IMAGE_RELOCATION = _IMAGE_RELOCATION /* winnt.h:6646:7 */
|
|
type PIMAGE_RELOCATION = uintptr /* winnt.h:6647:40 */
|
|
|
|
type _IMAGE_LINENUMBER = struct {
|
|
Type struct{ SymbolTableIndex DWORD }
|
|
Linenumber WORD
|
|
_ [2]byte
|
|
} /* winnt.h:6977:13 */
|
|
|
|
type IMAGE_LINENUMBER = _IMAGE_LINENUMBER /* winnt.h:6983:7 */
|
|
type PIMAGE_LINENUMBER = uintptr /* winnt.h:6984:40 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type _IMAGE_BASE_RELOCATION = struct {
|
|
VirtualAddress DWORD
|
|
SizeOfBlock DWORD
|
|
} /* winnt.h:6990:13 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type IMAGE_BASE_RELOCATION = _IMAGE_BASE_RELOCATION /* winnt.h:6993:7 */
|
|
type PIMAGE_BASE_RELOCATION = uintptr /* winnt.h:6994:45 */
|
|
|
|
type _IMAGE_ARCHIVE_MEMBER_HEADER = struct {
|
|
Name [16]BYTE
|
|
Date [12]BYTE
|
|
UserID [6]BYTE
|
|
GroupID [6]BYTE
|
|
Mode [8]BYTE
|
|
Size [10]BYTE
|
|
EndHeader [2]BYTE
|
|
} /* winnt.h:7017:13 */
|
|
|
|
type IMAGE_ARCHIVE_MEMBER_HEADER = _IMAGE_ARCHIVE_MEMBER_HEADER /* winnt.h:7025:7 */
|
|
type PIMAGE_ARCHIVE_MEMBER_HEADER = uintptr /* winnt.h:7025:35 */
|
|
|
|
type _IMAGE_EXPORT_DIRECTORY = struct {
|
|
Characteristics DWORD
|
|
TimeDateStamp DWORD
|
|
MajorVersion WORD
|
|
MinorVersion WORD
|
|
Name DWORD
|
|
Base DWORD
|
|
NumberOfFunctions DWORD
|
|
NumberOfNames DWORD
|
|
AddressOfFunctions DWORD
|
|
AddressOfNames DWORD
|
|
AddressOfNameOrdinals DWORD
|
|
} /* winnt.h:7029:13 */
|
|
|
|
type IMAGE_EXPORT_DIRECTORY = _IMAGE_EXPORT_DIRECTORY /* winnt.h:7041:7 */
|
|
type PIMAGE_EXPORT_DIRECTORY = uintptr /* winnt.h:7041:30 */
|
|
|
|
type _IMAGE_IMPORT_BY_NAME = struct {
|
|
Hint WORD
|
|
Name [1]CHAR
|
|
_ [1]byte
|
|
} /* winnt.h:7043:13 */
|
|
|
|
type IMAGE_IMPORT_BY_NAME = _IMAGE_IMPORT_BY_NAME /* winnt.h:7046:7 */
|
|
type PIMAGE_IMPORT_BY_NAME = uintptr /* winnt.h:7046:28 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type _IMAGE_THUNK_DATA64 = struct {
|
|
u1 struct{ ForwarderString ULONGLONG }
|
|
} /* winnt.h:7050:13 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type IMAGE_THUNK_DATA64 = _IMAGE_THUNK_DATA64 /* winnt.h:7057:7 */
|
|
type PIMAGE_THUNK_DATA64 = uintptr /* winnt.h:7058:32 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type _IMAGE_THUNK_DATA32 = struct {
|
|
u1 struct{ ForwarderString DWORD }
|
|
} /* winnt.h:7062:13 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type IMAGE_THUNK_DATA32 = _IMAGE_THUNK_DATA32 /* winnt.h:7069:7 */
|
|
type PIMAGE_THUNK_DATA32 = uintptr /* winnt.h:7070:32 */
|
|
|
|
type PIMAGE_TLS_CALLBACK = uintptr /* winnt.h:7079:18 */
|
|
|
|
type _IMAGE_TLS_DIRECTORY64 = struct {
|
|
StartAddressOfRawData ULONGLONG
|
|
EndAddressOfRawData ULONGLONG
|
|
AddressOfIndex ULONGLONG
|
|
AddressOfCallBacks ULONGLONG
|
|
SizeOfZeroFill DWORD
|
|
Characteristics DWORD
|
|
} /* winnt.h:7081:13 */
|
|
|
|
type IMAGE_TLS_DIRECTORY64 = _IMAGE_TLS_DIRECTORY64 /* winnt.h:7088:7 */
|
|
type PIMAGE_TLS_DIRECTORY64 = uintptr /* winnt.h:7089:35 */
|
|
|
|
type _IMAGE_TLS_DIRECTORY32 = struct {
|
|
StartAddressOfRawData DWORD
|
|
EndAddressOfRawData DWORD
|
|
AddressOfIndex DWORD
|
|
AddressOfCallBacks DWORD
|
|
SizeOfZeroFill DWORD
|
|
Characteristics DWORD
|
|
} /* winnt.h:7091:13 */
|
|
|
|
type IMAGE_TLS_DIRECTORY32 = _IMAGE_TLS_DIRECTORY32 /* winnt.h:7098:7 */
|
|
type PIMAGE_TLS_DIRECTORY32 = uintptr /* winnt.h:7099:35 */
|
|
|
|
type IMAGE_THUNK_DATA = IMAGE_THUNK_DATA32 /* winnt.h:7112:32 */
|
|
type PIMAGE_THUNK_DATA = PIMAGE_THUNK_DATA32 /* winnt.h:7113:33 */
|
|
type IMAGE_TLS_DIRECTORY = IMAGE_TLS_DIRECTORY32 /* winnt.h:7115:35 */
|
|
type PIMAGE_TLS_DIRECTORY = PIMAGE_TLS_DIRECTORY32 /* winnt.h:7116:36 */
|
|
|
|
type _IMAGE_IMPORT_DESCRIPTOR = struct {
|
|
u struct{ Characteristics DWORD }
|
|
TimeDateStamp DWORD
|
|
ForwarderChain DWORD
|
|
Name DWORD
|
|
FirstThunk DWORD
|
|
} /* winnt.h:7119:13 */
|
|
|
|
type IMAGE_IMPORT_DESCRIPTOR = _IMAGE_IMPORT_DESCRIPTOR /* winnt.h:7129:7 */
|
|
type PIMAGE_IMPORT_DESCRIPTOR = uintptr /* winnt.h:7130:47 */
|
|
|
|
type _IMAGE_BOUND_IMPORT_DESCRIPTOR = struct {
|
|
TimeDateStamp DWORD
|
|
OffsetModuleName WORD
|
|
NumberOfModuleForwarderRefs WORD
|
|
} /* winnt.h:7132:13 */
|
|
|
|
type IMAGE_BOUND_IMPORT_DESCRIPTOR = _IMAGE_BOUND_IMPORT_DESCRIPTOR /* winnt.h:7136:7 */
|
|
type PIMAGE_BOUND_IMPORT_DESCRIPTOR = uintptr /* winnt.h:7136:37 */
|
|
|
|
type _IMAGE_BOUND_FORWARDER_REF = struct {
|
|
TimeDateStamp DWORD
|
|
OffsetModuleName WORD
|
|
Reserved WORD
|
|
} /* winnt.h:7138:13 */
|
|
|
|
type IMAGE_BOUND_FORWARDER_REF = _IMAGE_BOUND_FORWARDER_REF /* winnt.h:7142:7 */
|
|
type PIMAGE_BOUND_FORWARDER_REF = uintptr /* winnt.h:7142:33 */
|
|
|
|
type _IMAGE_DELAYLOAD_DESCRIPTOR = struct {
|
|
Attributes struct{ AllAttributes DWORD }
|
|
DllNameRVA DWORD
|
|
ModuleHandleRVA DWORD
|
|
ImportAddressTableRVA DWORD
|
|
ImportNameTableRVA DWORD
|
|
BoundImportAddressTableRVA DWORD
|
|
UnloadInformationTableRVA DWORD
|
|
TimeDateStamp DWORD
|
|
} /* winnt.h:7144:13 */
|
|
|
|
type IMAGE_DELAYLOAD_DESCRIPTOR = _IMAGE_DELAYLOAD_DESCRIPTOR /* winnt.h:7159:7 */
|
|
type PIMAGE_DELAYLOAD_DESCRIPTOR = uintptr /* winnt.h:7159:34 */
|
|
type PCIMAGE_DELAYLOAD_DESCRIPTOR = uintptr /* winnt.h:7160:46 */
|
|
|
|
type _IMAGE_RESOURCE_DIRECTORY = struct {
|
|
Characteristics DWORD
|
|
TimeDateStamp DWORD
|
|
MajorVersion WORD
|
|
MinorVersion WORD
|
|
NumberOfNamedEntries WORD
|
|
NumberOfIdEntries WORD
|
|
} /* winnt.h:7162:13 */
|
|
|
|
type IMAGE_RESOURCE_DIRECTORY = _IMAGE_RESOURCE_DIRECTORY /* winnt.h:7169:7 */
|
|
type PIMAGE_RESOURCE_DIRECTORY = uintptr /* winnt.h:7169:32 */
|
|
|
|
type _IMAGE_RESOURCE_DIRECTORY_ENTRY = struct {
|
|
u struct {
|
|
s struct {
|
|
_ [0]uint32
|
|
NameOffset uint32 /* DWORD NameOffset: 31, DWORD NameIsString: 1 */
|
|
}
|
|
}
|
|
u2 struct{ OffsetToData DWORD }
|
|
} /* winnt.h:7174:13 */
|
|
|
|
type IMAGE_RESOURCE_DIRECTORY_ENTRY = _IMAGE_RESOURCE_DIRECTORY_ENTRY /* winnt.h:7190:7 */
|
|
type PIMAGE_RESOURCE_DIRECTORY_ENTRY = uintptr /* winnt.h:7190:38 */
|
|
|
|
type _IMAGE_RESOURCE_DIRECTORY_STRING = struct {
|
|
Length WORD
|
|
NameString [1]CHAR
|
|
_ [1]byte
|
|
} /* winnt.h:7192:13 */
|
|
|
|
type IMAGE_RESOURCE_DIRECTORY_STRING = _IMAGE_RESOURCE_DIRECTORY_STRING /* winnt.h:7195:7 */
|
|
type PIMAGE_RESOURCE_DIRECTORY_STRING = uintptr /* winnt.h:7195:39 */
|
|
|
|
type _IMAGE_RESOURCE_DIR_STRING_U = struct {
|
|
Length WORD
|
|
NameString [1]WCHAR
|
|
} /* winnt.h:7197:13 */
|
|
|
|
type IMAGE_RESOURCE_DIR_STRING_U = _IMAGE_RESOURCE_DIR_STRING_U /* winnt.h:7200:7 */
|
|
type PIMAGE_RESOURCE_DIR_STRING_U = uintptr /* winnt.h:7200:35 */
|
|
|
|
type _IMAGE_RESOURCE_DATA_ENTRY = struct {
|
|
OffsetToData DWORD
|
|
Size DWORD
|
|
CodePage DWORD
|
|
Reserved DWORD
|
|
} /* winnt.h:7202:13 */
|
|
|
|
type IMAGE_RESOURCE_DATA_ENTRY = _IMAGE_RESOURCE_DATA_ENTRY /* winnt.h:7207:7 */
|
|
type PIMAGE_RESOURCE_DATA_ENTRY = uintptr /* winnt.h:7207:33 */
|
|
|
|
type IMAGE_LOAD_CONFIG_DIRECTORY32 = struct {
|
|
Size DWORD
|
|
TimeDateStamp DWORD
|
|
MajorVersion WORD
|
|
MinorVersion WORD
|
|
GlobalFlagsClear DWORD
|
|
GlobalFlagsSet DWORD
|
|
CriticalSectionDefaultTimeout DWORD
|
|
DeCommitFreeBlockThreshold DWORD
|
|
DeCommitTotalFreeThreshold DWORD
|
|
LockPrefixTable DWORD
|
|
MaximumAllocationSize DWORD
|
|
VirtualMemoryThreshold DWORD
|
|
ProcessHeapFlags DWORD
|
|
ProcessAffinityMask DWORD
|
|
CSDVersion WORD
|
|
Reserved1 WORD
|
|
EditList DWORD
|
|
SecurityCookie DWORD
|
|
SEHandlerTable DWORD
|
|
SEHandlerCount DWORD
|
|
} /* winnt.h:7230:7 */
|
|
type PIMAGE_LOAD_CONFIG_DIRECTORY32 = uintptr /* winnt.h:7230:37 */
|
|
|
|
type IMAGE_LOAD_CONFIG_DIRECTORY64 = struct {
|
|
Size DWORD
|
|
TimeDateStamp DWORD
|
|
MajorVersion WORD
|
|
MinorVersion WORD
|
|
GlobalFlagsClear DWORD
|
|
GlobalFlagsSet DWORD
|
|
CriticalSectionDefaultTimeout DWORD
|
|
DeCommitFreeBlockThreshold ULONGLONG
|
|
DeCommitTotalFreeThreshold ULONGLONG
|
|
LockPrefixTable ULONGLONG
|
|
MaximumAllocationSize ULONGLONG
|
|
VirtualMemoryThreshold ULONGLONG
|
|
ProcessAffinityMask ULONGLONG
|
|
ProcessHeapFlags DWORD
|
|
CSDVersion WORD
|
|
Reserved1 WORD
|
|
EditList ULONGLONG
|
|
SecurityCookie ULONGLONG
|
|
SEHandlerTable ULONGLONG
|
|
SEHandlerCount ULONGLONG
|
|
} /* winnt.h:7253:7 */
|
|
type PIMAGE_LOAD_CONFIG_DIRECTORY64 = uintptr /* winnt.h:7253:37 */
|
|
|
|
type IMAGE_LOAD_CONFIG_DIRECTORY = IMAGE_LOAD_CONFIG_DIRECTORY32 /* winnt.h:7259:43 */
|
|
type PIMAGE_LOAD_CONFIG_DIRECTORY = PIMAGE_LOAD_CONFIG_DIRECTORY32 /* winnt.h:7260:44 */
|
|
|
|
type _IMAGE_CE_RUNTIME_FUNCTION_ENTRY = struct {
|
|
FuncStart DWORD
|
|
PrologLen uint32 /* DWORD PrologLen: 8, DWORD FuncLen: 22, DWORD ThirtyTwoBit: 1, DWORD ExceptionFlag: 1 */
|
|
} /* winnt.h:7263:13 */
|
|
|
|
type IMAGE_CE_RUNTIME_FUNCTION_ENTRY = _IMAGE_CE_RUNTIME_FUNCTION_ENTRY /* winnt.h:7269:7 */
|
|
type PIMAGE_CE_RUNTIME_FUNCTION_ENTRY = uintptr /* winnt.h:7269:39 */
|
|
|
|
type _IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY = struct {
|
|
BeginAddress ULONGLONG
|
|
EndAddress ULONGLONG
|
|
ExceptionHandler ULONGLONG
|
|
HandlerData ULONGLONG
|
|
PrologEndAddress ULONGLONG
|
|
} /* winnt.h:7271:13 */
|
|
|
|
type IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY = _IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY /* winnt.h:7277:7 */
|
|
type PIMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY = uintptr /* winnt.h:7277:44 */
|
|
|
|
type _IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY = struct {
|
|
BeginAddress DWORD
|
|
EndAddress DWORD
|
|
ExceptionHandler DWORD
|
|
HandlerData DWORD
|
|
PrologEndAddress DWORD
|
|
} /* winnt.h:7279:13 */
|
|
|
|
type IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY = _IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY /* winnt.h:7285:7 */
|
|
type PIMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY = uintptr /* winnt.h:7285:42 */
|
|
|
|
type _IMAGE_ARM_RUNTIME_FUNCTION_ENTRY = struct {
|
|
BeginAddress DWORD
|
|
u struct{ UnwindData DWORD }
|
|
} /* winnt.h:7287:13 */
|
|
|
|
type IMAGE_ARM_RUNTIME_FUNCTION_ENTRY = _IMAGE_ARM_RUNTIME_FUNCTION_ENTRY /* winnt.h:7303:7 */
|
|
type PIMAGE_ARM_RUNTIME_FUNCTION_ENTRY = uintptr /* winnt.h:7303:40 */
|
|
|
|
type _IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY = struct {
|
|
BeginAddress DWORD
|
|
u struct{ UnwindData DWORD }
|
|
} /* winnt.h:7305:13 */
|
|
|
|
type IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY = _IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY /* winnt.h:7319:7 */
|
|
type PIMAGE_ARM64_RUNTIME_FUNCTION_ENTRY = uintptr /* winnt.h:7319:42 */
|
|
|
|
type _IMAGE_RUNTIME_FUNCTION_ENTRY1 = struct {
|
|
BeginAddress DWORD
|
|
EndAddress DWORD
|
|
u struct{ UnwindInfoAddress DWORD }
|
|
} /* winnt.h:7321:13 */
|
|
|
|
type _IMAGE_RUNTIME_FUNCTION_ENTRY = _IMAGE_RUNTIME_FUNCTION_ENTRY1 /* winnt.h:7328:7 */
|
|
type _PIMAGE_RUNTIME_FUNCTION_ENTRY = uintptr /* winnt.h:7328:37 */
|
|
|
|
type IMAGE_IA64_RUNTIME_FUNCTION_ENTRY = _IMAGE_RUNTIME_FUNCTION_ENTRY /* winnt.h:7330:43 */
|
|
type PIMAGE_IA64_RUNTIME_FUNCTION_ENTRY = _PIMAGE_RUNTIME_FUNCTION_ENTRY /* winnt.h:7331:44 */
|
|
|
|
type IMAGE_RUNTIME_FUNCTION_ENTRY = _IMAGE_RUNTIME_FUNCTION_ENTRY /* winnt.h:7345:43 */
|
|
type PIMAGE_RUNTIME_FUNCTION_ENTRY = _PIMAGE_RUNTIME_FUNCTION_ENTRY /* winnt.h:7346:44 */
|
|
|
|
type _IMAGE_DEBUG_DIRECTORY = struct {
|
|
Characteristics DWORD
|
|
TimeDateStamp DWORD
|
|
MajorVersion WORD
|
|
MinorVersion WORD
|
|
Type DWORD
|
|
SizeOfData DWORD
|
|
AddressOfRawData DWORD
|
|
PointerToRawData DWORD
|
|
} /* winnt.h:7349:13 */
|
|
|
|
type IMAGE_DEBUG_DIRECTORY = _IMAGE_DEBUG_DIRECTORY /* winnt.h:7358:7 */
|
|
type PIMAGE_DEBUG_DIRECTORY = uintptr /* winnt.h:7358:29 */
|
|
|
|
type _IMAGE_COFF_SYMBOLS_HEADER = struct {
|
|
NumberOfSymbols DWORD
|
|
LvaToFirstSymbol DWORD
|
|
NumberOfLinenumbers DWORD
|
|
LvaToFirstLinenumber DWORD
|
|
RvaToFirstByteOfCode DWORD
|
|
RvaToLastByteOfCode DWORD
|
|
RvaToFirstByteOfData DWORD
|
|
RvaToLastByteOfData DWORD
|
|
} /* winnt.h:7373:13 */
|
|
|
|
type IMAGE_COFF_SYMBOLS_HEADER = _IMAGE_COFF_SYMBOLS_HEADER /* winnt.h:7382:7 */
|
|
type PIMAGE_COFF_SYMBOLS_HEADER = uintptr /* winnt.h:7382:33 */
|
|
|
|
type _FPO_DATA = struct {
|
|
ulOffStart DWORD
|
|
cbProcSize DWORD
|
|
cdwLocals DWORD
|
|
cdwParams WORD
|
|
cbProlog uint16 /* WORD cbProlog: 8, WORD cbRegs: 3, WORD fHasSEH: 1, WORD fUseBP: 1, WORD reserved: 1, WORD cbFrame: 2 */
|
|
} /* winnt.h:7389:13 */
|
|
|
|
type FPO_DATA = _FPO_DATA /* winnt.h:7400:7 */
|
|
type PFPO_DATA = uintptr /* winnt.h:7400:16 */
|
|
|
|
type _IMAGE_DEBUG_MISC = struct {
|
|
DataType DWORD
|
|
Length DWORD
|
|
Unicode BOOLEAN
|
|
Reserved [3]BYTE
|
|
Data [1]BYTE
|
|
_ [3]byte
|
|
} /* winnt.h:7405:13 */
|
|
|
|
type IMAGE_DEBUG_MISC = _IMAGE_DEBUG_MISC /* winnt.h:7411:7 */
|
|
type PIMAGE_DEBUG_MISC = uintptr /* winnt.h:7411:24 */
|
|
|
|
type _IMAGE_FUNCTION_ENTRY = struct {
|
|
StartingAddress DWORD
|
|
EndingAddress DWORD
|
|
EndOfPrologue DWORD
|
|
} /* winnt.h:7413:13 */
|
|
|
|
type IMAGE_FUNCTION_ENTRY = _IMAGE_FUNCTION_ENTRY /* winnt.h:7417:7 */
|
|
type PIMAGE_FUNCTION_ENTRY = uintptr /* winnt.h:7417:28 */
|
|
|
|
type _IMAGE_FUNCTION_ENTRY64 = struct {
|
|
StartingAddress ULONGLONG
|
|
EndingAddress ULONGLONG
|
|
u struct{ EndOfPrologue ULONGLONG }
|
|
} /* winnt.h:7419:13 */
|
|
|
|
type IMAGE_FUNCTION_ENTRY64 = _IMAGE_FUNCTION_ENTRY64 /* winnt.h:7426:7 */
|
|
type PIMAGE_FUNCTION_ENTRY64 = uintptr /* winnt.h:7426:30 */
|
|
|
|
type _IMAGE_SEPARATE_DEBUG_HEADER = struct {
|
|
Signature WORD
|
|
Flags WORD
|
|
Machine WORD
|
|
Characteristics WORD
|
|
TimeDateStamp DWORD
|
|
CheckSum DWORD
|
|
ImageBase DWORD
|
|
SizeOfImage DWORD
|
|
NumberOfSections DWORD
|
|
ExportedNamesSize DWORD
|
|
DebugDirectorySize DWORD
|
|
SectionAlignment DWORD
|
|
Reserved [2]DWORD
|
|
} /* winnt.h:7428:13 */
|
|
|
|
type IMAGE_SEPARATE_DEBUG_HEADER = _IMAGE_SEPARATE_DEBUG_HEADER /* winnt.h:7442:7 */
|
|
type PIMAGE_SEPARATE_DEBUG_HEADER = uintptr /* winnt.h:7442:35 */
|
|
|
|
type _NON_PAGED_DEBUG_INFO = struct {
|
|
Signature WORD
|
|
Flags WORD
|
|
Size DWORD
|
|
Machine WORD
|
|
Characteristics WORD
|
|
TimeDateStamp DWORD
|
|
CheckSum DWORD
|
|
SizeOfImage DWORD
|
|
ImageBase ULONGLONG
|
|
} /* winnt.h:7444:13 */
|
|
|
|
type NON_PAGED_DEBUG_INFO = _NON_PAGED_DEBUG_INFO /* winnt.h:7454:7 */
|
|
type PNON_PAGED_DEBUG_INFO = uintptr /* winnt.h:7454:28 */
|
|
|
|
type _ImageArchitectureHeader = struct {
|
|
AmaskValue uint32 /* unsigned AmaskValue: 1, int Adummy1: 7, unsigned AmaskShift: 8, int Adummy2: 16 */
|
|
FirstEntryRVA DWORD
|
|
} /* winnt.h:7462:13 */
|
|
|
|
type IMAGE_ARCHITECTURE_HEADER = _ImageArchitectureHeader /* winnt.h:7468:7 */
|
|
type PIMAGE_ARCHITECTURE_HEADER = uintptr /* winnt.h:7468:33 */
|
|
|
|
type _ImageArchitectureEntry = struct {
|
|
FixupInstRVA DWORD
|
|
NewInst DWORD
|
|
} /* winnt.h:7470:13 */
|
|
|
|
type IMAGE_ARCHITECTURE_ENTRY = _ImageArchitectureEntry /* winnt.h:7473:7 */
|
|
type PIMAGE_ARCHITECTURE_ENTRY = uintptr /* winnt.h:7473:32 */
|
|
// *
|
|
// 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.
|
|
|
|
type IMPORT_OBJECT_HEADER1 = struct {
|
|
Sig1 WORD
|
|
Sig2 WORD
|
|
Version WORD
|
|
Machine WORD
|
|
TimeDateStamp DWORD
|
|
SizeOfData DWORD
|
|
__16 struct{ Ordinal WORD }
|
|
Type uint16 /* WORD Type: 2, WORD NameType: 3, WORD Reserved: 11 */
|
|
} /* winnt.h:7478:13 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type IMPORT_OBJECT_HEADER = IMPORT_OBJECT_HEADER1 /* winnt.h:7492:7 */
|
|
|
|
type IMPORT_OBJECT_TYPE = uint32 /* winnt.h:7496:7 */
|
|
|
|
type IMPORT_OBJECT_NAME_TYPE = uint32 /* winnt.h:7500:7 */
|
|
|
|
type ReplacesCorHdrNumericDefines = uint32 /* winnt.h:7511:7 */
|
|
|
|
type IMAGE_COR20_HEADER1 = struct {
|
|
cb DWORD
|
|
MajorRuntimeVersion WORD
|
|
MinorRuntimeVersion WORD
|
|
MetaData IMAGE_DATA_DIRECTORY
|
|
Flags DWORD
|
|
u struct{ EntryPointToken DWORD }
|
|
Resources IMAGE_DATA_DIRECTORY
|
|
StrongNameSignature IMAGE_DATA_DIRECTORY
|
|
CodeManagerTable IMAGE_DATA_DIRECTORY
|
|
VTableFixups IMAGE_DATA_DIRECTORY
|
|
ExportAddressTableJumps IMAGE_DATA_DIRECTORY
|
|
ManagedNativeHeader IMAGE_DATA_DIRECTORY
|
|
} /* winnt.h:7513:13 */
|
|
|
|
type IMAGE_COR20_HEADER = IMAGE_COR20_HEADER1 /* winnt.h:7529:7 */
|
|
type PIMAGE_COR20_HEADER = uintptr /* winnt.h:7529:26 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type SLIST_ENTRY = _SINGLE_LIST_ENTRY /* winnt.h:7634:39 */
|
|
type PSLIST_ENTRY = uintptr /* winnt.h:7634:51 */
|
|
|
|
type _SLIST_HEADER = struct{ Alignment ULONGLONG } /* winnt.h:7636:13 */
|
|
|
|
type SLIST_HEADER = _SLIST_HEADER /* winnt.h:7643:7 */
|
|
type PSLIST_HEADER = uintptr /* winnt.h:7643:20 */
|
|
|
|
type _RTL_RUN_ONCE = struct{ Ptr PVOID } /* winnt.h:7661:9 */
|
|
|
|
type RTL_RUN_ONCE = _RTL_RUN_ONCE /* winnt.h:7661:45 */
|
|
type PRTL_RUN_ONCE = uintptr /* winnt.h:7661:59 */
|
|
type PRTL_RUN_ONCE_INIT_FN = uintptr /* winnt.h:7662:15 */
|
|
|
|
type _RTL_BARRIER = struct {
|
|
Reserved1 DWORD
|
|
Reserved2 DWORD
|
|
Reserved3 [2]ULONG_PTR
|
|
Reserved4 DWORD
|
|
Reserved5 DWORD
|
|
} /* winnt.h:7671:11 */
|
|
|
|
type RTL_BARRIER = _RTL_BARRIER /* winnt.h:7677:5 */
|
|
type PRTL_BARRIER = uintptr /* winnt.h:7677:17 */
|
|
|
|
type _MESSAGE_RESOURCE_ENTRY = struct {
|
|
Length WORD
|
|
Flags WORD
|
|
Text [1]BYTE
|
|
_ [1]byte
|
|
} /* winnt.h:7780:13 */
|
|
|
|
type MESSAGE_RESOURCE_ENTRY = _MESSAGE_RESOURCE_ENTRY /* winnt.h:7784:7 */
|
|
type PMESSAGE_RESOURCE_ENTRY = uintptr /* winnt.h:7784:30 */
|
|
|
|
type _MESSAGE_RESOURCE_BLOCK = struct {
|
|
LowId DWORD
|
|
HighId DWORD
|
|
OffsetToEntries DWORD
|
|
} /* winnt.h:7802:13 */
|
|
|
|
type MESSAGE_RESOURCE_BLOCK = _MESSAGE_RESOURCE_BLOCK /* winnt.h:7806:7 */
|
|
type PMESSAGE_RESOURCE_BLOCK = uintptr /* winnt.h:7806:30 */
|
|
|
|
type _MESSAGE_RESOURCE_DATA = struct {
|
|
NumberOfBlocks DWORD
|
|
Blocks [1]MESSAGE_RESOURCE_BLOCK
|
|
} /* winnt.h:7808:13 */
|
|
|
|
type MESSAGE_RESOURCE_DATA = _MESSAGE_RESOURCE_DATA /* winnt.h:7811:7 */
|
|
type PMESSAGE_RESOURCE_DATA = uintptr /* winnt.h:7811:29 */
|
|
|
|
type _OSVERSIONINFOA = struct {
|
|
dwOSVersionInfoSize DWORD
|
|
dwMajorVersion DWORD
|
|
dwMinorVersion DWORD
|
|
dwBuildNumber DWORD
|
|
dwPlatformId DWORD
|
|
szCSDVersion [128]CHAR
|
|
} /* winnt.h:7813:13 */
|
|
|
|
type OSVERSIONINFOA = _OSVERSIONINFOA /* winnt.h:7820:7 */
|
|
type POSVERSIONINFOA = uintptr /* winnt.h:7820:22 */
|
|
type LPOSVERSIONINFOA = uintptr /* winnt.h:7820:39 */
|
|
|
|
type _OSVERSIONINFOW = struct {
|
|
dwOSVersionInfoSize DWORD
|
|
dwMajorVersion DWORD
|
|
dwMinorVersion DWORD
|
|
dwBuildNumber DWORD
|
|
dwPlatformId DWORD
|
|
szCSDVersion [128]WCHAR
|
|
} /* winnt.h:7822:13 */
|
|
|
|
type OSVERSIONINFOW = _OSVERSIONINFOW /* winnt.h:7829:7 */
|
|
type POSVERSIONINFOW = uintptr /* winnt.h:7829:22 */
|
|
type LPOSVERSIONINFOW = uintptr /* winnt.h:7829:39 */
|
|
type RTL_OSVERSIONINFOW = _OSVERSIONINFOW /* winnt.h:7829:57 */
|
|
type PRTL_OSVERSIONINFOW = uintptr /* winnt.h:7829:76 */
|
|
|
|
type OSVERSIONINFO = OSVERSIONINFOA /* winnt.h:7831:5 */
|
|
type POSVERSIONINFO = POSVERSIONINFOA /* winnt.h:7832:5 */
|
|
type LPOSVERSIONINFO = LPOSVERSIONINFOA /* winnt.h:7833:5 */
|
|
|
|
type _OSVERSIONINFOEXA = struct {
|
|
dwOSVersionInfoSize DWORD
|
|
dwMajorVersion DWORD
|
|
dwMinorVersion DWORD
|
|
dwBuildNumber DWORD
|
|
dwPlatformId DWORD
|
|
szCSDVersion [128]CHAR
|
|
wServicePackMajor WORD
|
|
wServicePackMinor WORD
|
|
wSuiteMask WORD
|
|
wProductType BYTE
|
|
wReserved BYTE
|
|
} /* winnt.h:7835:13 */
|
|
|
|
type OSVERSIONINFOEXA = _OSVERSIONINFOEXA /* winnt.h:7847:7 */
|
|
type POSVERSIONINFOEXA = uintptr /* winnt.h:7847:24 */
|
|
type LPOSVERSIONINFOEXA = uintptr /* winnt.h:7847:43 */
|
|
|
|
type _OSVERSIONINFOEXW = struct {
|
|
dwOSVersionInfoSize DWORD
|
|
dwMajorVersion DWORD
|
|
dwMinorVersion DWORD
|
|
dwBuildNumber DWORD
|
|
dwPlatformId DWORD
|
|
szCSDVersion [128]WCHAR
|
|
wServicePackMajor WORD
|
|
wServicePackMinor WORD
|
|
wSuiteMask WORD
|
|
wProductType BYTE
|
|
wReserved BYTE
|
|
} /* winnt.h:7849:13 */
|
|
|
|
type OSVERSIONINFOEXW = _OSVERSIONINFOEXW /* winnt.h:7861:7 */
|
|
type POSVERSIONINFOEXW = uintptr /* winnt.h:7861:24 */
|
|
type LPOSVERSIONINFOEXW = uintptr /* winnt.h:7861:43 */
|
|
type RTL_OSVERSIONINFOEXW = _OSVERSIONINFOEXW /* winnt.h:7861:63 */
|
|
type PRTL_OSVERSIONINFOEXW = uintptr /* winnt.h:7861:84 */
|
|
|
|
type OSVERSIONINFOEX = OSVERSIONINFOEXA /* winnt.h:7863:5 */
|
|
type POSVERSIONINFOEX = POSVERSIONINFOEXA /* winnt.h:7864:5 */
|
|
type LPOSVERSIONINFOEX = LPOSVERSIONINFOEXA /* winnt.h:7865:5 */
|
|
|
|
type RTL_UMS_THREAD_INFO_CLASS = uint32 /* winnt.h:7918:7 */
|
|
type PRTL_UMS_THREAD_INFO_CLASS = uintptr /* winnt.h:7918:33 */
|
|
|
|
type RTL_UMS_SCHEDULER_REASON = uint32 /* winnt.h:7924:7 */
|
|
type PRTL_UMS_SCHEDULER_REASON = uintptr /* winnt.h:7924:32 */
|
|
type PRTL_UMS_SCHEDULER_ENTRY_POINT = uintptr /* winnt.h:7927:43 */
|
|
|
|
type _RTL_CRITICAL_SECTION_DEBUG = struct {
|
|
Type WORD
|
|
CreatorBackTraceIndex WORD
|
|
CriticalSection uintptr
|
|
ProcessLocksList LIST_ENTRY
|
|
EntryCount DWORD
|
|
ContentionCount DWORD
|
|
Flags DWORD
|
|
CreatorBackTraceIndexHigh WORD
|
|
SpareWORD WORD
|
|
} /* winnt.h:7947:13 */
|
|
|
|
type _RTL_CRITICAL_SECTION = struct {
|
|
DebugInfo PRTL_CRITICAL_SECTION_DEBUG
|
|
LockCount LONG
|
|
RecursionCount LONG
|
|
OwningThread HANDLE
|
|
LockSemaphore HANDLE
|
|
SpinCount ULONG_PTR
|
|
} /* winnt.h:7947:13 */
|
|
|
|
type RTL_CRITICAL_SECTION_DEBUG = _RTL_CRITICAL_SECTION_DEBUG /* winnt.h:7957:7 */
|
|
type PRTL_CRITICAL_SECTION_DEBUG = uintptr /* winnt.h:7957:34 */
|
|
type RTL_RESOURCE_DEBUG = _RTL_CRITICAL_SECTION_DEBUG /* winnt.h:7957:63 */
|
|
type PRTL_RESOURCE_DEBUG = uintptr /* winnt.h:7957:82 */
|
|
|
|
// *
|
|
// 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.
|
|
type RTL_CRITICAL_SECTION = _RTL_CRITICAL_SECTION /* winnt.h:7981:7 */
|
|
type PRTL_CRITICAL_SECTION = uintptr /* winnt.h:7981:28 */
|
|
// *
|
|
// 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.
|
|
|
|
type _RTL_SRWLOCK = struct{ Ptr PVOID } /* winnt.h:7984:13 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type RTL_SRWLOCK = _RTL_SRWLOCK /* winnt.h:7984:48 */
|
|
type PRTL_SRWLOCK = uintptr /* winnt.h:7984:60 */
|
|
type _RTL_CONDITION_VARIABLE = struct{ Ptr PVOID } /* winnt.h:7985:13 */
|
|
|
|
type RTL_CONDITION_VARIABLE = _RTL_CONDITION_VARIABLE /* winnt.h:7985:59 */
|
|
type PRTL_CONDITION_VARIABLE = uintptr /* winnt.h:7985:82 */
|
|
|
|
type PAPCFUNC = uintptr /* winnt.h:7992:18 */
|
|
type PVECTORED_EXCEPTION_HANDLER = uintptr /* winnt.h:7993:18 */
|
|
|
|
type HEAP_INFORMATION_CLASS = uint32 /* winnt.h:7998:7 */
|
|
|
|
type WORKERCALLBACKFUNC = uintptr /* winnt.h:8000:18 */
|
|
type APC_CALLBACK_FUNCTION = uintptr /* winnt.h:8001:18 */
|
|
type WAITORTIMERCALLBACKFUNC = uintptr /* winnt.h:8002:18 */
|
|
type WAITORTIMERCALLBACK = WAITORTIMERCALLBACKFUNC /* winnt.h:8003:37 */
|
|
type PFLS_CALLBACK_FUNCTION = uintptr /* winnt.h:8004:18 */
|
|
type PSECURE_MEMORY_CACHE_CALLBACK = uintptr /* winnt.h:8005:21 */
|
|
|
|
type ACTIVATION_CONTEXT_INFO_CLASS = uint32 /* winnt.h:8034:7 */
|
|
|
|
type ACTCTX_REQUESTED_RUN_LEVEL = uint32 /* winnt.h:8042:7 */
|
|
|
|
type ACTCTX_COMPATIBILITY_ELEMENT_TYPE = uint32 /* winnt.h:8048:7 */
|
|
|
|
type _ACTIVATION_CONTEXT_QUERY_INDEX = struct {
|
|
ulAssemblyIndex DWORD
|
|
ulFileIndexInAssembly DWORD
|
|
} /* winnt.h:8050:13 */
|
|
|
|
type ACTIVATION_CONTEXT_QUERY_INDEX = _ACTIVATION_CONTEXT_QUERY_INDEX /* winnt.h:8053:7 */
|
|
type PACTIVATION_CONTEXT_QUERY_INDEX = uintptr /* winnt.h:8053:38 */
|
|
|
|
type _ASSEMBLY_FILE_DETAILED_INFORMATION = struct {
|
|
ulFlags DWORD
|
|
ulFilenameLength DWORD
|
|
ulPathLength DWORD
|
|
lpFileName PCWSTR
|
|
lpFilePath PCWSTR
|
|
} /* winnt.h:8055:13 */
|
|
|
|
type ASSEMBLY_FILE_DETAILED_INFORMATION = _ASSEMBLY_FILE_DETAILED_INFORMATION /* winnt.h:8061:7 */
|
|
type PASSEMBLY_FILE_DETAILED_INFORMATION = uintptr /* winnt.h:8061:42 */
|
|
|
|
type _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION = struct {
|
|
ulFlags DWORD
|
|
ulEncodedAssemblyIdentityLength DWORD
|
|
ulManifestPathType DWORD
|
|
ulManifestPathLength DWORD
|
|
liManifestLastWriteTime LARGE_INTEGER
|
|
ulPolicyPathType DWORD
|
|
ulPolicyPathLength DWORD
|
|
liPolicyLastWriteTime LARGE_INTEGER
|
|
ulMetadataSatelliteRosterIndex DWORD
|
|
ulManifestVersionMajor DWORD
|
|
ulManifestVersionMinor DWORD
|
|
ulPolicyVersionMajor DWORD
|
|
ulPolicyVersionMinor DWORD
|
|
ulAssemblyDirectoryNameLength DWORD
|
|
lpAssemblyEncodedAssemblyIdentity PCWSTR
|
|
lpAssemblyManifestPath PCWSTR
|
|
lpAssemblyPolicyPath PCWSTR
|
|
lpAssemblyDirectoryName PCWSTR
|
|
ulFileCount DWORD
|
|
_ [4]byte
|
|
} /* winnt.h:8063:13 */
|
|
|
|
type ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION = _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION /* winnt.h:8083:7 */
|
|
type PACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION = uintptr /* winnt.h:8083:56 */
|
|
|
|
type _ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION = struct {
|
|
ulFlags DWORD
|
|
RunLevel ACTCTX_REQUESTED_RUN_LEVEL
|
|
UiAccess DWORD
|
|
} /* winnt.h:8085:13 */
|
|
|
|
type ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION = _ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION /* winnt.h:8089:7 */
|
|
type PACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION = uintptr /* winnt.h:8089:48 */
|
|
|
|
type _COMPATIBILITY_CONTEXT_ELEMENT = struct {
|
|
Id GUID
|
|
Type ACTCTX_COMPATIBILITY_ELEMENT_TYPE
|
|
} /* winnt.h:8091:13 */
|
|
|
|
type COMPATIBILITY_CONTEXT_ELEMENT = _COMPATIBILITY_CONTEXT_ELEMENT /* winnt.h:8094:7 */
|
|
type PCOMPATIBILITY_CONTEXT_ELEMENT = uintptr /* winnt.h:8094:37 */
|
|
|
|
//Vista: {e2011457-1546-43c5-a5fe-008deee3d3f0}
|
|
//Seven: {35138b9a-5d96-4fbd-8e2d-a2440225f93a}
|
|
type _ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION = struct {
|
|
_ [0]uint32
|
|
ElementCount DWORD
|
|
} /* winnt.h:8098:13 */
|
|
|
|
//Vista: {e2011457-1546-43c5-a5fe-008deee3d3f0}
|
|
//Seven: {35138b9a-5d96-4fbd-8e2d-a2440225f93a}
|
|
type ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION = _ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION /* winnt.h:8101:7 */
|
|
type PACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION = uintptr /* winnt.h:8101:52 */
|
|
|
|
type _SUPPORTED_OS_INFO = struct {
|
|
OsCount WORD
|
|
MitigationExist WORD
|
|
OsList [4]WORD
|
|
} /* winnt.h:8105:13 */
|
|
|
|
type SUPPORTED_OS_INFO = _SUPPORTED_OS_INFO /* winnt.h:8109:7 */
|
|
type PSUPPORTED_OS_INFO = uintptr /* winnt.h:8109:25 */
|
|
|
|
type _ACTIVATION_CONTEXT_DETAILED_INFORMATION = struct {
|
|
dwFlags DWORD
|
|
ulFormatVersion DWORD
|
|
ulAssemblyCount DWORD
|
|
ulRootManifestPathType DWORD
|
|
ulRootManifestPathChars DWORD
|
|
ulRootConfigurationPathType DWORD
|
|
ulRootConfigurationPathChars DWORD
|
|
ulAppDirPathType DWORD
|
|
ulAppDirPathChars DWORD
|
|
lpRootManifestPath PCWSTR
|
|
lpRootConfigurationPath PCWSTR
|
|
lpAppDirPath PCWSTR
|
|
} /* winnt.h:8111:13 */
|
|
|
|
type ACTIVATION_CONTEXT_DETAILED_INFORMATION = _ACTIVATION_CONTEXT_DETAILED_INFORMATION /* winnt.h:8124:7 */
|
|
type PACTIVATION_CONTEXT_DETAILED_INFORMATION = uintptr /* winnt.h:8124:47 */
|
|
|
|
type PCACTIVATION_CONTEXT_QUERY_INDEX = uintptr /* winnt.h:8126:58 */
|
|
type PCASSEMBLY_FILE_DETAILED_INFORMATION = uintptr /* winnt.h:8127:54 */
|
|
type PCACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION = uintptr /* winnt.h:8128:76 */
|
|
type PCACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION = uintptr /* winnt.h:8129:68 */
|
|
type PCCOMPATIBILITY_CONTEXT_ELEMENT = uintptr /* winnt.h:8130:57 */
|
|
type PCACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION = uintptr /* winnt.h:8131:72 */
|
|
type PCACTIVATION_CONTEXT_DETAILED_INFORMATION = uintptr /* winnt.h:8132:67 */
|
|
|
|
type RTL_VERIFIER_DLL_LOAD_CALLBACK = uintptr /* winnt.h:8149:18 */
|
|
type RTL_VERIFIER_DLL_UNLOAD_CALLBACK = uintptr /* winnt.h:8150:18 */
|
|
type RTL_VERIFIER_NTDLLHEAPFREE_CALLBACK = uintptr /* winnt.h:8151:18 */
|
|
|
|
type _RTL_VERIFIER_THUNK_DESCRIPTOR = struct {
|
|
ThunkName PCHAR
|
|
ThunkOldAddress PVOID
|
|
ThunkNewAddress PVOID
|
|
} /* winnt.h:8153:13 */
|
|
|
|
type RTL_VERIFIER_THUNK_DESCRIPTOR = _RTL_VERIFIER_THUNK_DESCRIPTOR /* winnt.h:8157:7 */
|
|
type PRTL_VERIFIER_THUNK_DESCRIPTOR = uintptr /* winnt.h:8157:37 */
|
|
|
|
type _RTL_VERIFIER_DLL_DESCRIPTOR = struct {
|
|
DllName PWCHAR
|
|
DllFlags DWORD
|
|
DllAddress PVOID
|
|
DllThunks PRTL_VERIFIER_THUNK_DESCRIPTOR
|
|
} /* winnt.h:8159:13 */
|
|
|
|
type RTL_VERIFIER_DLL_DESCRIPTOR = _RTL_VERIFIER_DLL_DESCRIPTOR /* winnt.h:8164:7 */
|
|
type PRTL_VERIFIER_DLL_DESCRIPTOR = uintptr /* winnt.h:8164:35 */
|
|
|
|
type _RTL_VERIFIER_PROVIDER_DESCRIPTOR = struct {
|
|
Length DWORD
|
|
ProviderDlls PRTL_VERIFIER_DLL_DESCRIPTOR
|
|
ProviderDllLoadCallback RTL_VERIFIER_DLL_LOAD_CALLBACK
|
|
ProviderDllUnloadCallback RTL_VERIFIER_DLL_UNLOAD_CALLBACK
|
|
VerifierImage PWSTR
|
|
VerifierFlags DWORD
|
|
VerifierDebug DWORD
|
|
RtlpGetStackTraceAddress PVOID
|
|
RtlpDebugPageHeapCreate PVOID
|
|
RtlpDebugPageHeapDestroy PVOID
|
|
ProviderNtdllHeapFreeCallback RTL_VERIFIER_NTDLLHEAPFREE_CALLBACK
|
|
} /* winnt.h:8166:13 */
|
|
|
|
type RTL_VERIFIER_PROVIDER_DESCRIPTOR = _RTL_VERIFIER_PROVIDER_DESCRIPTOR /* winnt.h:8178:7 */
|
|
type PRTL_VERIFIER_PROVIDER_DESCRIPTOR = uintptr /* winnt.h:8178:40 */
|
|
|
|
type _HARDWARE_COUNTER_DATA = struct {
|
|
Type HARDWARE_COUNTER_TYPE
|
|
Reserved DWORD
|
|
Value DWORD64
|
|
} /* winnt.h:8291:13 */
|
|
|
|
type HARDWARE_COUNTER_DATA = _HARDWARE_COUNTER_DATA /* winnt.h:8295:7 */
|
|
type PHARDWARE_COUNTER_DATA = uintptr /* winnt.h:8295:29 */
|
|
|
|
type _PERFORMANCE_DATA = struct {
|
|
Size WORD
|
|
Version BYTE
|
|
HwCountersCount BYTE
|
|
ContextSwitchCount DWORD
|
|
WaitReasonBitMap DWORD64
|
|
CycleTime DWORD64
|
|
RetryCount DWORD
|
|
Reserved DWORD
|
|
HwCounters [16]HARDWARE_COUNTER_DATA
|
|
} /* winnt.h:8297:13 */
|
|
|
|
type PERFORMANCE_DATA = _PERFORMANCE_DATA /* winnt.h:8307:7 */
|
|
type PPERFORMANCE_DATA = uintptr /* winnt.h:8307:24 */
|
|
|
|
type _EVENTLOGRECORD = struct {
|
|
Length DWORD
|
|
Reserved DWORD
|
|
RecordNumber DWORD
|
|
TimeGenerated DWORD
|
|
TimeWritten DWORD
|
|
EventID DWORD
|
|
EventType WORD
|
|
NumStrings WORD
|
|
EventCategory WORD
|
|
ReservedFlags WORD
|
|
ClosingRecordNumber DWORD
|
|
StringOffset DWORD
|
|
UserSidLength DWORD
|
|
UserSidOffset DWORD
|
|
DataLength DWORD
|
|
DataOffset DWORD
|
|
} /* winnt.h:8338:13 */
|
|
|
|
type EVENTLOGRECORD = _EVENTLOGRECORD /* winnt.h:8355:7 */
|
|
type PEVENTLOGRECORD = uintptr /* winnt.h:8355:22 */
|
|
|
|
type _EVENTSFORLOGFILE = struct {
|
|
_ [0]uint32
|
|
ulSize DWORD
|
|
szLogicalLogFile [256]WCHAR
|
|
ulNumRecords DWORD
|
|
} /* winnt.h:8359:13 */
|
|
|
|
type EVENTSFORLOGFILE = _EVENTSFORLOGFILE /* winnt.h:8364:7 */
|
|
type PEVENTSFORLOGFILE = uintptr /* winnt.h:8364:24 */
|
|
|
|
type _PACKEDEVENTINFO = struct {
|
|
_ [0]uint32
|
|
ulSize DWORD
|
|
ulNumEventsForLogFile DWORD
|
|
} /* winnt.h:8366:13 */
|
|
|
|
type PACKEDEVENTINFO = _PACKEDEVENTINFO /* winnt.h:8370:7 */
|
|
type PPACKEDEVENTINFO = uintptr /* winnt.h:8370:23 */
|
|
|
|
type SERVICE_NODE_TYPE = uint32 /* winnt.h:8468:7 */
|
|
|
|
type SERVICE_LOAD_TYPE = uint32 /* winnt.h:8473:7 */
|
|
|
|
type SERVICE_ERROR_TYPE = uint32 /* winnt.h:8477:7 */
|
|
|
|
type _TAPE_ERASE = struct {
|
|
Type DWORD
|
|
Immediate BOOLEAN
|
|
_ [3]byte
|
|
} /* winnt.h:8496:13 */
|
|
|
|
type TAPE_ERASE = _TAPE_ERASE /* winnt.h:8499:7 */
|
|
type PTAPE_ERASE = uintptr /* winnt.h:8499:18 */
|
|
|
|
type _TAPE_PREPARE = struct {
|
|
Operation DWORD
|
|
Immediate BOOLEAN
|
|
_ [3]byte
|
|
} /* winnt.h:8508:13 */
|
|
|
|
type TAPE_PREPARE = _TAPE_PREPARE /* winnt.h:8511:7 */
|
|
type PTAPE_PREPARE = uintptr /* winnt.h:8511:20 */
|
|
|
|
type _TAPE_WRITE_MARKS = struct {
|
|
Type DWORD
|
|
Count DWORD
|
|
Immediate BOOLEAN
|
|
_ [3]byte
|
|
} /* winnt.h:8518:13 */
|
|
|
|
type TAPE_WRITE_MARKS = _TAPE_WRITE_MARKS /* winnt.h:8522:7 */
|
|
type PTAPE_WRITE_MARKS = uintptr /* winnt.h:8522:24 */
|
|
|
|
type _TAPE_GET_POSITION = struct {
|
|
Type DWORD
|
|
Partition DWORD
|
|
Offset LARGE_INTEGER
|
|
} /* winnt.h:8528:13 */
|
|
|
|
type TAPE_GET_POSITION = _TAPE_GET_POSITION /* winnt.h:8532:7 */
|
|
type PTAPE_GET_POSITION = uintptr /* winnt.h:8532:25 */
|
|
|
|
type _TAPE_SET_POSITION = struct {
|
|
Method DWORD
|
|
Partition DWORD
|
|
Offset LARGE_INTEGER
|
|
Immediate BOOLEAN
|
|
_ [7]byte
|
|
} /* winnt.h:8545:13 */
|
|
|
|
type TAPE_SET_POSITION = _TAPE_SET_POSITION /* winnt.h:8550:7 */
|
|
type PTAPE_SET_POSITION = uintptr /* winnt.h:8550:25 */
|
|
|
|
type _TAPE_GET_DRIVE_PARAMETERS = struct {
|
|
ECC BOOLEAN
|
|
Compression BOOLEAN
|
|
DataPadding BOOLEAN
|
|
ReportSetmarks BOOLEAN
|
|
DefaultBlockSize DWORD
|
|
MaximumBlockSize DWORD
|
|
MinimumBlockSize DWORD
|
|
MaximumPartitionCount DWORD
|
|
FeaturesLow DWORD
|
|
FeaturesHigh DWORD
|
|
EOTWarningZoneSize DWORD
|
|
} /* winnt.h:8619:13 */
|
|
|
|
type TAPE_GET_DRIVE_PARAMETERS = _TAPE_GET_DRIVE_PARAMETERS /* winnt.h:8631:7 */
|
|
type PTAPE_GET_DRIVE_PARAMETERS = uintptr /* winnt.h:8631:33 */
|
|
|
|
type _TAPE_SET_DRIVE_PARAMETERS = struct {
|
|
ECC BOOLEAN
|
|
Compression BOOLEAN
|
|
DataPadding BOOLEAN
|
|
ReportSetmarks BOOLEAN
|
|
EOTWarningZoneSize DWORD
|
|
} /* winnt.h:8633:13 */
|
|
|
|
type TAPE_SET_DRIVE_PARAMETERS = _TAPE_SET_DRIVE_PARAMETERS /* winnt.h:8639:7 */
|
|
type PTAPE_SET_DRIVE_PARAMETERS = uintptr /* winnt.h:8639:33 */
|
|
|
|
type _TAPE_GET_MEDIA_PARAMETERS = struct {
|
|
Capacity LARGE_INTEGER
|
|
Remaining LARGE_INTEGER
|
|
BlockSize DWORD
|
|
PartitionCount DWORD
|
|
WriteProtected BOOLEAN
|
|
_ [7]byte
|
|
} /* winnt.h:8641:13 */
|
|
|
|
type TAPE_GET_MEDIA_PARAMETERS = _TAPE_GET_MEDIA_PARAMETERS /* winnt.h:8647:7 */
|
|
type PTAPE_GET_MEDIA_PARAMETERS = uintptr /* winnt.h:8647:33 */
|
|
|
|
type _TAPE_SET_MEDIA_PARAMETERS = struct{ BlockSize DWORD } /* winnt.h:8649:13 */
|
|
|
|
type TAPE_SET_MEDIA_PARAMETERS = _TAPE_SET_MEDIA_PARAMETERS /* winnt.h:8651:7 */
|
|
type PTAPE_SET_MEDIA_PARAMETERS = uintptr /* winnt.h:8651:33 */
|
|
|
|
type _TAPE_CREATE_PARTITION = struct {
|
|
Method DWORD
|
|
Count DWORD
|
|
Size DWORD
|
|
} /* winnt.h:8657:13 */
|
|
|
|
type TAPE_CREATE_PARTITION = _TAPE_CREATE_PARTITION /* winnt.h:8661:7 */
|
|
type PTAPE_CREATE_PARTITION = uintptr /* winnt.h:8661:29 */
|
|
|
|
type _TAPE_WMI_OPERATIONS = struct {
|
|
Method DWORD
|
|
DataBufferSize DWORD
|
|
DataBuffer PVOID
|
|
} /* winnt.h:8669:13 */
|
|
|
|
type TAPE_WMI_OPERATIONS = _TAPE_WMI_OPERATIONS /* winnt.h:8673:7 */
|
|
type PTAPE_WMI_OPERATIONS = uintptr /* winnt.h:8673:27 */
|
|
|
|
type TAPE_DRIVE_PROBLEM_TYPE = uint32 /* winnt.h:8677:7 */
|
|
|
|
type TP_VERSION = DWORD /* winnt.h:8680:17 */
|
|
type PTP_VERSION = uintptr /* winnt.h:8680:28 */
|
|
type PTP_CALLBACK_INSTANCE = uintptr /* winnt.h:8681:61 */
|
|
type PTP_SIMPLE_CALLBACK = uintptr /* winnt.h:8682:16 */
|
|
type PTP_POOL = uintptr /* winnt.h:8683:35 */
|
|
|
|
type TP_CALLBACK_PRIORITY = uint32 /* winnt.h:8691:5 */
|
|
|
|
type _TP_POOL_STACK_INFORMATION = struct {
|
|
StackReserve SIZE_T
|
|
StackCommit SIZE_T
|
|
} /* winnt.h:8693:11 */
|
|
|
|
type TP_POOL_STACK_INFORMATION = _TP_POOL_STACK_INFORMATION /* winnt.h:8696:5 */
|
|
type PTP_POOL_STACK_INFORMATION = uintptr /* winnt.h:8696:32 */
|
|
type PTP_CLEANUP_GROUP = uintptr /* winnt.h:8698:53 */
|
|
type PTP_CLEANUP_GROUP_CANCEL_CALLBACK = uintptr /* winnt.h:8699:16 */
|
|
|
|
type _TP_CALLBACK_ENVIRON_V1 = struct {
|
|
Version TP_VERSION
|
|
Pool PTP_POOL
|
|
CleanupGroup PTP_CLEANUP_GROUP
|
|
CleanupGroupCancelCallback PTP_CLEANUP_GROUP_CANCEL_CALLBACK
|
|
RaceDll PVOID
|
|
ActivationContext uintptr
|
|
FinalizationCallback PTP_SIMPLE_CALLBACK
|
|
u struct{ Flags DWORD }
|
|
} /* winnt.h:8723:11 */
|
|
|
|
type TP_CALLBACK_ENVIRON_V1 = _TP_CALLBACK_ENVIRON_V1 /* winnt.h:8739:5 */
|
|
type TP_CALLBACK_ENVIRON = TP_CALLBACK_ENVIRON_V1 /* winnt.h:8740:34 */
|
|
type PTP_CALLBACK_ENVIRON = uintptr /* winnt.h:8740:54 */
|
|
type PTP_WORK = uintptr /* winnt.h:8743:35 */
|
|
type PTP_WORK_CALLBACK = uintptr /* winnt.h:8744:16 */
|
|
type PTP_TIMER = uintptr /* winnt.h:8745:37 */
|
|
type PTP_TIMER_CALLBACK = uintptr /* winnt.h:8746:16 */
|
|
type TP_WAIT_RESULT = DWORD /* winnt.h:8747:17 */
|
|
type PTP_WAIT = uintptr /* winnt.h:8748:35 */
|
|
type PTP_WAIT_CALLBACK = uintptr /* winnt.h:8749:16 */
|
|
type PTP_IO = uintptr /* winnt.h:8750:31 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type CRM_PROTOCOL_ID = GUID /* ktmtypes.h:13:16 */
|
|
type PCRM_PROTOCOL_ID = uintptr /* ktmtypes.h:13:32 */
|
|
|
|
type NOTIFICATION_MASK = ULONG /* ktmtypes.h:38:17 */
|
|
|
|
type _TRANSACTION_NOTIFICATION = struct {
|
|
TransactionKey PVOID
|
|
TransactionNotification ULONG
|
|
TmVirtualClock LARGE_INTEGER
|
|
ArgumentLength ULONG
|
|
_ [4]byte
|
|
} /* ktmtypes.h:78:11 */
|
|
|
|
type TRANSACTION_NOTIFICATION = _TRANSACTION_NOTIFICATION /* ktmtypes.h:83:5 */
|
|
type PTRANSACTION_NOTIFICATION = uintptr /* ktmtypes.h:83:30 */
|
|
|
|
type _TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT = struct {
|
|
EnlistmentId GUID
|
|
UOW GUID
|
|
} /* ktmtypes.h:85:11 */
|
|
|
|
type TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT = _TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT /* ktmtypes.h:88:5 */
|
|
type PTRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT = uintptr /* ktmtypes.h:88:48 */
|
|
|
|
type _TRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT = struct {
|
|
TmIdentity GUID
|
|
Flags ULONG
|
|
} /* ktmtypes.h:92:11 */
|
|
|
|
type TRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT = _TRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT /* ktmtypes.h:95:5 */
|
|
type PTRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT = uintptr /* ktmtypes.h:95:49 */
|
|
|
|
type SAVEPOINT_ID = ULONG /* ktmtypes.h:97:17 */
|
|
type PSAVEPOINT_ID = uintptr /* ktmtypes.h:97:30 */
|
|
|
|
type _TRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT = struct{ SavepointId SAVEPOINT_ID } /* ktmtypes.h:99:11 */
|
|
|
|
type TRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT = _TRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT /* ktmtypes.h:101:5 */
|
|
type PTRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT = uintptr /* ktmtypes.h:101:49 */
|
|
|
|
type _TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT = struct {
|
|
PropagationCookie ULONG
|
|
UOW GUID
|
|
TmIdentity GUID
|
|
BufferLength ULONG
|
|
} /* ktmtypes.h:103:11 */
|
|
|
|
type TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT = _TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT /* ktmtypes.h:108:5 */
|
|
type PTRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT = uintptr /* ktmtypes.h:108:49 */
|
|
|
|
type _TRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT = struct {
|
|
MarshalCookie ULONG
|
|
UOW GUID
|
|
} /* ktmtypes.h:110:11 */
|
|
|
|
type TRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT = _TRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT /* ktmtypes.h:113:5 */
|
|
type PTRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT = uintptr /* ktmtypes.h:113:47 */
|
|
|
|
type TRANSACTION_NOTIFICATION_PROMOTE_ARGUMENT = TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT /* ktmtypes.h:115:55 */
|
|
type PTRANSACTION_NOTIFICATION_PROMOTE_ARGUMENT = uintptr /* ktmtypes.h:115:97 */
|
|
|
|
type _KCRM_MARSHAL_HEADER = struct {
|
|
VersionMajor ULONG
|
|
VersionMinor ULONG
|
|
NumProtocols ULONG
|
|
Unused ULONG
|
|
} /* ktmtypes.h:123:11 */
|
|
|
|
type KCRM_MARSHAL_HEADER = _KCRM_MARSHAL_HEADER /* ktmtypes.h:128:5 */
|
|
type PKCRM_MARSHAL_HEADER = uintptr /* ktmtypes.h:128:25 */
|
|
type PRKCRM_MARSHAL_HEADER = uintptr /* ktmtypes.h:128:47 */
|
|
|
|
type _KCRM_TRANSACTION_BLOB = struct {
|
|
UOW GUID
|
|
TmIdentity GUID
|
|
IsolationLevel ULONG
|
|
IsolationFlags ULONG
|
|
Timeout ULONG
|
|
Description [64]WCHAR
|
|
} /* ktmtypes.h:130:11 */
|
|
|
|
type KCRM_TRANSACTION_BLOB = _KCRM_TRANSACTION_BLOB /* ktmtypes.h:137:5 */
|
|
type PKCRM_TRANSACTION_BLOB = uintptr /* ktmtypes.h:137:27 */
|
|
type PRKCRM_TRANSACTION_BLOB = uintptr /* ktmtypes.h:137:51 */
|
|
|
|
type _KCRM_PROTOCOL_BLOB = struct {
|
|
ProtocolId CRM_PROTOCOL_ID
|
|
StaticInfoLength ULONG
|
|
TransactionIdInfoLength ULONG
|
|
Unused1 ULONG
|
|
Unused2 ULONG
|
|
} /* ktmtypes.h:139:11 */
|
|
|
|
type KCRM_PROTOCOL_BLOB = _KCRM_PROTOCOL_BLOB /* ktmtypes.h:145:5 */
|
|
type PKCRM_PROTOCOL_BLOB = uintptr /* ktmtypes.h:145:24 */
|
|
type PRKCRM_PROTOCOL_BLOB = uintptr /* ktmtypes.h:145:45 */
|
|
|
|
type TRANSACTION_OUTCOME = uint32 /* winnt.h:8882:9 */
|
|
|
|
type TRANSACTION_STATE = uint32 /* winnt.h:8888:9 */
|
|
|
|
type _TRANSACTION_BASIC_INFORMATION = struct {
|
|
TransactionId GUID
|
|
State DWORD
|
|
Outcome DWORD
|
|
} /* winnt.h:8890:15 */
|
|
|
|
type TRANSACTION_BASIC_INFORMATION = _TRANSACTION_BASIC_INFORMATION /* winnt.h:8894:9 */
|
|
type PTRANSACTION_BASIC_INFORMATION = uintptr /* winnt.h:8894:39 */
|
|
|
|
type _TRANSACTIONMANAGER_BASIC_INFORMATION = struct {
|
|
TmIdentity GUID
|
|
VirtualClock LARGE_INTEGER
|
|
} /* winnt.h:8896:15 */
|
|
|
|
type TRANSACTIONMANAGER_BASIC_INFORMATION = _TRANSACTIONMANAGER_BASIC_INFORMATION /* winnt.h:8899:9 */
|
|
type PTRANSACTIONMANAGER_BASIC_INFORMATION = uintptr /* winnt.h:8899:46 */
|
|
|
|
type _TRANSACTIONMANAGER_LOG_INFORMATION = struct{ LogIdentity GUID } /* winnt.h:8901:15 */
|
|
|
|
type TRANSACTIONMANAGER_LOG_INFORMATION = _TRANSACTIONMANAGER_LOG_INFORMATION /* winnt.h:8903:9 */
|
|
type PTRANSACTIONMANAGER_LOG_INFORMATION = uintptr /* winnt.h:8903:44 */
|
|
|
|
type _TRANSACTIONMANAGER_LOGPATH_INFORMATION = struct {
|
|
LogPathLength DWORD
|
|
LogPath [1]WCHAR
|
|
_ [2]byte
|
|
} /* winnt.h:8905:15 */
|
|
|
|
type TRANSACTIONMANAGER_LOGPATH_INFORMATION = _TRANSACTIONMANAGER_LOGPATH_INFORMATION /* winnt.h:8908:9 */
|
|
type PTRANSACTIONMANAGER_LOGPATH_INFORMATION = uintptr /* winnt.h:8908:48 */
|
|
|
|
type _TRANSACTIONMANAGER_RECOVERY_INFORMATION = struct{ LastRecoveredLsn ULONGLONG } /* winnt.h:8910:15 */
|
|
|
|
type TRANSACTIONMANAGER_RECOVERY_INFORMATION = _TRANSACTIONMANAGER_RECOVERY_INFORMATION /* winnt.h:8912:9 */
|
|
type PTRANSACTIONMANAGER_RECOVERY_INFORMATION = uintptr /* winnt.h:8912:49 */
|
|
|
|
type _TRANSACTIONMANAGER_OLDEST_INFORMATION = struct{ OldestTransactionGuid GUID } /* winnt.h:8914:15 */
|
|
|
|
type TRANSACTIONMANAGER_OLDEST_INFORMATION = _TRANSACTIONMANAGER_OLDEST_INFORMATION /* winnt.h:8916:9 */
|
|
type PTRANSACTIONMANAGER_OLDEST_INFORMATION = uintptr /* winnt.h:8916:47 */
|
|
|
|
type _TRANSACTION_PROPERTIES_INFORMATION = struct {
|
|
IsolationLevel DWORD
|
|
IsolationFlags DWORD
|
|
Timeout LARGE_INTEGER
|
|
Outcome DWORD
|
|
DescriptionLength DWORD
|
|
Description [1]WCHAR
|
|
_ [6]byte
|
|
} /* winnt.h:8918:15 */
|
|
|
|
type TRANSACTION_PROPERTIES_INFORMATION = _TRANSACTION_PROPERTIES_INFORMATION /* winnt.h:8925:9 */
|
|
type PTRANSACTION_PROPERTIES_INFORMATION = uintptr /* winnt.h:8925:44 */
|
|
|
|
type _TRANSACTION_BIND_INFORMATION = struct{ TmHandle HANDLE } /* winnt.h:8927:15 */
|
|
|
|
type TRANSACTION_BIND_INFORMATION = _TRANSACTION_BIND_INFORMATION /* winnt.h:8929:9 */
|
|
type PTRANSACTION_BIND_INFORMATION = uintptr /* winnt.h:8929:38 */
|
|
|
|
type _TRANSACTION_ENLISTMENT_PAIR = struct {
|
|
EnlistmentId GUID
|
|
ResourceManagerId GUID
|
|
} /* winnt.h:8931:15 */
|
|
|
|
type TRANSACTION_ENLISTMENT_PAIR = _TRANSACTION_ENLISTMENT_PAIR /* winnt.h:8934:9 */
|
|
type PTRANSACTION_ENLISTMENT_PAIR = uintptr /* winnt.h:8934:37 */
|
|
|
|
type _TRANSACTION_ENLISTMENTS_INFORMATION = struct {
|
|
NumberOfEnlistments DWORD
|
|
EnlistmentPair [1]TRANSACTION_ENLISTMENT_PAIR
|
|
} /* winnt.h:8936:15 */
|
|
|
|
type TRANSACTION_ENLISTMENTS_INFORMATION = _TRANSACTION_ENLISTMENTS_INFORMATION /* winnt.h:8939:9 */
|
|
type PTRANSACTION_ENLISTMENTS_INFORMATION = uintptr /* winnt.h:8939:45 */
|
|
|
|
type _TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION = struct{ SuperiorEnlistmentPair TRANSACTION_ENLISTMENT_PAIR } /* winnt.h:8941:15 */
|
|
|
|
type TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION = _TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION /* winnt.h:8943:9 */
|
|
type PTRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION = uintptr /* winnt.h:8943:53 */
|
|
|
|
type _RESOURCEMANAGER_BASIC_INFORMATION = struct {
|
|
ResourceManagerId GUID
|
|
DescriptionLength DWORD
|
|
Description [1]WCHAR
|
|
_ [2]byte
|
|
} /* winnt.h:8945:15 */
|
|
|
|
type RESOURCEMANAGER_BASIC_INFORMATION = _RESOURCEMANAGER_BASIC_INFORMATION /* winnt.h:8949:9 */
|
|
type PRESOURCEMANAGER_BASIC_INFORMATION = uintptr /* winnt.h:8949:43 */
|
|
|
|
type _RESOURCEMANAGER_COMPLETION_INFORMATION = struct {
|
|
IoCompletionPortHandle HANDLE
|
|
CompletionKey ULONG_PTR
|
|
} /* winnt.h:8951:15 */
|
|
|
|
type RESOURCEMANAGER_COMPLETION_INFORMATION = _RESOURCEMANAGER_COMPLETION_INFORMATION /* winnt.h:8954:9 */
|
|
type PRESOURCEMANAGER_COMPLETION_INFORMATION = uintptr /* winnt.h:8954:48 */
|
|
|
|
type TRANSACTION_INFORMATION_CLASS = uint32 /* winnt.h:8963:9 */
|
|
|
|
type TRANSACTIONMANAGER_INFORMATION_CLASS = uint32 /* winnt.h:8972:9 */
|
|
|
|
type RESOURCEMANAGER_INFORMATION_CLASS = uint32 /* winnt.h:8977:9 */
|
|
|
|
type _ENLISTMENT_BASIC_INFORMATION = struct {
|
|
EnlistmentId GUID
|
|
TransactionId GUID
|
|
ResourceManagerId GUID
|
|
} /* winnt.h:8979:15 */
|
|
|
|
type ENLISTMENT_BASIC_INFORMATION = _ENLISTMENT_BASIC_INFORMATION /* winnt.h:8983:9 */
|
|
type PENLISTMENT_BASIC_INFORMATION = uintptr /* winnt.h:8983:38 */
|
|
|
|
type _ENLISTMENT_CRM_INFORMATION = struct {
|
|
CrmTransactionManagerId GUID
|
|
CrmResourceManagerId GUID
|
|
CrmEnlistmentId GUID
|
|
} /* winnt.h:8985:15 */
|
|
|
|
type ENLISTMENT_CRM_INFORMATION = _ENLISTMENT_CRM_INFORMATION /* winnt.h:8989:9 */
|
|
type PENLISTMENT_CRM_INFORMATION = uintptr /* winnt.h:8989:36 */
|
|
|
|
type ENLISTMENT_INFORMATION_CLASS = uint32 /* winnt.h:8995:9 */
|
|
|
|
type _TRANSACTION_LIST_ENTRY = struct{ UOW GUID } /* winnt.h:8997:15 */
|
|
|
|
type TRANSACTION_LIST_ENTRY = _TRANSACTION_LIST_ENTRY /* winnt.h:8999:9 */
|
|
type PTRANSACTION_LIST_ENTRY = uintptr /* winnt.h:8999:32 */
|
|
|
|
type _TRANSACTION_LIST_INFORMATION = struct {
|
|
NumberOfTransactions DWORD
|
|
TransactionInformation [1]TRANSACTION_LIST_ENTRY
|
|
} /* winnt.h:9001:15 */
|
|
|
|
type TRANSACTION_LIST_INFORMATION = _TRANSACTION_LIST_INFORMATION /* winnt.h:9004:9 */
|
|
type PTRANSACTION_LIST_INFORMATION = uintptr /* winnt.h:9004:38 */
|
|
|
|
type KTMOBJECT_TYPE = uint32 /* winnt.h:9012:9 */
|
|
type PKTMOBJECT_TYPE = uintptr /* winnt.h:9012:24 */
|
|
|
|
type _KTMOBJECT_CURSOR = struct {
|
|
LastQuery GUID
|
|
ObjectIdCount DWORD
|
|
ObjectIds [1]GUID
|
|
} /* winnt.h:9014:15 */
|
|
|
|
type KTMOBJECT_CURSOR = _KTMOBJECT_CURSOR /* winnt.h:9018:9 */
|
|
type PKTMOBJECT_CURSOR = uintptr /* winnt.h:9018:26 */
|
|
|
|
// Field Names From (See _fields_ section)
|
|
// FIXME: Verify these against documentation
|
|
// -- These documentation describes Win32 Constants and Structures in Python --
|
|
// Constants - http://packages.python.org/winappdbg/winappdbg.win32.context_i386-pysrc.html
|
|
// WOW64_FLOATING_SAVE_AREA - http://packages.python.org/winappdbg/winappdbg.win32.context_amd64.WOW64_FLOATING_SAVE_AREA-class.html
|
|
// WOW64_CONTEXT - http://packages.python.org/winappdbg/winappdbg.win32.context_amd64.WOW64_CONTEXT-class.html
|
|
|
|
type _WOW64_FLOATING_SAVE_AREA = struct {
|
|
ControlWord DWORD
|
|
StatusWord DWORD
|
|
TagWord DWORD
|
|
ErrorOffset DWORD
|
|
ErrorSelector DWORD
|
|
DataOffset DWORD
|
|
DataSelector DWORD
|
|
RegisterArea [80]BYTE
|
|
Cr0NpxState DWORD
|
|
} /* winnt.h:9055:9 */
|
|
|
|
// Field Names From (See _fields_ section)
|
|
// FIXME: Verify these against documentation
|
|
// -- These documentation describes Win32 Constants and Structures in Python --
|
|
// Constants - http://packages.python.org/winappdbg/winappdbg.win32.context_i386-pysrc.html
|
|
// WOW64_FLOATING_SAVE_AREA - http://packages.python.org/winappdbg/winappdbg.win32.context_amd64.WOW64_FLOATING_SAVE_AREA-class.html
|
|
// WOW64_CONTEXT - http://packages.python.org/winappdbg/winappdbg.win32.context_amd64.WOW64_CONTEXT-class.html
|
|
|
|
type WOW64_FLOATING_SAVE_AREA = _WOW64_FLOATING_SAVE_AREA /* winnt.h:9065:3 */
|
|
type PWOW64_FLOATING_SAVE_AREA = uintptr /* winnt.h:9065:29 */
|
|
|
|
// *
|
|
// 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.
|
|
type _WOW64_CONTEXT = struct {
|
|
ContextFlags DWORD
|
|
Dr0 DWORD
|
|
Dr1 DWORD
|
|
Dr2 DWORD
|
|
Dr3 DWORD
|
|
Dr6 DWORD
|
|
Dr7 DWORD
|
|
FloatSave WOW64_FLOATING_SAVE_AREA
|
|
SegGs DWORD
|
|
SegFs DWORD
|
|
SegEs DWORD
|
|
SegDs DWORD
|
|
Edi DWORD
|
|
Esi DWORD
|
|
Ebx DWORD
|
|
Edx DWORD
|
|
Ecx DWORD
|
|
Eax DWORD
|
|
Ebp DWORD
|
|
Eip DWORD
|
|
SegCs DWORD
|
|
EFlags DWORD
|
|
Esp DWORD
|
|
SegSs DWORD
|
|
ExtendedRegisters [512]BYTE
|
|
} /* winnt.h:9068:9 */
|
|
|
|
// *
|
|
// 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.
|
|
type WOW64_CONTEXT = _WOW64_CONTEXT /* winnt.h:9094:3 */
|
|
type PWOW64_CONTEXT = uintptr /* winnt.h:9094:18 */
|
|
// *
|
|
// 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.
|
|
|
|
type _WOW64_LDT_ENTRY = struct {
|
|
LimitLow WORD
|
|
BaseLow WORD
|
|
HighWord struct {
|
|
_ [0]uint32
|
|
Bytes struct {
|
|
BaseMid BYTE
|
|
Flags1 BYTE
|
|
Flags2 BYTE
|
|
BaseHi BYTE
|
|
}
|
|
}
|
|
} /* winnt.h:9097:9 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type WOW64_LDT_ENTRY = _WOW64_LDT_ENTRY /* winnt.h:9120:3 */
|
|
type PWOW64_LDT_ENTRY = uintptr /* winnt.h:9120:20 */
|
|
|
|
type _WOW64_DESCRIPTOR_TABLE_ENTRY = struct {
|
|
Selector DWORD
|
|
Descriptor WOW64_LDT_ENTRY
|
|
} /* winnt.h:9122:13 */
|
|
|
|
type WOW64_DESCRIPTOR_TABLE_ENTRY = _WOW64_DESCRIPTOR_TABLE_ENTRY /* winnt.h:9125:7 */
|
|
type PWOW64_DESCRIPTOR_TABLE_ENTRY = uintptr /* winnt.h:9125:36 */
|
|
|
|
type WPARAM = UINT_PTR /* minwindef.h:166:20 */
|
|
type LPARAM = LONG_PTR /* minwindef.h:167:20 */
|
|
type LRESULT = LONG_PTR /* minwindef.h:168:20 */
|
|
|
|
type SPHANDLE = uintptr /* minwindef.h:189:18 */
|
|
type LPHANDLE = uintptr /* minwindef.h:190:18 */
|
|
type HGLOBAL = HANDLE /* minwindef.h:191:18 */
|
|
type HLOCAL = HANDLE /* minwindef.h:192:18 */
|
|
type GLOBALHANDLE = HANDLE /* minwindef.h:193:18 */
|
|
type LOCALHANDLE = HANDLE /* minwindef.h:194:18 */
|
|
type FARPROC = uintptr /* minwindef.h:200:15 */
|
|
type NEARPROC = uintptr /* minwindef.h:201:15 */
|
|
type PROC = uintptr /* minwindef.h:202:15 */
|
|
|
|
type ATOM = WORD /* minwindef.h:205:16 */
|
|
|
|
type HFILE = int32 /* minwindef.h:207:15 */
|
|
type HINSTANCE__ = struct{ unused int32 } /* minwindef.h:208:3 */
|
|
|
|
type HINSTANCE = uintptr /* minwindef.h:208:3 */
|
|
type HKEY__ = struct{ unused int32 } /* minwindef.h:209:3 */
|
|
|
|
type HKEY = uintptr /* minwindef.h:209:3 */
|
|
type PHKEY = uintptr /* minwindef.h:210:16 */
|
|
type HKL__ = struct{ unused int32 } /* minwindef.h:211:3 */
|
|
|
|
type HKL = uintptr /* minwindef.h:211:3 */
|
|
type HLSURF__ = struct{ unused int32 } /* minwindef.h:212:3 */
|
|
|
|
type HLSURF = uintptr /* minwindef.h:212:3 */
|
|
type HMETAFILE__ = struct{ unused int32 } /* minwindef.h:213:3 */
|
|
|
|
type HMETAFILE = uintptr /* minwindef.h:213:3 */
|
|
type HMODULE = HINSTANCE /* minwindef.h:214:21 */
|
|
type HRGN__ = struct{ unused int32 } /* minwindef.h:215:3 */
|
|
|
|
type HRGN = uintptr /* minwindef.h:215:3 */
|
|
type HRSRC__ = struct{ unused int32 } /* minwindef.h:216:3 */
|
|
|
|
type HRSRC = uintptr /* minwindef.h:216:3 */
|
|
type HSPRITE__ = struct{ unused int32 } /* minwindef.h:217:3 */
|
|
|
|
type HSPRITE = uintptr /* minwindef.h:217:3 */
|
|
type HSTR__ = struct{ unused int32 } /* minwindef.h:218:3 */
|
|
|
|
type HSTR = uintptr /* minwindef.h:218:3 */
|
|
type HTASK__ = struct{ unused int32 } /* minwindef.h:219:3 */
|
|
|
|
type HTASK = uintptr /* minwindef.h:219:3 */
|
|
type HWINSTA__ = struct{ unused int32 } /* minwindef.h:220:3 */
|
|
|
|
type HWINSTA = uintptr /* minwindef.h:220:3 */
|
|
|
|
type _FILETIME = struct {
|
|
dwLowDateTime DWORD
|
|
dwHighDateTime DWORD
|
|
} /* minwindef.h:222:11 */
|
|
|
|
type FILETIME = _FILETIME /* minwindef.h:225:5 */
|
|
type PFILETIME = uintptr /* minwindef.h:225:14 */
|
|
type LPFILETIME = uintptr /* minwindef.h:225:25 */
|
|
|
|
// Make sure winnt.h is included.
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type HWND__ = struct{ unused int32 } /* windef.h:25:1 */
|
|
|
|
type HWND = uintptr /* windef.h:25:1 */
|
|
type HHOOK__ = struct{ unused int32 } /* windef.h:26:1 */
|
|
|
|
type HHOOK = uintptr /* windef.h:26:1 */
|
|
|
|
type HGDIOBJ = uintptr /* windef.h:37:16 */
|
|
|
|
type HACCEL__ = struct{ unused int32 } /* windef.h:42:1 */
|
|
|
|
type HACCEL = uintptr /* windef.h:42:1 */
|
|
type HBITMAP__ = struct{ unused int32 } /* windef.h:43:1 */
|
|
|
|
type HBITMAP = uintptr /* windef.h:43:1 */
|
|
type HBRUSH__ = struct{ unused int32 } /* windef.h:44:1 */
|
|
|
|
type HBRUSH = uintptr /* windef.h:44:1 */
|
|
type HCOLORSPACE__ = struct{ unused int32 } /* windef.h:45:1 */
|
|
|
|
type HCOLORSPACE = uintptr /* windef.h:45:1 */
|
|
type HDC__ = struct{ unused int32 } /* windef.h:46:1 */
|
|
|
|
type HDC = uintptr /* windef.h:46:1 */
|
|
type HGLRC__ = struct{ unused int32 } /* windef.h:47:1 */
|
|
|
|
type HGLRC = uintptr /* windef.h:47:1 */
|
|
type HDESK__ = struct{ unused int32 } /* windef.h:48:1 */
|
|
|
|
type HDESK = uintptr /* windef.h:48:1 */
|
|
type HENHMETAFILE__ = struct{ unused int32 } /* windef.h:49:1 */
|
|
|
|
type HENHMETAFILE = uintptr /* windef.h:49:1 */
|
|
type HFONT__ = struct{ unused int32 } /* windef.h:50:1 */
|
|
|
|
type HFONT = uintptr /* windef.h:50:1 */
|
|
type HICON__ = struct{ unused int32 } /* windef.h:51:1 */
|
|
|
|
type HICON = uintptr /* windef.h:51:1 */
|
|
type HMENU__ = struct{ unused int32 } /* windef.h:52:1 */
|
|
|
|
type HMENU = uintptr /* windef.h:52:1 */
|
|
type HPALETTE__ = struct{ unused int32 } /* windef.h:53:1 */
|
|
|
|
type HPALETTE = uintptr /* windef.h:53:1 */
|
|
type HPEN__ = struct{ unused int32 } /* windef.h:54:1 */
|
|
|
|
type HPEN = uintptr /* windef.h:54:1 */
|
|
type HMONITOR__ = struct{ unused int32 } /* windef.h:55:1 */
|
|
|
|
type HMONITOR = uintptr /* windef.h:55:1 */
|
|
type HWINEVENTHOOK__ = struct{ unused int32 } /* windef.h:57:1 */
|
|
|
|
type HWINEVENTHOOK = uintptr /* windef.h:57:1 */
|
|
|
|
type HCURSOR = HICON /* windef.h:59:15 */
|
|
type COLORREF = DWORD /* windef.h:60:15 */
|
|
|
|
type HUMPD__ = struct{ unused int32 } /* windef.h:64:1 */
|
|
|
|
type HUMPD = uintptr /* windef.h:64:1 */
|
|
|
|
type LPCOLORREF = uintptr /* windef.h:66:15 */
|
|
|
|
type tagRECT = struct {
|
|
left LONG
|
|
top LONG
|
|
right LONG
|
|
bottom LONG
|
|
} /* windef.h:72:9 */
|
|
|
|
type RECT = tagRECT /* windef.h:77:3 */
|
|
type PRECT = uintptr /* windef.h:77:8 */
|
|
type NPRECT = uintptr /* windef.h:77:15 */
|
|
type LPRECT = uintptr /* windef.h:77:23 */
|
|
|
|
type LPCRECT = uintptr /* windef.h:79:20 */
|
|
|
|
type _RECTL = struct {
|
|
left LONG
|
|
top LONG
|
|
right LONG
|
|
bottom LONG
|
|
} /* windef.h:81:9 */
|
|
|
|
type RECTL = _RECTL /* windef.h:86:3 */
|
|
type PRECTL = uintptr /* windef.h:86:9 */
|
|
type LPRECTL = uintptr /* windef.h:86:17 */
|
|
|
|
type LPCRECTL = uintptr /* windef.h:88:21 */
|
|
|
|
type tagPOINT = struct {
|
|
x LONG
|
|
y LONG
|
|
} /* windef.h:90:9 */
|
|
|
|
type POINT = tagPOINT /* windef.h:93:3 */
|
|
type PPOINT = uintptr /* windef.h:93:9 */
|
|
type NPPOINT = uintptr /* windef.h:93:17 */
|
|
type LPPOINT = uintptr /* windef.h:93:26 */
|
|
|
|
type _POINTL = struct {
|
|
x LONG
|
|
y LONG
|
|
} /* windef.h:95:9 */
|
|
|
|
type POINTL = _POINTL /* windef.h:98:3 */
|
|
type PPOINTL = uintptr /* windef.h:98:10 */
|
|
|
|
type tagSIZE = struct {
|
|
cx LONG
|
|
cy LONG
|
|
} /* windef.h:100:9 */
|
|
|
|
type SIZE = tagSIZE /* windef.h:103:3 */
|
|
type PSIZE = uintptr /* windef.h:103:8 */
|
|
type LPSIZE = uintptr /* windef.h:103:15 */
|
|
|
|
type SIZEL = SIZE /* windef.h:105:14 */
|
|
type PSIZEL = uintptr /* windef.h:106:14 */
|
|
type LPSIZEL = uintptr /* windef.h:106:22 */
|
|
|
|
type tagPOINTS = struct {
|
|
x SHORT
|
|
y SHORT
|
|
} /* windef.h:108:9 */
|
|
|
|
type POINTS = tagPOINTS /* windef.h:111:3 */
|
|
type PPOINTS = uintptr /* windef.h:111:10 */
|
|
type LPPOINTS = uintptr /* windef.h:111:19 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type _SECURITY_ATTRIBUTES = struct {
|
|
nLength DWORD
|
|
lpSecurityDescriptor LPVOID
|
|
bInheritHandle WINBOOL
|
|
} /* minwinbase.h:13:11 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type SECURITY_ATTRIBUTES = _SECURITY_ATTRIBUTES /* minwinbase.h:17:5 */
|
|
type PSECURITY_ATTRIBUTES = uintptr /* minwinbase.h:17:26 */
|
|
type LPSECURITY_ATTRIBUTES = uintptr /* minwinbase.h:17:49 */
|
|
|
|
type _OVERLAPPED = struct {
|
|
Internal ULONG_PTR
|
|
InternalHigh ULONG_PTR
|
|
u struct {
|
|
s struct {
|
|
Offset DWORD
|
|
OffsetHigh DWORD
|
|
}
|
|
}
|
|
hEvent HANDLE
|
|
} /* minwinbase.h:19:11 */
|
|
|
|
type OVERLAPPED = _OVERLAPPED /* minwinbase.h:30:5 */
|
|
type LPOVERLAPPED = uintptr /* minwinbase.h:30:17 */
|
|
|
|
type _OVERLAPPED_ENTRY = struct {
|
|
lpCompletionKey ULONG_PTR
|
|
lpOverlapped LPOVERLAPPED
|
|
Internal ULONG_PTR
|
|
dwNumberOfBytesTransferred DWORD
|
|
} /* minwinbase.h:32:11 */
|
|
|
|
type OVERLAPPED_ENTRY = _OVERLAPPED_ENTRY /* minwinbase.h:37:5 */
|
|
type LPOVERLAPPED_ENTRY = uintptr /* minwinbase.h:37:23 */
|
|
|
|
type _SYSTEMTIME = struct {
|
|
wYear WORD
|
|
wMonth WORD
|
|
wDayOfWeek WORD
|
|
wDay WORD
|
|
wHour WORD
|
|
wMinute WORD
|
|
wSecond WORD
|
|
wMilliseconds WORD
|
|
} /* minwinbase.h:49:11 */
|
|
|
|
type SYSTEMTIME = _SYSTEMTIME /* minwinbase.h:58:5 */
|
|
type PSYSTEMTIME = uintptr /* minwinbase.h:58:17 */
|
|
type LPSYSTEMTIME = uintptr /* minwinbase.h:58:31 */
|
|
|
|
type _WIN32_FIND_DATAA = struct {
|
|
dwFileAttributes DWORD
|
|
ftCreationTime FILETIME
|
|
ftLastAccessTime FILETIME
|
|
ftLastWriteTime FILETIME
|
|
nFileSizeHigh DWORD
|
|
nFileSizeLow DWORD
|
|
dwReserved0 DWORD
|
|
dwReserved1 DWORD
|
|
cFileName [260]CHAR
|
|
cAlternateFileName [14]CHAR
|
|
_ [2]byte
|
|
} /* minwinbase.h:61:11 */
|
|
|
|
type WIN32_FIND_DATAA = _WIN32_FIND_DATAA /* minwinbase.h:72:5 */
|
|
type PWIN32_FIND_DATAA = uintptr /* minwinbase.h:72:23 */
|
|
type LPWIN32_FIND_DATAA = uintptr /* minwinbase.h:72:43 */
|
|
|
|
type _WIN32_FIND_DATAW = struct {
|
|
dwFileAttributes DWORD
|
|
ftCreationTime FILETIME
|
|
ftLastAccessTime FILETIME
|
|
ftLastWriteTime FILETIME
|
|
nFileSizeHigh DWORD
|
|
nFileSizeLow DWORD
|
|
dwReserved0 DWORD
|
|
dwReserved1 DWORD
|
|
cFileName [260]WCHAR
|
|
cAlternateFileName [14]WCHAR
|
|
} /* minwinbase.h:74:11 */
|
|
|
|
type WIN32_FIND_DATAW = _WIN32_FIND_DATAW /* minwinbase.h:85:5 */
|
|
type PWIN32_FIND_DATAW = uintptr /* minwinbase.h:85:23 */
|
|
type LPWIN32_FIND_DATAW = uintptr /* minwinbase.h:85:43 */
|
|
|
|
type WIN32_FIND_DATA = WIN32_FIND_DATAA /* minwinbase.h:87:3 */
|
|
type PWIN32_FIND_DATA = PWIN32_FIND_DATAA /* minwinbase.h:88:3 */
|
|
type LPWIN32_FIND_DATA = LPWIN32_FIND_DATAA /* minwinbase.h:89:3 */
|
|
|
|
type FINDEX_INFO_LEVELS = uint32 /* minwinbase.h:95:5 */
|
|
|
|
type FINDEX_SEARCH_OPS = uint32 /* minwinbase.h:105:5 */
|
|
|
|
type GET_FILEEX_INFO_LEVELS = uint32 /* minwinbase.h:110:5 */
|
|
|
|
type CRITICAL_SECTION = RTL_CRITICAL_SECTION /* minwinbase.h:141:32 */
|
|
type PCRITICAL_SECTION = PRTL_CRITICAL_SECTION /* minwinbase.h:142:33 */
|
|
type LPCRITICAL_SECTION = PRTL_CRITICAL_SECTION /* minwinbase.h:143:33 */
|
|
type CRITICAL_SECTION_DEBUG = RTL_CRITICAL_SECTION_DEBUG /* minwinbase.h:144:38 */
|
|
type PCRITICAL_SECTION_DEBUG = PRTL_CRITICAL_SECTION_DEBUG /* minwinbase.h:145:39 */
|
|
type LPCRITICAL_SECTION_DEBUG = PRTL_CRITICAL_SECTION_DEBUG /* minwinbase.h:146:39 */
|
|
|
|
type LPOVERLAPPED_COMPLETION_ROUTINE = uintptr /* minwinbase.h:148:16 */
|
|
|
|
type _PROCESS_HEAP_ENTRY = struct {
|
|
lpData PVOID
|
|
cbData DWORD
|
|
cbOverhead BYTE
|
|
iRegionIndex BYTE
|
|
wFlags WORD
|
|
u struct {
|
|
Block struct {
|
|
hMem HANDLE
|
|
dwReserved [3]DWORD
|
|
}
|
|
}
|
|
} /* minwinbase.h:153:11 */
|
|
|
|
type PROCESS_HEAP_ENTRY = _PROCESS_HEAP_ENTRY /* minwinbase.h:171:5 */
|
|
type LPPROCESS_HEAP_ENTRY = uintptr /* minwinbase.h:171:24 */
|
|
type PPROCESS_HEAP_ENTRY = uintptr /* minwinbase.h:171:46 */
|
|
|
|
type _REASON_CONTEXT = struct {
|
|
Version ULONG
|
|
Flags DWORD
|
|
Reason struct {
|
|
Detailed struct {
|
|
LocalizedReasonModule HMODULE
|
|
LocalizedReasonId ULONG
|
|
ReasonStringCount ULONG
|
|
ReasonStrings uintptr
|
|
}
|
|
}
|
|
} /* minwinbase.h:179:11 */
|
|
|
|
type REASON_CONTEXT = _REASON_CONTEXT /* minwinbase.h:191:5 */
|
|
type PREASON_CONTEXT = uintptr /* minwinbase.h:191:21 */
|
|
|
|
type PTHREAD_START_ROUTINE = uintptr /* minwinbase.h:203:17 */
|
|
type LPTHREAD_START_ROUTINE = PTHREAD_START_ROUTINE /* minwinbase.h:204:33 */
|
|
|
|
type _EXCEPTION_DEBUG_INFO = struct {
|
|
ExceptionRecord EXCEPTION_RECORD
|
|
dwFirstChance DWORD
|
|
} /* minwinbase.h:206:11 */
|
|
|
|
type EXCEPTION_DEBUG_INFO = _EXCEPTION_DEBUG_INFO /* minwinbase.h:209:5 */
|
|
type LPEXCEPTION_DEBUG_INFO = uintptr /* minwinbase.h:209:27 */
|
|
|
|
type _CREATE_THREAD_DEBUG_INFO = struct {
|
|
hThread HANDLE
|
|
lpThreadLocalBase LPVOID
|
|
lpStartAddress LPTHREAD_START_ROUTINE
|
|
} /* minwinbase.h:211:11 */
|
|
|
|
type CREATE_THREAD_DEBUG_INFO = _CREATE_THREAD_DEBUG_INFO /* minwinbase.h:215:5 */
|
|
type LPCREATE_THREAD_DEBUG_INFO = uintptr /* minwinbase.h:215:31 */
|
|
|
|
type _CREATE_PROCESS_DEBUG_INFO = struct {
|
|
hFile HANDLE
|
|
hProcess HANDLE
|
|
hThread HANDLE
|
|
lpBaseOfImage LPVOID
|
|
dwDebugInfoFileOffset DWORD
|
|
nDebugInfoSize DWORD
|
|
lpThreadLocalBase LPVOID
|
|
lpStartAddress LPTHREAD_START_ROUTINE
|
|
lpImageName LPVOID
|
|
fUnicode WORD
|
|
_ [2]byte
|
|
} /* minwinbase.h:217:11 */
|
|
|
|
type CREATE_PROCESS_DEBUG_INFO = _CREATE_PROCESS_DEBUG_INFO /* minwinbase.h:228:5 */
|
|
type LPCREATE_PROCESS_DEBUG_INFO = uintptr /* minwinbase.h:228:32 */
|
|
|
|
type _EXIT_THREAD_DEBUG_INFO = struct{ dwExitCode DWORD } /* minwinbase.h:230:11 */
|
|
|
|
type EXIT_THREAD_DEBUG_INFO = _EXIT_THREAD_DEBUG_INFO /* minwinbase.h:232:5 */
|
|
type LPEXIT_THREAD_DEBUG_INFO = uintptr /* minwinbase.h:232:29 */
|
|
|
|
type _EXIT_PROCESS_DEBUG_INFO = struct{ dwExitCode DWORD } /* minwinbase.h:234:11 */
|
|
|
|
type EXIT_PROCESS_DEBUG_INFO = _EXIT_PROCESS_DEBUG_INFO /* minwinbase.h:236:5 */
|
|
type LPEXIT_PROCESS_DEBUG_INFO = uintptr /* minwinbase.h:236:30 */
|
|
|
|
type _LOAD_DLL_DEBUG_INFO = struct {
|
|
hFile HANDLE
|
|
lpBaseOfDll LPVOID
|
|
dwDebugInfoFileOffset DWORD
|
|
nDebugInfoSize DWORD
|
|
lpImageName LPVOID
|
|
fUnicode WORD
|
|
_ [2]byte
|
|
} /* minwinbase.h:238:11 */
|
|
|
|
type LOAD_DLL_DEBUG_INFO = _LOAD_DLL_DEBUG_INFO /* minwinbase.h:245:5 */
|
|
type LPLOAD_DLL_DEBUG_INFO = uintptr /* minwinbase.h:245:26 */
|
|
|
|
type _UNLOAD_DLL_DEBUG_INFO = struct{ lpBaseOfDll LPVOID } /* minwinbase.h:247:11 */
|
|
|
|
type UNLOAD_DLL_DEBUG_INFO = _UNLOAD_DLL_DEBUG_INFO /* minwinbase.h:249:5 */
|
|
type LPUNLOAD_DLL_DEBUG_INFO = uintptr /* minwinbase.h:249:28 */
|
|
|
|
type _OUTPUT_DEBUG_STRING_INFO = struct {
|
|
lpDebugStringData LPSTR
|
|
fUnicode WORD
|
|
nDebugStringLength WORD
|
|
} /* minwinbase.h:251:11 */
|
|
|
|
type OUTPUT_DEBUG_STRING_INFO = _OUTPUT_DEBUG_STRING_INFO /* minwinbase.h:255:5 */
|
|
type LPOUTPUT_DEBUG_STRING_INFO = uintptr /* minwinbase.h:255:31 */
|
|
|
|
type _RIP_INFO = struct {
|
|
dwError DWORD
|
|
dwType DWORD
|
|
} /* minwinbase.h:257:11 */
|
|
|
|
type RIP_INFO = _RIP_INFO /* minwinbase.h:260:5 */
|
|
type LPRIP_INFO = uintptr /* minwinbase.h:260:15 */
|
|
|
|
type _DEBUG_EVENT = struct {
|
|
dwDebugEventCode DWORD
|
|
dwProcessId DWORD
|
|
dwThreadId DWORD
|
|
u struct{ Exception EXCEPTION_DEBUG_INFO }
|
|
} /* minwinbase.h:262:11 */
|
|
|
|
type DEBUG_EVENT = _DEBUG_EVENT /* minwinbase.h:277:5 */
|
|
type LPDEBUG_EVENT = uintptr /* minwinbase.h:277:18 */
|
|
|
|
type LPCONTEXT = PCONTEXT /* minwinbase.h:280:20 */
|
|
type BEM_FREE_INTERFACE_CALLBACK = uintptr /* bemapiset.h:21:16 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type PTOP_LEVEL_EXCEPTION_FILTER = uintptr /* errhandlingapi.h:17:14 */
|
|
type LPTOP_LEVEL_EXCEPTION_FILTER = PTOP_LEVEL_EXCEPTION_FILTER /* errhandlingapi.h:18:37 */
|
|
type _BY_HANDLE_FILE_INFORMATION = struct {
|
|
dwFileAttributes DWORD
|
|
ftCreationTime FILETIME
|
|
ftLastAccessTime FILETIME
|
|
ftLastWriteTime FILETIME
|
|
dwVolumeSerialNumber DWORD
|
|
nFileSizeHigh DWORD
|
|
nFileSizeLow DWORD
|
|
nNumberOfLinks DWORD
|
|
nFileIndexHigh DWORD
|
|
nFileIndexLow DWORD
|
|
} /* fileapi.h:38:11 */
|
|
|
|
type BY_HANDLE_FILE_INFORMATION = _BY_HANDLE_FILE_INFORMATION /* fileapi.h:49:5 */
|
|
type PBY_HANDLE_FILE_INFORMATION = uintptr /* fileapi.h:49:33 */
|
|
type LPBY_HANDLE_FILE_INFORMATION = uintptr /* fileapi.h:50:5 */
|
|
|
|
type _WIN32_FILE_ATTRIBUTE_DATA = struct {
|
|
dwFileAttributes DWORD
|
|
ftCreationTime FILETIME
|
|
ftLastAccessTime FILETIME
|
|
ftLastWriteTime FILETIME
|
|
nFileSizeHigh DWORD
|
|
nFileSizeLow DWORD
|
|
} /* fileapi.h:129:11 */
|
|
|
|
type WIN32_FILE_ATTRIBUTE_DATA = _WIN32_FILE_ATTRIBUTE_DATA /* fileapi.h:136:5 */
|
|
type LPWIN32_FILE_ATTRIBUTE_DATA = uintptr /* fileapi.h:136:32 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type _HEAP_SUMMARY = struct {
|
|
cb DWORD
|
|
cbAllocated SIZE_T
|
|
cbCommitted SIZE_T
|
|
cbReserved SIZE_T
|
|
cbMaxReserve SIZE_T
|
|
} /* heapapi.h:18:11 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type HEAP_SUMMARY = _HEAP_SUMMARY /* heapapi.h:24:5 */
|
|
type PHEAP_SUMMARY = uintptr /* heapapi.h:24:18 */
|
|
|
|
type LPHEAP_SUMMARY = PHEAP_SUMMARY /* heapapi.h:26:25 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type tagENUMUILANG = struct {
|
|
NumOfEnumUILang ULONG
|
|
SizeOfEnumUIBuffer ULONG
|
|
pEnumUIBuffer uintptr
|
|
} /* libloaderapi.h:18:11 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type ENUMUILANG = tagENUMUILANG /* libloaderapi.h:22:5 */
|
|
type PENUMUILANG = uintptr /* libloaderapi.h:22:17 */
|
|
|
|
type ENUMRESLANGPROCA = uintptr /* libloaderapi.h:25:19 */
|
|
type ENUMRESLANGPROCW = uintptr /* libloaderapi.h:26:19 */
|
|
type ENUMRESNAMEPROCA = uintptr /* libloaderapi.h:27:19 */
|
|
type ENUMRESNAMEPROCW = uintptr /* libloaderapi.h:28:19 */
|
|
type ENUMRESTYPEPROCA = uintptr /* libloaderapi.h:29:19 */
|
|
type ENUMRESTYPEPROCW = uintptr /* libloaderapi.h:30:19 */
|
|
|
|
type PGET_MODULE_HANDLE_EXA = uintptr /* libloaderapi.h:41:19 */
|
|
type PGET_MODULE_HANDLE_EXW = uintptr /* libloaderapi.h:42:19 */
|
|
|
|
type DLL_DIRECTORY_COOKIE = PVOID /* libloaderapi.h:45:17 */
|
|
type PDLL_DIRECTORY_COOKIE = uintptr /* libloaderapi.h:45:39 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type MEMORY_RESOURCE_NOTIFICATION_TYPE = uint32 /* memoryapi.h:21:5 */
|
|
|
|
type _PROCESS_INFORMATION = struct {
|
|
hProcess HANDLE
|
|
hThread HANDLE
|
|
dwProcessId DWORD
|
|
dwThreadId DWORD
|
|
} /* processthreadsapi.h:28:11 */
|
|
|
|
type PROCESS_INFORMATION = _PROCESS_INFORMATION /* processthreadsapi.h:33:5 */
|
|
type PPROCESS_INFORMATION = uintptr /* processthreadsapi.h:33:26 */
|
|
type LPPROCESS_INFORMATION = uintptr /* processthreadsapi.h:33:49 */
|
|
|
|
type _STARTUPINFOA = struct {
|
|
cb DWORD
|
|
lpReserved LPSTR
|
|
lpDesktop LPSTR
|
|
lpTitle LPSTR
|
|
dwX DWORD
|
|
dwY DWORD
|
|
dwXSize DWORD
|
|
dwYSize DWORD
|
|
dwXCountChars DWORD
|
|
dwYCountChars DWORD
|
|
dwFillAttribute DWORD
|
|
dwFlags DWORD
|
|
wShowWindow WORD
|
|
cbReserved2 WORD
|
|
lpReserved2 LPBYTE
|
|
hStdInput HANDLE
|
|
hStdOutput HANDLE
|
|
hStdError HANDLE
|
|
} /* processthreadsapi.h:35:11 */
|
|
|
|
type STARTUPINFOA = _STARTUPINFOA /* processthreadsapi.h:54:5 */
|
|
type LPSTARTUPINFOA = uintptr /* processthreadsapi.h:54:19 */
|
|
|
|
type _STARTUPINFOW = struct {
|
|
cb DWORD
|
|
lpReserved LPWSTR
|
|
lpDesktop LPWSTR
|
|
lpTitle LPWSTR
|
|
dwX DWORD
|
|
dwY DWORD
|
|
dwXSize DWORD
|
|
dwYSize DWORD
|
|
dwXCountChars DWORD
|
|
dwYCountChars DWORD
|
|
dwFillAttribute DWORD
|
|
dwFlags DWORD
|
|
wShowWindow WORD
|
|
cbReserved2 WORD
|
|
lpReserved2 LPBYTE
|
|
hStdInput HANDLE
|
|
hStdOutput HANDLE
|
|
hStdError HANDLE
|
|
} /* processthreadsapi.h:56:11 */
|
|
|
|
type STARTUPINFOW = _STARTUPINFOW /* processthreadsapi.h:75:5 */
|
|
type LPSTARTUPINFOW = uintptr /* processthreadsapi.h:75:19 */
|
|
|
|
type STARTUPINFO = STARTUPINFOA /* processthreadsapi.h:77:3 */
|
|
type LPSTARTUPINFO = LPSTARTUPINFOA /* processthreadsapi.h:78:3 */
|
|
|
|
type PPROC_THREAD_ATTRIBUTE_LIST = uintptr /* processthreadsapi.h:80:46 */
|
|
type LPPROC_THREAD_ATTRIBUTE_LIST = uintptr /* processthreadsapi.h:80:76 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type SRWLOCK = RTL_SRWLOCK /* synchapi.h:34:23 */
|
|
type PSRWLOCK = uintptr /* synchapi.h:34:32 */
|
|
|
|
type INIT_ONCE = RTL_RUN_ONCE /* synchapi.h:36:24 */
|
|
type PINIT_ONCE = PRTL_RUN_ONCE /* synchapi.h:37:25 */
|
|
type LPINIT_ONCE = PRTL_RUN_ONCE /* synchapi.h:38:25 */
|
|
|
|
type PINIT_ONCE_FN = uintptr /* synchapi.h:40:19 */
|
|
type CONDITION_VARIABLE = RTL_CONDITION_VARIABLE /* synchapi.h:41:34 */
|
|
type PCONDITION_VARIABLE = uintptr /* synchapi.h:41:54 */
|
|
|
|
type PTIMERAPCROUTINE = uintptr /* synchapi.h:102:16 */
|
|
|
|
type SYNCHRONIZATION_BARRIER = RTL_BARRIER /* synchapi.h:104:23 */
|
|
type PSYNCHRONIZATION_BARRIER = PRTL_BARRIER /* synchapi.h:105:24 */
|
|
type LPSYNCHRONIZATION_BARRIER = PRTL_BARRIER /* synchapi.h:106:24 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type _SYSTEM_INFO = struct {
|
|
u struct{ dwOemId DWORD }
|
|
dwPageSize DWORD
|
|
lpMinimumApplicationAddress LPVOID
|
|
lpMaximumApplicationAddress LPVOID
|
|
dwActiveProcessorMask DWORD_PTR
|
|
dwNumberOfProcessors DWORD
|
|
dwProcessorType DWORD
|
|
dwAllocationGranularity DWORD
|
|
wProcessorLevel WORD
|
|
wProcessorRevision WORD
|
|
} /* sysinfoapi.h:18:11 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type SYSTEM_INFO = _SYSTEM_INFO /* sysinfoapi.h:35:5 */
|
|
type LPSYSTEM_INFO = uintptr /* sysinfoapi.h:35:18 */
|
|
|
|
type _MEMORYSTATUSEX = struct {
|
|
dwLength DWORD
|
|
dwMemoryLoad DWORD
|
|
ullTotalPhys DWORDLONG
|
|
ullAvailPhys DWORDLONG
|
|
ullTotalPageFile DWORDLONG
|
|
ullAvailPageFile DWORDLONG
|
|
ullTotalVirtual DWORDLONG
|
|
ullAvailVirtual DWORDLONG
|
|
ullAvailExtendedVirtual DWORDLONG
|
|
} /* sysinfoapi.h:48:11 */
|
|
|
|
type MEMORYSTATUSEX = _MEMORYSTATUSEX /* sysinfoapi.h:58:5 */
|
|
type LPMEMORYSTATUSEX = uintptr /* sysinfoapi.h:58:20 */
|
|
|
|
type COMPUTER_NAME_FORMAT = uint32 /* sysinfoapi.h:80:5 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type PTP_WIN32_IO_CALLBACK = uintptr /* threadpoolapiset.h:18:16 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// There are 3 separate ways this file is intended to be used:
|
|
//
|
|
// 1) Included from intrin.h. In this case, all intrinsics in this file get declarations and
|
|
// implementations. No special #defines are needed for this case.
|
|
//
|
|
// 2) Included from the library versions of these functions (ie mingw-w64-crt\intrincs\*.c). All
|
|
// intrinsics in this file must also be included in the library. In this case, only the
|
|
// specific functions requested will get defined, and they will not be defined as inline. If
|
|
// you have followed the instructions (below) for adding functions to this file, then all you
|
|
// need to have in the .c file is the following:
|
|
//
|
|
// #define __INTRINSIC_ONLYSPECIAL
|
|
// #define __INTRINSIC_SPECIAL___stosb // Causes code generation in intrin-impl.h
|
|
//
|
|
// #include <intrin.h>
|
|
//
|
|
// 3) Included from various platform sdk headers. Some platform sdk headers (such as winnt.h)
|
|
// define a subset of intrinsics. To avoid potential conflicts, this file is designed to
|
|
// allow for specific subsets of functions to be defined. This is done by defining the
|
|
// appropriate variable before including this file:
|
|
//
|
|
// #define __INTRINSIC_GROUP_WINNT
|
|
// #include <psdk_inc/intrin-impl.h>
|
|
//
|
|
// In all cases, it is acceptable to include this file multiple times in any order (ie include
|
|
// winnt.h to get its subset, then include intrin.h to get everything, or vice versa).
|
|
//
|
|
// See also the comments at the top of intrin.h.
|
|
|
|
// To add an implementation for a new intrinsic to this file, you should comment out the current prototype in intrin.h.
|
|
// If the function you are adding is not in intrin.h, you should not be adding it to this file. This file is only
|
|
// for MSVC intrinsics.
|
|
//
|
|
// Make sure you put your definition in the right section (x86 vs x64), and use this outline when adding definitions
|
|
// to this file:
|
|
//
|
|
// #if __INTRINSIC_PROLOG(__int2c)
|
|
//
|
|
// <prototype goes here>
|
|
//
|
|
// __INTRINSICS_USEINLINE
|
|
// <code goes here>
|
|
//
|
|
// #define __INTRINSIC_DEFINED___int2c
|
|
// #endif
|
|
|
|
// Note that there is no file-wide #if to prevent intrin-impl.h from being
|
|
// included multiple times. This is because this file might be included multiple
|
|
// times to define various subsets of the functions it contains.
|
|
|
|
// However we do check for __MINGW_INTRIN_INLINE. In theory this means we
|
|
// can work with other compilers.
|
|
|
|
// Clang has support for MSVC builtins, GCC doesn't
|
|
|
|
// These macros are used by the routines below. While this file may be included
|
|
// multiple times, these macros only need to be defined once.
|
|
|
|
// The Barrier functions can never be in the library. Since gcc only
|
|
// supports ReadWriteBarrier, map all 3 to do the same.
|
|
|
|
// The logic for this macro is:
|
|
// if the function is not yet defined AND
|
|
// (
|
|
// (if we are not just defining special OR
|
|
// (we are defining special AND this is one of the ones we are defining)
|
|
// )
|
|
// )
|
|
|
|
// Normally __INTRINSIC_ONLYSPECIAL is used to indicate that we are
|
|
// being included in the library version of the intrinsic (case 2). However,
|
|
// that really only affects the definition of __INTRINSICS_USEINLINE.
|
|
// So here we are letting it serve an additional purpose of only defining
|
|
// the intrinsics for a certain file (case 3). For example, to create the
|
|
// intrinsics for the functions in winnt.h, define __INTRINSIC_GROUP_WINNT.
|
|
//
|
|
// Note that this file can be included multiple times, and as a result
|
|
// there can be overlap (definitions that appear in more than one
|
|
// file). This is handled by __INTRINSIC_DEFINED_*
|
|
//
|
|
// If no groups are defined (such as what happens when including intrin.h),
|
|
// all intrinsics are defined.
|
|
|
|
// If __INTRINSIC_ONLYSPECIAL is defined at this point, we are processing case 2. In
|
|
// that case, don't go looking for groups
|
|
|
|
// Note that this gets undefined at the end of this file
|
|
|
|
// To add an additional group, put the #ifdef and definitions here.
|
|
|
|
// Before 4.9.2, ia32intrin.h had broken versions of these.
|
|
|
|
// *****************************************************
|
|
|
|
// *****************************************************
|
|
|
|
// *****************************************************
|
|
|
|
type PFIBER_START_ROUTINE = uintptr /* winbase.h:160:16 */
|
|
type LPFIBER_START_ROUTINE = PFIBER_START_ROUTINE /* winbase.h:161:32 */
|
|
|
|
type LPLDT_ENTRY = PLDT_ENTRY /* winbase.h:164:22 */
|
|
|
|
type _COMMPROP = struct {
|
|
wPacketLength WORD
|
|
wPacketVersion WORD
|
|
dwServiceMask DWORD
|
|
dwReserved1 DWORD
|
|
dwMaxTxQueue DWORD
|
|
dwMaxRxQueue DWORD
|
|
dwMaxBaud DWORD
|
|
dwProvSubType DWORD
|
|
dwProvCapabilities DWORD
|
|
dwSettableParams DWORD
|
|
dwSettableBaud DWORD
|
|
wSettableData WORD
|
|
wSettableStopParity WORD
|
|
dwCurrentTxQueue DWORD
|
|
dwCurrentRxQueue DWORD
|
|
dwProvSpec1 DWORD
|
|
dwProvSpec2 DWORD
|
|
wcProvChar [1]WCHAR
|
|
_ [2]byte
|
|
} /* winbase.h:240:11 */
|
|
|
|
type COMMPROP = _COMMPROP /* winbase.h:259:5 */
|
|
type LPCOMMPROP = uintptr /* winbase.h:259:14 */
|
|
|
|
type _COMSTAT = struct {
|
|
fCtsHold uint32 /* DWORD fCtsHold: 1, DWORD fDsrHold: 1, DWORD fRlsdHold: 1, DWORD fXoffHold: 1, DWORD fXoffSent: 1, DWORD fEof: 1, DWORD fTxim: 1, DWORD fReserved: 25 */
|
|
cbInQue DWORD
|
|
cbOutQue DWORD
|
|
} /* winbase.h:263:11 */
|
|
|
|
type COMSTAT = _COMSTAT /* winbase.h:274:5 */
|
|
type LPCOMSTAT = uintptr /* winbase.h:274:13 */
|
|
|
|
type _DCB = struct {
|
|
DCBlength DWORD
|
|
BaudRate DWORD
|
|
fBinary uint32 /* DWORD fBinary: 1, DWORD fParity: 1, DWORD fOutxCtsFlow: 1, DWORD fOutxDsrFlow: 1, DWORD fDtrControl: 2, DWORD fDsrSensitivity: 1, DWORD fTXContinueOnXoff: 1, DWORD fOutX: 1, DWORD fInX: 1, DWORD fErrorChar: 1, DWORD fNull: 1, DWORD fRtsControl: 2, DWORD fAbortOnError: 1, DWORD fDummy2: 17 */
|
|
wReserved WORD
|
|
XonLim WORD
|
|
XoffLim WORD
|
|
ByteSize BYTE
|
|
Parity BYTE
|
|
StopBits BYTE
|
|
XonChar int8
|
|
XoffChar int8
|
|
ErrorChar int8
|
|
EofChar int8
|
|
EvtChar int8
|
|
wReserved1 WORD
|
|
} /* winbase.h:285:11 */
|
|
|
|
type DCB = _DCB /* winbase.h:314:5 */
|
|
type LPDCB = uintptr /* winbase.h:314:9 */
|
|
|
|
type _COMMTIMEOUTS = struct {
|
|
ReadIntervalTimeout DWORD
|
|
ReadTotalTimeoutMultiplier DWORD
|
|
ReadTotalTimeoutConstant DWORD
|
|
WriteTotalTimeoutMultiplier DWORD
|
|
WriteTotalTimeoutConstant DWORD
|
|
} /* winbase.h:316:11 */
|
|
|
|
type COMMTIMEOUTS = _COMMTIMEOUTS /* winbase.h:322:5 */
|
|
type LPCOMMTIMEOUTS = uintptr /* winbase.h:322:18 */
|
|
|
|
type _COMMCONFIG = struct {
|
|
dwSize DWORD
|
|
wVersion WORD
|
|
wReserved WORD
|
|
dcb DCB
|
|
dwProviderSubType DWORD
|
|
dwProviderOffset DWORD
|
|
dwProviderSize DWORD
|
|
wcProviderData [1]WCHAR
|
|
_ [2]byte
|
|
} /* winbase.h:324:11 */
|
|
|
|
type COMMCONFIG = _COMMCONFIG /* winbase.h:333:5 */
|
|
type LPCOMMCONFIG = uintptr /* winbase.h:333:16 */
|
|
|
|
type _MEMORYSTATUS = struct {
|
|
dwLength DWORD
|
|
dwMemoryLoad DWORD
|
|
dwTotalPhys SIZE_T
|
|
dwAvailPhys SIZE_T
|
|
dwTotalPageFile SIZE_T
|
|
dwAvailPageFile SIZE_T
|
|
dwTotalVirtual SIZE_T
|
|
dwAvailVirtual SIZE_T
|
|
} /* winbase.h:364:11 */
|
|
|
|
type MEMORYSTATUS = _MEMORYSTATUS /* winbase.h:373:5 */
|
|
type LPMEMORYSTATUS = uintptr /* winbase.h:373:18 */
|
|
|
|
type _JIT_DEBUG_INFO = struct {
|
|
dwSize DWORD
|
|
dwProcessorArchitecture DWORD
|
|
dwThreadID DWORD
|
|
dwReserved0 DWORD
|
|
lpExceptionAddress ULONG64
|
|
lpExceptionRecord ULONG64
|
|
lpContextRecord ULONG64
|
|
} /* winbase.h:431:11 */
|
|
|
|
type JIT_DEBUG_INFO = _JIT_DEBUG_INFO /* winbase.h:439:5 */
|
|
type LPJIT_DEBUG_INFO = uintptr /* winbase.h:439:20 */
|
|
|
|
type JIT_DEBUG_INFO32 = JIT_DEBUG_INFO /* winbase.h:441:26 */
|
|
type LPJIT_DEBUG_INFO32 = uintptr /* winbase.h:441:44 */
|
|
type JIT_DEBUG_INFO64 = JIT_DEBUG_INFO /* winbase.h:442:26 */
|
|
type LPJIT_DEBUG_INFO64 = uintptr /* winbase.h:442:44 */
|
|
|
|
type LPEXCEPTION_RECORD = PEXCEPTION_RECORD /* winbase.h:445:29 */
|
|
type LPEXCEPTION_POINTERS = PEXCEPTION_POINTERS /* winbase.h:446:31 */
|
|
|
|
type _OFSTRUCT = struct {
|
|
cBytes BYTE
|
|
fFixedDisk BYTE
|
|
nErrCode WORD
|
|
Reserved1 WORD
|
|
Reserved2 WORD
|
|
szPathName [128]CHAR
|
|
} /* winbase.h:620:11 */
|
|
|
|
type OFSTRUCT = _OFSTRUCT /* winbase.h:627:5 */
|
|
type LPOFSTRUCT = uintptr /* winbase.h:627:15 */
|
|
type POFSTRUCT = uintptr /* winbase.h:627:27 */
|
|
|
|
// TODO: Add RTL_UMS... to winnt.h header and add UMS-base API.
|
|
|
|
type THREAD_INFORMATION_CLASS = uint32 /* winbase.h:1195:5 */
|
|
|
|
type PROCESS_INFORMATION_CLASS = uint32 /* winbase.h:1200:5 */
|
|
|
|
type DEP_SYSTEM_POLICY_TYPE = uint32 /* winbase.h:1304:5 */
|
|
|
|
type PFE_EXPORT_FUNC = uintptr /* winbase.h:1387:17 */
|
|
type PFE_IMPORT_FUNC = uintptr /* winbase.h:1388:17 */
|
|
|
|
type _WIN32_STREAM_ID = struct {
|
|
dwStreamId DWORD
|
|
dwStreamAttributes DWORD
|
|
Size LARGE_INTEGER
|
|
dwStreamNameSize DWORD
|
|
cStreamName [1]WCHAR
|
|
_ [2]byte
|
|
} /* winbase.h:1465:11 */
|
|
|
|
type WIN32_STREAM_ID = _WIN32_STREAM_ID /* winbase.h:1471:5 */
|
|
type LPWIN32_STREAM_ID = uintptr /* winbase.h:1471:21 */
|
|
|
|
type PGET_SYSTEM_WOW64_DIRECTORY_A = uintptr /* winbase.h:1856:16 */
|
|
type PGET_SYSTEM_WOW64_DIRECTORY_W = uintptr /* winbase.h:1857:16 */
|
|
|
|
type LPPROGRESS_ROUTINE = uintptr /* winbase.h:1960:17 */
|
|
|
|
type STREAM_INFO_LEVELS = uint32 /* winbase.h:2150:5 */
|
|
|
|
type _WIN32_FIND_STREAM_DATA = struct {
|
|
StreamSize LARGE_INTEGER
|
|
cStreamName [296]WCHAR
|
|
} /* winbase.h:2152:11 */
|
|
|
|
type WIN32_FIND_STREAM_DATA = _WIN32_FIND_STREAM_DATA /* winbase.h:2155:5 */
|
|
type PWIN32_FIND_STREAM_DATA = uintptr /* winbase.h:2155:28 */
|
|
|
|
type _EVENTLOG_FULL_INFORMATION = struct{ dwFull DWORD } /* winbase.h:2227:11 */
|
|
|
|
type EVENTLOG_FULL_INFORMATION = _EVENTLOG_FULL_INFORMATION /* winbase.h:2229:5 */
|
|
type LPEVENTLOG_FULL_INFORMATION = uintptr /* winbase.h:2229:31 */
|
|
|
|
type tagHW_PROFILE_INFOA = struct {
|
|
dwDockInfo DWORD
|
|
szHwProfileGuid [39]CHAR
|
|
szHwProfileName [80]CHAR
|
|
_ [1]byte
|
|
} /* winbase.h:2444:11 */
|
|
|
|
type HW_PROFILE_INFOA = tagHW_PROFILE_INFOA /* winbase.h:2448:5 */
|
|
type LPHW_PROFILE_INFOA = uintptr /* winbase.h:2448:22 */
|
|
|
|
type tagHW_PROFILE_INFOW = struct {
|
|
dwDockInfo DWORD
|
|
szHwProfileGuid [39]WCHAR
|
|
szHwProfileName [80]WCHAR
|
|
_ [2]byte
|
|
} /* winbase.h:2450:11 */
|
|
|
|
type HW_PROFILE_INFOW = tagHW_PROFILE_INFOW /* winbase.h:2454:5 */
|
|
type LPHW_PROFILE_INFOW = uintptr /* winbase.h:2454:22 */
|
|
|
|
type HW_PROFILE_INFO = HW_PROFILE_INFOA /* winbase.h:2456:3 */
|
|
type LPHW_PROFILE_INFO = LPHW_PROFILE_INFOA /* winbase.h:2457:3 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// ******************** WARNING ********************
|
|
// This is inconsistent with MSDN!
|
|
// In MSDN:
|
|
// ERROR_IPSEC_IKE_QM_LIMIT => 13884 (here not defined)
|
|
// ERROR_IPSEC_IKE_NEG_STATUS_END => 13897 (here 13884)
|
|
// Source:
|
|
// WinINet Reference -> WinINet Constants -> Error Messages
|
|
// https://msdn.microsoft.com/en-us/library/windows/desktop/aa385465%28v=vs.85%29.aspx
|
|
// ******************** END WARNING ********************
|
|
//#define ERROR_IPSEC_IKE_NEG_STATUS_END __MSABI_LONG(13884)
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type _TIME_ZONE_INFORMATION = struct {
|
|
Bias LONG
|
|
StandardName [32]WCHAR
|
|
StandardDate SYSTEMTIME
|
|
StandardBias LONG
|
|
DaylightName [32]WCHAR
|
|
DaylightDate SYSTEMTIME
|
|
DaylightBias LONG
|
|
} /* timezoneapi.h:21:11 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// ******************** WARNING ********************
|
|
// This is inconsistent with MSDN!
|
|
// In MSDN:
|
|
// ERROR_IPSEC_IKE_QM_LIMIT => 13884 (here not defined)
|
|
// ERROR_IPSEC_IKE_NEG_STATUS_END => 13897 (here 13884)
|
|
// Source:
|
|
// WinINet Reference -> WinINet Constants -> Error Messages
|
|
// https://msdn.microsoft.com/en-us/library/windows/desktop/aa385465%28v=vs.85%29.aspx
|
|
// ******************** END WARNING ********************
|
|
//#define ERROR_IPSEC_IKE_NEG_STATUS_END __MSABI_LONG(13884)
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type TIME_ZONE_INFORMATION = _TIME_ZONE_INFORMATION /* timezoneapi.h:29:5 */
|
|
type PTIME_ZONE_INFORMATION = uintptr /* timezoneapi.h:29:27 */
|
|
type LPTIME_ZONE_INFORMATION = uintptr /* timezoneapi.h:29:51 */
|
|
|
|
type _TIME_DYNAMIC_ZONE_INFORMATION = struct {
|
|
Bias LONG
|
|
StandardName [32]WCHAR
|
|
StandardDate SYSTEMTIME
|
|
StandardBias LONG
|
|
DaylightName [32]WCHAR
|
|
DaylightDate SYSTEMTIME
|
|
DaylightBias LONG
|
|
TimeZoneKeyName [128]WCHAR
|
|
DynamicDaylightTimeDisabled BOOLEAN
|
|
_ [3]byte
|
|
} /* timezoneapi.h:31:11 */
|
|
|
|
type DYNAMIC_TIME_ZONE_INFORMATION = _TIME_DYNAMIC_ZONE_INFORMATION /* timezoneapi.h:41:5 */
|
|
type PDYNAMIC_TIME_ZONE_INFORMATION = uintptr /* timezoneapi.h:41:35 */
|
|
|
|
type _SYSTEM_POWER_STATUS = struct {
|
|
ACLineStatus BYTE
|
|
BatteryFlag BYTE
|
|
BatteryLifePercent BYTE
|
|
Reserved1 BYTE
|
|
BatteryLifeTime DWORD
|
|
BatteryFullLifeTime DWORD
|
|
} /* winbase.h:2495:11 */
|
|
|
|
type SYSTEM_POWER_STATUS = _SYSTEM_POWER_STATUS /* winbase.h:2502:5 */
|
|
type LPSYSTEM_POWER_STATUS = uintptr /* winbase.h:2502:25 */
|
|
|
|
type tagACTCTXA = struct {
|
|
cbSize ULONG
|
|
dwFlags DWORD
|
|
lpSource LPCSTR
|
|
wProcessorArchitecture USHORT
|
|
wLangId LANGID
|
|
lpAssemblyDirectory LPCSTR
|
|
lpResourceName LPCSTR
|
|
lpApplicationName LPCSTR
|
|
hModule HMODULE
|
|
} /* winbase.h:2573:11 */
|
|
|
|
type ACTCTXA = tagACTCTXA /* winbase.h:2583:5 */
|
|
type PACTCTXA = uintptr /* winbase.h:2583:13 */
|
|
|
|
type tagACTCTXW = struct {
|
|
cbSize ULONG
|
|
dwFlags DWORD
|
|
lpSource LPCWSTR
|
|
wProcessorArchitecture USHORT
|
|
wLangId LANGID
|
|
lpAssemblyDirectory LPCWSTR
|
|
lpResourceName LPCWSTR
|
|
lpApplicationName LPCWSTR
|
|
hModule HMODULE
|
|
} /* winbase.h:2585:11 */
|
|
|
|
type ACTCTXW = tagACTCTXW /* winbase.h:2595:5 */
|
|
type PACTCTXW = uintptr /* winbase.h:2595:13 */
|
|
|
|
type ACTCTX = ACTCTXA /* winbase.h:2597:3 */
|
|
type PACTCTX = PACTCTXA /* winbase.h:2598:3 */
|
|
|
|
type PCACTCTXA = uintptr /* winbase.h:2600:25 */
|
|
type PCACTCTXW = uintptr /* winbase.h:2601:25 */
|
|
|
|
type PCACTCTX = PCACTCTXA /* winbase.h:2603:3 */
|
|
|
|
type tagACTCTX_SECTION_KEYED_DATA_2600 = struct {
|
|
cbSize ULONG
|
|
ulDataFormatVersion ULONG
|
|
lpData PVOID
|
|
ulLength ULONG
|
|
lpSectionGlobalData PVOID
|
|
ulSectionGlobalDataLength ULONG
|
|
lpSectionBase PVOID
|
|
ulSectionTotalLength ULONG
|
|
hActCtx HANDLE
|
|
ulAssemblyRosterIndex ULONG
|
|
} /* winbase.h:2617:11 */
|
|
|
|
type ACTCTX_SECTION_KEYED_DATA_2600 = tagACTCTX_SECTION_KEYED_DATA_2600 /* winbase.h:2628:5 */
|
|
type PACTCTX_SECTION_KEYED_DATA_2600 = uintptr /* winbase.h:2628:36 */
|
|
|
|
type PCACTCTX_SECTION_KEYED_DATA_2600 = uintptr /* winbase.h:2630:48 */
|
|
|
|
type tagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA = struct {
|
|
lpInformation PVOID
|
|
lpSectionBase PVOID
|
|
ulSectionLength ULONG
|
|
lpSectionGlobalDataBase PVOID
|
|
ulSectionGlobalDataLength ULONG
|
|
} /* winbase.h:2632:11 */
|
|
|
|
type ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA = tagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA /* winbase.h:2638:5 */
|
|
type PACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA = uintptr /* winbase.h:2638:49 */
|
|
|
|
type PCACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA = uintptr /* winbase.h:2640:61 */
|
|
|
|
type tagACTCTX_SECTION_KEYED_DATA = struct {
|
|
cbSize ULONG
|
|
ulDataFormatVersion ULONG
|
|
lpData PVOID
|
|
ulLength ULONG
|
|
lpSectionGlobalData PVOID
|
|
ulSectionGlobalDataLength ULONG
|
|
lpSectionBase PVOID
|
|
ulSectionTotalLength ULONG
|
|
hActCtx HANDLE
|
|
ulAssemblyRosterIndex ULONG
|
|
ulFlags ULONG
|
|
AssemblyMetadata ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA
|
|
} /* winbase.h:2642:11 */
|
|
|
|
type ACTCTX_SECTION_KEYED_DATA = tagACTCTX_SECTION_KEYED_DATA /* winbase.h:2655:5 */
|
|
type PACTCTX_SECTION_KEYED_DATA = uintptr /* winbase.h:2655:31 */
|
|
|
|
type PCACTCTX_SECTION_KEYED_DATA = uintptr /* winbase.h:2657:43 */
|
|
|
|
type _ACTIVATION_CONTEXT_BASIC_INFORMATION = struct {
|
|
hActCtx HANDLE
|
|
dwFlags DWORD
|
|
} /* winbase.h:2670:11 */
|
|
|
|
type ACTIVATION_CONTEXT_BASIC_INFORMATION = _ACTIVATION_CONTEXT_BASIC_INFORMATION /* winbase.h:2673:5 */
|
|
type PACTIVATION_CONTEXT_BASIC_INFORMATION = uintptr /* winbase.h:2673:42 */
|
|
|
|
type PCACTIVATION_CONTEXT_BASIC_INFORMATION = uintptr /* winbase.h:2675:62 */
|
|
|
|
type PQUERYACTCTXW_FUNC = uintptr /* winbase.h:2687:19 */
|
|
|
|
type APPLICATION_RECOVERY_CALLBACK = uintptr /* winbase.h:2707:17 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type _DRAWPATRECT = struct {
|
|
ptPosition POINT
|
|
ptSize POINT
|
|
wStyle WORD
|
|
wPattern WORD
|
|
} /* wingdi.h:224:11 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type DRAWPATRECT = _DRAWPATRECT /* wingdi.h:229:5 */
|
|
type PDRAWPATRECT = uintptr /* wingdi.h:229:17 */
|
|
|
|
type _PSINJECTDATA = struct {
|
|
DataBytes DWORD
|
|
InjectionPoint WORD
|
|
PageNumber WORD
|
|
} /* wingdi.h:335:11 */
|
|
|
|
type PSINJECTDATA = _PSINJECTDATA /* wingdi.h:339:5 */
|
|
type PPSINJECTDATA = uintptr /* wingdi.h:339:18 */
|
|
|
|
type _PSFEATURE_OUTPUT = struct {
|
|
bPageIndependent WINBOOL
|
|
bSetPageDevice WINBOOL
|
|
} /* wingdi.h:391:11 */
|
|
|
|
type PSFEATURE_OUTPUT = _PSFEATURE_OUTPUT /* wingdi.h:394:5 */
|
|
type PPSFEATURE_OUTPUT = uintptr /* wingdi.h:394:22 */
|
|
|
|
type _PSFEATURE_CUSTPAPER = struct {
|
|
lOrientation LONG
|
|
lWidth LONG
|
|
lHeight LONG
|
|
lWidthOffset LONG
|
|
lHeightOffset LONG
|
|
} /* wingdi.h:396:11 */
|
|
|
|
type PSFEATURE_CUSTPAPER = _PSFEATURE_CUSTPAPER /* wingdi.h:402:5 */
|
|
type PPSFEATURE_CUSTPAPER = uintptr /* wingdi.h:402:25 */
|
|
|
|
type tagXFORM = struct {
|
|
eM11 FLOAT
|
|
eM12 FLOAT
|
|
eM21 FLOAT
|
|
eM22 FLOAT
|
|
eDx FLOAT
|
|
eDy FLOAT
|
|
} /* wingdi.h:450:11 */
|
|
|
|
type XFORM = tagXFORM /* wingdi.h:457:5 */
|
|
type PXFORM = uintptr /* wingdi.h:457:11 */
|
|
type LPXFORM = uintptr /* wingdi.h:457:19 */
|
|
|
|
type tagBITMAP = struct {
|
|
bmType LONG
|
|
bmWidth LONG
|
|
bmHeight LONG
|
|
bmWidthBytes LONG
|
|
bmPlanes WORD
|
|
bmBitsPixel WORD
|
|
bmBits LPVOID
|
|
} /* wingdi.h:459:11 */
|
|
|
|
type BITMAP = tagBITMAP /* wingdi.h:467:5 */
|
|
type PBITMAP = uintptr /* wingdi.h:467:12 */
|
|
type NPBITMAP = uintptr /* wingdi.h:467:21 */
|
|
type LPBITMAP = uintptr /* wingdi.h:467:31 */
|
|
|
|
// *
|
|
// 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.
|
|
type tagRGBTRIPLE = struct {
|
|
rgbtBlue BYTE
|
|
rgbtGreen BYTE
|
|
rgbtRed BYTE
|
|
} /* wingdi.h:470:11 */
|
|
|
|
// *
|
|
// 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.
|
|
type RGBTRIPLE = tagRGBTRIPLE /* wingdi.h:474:5 */
|
|
// *
|
|
// 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.
|
|
|
|
type tagRGBQUAD = struct {
|
|
rgbBlue BYTE
|
|
rgbGreen BYTE
|
|
rgbRed BYTE
|
|
rgbReserved BYTE
|
|
} /* wingdi.h:477:11 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type RGBQUAD = tagRGBQUAD /* wingdi.h:482:5 */
|
|
|
|
type LPRGBQUAD = uintptr /* wingdi.h:486:19 */
|
|
|
|
type LCSCSTYPE = LONG /* wingdi.h:499:16 */
|
|
|
|
type LCSGAMUTMATCH = LONG /* wingdi.h:502:16 */
|
|
|
|
type FXPT16DOT16 = int32 /* wingdi.h:526:20 */
|
|
type LPFXPT16DOT16 = uintptr /* wingdi.h:526:32 */
|
|
type FXPT2DOT30 = int32 /* wingdi.h:527:20 */
|
|
type LPFXPT2DOT30 = uintptr /* wingdi.h:527:31 */
|
|
|
|
type tagCIEXYZ = struct {
|
|
ciexyzX FXPT2DOT30
|
|
ciexyzY FXPT2DOT30
|
|
ciexyzZ FXPT2DOT30
|
|
} /* wingdi.h:529:11 */
|
|
|
|
type CIEXYZ = tagCIEXYZ /* wingdi.h:533:5 */
|
|
type LPCIEXYZ = uintptr /* wingdi.h:536:18 */
|
|
type tagICEXYZTRIPLE = struct {
|
|
ciexyzRed CIEXYZ
|
|
ciexyzGreen CIEXYZ
|
|
ciexyzBlue CIEXYZ
|
|
} /* wingdi.h:539:11 */
|
|
|
|
type CIEXYZTRIPLE = tagICEXYZTRIPLE /* wingdi.h:543:5 */
|
|
type LPCIEXYZTRIPLE = uintptr /* wingdi.h:546:24 */
|
|
|
|
type tagLOGCOLORSPACEA = struct {
|
|
lcsSignature DWORD
|
|
lcsVersion DWORD
|
|
lcsSize DWORD
|
|
lcsCSType LCSCSTYPE
|
|
lcsIntent LCSGAMUTMATCH
|
|
lcsEndpoints CIEXYZTRIPLE
|
|
lcsGammaRed DWORD
|
|
lcsGammaGreen DWORD
|
|
lcsGammaBlue DWORD
|
|
lcsFilename [260]CHAR
|
|
} /* wingdi.h:550:11 */
|
|
|
|
type LOGCOLORSPACEA = tagLOGCOLORSPACEA /* wingdi.h:561:5 */
|
|
type LPLOGCOLORSPACEA = uintptr /* wingdi.h:561:20 */
|
|
|
|
type tagLOGCOLORSPACEW = struct {
|
|
lcsSignature DWORD
|
|
lcsVersion DWORD
|
|
lcsSize DWORD
|
|
lcsCSType LCSCSTYPE
|
|
lcsIntent LCSGAMUTMATCH
|
|
lcsEndpoints CIEXYZTRIPLE
|
|
lcsGammaRed DWORD
|
|
lcsGammaGreen DWORD
|
|
lcsGammaBlue DWORD
|
|
lcsFilename [260]WCHAR
|
|
} /* wingdi.h:563:11 */
|
|
|
|
type LOGCOLORSPACEW = tagLOGCOLORSPACEW /* wingdi.h:574:5 */
|
|
type LPLOGCOLORSPACEW = uintptr /* wingdi.h:574:20 */
|
|
|
|
type LOGCOLORSPACE = LOGCOLORSPACEA /* wingdi.h:576:3 */
|
|
type LPLOGCOLORSPACE = LPLOGCOLORSPACEA /* wingdi.h:577:3 */
|
|
|
|
type tagBITMAPCOREHEADER = struct {
|
|
bcSize DWORD
|
|
bcWidth WORD
|
|
bcHeight WORD
|
|
bcPlanes WORD
|
|
bcBitCount WORD
|
|
} /* wingdi.h:581:11 */
|
|
|
|
type BITMAPCOREHEADER = tagBITMAPCOREHEADER /* wingdi.h:587:5 */
|
|
type LPBITMAPCOREHEADER = uintptr /* wingdi.h:587:22 */
|
|
type PBITMAPCOREHEADER = uintptr /* wingdi.h:587:42 */
|
|
|
|
type tagBITMAPINFOHEADER = struct {
|
|
biSize DWORD
|
|
biWidth LONG
|
|
biHeight LONG
|
|
biPlanes WORD
|
|
biBitCount WORD
|
|
biCompression DWORD
|
|
biSizeImage DWORD
|
|
biXPelsPerMeter LONG
|
|
biYPelsPerMeter LONG
|
|
biClrUsed DWORD
|
|
biClrImportant DWORD
|
|
} /* wingdi.h:591:11 */
|
|
|
|
type BITMAPINFOHEADER = tagBITMAPINFOHEADER /* wingdi.h:603:5 */
|
|
type LPBITMAPINFOHEADER = uintptr /* wingdi.h:603:22 */
|
|
type PBITMAPINFOHEADER = uintptr /* wingdi.h:603:42 */
|
|
|
|
type BITMAPV4HEADER = struct {
|
|
bV4Size DWORD
|
|
bV4Width LONG
|
|
bV4Height LONG
|
|
bV4Planes WORD
|
|
bV4BitCount WORD
|
|
bV4V4Compression DWORD
|
|
bV4SizeImage DWORD
|
|
bV4XPelsPerMeter LONG
|
|
bV4YPelsPerMeter LONG
|
|
bV4ClrUsed DWORD
|
|
bV4ClrImportant DWORD
|
|
bV4RedMask DWORD
|
|
bV4GreenMask DWORD
|
|
bV4BlueMask DWORD
|
|
bV4AlphaMask DWORD
|
|
bV4CSType DWORD
|
|
bV4Endpoints CIEXYZTRIPLE
|
|
bV4GammaRed DWORD
|
|
bV4GammaGreen DWORD
|
|
bV4GammaBlue DWORD
|
|
} /* wingdi.h:628:5 */
|
|
type LPBITMAPV4HEADER = uintptr /* wingdi.h:628:20 */
|
|
type PBITMAPV4HEADER = uintptr /* wingdi.h:628:38 */
|
|
|
|
type BITMAPV5HEADER = struct {
|
|
bV5Size DWORD
|
|
bV5Width LONG
|
|
bV5Height LONG
|
|
bV5Planes WORD
|
|
bV5BitCount WORD
|
|
bV5Compression DWORD
|
|
bV5SizeImage DWORD
|
|
bV5XPelsPerMeter LONG
|
|
bV5YPelsPerMeter LONG
|
|
bV5ClrUsed DWORD
|
|
bV5ClrImportant DWORD
|
|
bV5RedMask DWORD
|
|
bV5GreenMask DWORD
|
|
bV5BlueMask DWORD
|
|
bV5AlphaMask DWORD
|
|
bV5CSType DWORD
|
|
bV5Endpoints CIEXYZTRIPLE
|
|
bV5GammaRed DWORD
|
|
bV5GammaGreen DWORD
|
|
bV5GammaBlue DWORD
|
|
bV5Intent DWORD
|
|
bV5ProfileData DWORD
|
|
bV5ProfileSize DWORD
|
|
bV5Reserved DWORD
|
|
} /* wingdi.h:655:5 */
|
|
type LPBITMAPV5HEADER = uintptr /* wingdi.h:655:20 */
|
|
type PBITMAPV5HEADER = uintptr /* wingdi.h:655:38 */
|
|
|
|
type tagBITMAPINFO = struct {
|
|
bmiHeader BITMAPINFOHEADER
|
|
bmiColors [1]RGBQUAD
|
|
} /* wingdi.h:669:11 */
|
|
|
|
type BITMAPINFO = tagBITMAPINFO /* wingdi.h:672:5 */
|
|
type LPBITMAPINFO = uintptr /* wingdi.h:672:16 */
|
|
type PBITMAPINFO = uintptr /* wingdi.h:672:30 */
|
|
|
|
type tagBITMAPCOREINFO = struct {
|
|
bmciHeader BITMAPCOREHEADER
|
|
bmciColors [1]RGBTRIPLE
|
|
_ [1]byte
|
|
} /* wingdi.h:676:11 */
|
|
|
|
type BITMAPCOREINFO = tagBITMAPCOREINFO /* wingdi.h:679:5 */
|
|
type LPBITMAPCOREINFO = uintptr /* wingdi.h:679:20 */
|
|
type PBITMAPCOREINFO = uintptr /* wingdi.h:679:38 */
|
|
|
|
// *
|
|
// 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.
|
|
type tagBITMAPFILEHEADER = struct {
|
|
bfType WORD
|
|
_ [2]byte
|
|
bfSize DWORD
|
|
bfReserved1 WORD
|
|
bfReserved2 WORD
|
|
bfOffBits DWORD
|
|
} /* wingdi.h:682:11 */
|
|
|
|
// *
|
|
// 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.
|
|
type BITMAPFILEHEADER = tagBITMAPFILEHEADER /* wingdi.h:688:5 */
|
|
type LPBITMAPFILEHEADER = uintptr /* wingdi.h:688:22 */
|
|
type PBITMAPFILEHEADER = uintptr /* wingdi.h:688:42 */
|
|
// *
|
|
// 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.
|
|
|
|
type tagFONTSIGNATURE = struct {
|
|
fsUsb [4]DWORD
|
|
fsCsb [2]DWORD
|
|
} /* wingdi.h:697:11 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type FONTSIGNATURE = tagFONTSIGNATURE /* wingdi.h:700:5 */
|
|
type PFONTSIGNATURE = uintptr /* wingdi.h:700:19 */
|
|
type LPFONTSIGNATURE = uintptr /* wingdi.h:700:35 */
|
|
|
|
type tagCHARSETINFO = struct {
|
|
ciCharset UINT
|
|
ciACP UINT
|
|
fs FONTSIGNATURE
|
|
} /* wingdi.h:702:11 */
|
|
|
|
type CHARSETINFO = tagCHARSETINFO /* wingdi.h:706:5 */
|
|
type PCHARSETINFO = uintptr /* wingdi.h:706:17 */
|
|
type NPCHARSETINFO = uintptr /* wingdi.h:706:31 */
|
|
type LPCHARSETINFO = uintptr /* wingdi.h:706:46 */
|
|
|
|
type tagLOCALESIGNATURE = struct {
|
|
lsUsb [4]DWORD
|
|
lsCsbDefault [2]DWORD
|
|
lsCsbSupported [2]DWORD
|
|
} /* wingdi.h:715:11 */
|
|
|
|
type LOCALESIGNATURE = tagLOCALESIGNATURE /* wingdi.h:719:5 */
|
|
type PLOCALESIGNATURE = uintptr /* wingdi.h:719:21 */
|
|
type LPLOCALESIGNATURE = uintptr /* wingdi.h:719:39 */
|
|
|
|
type tagHANDLETABLE = struct{ objectHandle [1]HGDIOBJ } /* wingdi.h:725:11 */
|
|
|
|
type HANDLETABLE = tagHANDLETABLE /* wingdi.h:727:5 */
|
|
type PHANDLETABLE = uintptr /* wingdi.h:727:17 */
|
|
type LPHANDLETABLE = uintptr /* wingdi.h:727:31 */
|
|
|
|
type tagMETARECORD = struct {
|
|
rdSize DWORD
|
|
rdFunction WORD
|
|
rdParm [1]WORD
|
|
} /* wingdi.h:729:11 */
|
|
|
|
type METARECORD = tagMETARECORD /* wingdi.h:733:5 */
|
|
type PMETARECORD = uintptr /* wingdi.h:736:42 */
|
|
type LPMETARECORD = uintptr /* wingdi.h:739:42 */
|
|
|
|
type tagMETAFILEPICT = struct {
|
|
mm LONG
|
|
xExt LONG
|
|
yExt LONG
|
|
hMF HMETAFILE
|
|
} /* wingdi.h:741:11 */
|
|
|
|
type METAFILEPICT = tagMETAFILEPICT /* wingdi.h:746:5 */
|
|
type LPMETAFILEPICT = uintptr /* wingdi.h:746:18 */
|
|
|
|
// *
|
|
// 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.
|
|
type tagMETAHEADER = struct {
|
|
mtType WORD
|
|
mtHeaderSize WORD
|
|
mtVersion WORD
|
|
_ [2]byte
|
|
mtSize DWORD
|
|
mtNoObjects WORD
|
|
_ [2]byte
|
|
mtMaxRecord DWORD
|
|
mtNoParameters WORD
|
|
_ [2]byte
|
|
} /* wingdi.h:751:11 */
|
|
|
|
// *
|
|
// 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.
|
|
type METAHEADER = tagMETAHEADER /* wingdi.h:759:5 */
|
|
type PMETAHEADER = uintptr /* wingdi.h:760:42 */
|
|
type LPMETAHEADER = uintptr /* wingdi.h:761:42 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type tagENHMETARECORD = struct {
|
|
iType DWORD
|
|
nSize DWORD
|
|
dParm [1]DWORD
|
|
} /* wingdi.h:767:11 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type ENHMETARECORD = tagENHMETARECORD /* wingdi.h:771:5 */
|
|
type PENHMETARECORD = uintptr /* wingdi.h:771:19 */
|
|
type LPENHMETARECORD = uintptr /* wingdi.h:771:35 */
|
|
|
|
type tagENHMETAHEADER = struct {
|
|
iType DWORD
|
|
nSize DWORD
|
|
rclBounds RECTL
|
|
rclFrame RECTL
|
|
dSignature DWORD
|
|
nVersion DWORD
|
|
nBytes DWORD
|
|
nRecords DWORD
|
|
nHandles WORD
|
|
sReserved WORD
|
|
nDescription DWORD
|
|
offDescription DWORD
|
|
nPalEntries DWORD
|
|
szlDevice SIZEL
|
|
szlMillimeters SIZEL
|
|
cbPixelFormat DWORD
|
|
offPixelFormat DWORD
|
|
bOpenGL DWORD
|
|
szlMicrometers SIZEL
|
|
} /* wingdi.h:773:11 */
|
|
|
|
type ENHMETAHEADER = tagENHMETAHEADER /* wingdi.h:793:5 */
|
|
type PENHMETAHEADER = uintptr /* wingdi.h:793:19 */
|
|
type LPENHMETAHEADER = uintptr /* wingdi.h:793:35 */
|
|
|
|
type BCHAR = BYTE /* wingdi.h:807:16 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type tagTEXTMETRICA = struct {
|
|
tmHeight LONG
|
|
tmAscent LONG
|
|
tmDescent LONG
|
|
tmInternalLeading LONG
|
|
tmExternalLeading LONG
|
|
tmAveCharWidth LONG
|
|
tmMaxCharWidth LONG
|
|
tmWeight LONG
|
|
tmOverhang LONG
|
|
tmDigitizedAspectX LONG
|
|
tmDigitizedAspectY LONG
|
|
tmFirstChar BYTE
|
|
tmLastChar BYTE
|
|
tmDefaultChar BYTE
|
|
tmBreakChar BYTE
|
|
tmItalic BYTE
|
|
tmUnderlined BYTE
|
|
tmStruckOut BYTE
|
|
tmPitchAndFamily BYTE
|
|
tmCharSet BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:816:11 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type TEXTMETRICA = tagTEXTMETRICA /* wingdi.h:837:5 */
|
|
type PTEXTMETRICA = uintptr /* wingdi.h:837:17 */
|
|
type NPTEXTMETRICA = uintptr /* wingdi.h:837:31 */
|
|
type LPTEXTMETRICA = uintptr /* wingdi.h:837:46 */
|
|
|
|
type tagTEXTMETRICW = struct {
|
|
tmHeight LONG
|
|
tmAscent LONG
|
|
tmDescent LONG
|
|
tmInternalLeading LONG
|
|
tmExternalLeading LONG
|
|
tmAveCharWidth LONG
|
|
tmMaxCharWidth LONG
|
|
tmWeight LONG
|
|
tmOverhang LONG
|
|
tmDigitizedAspectX LONG
|
|
tmDigitizedAspectY LONG
|
|
tmFirstChar WCHAR
|
|
tmLastChar WCHAR
|
|
tmDefaultChar WCHAR
|
|
tmBreakChar WCHAR
|
|
tmItalic BYTE
|
|
tmUnderlined BYTE
|
|
tmStruckOut BYTE
|
|
tmPitchAndFamily BYTE
|
|
tmCharSet BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:839:11 */
|
|
|
|
type TEXTMETRICW = tagTEXTMETRICW /* wingdi.h:860:5 */
|
|
type PTEXTMETRICW = uintptr /* wingdi.h:860:17 */
|
|
type NPTEXTMETRICW = uintptr /* wingdi.h:860:31 */
|
|
type LPTEXTMETRICW = uintptr /* wingdi.h:860:46 */
|
|
|
|
type TEXTMETRIC = TEXTMETRICA /* wingdi.h:862:3 */
|
|
type PTEXTMETRIC = PTEXTMETRICA /* wingdi.h:863:3 */
|
|
type NPTEXTMETRIC = NPTEXTMETRICA /* wingdi.h:864:3 */
|
|
type LPTEXTMETRIC = LPTEXTMETRICA /* wingdi.h:865:3 */
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
type tagNEWTEXTMETRICA = struct {
|
|
tmHeight LONG
|
|
tmAscent LONG
|
|
tmDescent LONG
|
|
tmInternalLeading LONG
|
|
tmExternalLeading LONG
|
|
tmAveCharWidth LONG
|
|
tmMaxCharWidth LONG
|
|
tmWeight LONG
|
|
tmOverhang LONG
|
|
tmDigitizedAspectX LONG
|
|
tmDigitizedAspectY LONG
|
|
tmFirstChar BYTE
|
|
tmLastChar BYTE
|
|
tmDefaultChar BYTE
|
|
tmBreakChar BYTE
|
|
tmItalic BYTE
|
|
tmUnderlined BYTE
|
|
tmStruckOut BYTE
|
|
tmPitchAndFamily BYTE
|
|
tmCharSet BYTE
|
|
_ [3]byte
|
|
ntmFlags DWORD
|
|
ntmSizeEM UINT
|
|
ntmCellHeight UINT
|
|
ntmAvgWidth UINT
|
|
} /* wingdi.h:883:11 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
type NEWTEXTMETRICA = tagNEWTEXTMETRICA /* wingdi.h:908:5 */
|
|
type PNEWTEXTMETRICA = uintptr /* wingdi.h:908:20 */
|
|
type NPNEWTEXTMETRICA = uintptr /* wingdi.h:908:37 */
|
|
type LPNEWTEXTMETRICA = uintptr /* wingdi.h:908:55 */
|
|
|
|
type tagNEWTEXTMETRICW = struct {
|
|
tmHeight LONG
|
|
tmAscent LONG
|
|
tmDescent LONG
|
|
tmInternalLeading LONG
|
|
tmExternalLeading LONG
|
|
tmAveCharWidth LONG
|
|
tmMaxCharWidth LONG
|
|
tmWeight LONG
|
|
tmOverhang LONG
|
|
tmDigitizedAspectX LONG
|
|
tmDigitizedAspectY LONG
|
|
tmFirstChar WCHAR
|
|
tmLastChar WCHAR
|
|
tmDefaultChar WCHAR
|
|
tmBreakChar WCHAR
|
|
tmItalic BYTE
|
|
tmUnderlined BYTE
|
|
tmStruckOut BYTE
|
|
tmPitchAndFamily BYTE
|
|
tmCharSet BYTE
|
|
_ [3]byte
|
|
ntmFlags DWORD
|
|
ntmSizeEM UINT
|
|
ntmCellHeight UINT
|
|
ntmAvgWidth UINT
|
|
} /* wingdi.h:910:11 */
|
|
|
|
type NEWTEXTMETRICW = tagNEWTEXTMETRICW /* wingdi.h:935:5 */
|
|
type PNEWTEXTMETRICW = uintptr /* wingdi.h:935:20 */
|
|
type NPNEWTEXTMETRICW = uintptr /* wingdi.h:935:37 */
|
|
type LPNEWTEXTMETRICW = uintptr /* wingdi.h:935:55 */
|
|
|
|
type NEWTEXTMETRIC = NEWTEXTMETRICA /* wingdi.h:937:3 */
|
|
type PNEWTEXTMETRIC = PNEWTEXTMETRICA /* wingdi.h:938:3 */
|
|
type NPNEWTEXTMETRIC = NPNEWTEXTMETRICA /* wingdi.h:939:3 */
|
|
type LPNEWTEXTMETRIC = LPNEWTEXTMETRICA /* wingdi.h:940:3 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type tagNEWTEXTMETRICEXA = struct {
|
|
ntmTm NEWTEXTMETRICA
|
|
ntmFontSig FONTSIGNATURE
|
|
} /* wingdi.h:944:11 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type NEWTEXTMETRICEXA = tagNEWTEXTMETRICEXA /* wingdi.h:947:5 */
|
|
|
|
type tagNEWTEXTMETRICEXW = struct {
|
|
ntmTm NEWTEXTMETRICW
|
|
ntmFontSig FONTSIGNATURE
|
|
} /* wingdi.h:949:11 */
|
|
|
|
type NEWTEXTMETRICEXW = tagNEWTEXTMETRICEXW /* wingdi.h:952:5 */
|
|
|
|
type NEWTEXTMETRICEX = NEWTEXTMETRICEXA /* wingdi.h:954:3 */
|
|
|
|
type tagPELARRAY = struct {
|
|
paXCount LONG
|
|
paYCount LONG
|
|
paXExt LONG
|
|
paYExt LONG
|
|
paRGBs BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:959:11 */
|
|
|
|
type PELARRAY = tagPELARRAY /* wingdi.h:965:5 */
|
|
type PPELARRAY = uintptr /* wingdi.h:965:14 */
|
|
type NPPELARRAY = uintptr /* wingdi.h:965:25 */
|
|
type LPPELARRAY = uintptr /* wingdi.h:965:37 */
|
|
type tagLOGBRUSH = struct {
|
|
lbStyle UINT
|
|
lbColor COLORREF
|
|
lbHatch ULONG_PTR
|
|
} /* wingdi.h:968:11 */
|
|
|
|
type LOGBRUSH = tagLOGBRUSH /* wingdi.h:972:5 */
|
|
type PLOGBRUSH = uintptr /* wingdi.h:972:14 */
|
|
type NPLOGBRUSH = uintptr /* wingdi.h:972:25 */
|
|
type LPLOGBRUSH = uintptr /* wingdi.h:972:37 */
|
|
|
|
type tagLOGBRUSH32 = struct {
|
|
lbStyle UINT
|
|
lbColor COLORREF
|
|
lbHatch ULONG
|
|
} /* wingdi.h:974:11 */
|
|
|
|
type LOGBRUSH32 = tagLOGBRUSH32 /* wingdi.h:978:5 */
|
|
type PLOGBRUSH32 = uintptr /* wingdi.h:978:16 */
|
|
type NPLOGBRUSH32 = uintptr /* wingdi.h:978:29 */
|
|
type LPLOGBRUSH32 = uintptr /* wingdi.h:978:43 */
|
|
type PATTERN = LOGBRUSH /* wingdi.h:981:20 */
|
|
type PPATTERN = uintptr /* wingdi.h:982:19 */
|
|
type NPPATTERN = uintptr /* wingdi.h:983:19 */
|
|
type LPPATTERN = uintptr /* wingdi.h:984:19 */
|
|
|
|
type tagLOGPEN = struct {
|
|
lopnStyle UINT
|
|
lopnWidth POINT
|
|
lopnColor COLORREF
|
|
} /* wingdi.h:988:11 */
|
|
|
|
type LOGPEN = tagLOGPEN /* wingdi.h:992:5 */
|
|
type PLOGPEN = uintptr /* wingdi.h:992:12 */
|
|
type NPLOGPEN = uintptr /* wingdi.h:992:21 */
|
|
type LPLOGPEN = uintptr /* wingdi.h:992:31 */
|
|
|
|
type tagEXTLOGPEN = struct {
|
|
elpPenStyle DWORD
|
|
elpWidth DWORD
|
|
elpBrushStyle UINT
|
|
elpColor COLORREF
|
|
elpHatch ULONG_PTR
|
|
elpNumEntries DWORD
|
|
elpStyleEntry [1]DWORD
|
|
} /* wingdi.h:996:11 */
|
|
|
|
type EXTLOGPEN = tagEXTLOGPEN /* wingdi.h:1004:5 */
|
|
type PEXTLOGPEN = uintptr /* wingdi.h:1004:15 */
|
|
type NPEXTLOGPEN = uintptr /* wingdi.h:1004:27 */
|
|
type LPEXTLOGPEN = uintptr /* wingdi.h:1004:40 */
|
|
|
|
type tagEXTLOGPEN32 = struct {
|
|
elpPenStyle DWORD
|
|
elpWidth DWORD
|
|
elpBrushStyle UINT
|
|
elpColor COLORREF
|
|
elpHatch ULONG
|
|
elpNumEntries DWORD
|
|
elpStyleEntry [1]DWORD
|
|
} /* wingdi.h:1008:11 */
|
|
|
|
type EXTLOGPEN32 = tagEXTLOGPEN32 /* wingdi.h:1016:5 */
|
|
type PEXTLOGPEN32 = uintptr /* wingdi.h:1016:18 */
|
|
type NPEXTLOGPEN32 = uintptr /* wingdi.h:1016:33 */
|
|
type LPEXTLOGPEN32 = uintptr /* wingdi.h:1016:49 */
|
|
|
|
type tagPALETTEENTRY = struct {
|
|
peRed BYTE
|
|
peGreen BYTE
|
|
peBlue BYTE
|
|
peFlags BYTE
|
|
} /* wingdi.h:1020:11 */
|
|
|
|
type PALETTEENTRY = tagPALETTEENTRY /* wingdi.h:1025:5 */
|
|
type PPALETTEENTRY = uintptr /* wingdi.h:1025:18 */
|
|
type LPPALETTEENTRY = uintptr /* wingdi.h:1025:33 */
|
|
|
|
type tagLOGPALETTE = struct {
|
|
palVersion WORD
|
|
palNumEntries WORD
|
|
palPalEntry [1]PALETTEENTRY
|
|
} /* wingdi.h:1030:11 */
|
|
|
|
type LOGPALETTE = tagLOGPALETTE /* wingdi.h:1034:5 */
|
|
type PLOGPALETTE = uintptr /* wingdi.h:1034:16 */
|
|
type NPLOGPALETTE = uintptr /* wingdi.h:1034:29 */
|
|
type LPLOGPALETTE = uintptr /* wingdi.h:1034:43 */
|
|
|
|
type tagLOGFONTA = struct {
|
|
lfHeight LONG
|
|
lfWidth LONG
|
|
lfEscapement LONG
|
|
lfOrientation LONG
|
|
lfWeight LONG
|
|
lfItalic BYTE
|
|
lfUnderline BYTE
|
|
lfStrikeOut BYTE
|
|
lfCharSet BYTE
|
|
lfOutPrecision BYTE
|
|
lfClipPrecision BYTE
|
|
lfQuality BYTE
|
|
lfPitchAndFamily BYTE
|
|
lfFaceName [32]CHAR
|
|
} /* wingdi.h:1041:11 */
|
|
|
|
type LOGFONTA = tagLOGFONTA /* wingdi.h:1056:5 */
|
|
type PLOGFONTA = uintptr /* wingdi.h:1056:14 */
|
|
type NPLOGFONTA = uintptr /* wingdi.h:1056:25 */
|
|
type LPLOGFONTA = uintptr /* wingdi.h:1056:37 */
|
|
|
|
type tagLOGFONTW = struct {
|
|
lfHeight LONG
|
|
lfWidth LONG
|
|
lfEscapement LONG
|
|
lfOrientation LONG
|
|
lfWeight LONG
|
|
lfItalic BYTE
|
|
lfUnderline BYTE
|
|
lfStrikeOut BYTE
|
|
lfCharSet BYTE
|
|
lfOutPrecision BYTE
|
|
lfClipPrecision BYTE
|
|
lfQuality BYTE
|
|
lfPitchAndFamily BYTE
|
|
lfFaceName [32]WCHAR
|
|
} /* wingdi.h:1058:11 */
|
|
|
|
type LOGFONTW = tagLOGFONTW /* wingdi.h:1073:5 */
|
|
type PLOGFONTW = uintptr /* wingdi.h:1073:14 */
|
|
type NPLOGFONTW = uintptr /* wingdi.h:1073:25 */
|
|
type LPLOGFONTW = uintptr /* wingdi.h:1073:37 */
|
|
|
|
type LOGFONT = LOGFONTA /* wingdi.h:1075:3 */
|
|
type PLOGFONT = PLOGFONTA /* wingdi.h:1076:3 */
|
|
type NPLOGFONT = NPLOGFONTA /* wingdi.h:1077:3 */
|
|
type LPLOGFONT = LPLOGFONTA /* wingdi.h:1078:3 */
|
|
|
|
type tagENUMLOGFONTA = struct {
|
|
elfLogFont LOGFONTA
|
|
elfFullName [64]BYTE
|
|
elfStyle [32]BYTE
|
|
} /* wingdi.h:1084:11 */
|
|
|
|
type ENUMLOGFONTA = tagENUMLOGFONTA /* wingdi.h:1088:5 */
|
|
type LPENUMLOGFONTA = uintptr /* wingdi.h:1088:18 */
|
|
|
|
type tagENUMLOGFONTW = struct {
|
|
elfLogFont LOGFONTW
|
|
elfFullName [64]WCHAR
|
|
elfStyle [32]WCHAR
|
|
} /* wingdi.h:1090:11 */
|
|
|
|
type ENUMLOGFONTW = tagENUMLOGFONTW /* wingdi.h:1094:5 */
|
|
type LPENUMLOGFONTW = uintptr /* wingdi.h:1094:18 */
|
|
|
|
type ENUMLOGFONT = ENUMLOGFONTA /* wingdi.h:1096:3 */
|
|
type LPENUMLOGFONT = LPENUMLOGFONTA /* wingdi.h:1097:3 */
|
|
|
|
type tagENUMLOGFONTEXA = struct {
|
|
elfLogFont LOGFONTA
|
|
elfFullName [64]BYTE
|
|
elfStyle [32]BYTE
|
|
elfScript [32]BYTE
|
|
} /* wingdi.h:1099:11 */
|
|
|
|
type ENUMLOGFONTEXA = tagENUMLOGFONTEXA /* wingdi.h:1104:5 */
|
|
type LPENUMLOGFONTEXA = uintptr /* wingdi.h:1104:20 */
|
|
|
|
type tagENUMLOGFONTEXW = struct {
|
|
elfLogFont LOGFONTW
|
|
elfFullName [64]WCHAR
|
|
elfStyle [32]WCHAR
|
|
elfScript [32]WCHAR
|
|
} /* wingdi.h:1106:11 */
|
|
|
|
type ENUMLOGFONTEXW = tagENUMLOGFONTEXW /* wingdi.h:1111:5 */
|
|
type LPENUMLOGFONTEXW = uintptr /* wingdi.h:1111:20 */
|
|
|
|
type ENUMLOGFONTEX = ENUMLOGFONTEXA /* wingdi.h:1113:3 */
|
|
type LPENUMLOGFONTEX = LPENUMLOGFONTEXA /* wingdi.h:1114:3 */
|
|
|
|
type tagPANOSE = struct {
|
|
bFamilyType BYTE
|
|
bSerifStyle BYTE
|
|
bWeight BYTE
|
|
bProportion BYTE
|
|
bContrast BYTE
|
|
bStrokeVariation BYTE
|
|
bArmStyle BYTE
|
|
bLetterform BYTE
|
|
bMidline BYTE
|
|
bXHeight BYTE
|
|
} /* wingdi.h:1235:11 */
|
|
|
|
type PANOSE = tagPANOSE /* wingdi.h:1246:5 */
|
|
type LPPANOSE = uintptr /* wingdi.h:1246:12 */
|
|
|
|
type tagEXTLOGFONTA = struct {
|
|
elfLogFont LOGFONTA
|
|
elfFullName [64]BYTE
|
|
elfStyle [32]BYTE
|
|
elfVersion DWORD
|
|
elfStyleSize DWORD
|
|
elfMatch DWORD
|
|
elfReserved DWORD
|
|
elfVendorId [4]BYTE
|
|
elfCulture DWORD
|
|
elfPanose PANOSE
|
|
_ [2]byte
|
|
} /* wingdi.h:1356:11 */
|
|
|
|
type EXTLOGFONTA = tagEXTLOGFONTA /* wingdi.h:1367:5 */
|
|
type PEXTLOGFONTA = uintptr /* wingdi.h:1367:17 */
|
|
type NPEXTLOGFONTA = uintptr /* wingdi.h:1367:31 */
|
|
type LPEXTLOGFONTA = uintptr /* wingdi.h:1367:46 */
|
|
|
|
type tagEXTLOGFONTW = struct {
|
|
elfLogFont LOGFONTW
|
|
elfFullName [64]WCHAR
|
|
elfStyle [32]WCHAR
|
|
elfVersion DWORD
|
|
elfStyleSize DWORD
|
|
elfMatch DWORD
|
|
elfReserved DWORD
|
|
elfVendorId [4]BYTE
|
|
elfCulture DWORD
|
|
elfPanose PANOSE
|
|
_ [2]byte
|
|
} /* wingdi.h:1369:11 */
|
|
|
|
type EXTLOGFONTW = tagEXTLOGFONTW /* wingdi.h:1380:5 */
|
|
type PEXTLOGFONTW = uintptr /* wingdi.h:1380:17 */
|
|
type NPEXTLOGFONTW = uintptr /* wingdi.h:1380:31 */
|
|
type LPEXTLOGFONTW = uintptr /* wingdi.h:1380:46 */
|
|
|
|
type EXTLOGFONT = EXTLOGFONTA /* wingdi.h:1382:3 */
|
|
type PEXTLOGFONT = PEXTLOGFONTA /* wingdi.h:1383:3 */
|
|
type NPEXTLOGFONT = NPEXTLOGFONTA /* wingdi.h:1384:3 */
|
|
type LPEXTLOGFONT = LPEXTLOGFONTA /* wingdi.h:1385:3 */
|
|
|
|
type _devicemodeA = struct {
|
|
dmDeviceName [32]BYTE
|
|
dmSpecVersion WORD
|
|
dmDriverVersion WORD
|
|
dmSize WORD
|
|
dmDriverExtra WORD
|
|
dmFields DWORD
|
|
__44 struct {
|
|
_ [0]uint32
|
|
__0 struct {
|
|
dmOrientation int16
|
|
dmPaperSize int16
|
|
dmPaperLength int16
|
|
dmPaperWidth int16
|
|
dmScale int16
|
|
dmCopies int16
|
|
dmDefaultSource int16
|
|
dmPrintQuality int16
|
|
}
|
|
}
|
|
dmColor int16
|
|
dmDuplex int16
|
|
dmYResolution int16
|
|
dmTTOption int16
|
|
dmCollate int16
|
|
dmFormName [32]BYTE
|
|
dmLogPixels WORD
|
|
dmBitsPerPel DWORD
|
|
dmPelsWidth DWORD
|
|
dmPelsHeight DWORD
|
|
__116 struct{ dmDisplayFlags DWORD }
|
|
dmDisplayFrequency DWORD
|
|
dmICMMethod DWORD
|
|
dmICMIntent DWORD
|
|
dmMediaType DWORD
|
|
dmDitherType DWORD
|
|
dmReserved1 DWORD
|
|
dmReserved2 DWORD
|
|
dmPanningWidth DWORD
|
|
dmPanningHeight DWORD
|
|
} /* wingdi.h:1669:11 */
|
|
|
|
type DEVMODEA = _devicemodeA /* wingdi.h:1716:5 */
|
|
type PDEVMODEA = uintptr /* wingdi.h:1716:14 */
|
|
type NPDEVMODEA = uintptr /* wingdi.h:1716:25 */
|
|
type LPDEVMODEA = uintptr /* wingdi.h:1716:37 */
|
|
|
|
type _devicemodeW = struct {
|
|
dmDeviceName [32]WCHAR
|
|
dmSpecVersion WORD
|
|
dmDriverVersion WORD
|
|
dmSize WORD
|
|
dmDriverExtra WORD
|
|
dmFields DWORD
|
|
__76 struct {
|
|
_ [0]uint32
|
|
__0 struct {
|
|
dmOrientation int16
|
|
dmPaperSize int16
|
|
dmPaperLength int16
|
|
dmPaperWidth int16
|
|
dmScale int16
|
|
dmCopies int16
|
|
dmDefaultSource int16
|
|
dmPrintQuality int16
|
|
}
|
|
}
|
|
dmColor int16
|
|
dmDuplex int16
|
|
dmYResolution int16
|
|
dmTTOption int16
|
|
dmCollate int16
|
|
dmFormName [32]WCHAR
|
|
dmLogPixels WORD
|
|
dmBitsPerPel DWORD
|
|
dmPelsWidth DWORD
|
|
dmPelsHeight DWORD
|
|
__180 struct{ dmDisplayFlags DWORD }
|
|
dmDisplayFrequency DWORD
|
|
dmICMMethod DWORD
|
|
dmICMIntent DWORD
|
|
dmMediaType DWORD
|
|
dmDitherType DWORD
|
|
dmReserved1 DWORD
|
|
dmReserved2 DWORD
|
|
dmPanningWidth DWORD
|
|
dmPanningHeight DWORD
|
|
} /* wingdi.h:1718:11 */
|
|
|
|
type DEVMODEW = _devicemodeW /* wingdi.h:1765:5 */
|
|
type PDEVMODEW = uintptr /* wingdi.h:1765:14 */
|
|
type NPDEVMODEW = uintptr /* wingdi.h:1765:25 */
|
|
type LPDEVMODEW = uintptr /* wingdi.h:1765:37 */
|
|
|
|
type DEVMODE = DEVMODEA /* wingdi.h:1767:3 */
|
|
type PDEVMODE = PDEVMODEA /* wingdi.h:1768:3 */
|
|
type NPDEVMODE = NPDEVMODEA /* wingdi.h:1769:3 */
|
|
type LPDEVMODE = LPDEVMODEA /* wingdi.h:1770:3 */
|
|
|
|
type _DISPLAY_DEVICEA = struct {
|
|
cb DWORD
|
|
DeviceName [32]CHAR
|
|
DeviceString [128]CHAR
|
|
StateFlags DWORD
|
|
DeviceID [128]CHAR
|
|
DeviceKey [128]CHAR
|
|
} /* wingdi.h:2021:11 */
|
|
|
|
type DISPLAY_DEVICEA = _DISPLAY_DEVICEA /* wingdi.h:2028:5 */
|
|
type PDISPLAY_DEVICEA = uintptr /* wingdi.h:2028:21 */
|
|
type LPDISPLAY_DEVICEA = uintptr /* wingdi.h:2028:39 */
|
|
|
|
type _DISPLAY_DEVICEW = struct {
|
|
cb DWORD
|
|
DeviceName [32]WCHAR
|
|
DeviceString [128]WCHAR
|
|
StateFlags DWORD
|
|
DeviceID [128]WCHAR
|
|
DeviceKey [128]WCHAR
|
|
} /* wingdi.h:2030:11 */
|
|
|
|
type DISPLAY_DEVICEW = _DISPLAY_DEVICEW /* wingdi.h:2037:5 */
|
|
type PDISPLAY_DEVICEW = uintptr /* wingdi.h:2037:21 */
|
|
type LPDISPLAY_DEVICEW = uintptr /* wingdi.h:2037:39 */
|
|
|
|
type DISPLAY_DEVICE = DISPLAY_DEVICEA /* wingdi.h:2039:3 */
|
|
type PDISPLAY_DEVICE = PDISPLAY_DEVICEA /* wingdi.h:2040:3 */
|
|
type LPDISPLAY_DEVICE = LPDISPLAY_DEVICEA /* wingdi.h:2041:3 */
|
|
|
|
type _RGNDATAHEADER = struct {
|
|
dwSize DWORD
|
|
iType DWORD
|
|
nCount DWORD
|
|
nRgnSize DWORD
|
|
rcBound RECT
|
|
} /* wingdi.h:2315:11 */
|
|
|
|
type RGNDATAHEADER = _RGNDATAHEADER /* wingdi.h:2321:5 */
|
|
type PRGNDATAHEADER = uintptr /* wingdi.h:2321:19 */
|
|
|
|
type _RGNDATA = struct {
|
|
rdh RGNDATAHEADER
|
|
Buffer [1]int8
|
|
_ [3]byte
|
|
} /* wingdi.h:2323:11 */
|
|
|
|
type RGNDATA = _RGNDATA /* wingdi.h:2326:5 */
|
|
type PRGNDATA = uintptr /* wingdi.h:2326:13 */
|
|
type NPRGNDATA = uintptr /* wingdi.h:2326:23 */
|
|
type LPRGNDATA = uintptr /* wingdi.h:2326:34 */
|
|
|
|
type _ABC = struct {
|
|
abcA int32
|
|
abcB UINT
|
|
abcC int32
|
|
} /* wingdi.h:2332:11 */
|
|
|
|
type ABC = _ABC /* wingdi.h:2336:5 */
|
|
type PABC = uintptr /* wingdi.h:2336:9 */
|
|
type NPABC = uintptr /* wingdi.h:2336:15 */
|
|
type LPABC = uintptr /* wingdi.h:2336:22 */
|
|
|
|
type _ABCFLOAT = struct {
|
|
abcfA FLOAT
|
|
abcfB FLOAT
|
|
abcfC FLOAT
|
|
} /* wingdi.h:2338:11 */
|
|
|
|
type ABCFLOAT = _ABCFLOAT /* wingdi.h:2342:5 */
|
|
type PABCFLOAT = uintptr /* wingdi.h:2342:14 */
|
|
type NPABCFLOAT = uintptr /* wingdi.h:2342:25 */
|
|
type LPABCFLOAT = uintptr /* wingdi.h:2342:37 */
|
|
|
|
type _OUTLINETEXTMETRICA = struct {
|
|
otmSize UINT
|
|
otmTextMetrics TEXTMETRICA
|
|
otmFiller BYTE
|
|
otmPanoseNumber PANOSE
|
|
_ [1]byte
|
|
otmfsSelection UINT
|
|
otmfsType UINT
|
|
otmsCharSlopeRise int32
|
|
otmsCharSlopeRun int32
|
|
otmItalicAngle int32
|
|
otmEMSquare UINT
|
|
otmAscent int32
|
|
otmDescent int32
|
|
otmLineGap UINT
|
|
otmsCapEmHeight UINT
|
|
otmsXHeight UINT
|
|
otmrcFontBox RECT
|
|
otmMacAscent int32
|
|
otmMacDescent int32
|
|
otmMacLineGap UINT
|
|
otmusMinimumPPEM UINT
|
|
otmptSubscriptSize POINT
|
|
otmptSubscriptOffset POINT
|
|
otmptSuperscriptSize POINT
|
|
otmptSuperscriptOffset POINT
|
|
otmsStrikeoutSize UINT
|
|
otmsStrikeoutPosition int32
|
|
otmsUnderscoreSize int32
|
|
otmsUnderscorePosition int32
|
|
otmpFamilyName PSTR
|
|
otmpFaceName PSTR
|
|
otmpStyleName PSTR
|
|
otmpFullName PSTR
|
|
} /* wingdi.h:2348:11 */
|
|
|
|
type OUTLINETEXTMETRICA = _OUTLINETEXTMETRICA /* wingdi.h:2381:5 */
|
|
type POUTLINETEXTMETRICA = uintptr /* wingdi.h:2381:24 */
|
|
type NPOUTLINETEXTMETRICA = uintptr /* wingdi.h:2381:45 */
|
|
type LPOUTLINETEXTMETRICA = uintptr /* wingdi.h:2381:67 */
|
|
|
|
type _OUTLINETEXTMETRICW = struct {
|
|
otmSize UINT
|
|
otmTextMetrics TEXTMETRICW
|
|
otmFiller BYTE
|
|
otmPanoseNumber PANOSE
|
|
_ [1]byte
|
|
otmfsSelection UINT
|
|
otmfsType UINT
|
|
otmsCharSlopeRise int32
|
|
otmsCharSlopeRun int32
|
|
otmItalicAngle int32
|
|
otmEMSquare UINT
|
|
otmAscent int32
|
|
otmDescent int32
|
|
otmLineGap UINT
|
|
otmsCapEmHeight UINT
|
|
otmsXHeight UINT
|
|
otmrcFontBox RECT
|
|
otmMacAscent int32
|
|
otmMacDescent int32
|
|
otmMacLineGap UINT
|
|
otmusMinimumPPEM UINT
|
|
otmptSubscriptSize POINT
|
|
otmptSubscriptOffset POINT
|
|
otmptSuperscriptSize POINT
|
|
otmptSuperscriptOffset POINT
|
|
otmsStrikeoutSize UINT
|
|
otmsStrikeoutPosition int32
|
|
otmsUnderscoreSize int32
|
|
otmsUnderscorePosition int32
|
|
otmpFamilyName PSTR
|
|
otmpFaceName PSTR
|
|
otmpStyleName PSTR
|
|
otmpFullName PSTR
|
|
} /* wingdi.h:2383:11 */
|
|
|
|
type OUTLINETEXTMETRICW = _OUTLINETEXTMETRICW /* wingdi.h:2416:5 */
|
|
type POUTLINETEXTMETRICW = uintptr /* wingdi.h:2416:24 */
|
|
type NPOUTLINETEXTMETRICW = uintptr /* wingdi.h:2416:45 */
|
|
type LPOUTLINETEXTMETRICW = uintptr /* wingdi.h:2416:67 */
|
|
|
|
type OUTLINETEXTMETRIC = OUTLINETEXTMETRICA /* wingdi.h:2418:3 */
|
|
type POUTLINETEXTMETRIC = POUTLINETEXTMETRICA /* wingdi.h:2419:3 */
|
|
type NPOUTLINETEXTMETRIC = NPOUTLINETEXTMETRICA /* wingdi.h:2420:3 */
|
|
type LPOUTLINETEXTMETRIC = LPOUTLINETEXTMETRICA /* wingdi.h:2421:3 */
|
|
|
|
type tagPOLYTEXTA = struct {
|
|
x int32
|
|
y int32
|
|
n UINT
|
|
lpstr LPCSTR
|
|
uiFlags UINT
|
|
rcl RECT
|
|
pdx uintptr
|
|
} /* wingdi.h:2426:11 */
|
|
|
|
type POLYTEXTA = tagPOLYTEXTA /* wingdi.h:2434:5 */
|
|
type PPOLYTEXTA = uintptr /* wingdi.h:2434:15 */
|
|
type NPPOLYTEXTA = uintptr /* wingdi.h:2434:27 */
|
|
type LPPOLYTEXTA = uintptr /* wingdi.h:2434:40 */
|
|
|
|
type tagPOLYTEXTW = struct {
|
|
x int32
|
|
y int32
|
|
n UINT
|
|
lpstr LPCWSTR
|
|
uiFlags UINT
|
|
rcl RECT
|
|
pdx uintptr
|
|
} /* wingdi.h:2436:11 */
|
|
|
|
type POLYTEXTW = tagPOLYTEXTW /* wingdi.h:2444:5 */
|
|
type PPOLYTEXTW = uintptr /* wingdi.h:2444:15 */
|
|
type NPPOLYTEXTW = uintptr /* wingdi.h:2444:27 */
|
|
type LPPOLYTEXTW = uintptr /* wingdi.h:2444:40 */
|
|
|
|
type POLYTEXT = POLYTEXTA /* wingdi.h:2446:3 */
|
|
type PPOLYTEXT = PPOLYTEXTA /* wingdi.h:2447:3 */
|
|
type NPPOLYTEXT = NPPOLYTEXTA /* wingdi.h:2448:3 */
|
|
type LPPOLYTEXT = LPPOLYTEXTA /* wingdi.h:2449:3 */
|
|
|
|
type _FIXED = struct {
|
|
fract WORD
|
|
value int16
|
|
} /* wingdi.h:2453:11 */
|
|
|
|
type FIXED = _FIXED /* wingdi.h:2456:5 */
|
|
|
|
type _MAT2 = struct {
|
|
eM11 FIXED
|
|
eM12 FIXED
|
|
eM21 FIXED
|
|
eM22 FIXED
|
|
} /* wingdi.h:2458:11 */
|
|
|
|
type MAT2 = _MAT2 /* wingdi.h:2463:5 */
|
|
type LPMAT2 = uintptr /* wingdi.h:2463:10 */
|
|
|
|
type _GLYPHMETRICS = struct {
|
|
gmBlackBoxX UINT
|
|
gmBlackBoxY UINT
|
|
gmptGlyphOrigin POINT
|
|
gmCellIncX int16
|
|
gmCellIncY int16
|
|
} /* wingdi.h:2465:11 */
|
|
|
|
type GLYPHMETRICS = _GLYPHMETRICS /* wingdi.h:2471:5 */
|
|
type LPGLYPHMETRICS = uintptr /* wingdi.h:2471:18 */
|
|
|
|
type tagPOINTFX = struct {
|
|
x FIXED
|
|
y FIXED
|
|
} /* wingdi.h:2491:11 */
|
|
|
|
type POINTFX = tagPOINTFX /* wingdi.h:2494:5 */
|
|
type LPPOINTFX = uintptr /* wingdi.h:2494:13 */
|
|
|
|
type tagTTPOLYCURVE = struct {
|
|
wType WORD
|
|
cpfx WORD
|
|
apfx [1]POINTFX
|
|
} /* wingdi.h:2496:11 */
|
|
|
|
type TTPOLYCURVE = tagTTPOLYCURVE /* wingdi.h:2500:5 */
|
|
type LPTTPOLYCURVE = uintptr /* wingdi.h:2500:17 */
|
|
|
|
type tagTTPOLYGONHEADER = struct {
|
|
cb DWORD
|
|
dwType DWORD
|
|
pfxStart POINTFX
|
|
} /* wingdi.h:2502:11 */
|
|
|
|
type TTPOLYGONHEADER = tagTTPOLYGONHEADER /* wingdi.h:2506:5 */
|
|
type LPTTPOLYGONHEADER = uintptr /* wingdi.h:2506:21 */
|
|
|
|
type tagGCP_RESULTSA = struct {
|
|
lStructSize DWORD
|
|
lpOutString LPSTR
|
|
lpOrder uintptr
|
|
lpDx uintptr
|
|
lpCaretPos uintptr
|
|
lpClass LPSTR
|
|
lpGlyphs LPWSTR
|
|
nGlyphs UINT
|
|
nMaxFit int32
|
|
} /* wingdi.h:2549:11 */
|
|
|
|
type GCP_RESULTSA = tagGCP_RESULTSA /* wingdi.h:2559:5 */
|
|
type LPGCP_RESULTSA = uintptr /* wingdi.h:2559:18 */
|
|
type tagGCP_RESULTSW = struct {
|
|
lStructSize DWORD
|
|
lpOutString LPWSTR
|
|
lpOrder uintptr
|
|
lpDx uintptr
|
|
lpCaretPos uintptr
|
|
lpClass LPSTR
|
|
lpGlyphs LPWSTR
|
|
nGlyphs UINT
|
|
nMaxFit int32
|
|
} /* wingdi.h:2560:11 */
|
|
|
|
type GCP_RESULTSW = tagGCP_RESULTSW /* wingdi.h:2570:5 */
|
|
type LPGCP_RESULTSW = uintptr /* wingdi.h:2570:18 */
|
|
|
|
type GCP_RESULTS = GCP_RESULTSA /* wingdi.h:2572:3 */
|
|
type LPGCP_RESULTS = LPGCP_RESULTSA /* wingdi.h:2573:3 */
|
|
|
|
type _RASTERIZER_STATUS = struct {
|
|
nSize int16
|
|
wFlags int16
|
|
nLanguageID int16
|
|
} /* wingdi.h:2575:11 */
|
|
|
|
type RASTERIZER_STATUS = _RASTERIZER_STATUS /* wingdi.h:2579:5 */
|
|
type LPRASTERIZER_STATUS = uintptr /* wingdi.h:2579:23 */
|
|
|
|
type tagPIXELFORMATDESCRIPTOR = struct {
|
|
nSize WORD
|
|
nVersion WORD
|
|
dwFlags DWORD
|
|
iPixelType BYTE
|
|
cColorBits BYTE
|
|
cRedBits BYTE
|
|
cRedShift BYTE
|
|
cGreenBits BYTE
|
|
cGreenShift BYTE
|
|
cBlueBits BYTE
|
|
cBlueShift BYTE
|
|
cAlphaBits BYTE
|
|
cAlphaShift BYTE
|
|
cAccumBits BYTE
|
|
cAccumRedBits BYTE
|
|
cAccumGreenBits BYTE
|
|
cAccumBlueBits BYTE
|
|
cAccumAlphaBits BYTE
|
|
cDepthBits BYTE
|
|
cStencilBits BYTE
|
|
cAuxBuffers BYTE
|
|
iLayerType BYTE
|
|
bReserved BYTE
|
|
dwLayerMask DWORD
|
|
dwVisibleMask DWORD
|
|
dwDamageMask DWORD
|
|
} /* wingdi.h:2586:11 */
|
|
|
|
type PIXELFORMATDESCRIPTOR = tagPIXELFORMATDESCRIPTOR /* wingdi.h:2613:5 */
|
|
type PPIXELFORMATDESCRIPTOR = uintptr /* wingdi.h:2613:27 */
|
|
type LPPIXELFORMATDESCRIPTOR = uintptr /* wingdi.h:2613:51 */
|
|
|
|
type OLDFONTENUMPROCA = uintptr /* wingdi.h:2646:15 */
|
|
type OLDFONTENUMPROCW = uintptr /* wingdi.h:2647:15 */
|
|
|
|
type FONTENUMPROCA = OLDFONTENUMPROCA /* wingdi.h:2657:28 */
|
|
type FONTENUMPROCW = OLDFONTENUMPROCW /* wingdi.h:2658:28 */
|
|
|
|
type FONTENUMPROC = FONTENUMPROCA /* wingdi.h:2660:3 */
|
|
|
|
type GOBJENUMPROC = uintptr /* wingdi.h:2662:15 */
|
|
type LINEDDAPROC = uintptr /* wingdi.h:2663:16 */
|
|
|
|
type LPFNDEVMODE = uintptr /* wingdi.h:2725:16 */
|
|
type LPFNDEVCAPS = uintptr /* wingdi.h:2726:17 */
|
|
|
|
type tagWCRANGE = struct {
|
|
wcLow WCHAR
|
|
cGlyphs USHORT
|
|
} /* wingdi.h:2906:11 */
|
|
|
|
type WCRANGE = tagWCRANGE /* wingdi.h:2909:5 */
|
|
type PWCRANGE = uintptr /* wingdi.h:2909:13 */
|
|
type LPWCRANGE = uintptr /* wingdi.h:2909:23 */
|
|
|
|
type tagGLYPHSET = struct {
|
|
cbThis DWORD
|
|
flAccel DWORD
|
|
cGlyphsSupported DWORD
|
|
cRanges DWORD
|
|
ranges [1]WCRANGE
|
|
} /* wingdi.h:2911:11 */
|
|
|
|
type GLYPHSET = tagGLYPHSET /* wingdi.h:2917:5 */
|
|
type PGLYPHSET = uintptr /* wingdi.h:2917:14 */
|
|
type LPGLYPHSET = uintptr /* wingdi.h:2917:25 */
|
|
|
|
type tagDESIGNVECTOR = struct {
|
|
dvReserved DWORD
|
|
dvNumAxes DWORD
|
|
dvValues [16]LONG
|
|
} /* wingdi.h:2937:11 */
|
|
|
|
type DESIGNVECTOR = tagDESIGNVECTOR /* wingdi.h:2941:5 */
|
|
type PDESIGNVECTOR = uintptr /* wingdi.h:2941:18 */
|
|
type LPDESIGNVECTOR = uintptr /* wingdi.h:2941:33 */
|
|
|
|
type tagAXISINFOA = struct {
|
|
axMinValue LONG
|
|
axMaxValue LONG
|
|
axAxisName [16]BYTE
|
|
} /* wingdi.h:2958:11 */
|
|
|
|
type AXISINFOA = tagAXISINFOA /* wingdi.h:2962:5 */
|
|
type PAXISINFOA = uintptr /* wingdi.h:2962:15 */
|
|
type LPAXISINFOA = uintptr /* wingdi.h:2962:27 */
|
|
|
|
type tagAXISINFOW = struct {
|
|
axMinValue LONG
|
|
axMaxValue LONG
|
|
axAxisName [16]WCHAR
|
|
} /* wingdi.h:2964:11 */
|
|
|
|
type AXISINFOW = tagAXISINFOW /* wingdi.h:2968:5 */
|
|
type PAXISINFOW = uintptr /* wingdi.h:2968:15 */
|
|
type LPAXISINFOW = uintptr /* wingdi.h:2968:27 */
|
|
|
|
type AXISINFO = AXISINFOA /* wingdi.h:2970:3 */
|
|
type PAXISINFO = PAXISINFOA /* wingdi.h:2971:3 */
|
|
type LPAXISINFO = LPAXISINFOA /* wingdi.h:2972:3 */
|
|
|
|
type tagAXESLISTA = struct {
|
|
axlReserved DWORD
|
|
axlNumAxes DWORD
|
|
axlAxisInfo [16]AXISINFOA
|
|
} /* wingdi.h:2974:11 */
|
|
|
|
type AXESLISTA = tagAXESLISTA /* wingdi.h:2978:5 */
|
|
type PAXESLISTA = uintptr /* wingdi.h:2978:15 */
|
|
type LPAXESLISTA = uintptr /* wingdi.h:2978:27 */
|
|
|
|
type tagAXESLISTW = struct {
|
|
axlReserved DWORD
|
|
axlNumAxes DWORD
|
|
axlAxisInfo [16]AXISINFOW
|
|
} /* wingdi.h:2980:11 */
|
|
|
|
type AXESLISTW = tagAXESLISTW /* wingdi.h:2984:5 */
|
|
type PAXESLISTW = uintptr /* wingdi.h:2984:15 */
|
|
type LPAXESLISTW = uintptr /* wingdi.h:2984:27 */
|
|
|
|
type AXESLIST = AXESLISTA /* wingdi.h:2986:3 */
|
|
type PAXESLIST = PAXESLISTA /* wingdi.h:2987:3 */
|
|
type LPAXESLIST = LPAXESLISTA /* wingdi.h:2988:3 */
|
|
|
|
type tagENUMLOGFONTEXDVA = struct {
|
|
elfEnumLogfontEx ENUMLOGFONTEXA
|
|
elfDesignVector DESIGNVECTOR
|
|
} /* wingdi.h:2990:11 */
|
|
|
|
type ENUMLOGFONTEXDVA = tagENUMLOGFONTEXDVA /* wingdi.h:2993:5 */
|
|
type PENUMLOGFONTEXDVA = uintptr /* wingdi.h:2993:22 */
|
|
type LPENUMLOGFONTEXDVA = uintptr /* wingdi.h:2993:41 */
|
|
|
|
type tagENUMLOGFONTEXDVW = struct {
|
|
elfEnumLogfontEx ENUMLOGFONTEXW
|
|
elfDesignVector DESIGNVECTOR
|
|
} /* wingdi.h:2995:11 */
|
|
|
|
type ENUMLOGFONTEXDVW = tagENUMLOGFONTEXDVW /* wingdi.h:2998:5 */
|
|
type PENUMLOGFONTEXDVW = uintptr /* wingdi.h:2998:22 */
|
|
type LPENUMLOGFONTEXDVW = uintptr /* wingdi.h:2998:41 */
|
|
|
|
type ENUMLOGFONTEXDV = ENUMLOGFONTEXDVA /* wingdi.h:3000:3 */
|
|
type PENUMLOGFONTEXDV = PENUMLOGFONTEXDVA /* wingdi.h:3001:3 */
|
|
type LPENUMLOGFONTEXDV = LPENUMLOGFONTEXDVA /* wingdi.h:3002:3 */
|
|
|
|
type tagENUMTEXTMETRICA = struct {
|
|
etmNewTextMetricEx NEWTEXTMETRICEXA
|
|
etmAxesList AXESLISTA
|
|
} /* wingdi.h:3010:11 */
|
|
|
|
type ENUMTEXTMETRICA = tagENUMTEXTMETRICA /* wingdi.h:3013:5 */
|
|
type PENUMTEXTMETRICA = uintptr /* wingdi.h:3013:21 */
|
|
type LPENUMTEXTMETRICA = uintptr /* wingdi.h:3013:39 */
|
|
type tagENUMTEXTMETRICW = struct {
|
|
etmNewTextMetricEx NEWTEXTMETRICEXW
|
|
etmAxesList AXESLISTW
|
|
} /* wingdi.h:3014:11 */
|
|
|
|
type ENUMTEXTMETRICW = tagENUMTEXTMETRICW /* wingdi.h:3018:5 */
|
|
type PENUMTEXTMETRICW = uintptr /* wingdi.h:3018:21 */
|
|
type LPENUMTEXTMETRICW = uintptr /* wingdi.h:3018:39 */
|
|
|
|
type ENUMTEXTMETRIC = ENUMTEXTMETRICA /* wingdi.h:3020:3 */
|
|
type PENUMTEXTMETRIC = PENUMTEXTMETRICA /* wingdi.h:3021:3 */
|
|
type LPENUMTEXTMETRIC = LPENUMTEXTMETRICA /* wingdi.h:3022:3 */
|
|
|
|
type COLOR16 = USHORT /* wingdi.h:3124:18 */
|
|
|
|
type _TRIVERTEX = struct {
|
|
x LONG
|
|
y LONG
|
|
Red COLOR16
|
|
Green COLOR16
|
|
Blue COLOR16
|
|
Alpha COLOR16
|
|
} /* wingdi.h:3126:11 */
|
|
|
|
type TRIVERTEX = _TRIVERTEX /* wingdi.h:3133:5 */
|
|
type PTRIVERTEX = uintptr /* wingdi.h:3133:15 */
|
|
type LPTRIVERTEX = uintptr /* wingdi.h:3133:27 */
|
|
type _GRADIENT_TRIANGLE = struct {
|
|
Vertex1 ULONG
|
|
Vertex2 ULONG
|
|
Vertex3 ULONG
|
|
} /* wingdi.h:3136:11 */
|
|
|
|
type GRADIENT_TRIANGLE = _GRADIENT_TRIANGLE /* wingdi.h:3140:5 */
|
|
type PGRADIENT_TRIANGLE = uintptr /* wingdi.h:3140:23 */
|
|
type LPGRADIENT_TRIANGLE = uintptr /* wingdi.h:3140:43 */
|
|
|
|
type _GRADIENT_RECT = struct {
|
|
UpperLeft ULONG
|
|
LowerRight ULONG
|
|
} /* wingdi.h:3142:11 */
|
|
|
|
type GRADIENT_RECT = _GRADIENT_RECT /* wingdi.h:3145:5 */
|
|
type PGRADIENT_RECT = uintptr /* wingdi.h:3145:19 */
|
|
type LPGRADIENT_RECT = uintptr /* wingdi.h:3145:35 */
|
|
type _BLENDFUNCTION = struct {
|
|
BlendOp BYTE
|
|
BlendFlags BYTE
|
|
SourceConstantAlpha BYTE
|
|
AlphaFormat BYTE
|
|
} /* wingdi.h:3148:11 */
|
|
|
|
type BLENDFUNCTION = _BLENDFUNCTION /* wingdi.h:3153:5 */
|
|
type PBLENDFUNCTION = uintptr /* wingdi.h:3153:19 */
|
|
|
|
type MFENUMPROC = uintptr /* wingdi.h:3181:15 */
|
|
|
|
type ENHMFENUMPROC = uintptr /* wingdi.h:3185:15 */
|
|
|
|
type tagDIBSECTION = struct {
|
|
dsBm BITMAP
|
|
dsBmih BITMAPINFOHEADER
|
|
dsBitfields [3]DWORD
|
|
dshSection HANDLE
|
|
dsOffset DWORD
|
|
} /* wingdi.h:3217:11 */
|
|
|
|
type DIBSECTION = tagDIBSECTION /* wingdi.h:3223:5 */
|
|
type LPDIBSECTION = uintptr /* wingdi.h:3223:16 */
|
|
type PDIBSECTION = uintptr /* wingdi.h:3223:30 */
|
|
|
|
type tagCOLORADJUSTMENT = struct {
|
|
caSize WORD
|
|
caFlags WORD
|
|
caIlluminantIndex WORD
|
|
caRedGamma WORD
|
|
caGreenGamma WORD
|
|
caBlueGamma WORD
|
|
caReferenceBlack WORD
|
|
caReferenceWhite WORD
|
|
caContrast SHORT
|
|
caBrightness SHORT
|
|
caColorfulness SHORT
|
|
caRedGreenTint SHORT
|
|
} /* wingdi.h:3265:11 */
|
|
|
|
type COLORADJUSTMENT = tagCOLORADJUSTMENT /* wingdi.h:3278:5 */
|
|
type PCOLORADJUSTMENT = uintptr /* wingdi.h:3278:21 */
|
|
type LPCOLORADJUSTMENT = uintptr /* wingdi.h:3278:39 */
|
|
|
|
type ABORTPROC = uintptr /* wingdi.h:3284:19 */
|
|
|
|
type _DOCINFOA = struct {
|
|
cbSize int32
|
|
lpszDocName LPCSTR
|
|
lpszOutput LPCSTR
|
|
lpszDatatype LPCSTR
|
|
fwType DWORD
|
|
} /* wingdi.h:3286:11 */
|
|
|
|
type DOCINFOA = _DOCINFOA /* wingdi.h:3292:5 */
|
|
type LPDOCINFOA = uintptr /* wingdi.h:3292:14 */
|
|
|
|
type _DOCINFOW = struct {
|
|
cbSize int32
|
|
lpszDocName LPCWSTR
|
|
lpszOutput LPCWSTR
|
|
lpszDatatype LPCWSTR
|
|
fwType DWORD
|
|
} /* wingdi.h:3294:11 */
|
|
|
|
type DOCINFOW = _DOCINFOW /* wingdi.h:3300:5 */
|
|
type LPDOCINFOW = uintptr /* wingdi.h:3300:14 */
|
|
|
|
type DOCINFO = DOCINFOA /* wingdi.h:3302:3 */
|
|
type LPDOCINFO = LPDOCINFOA /* wingdi.h:3303:3 */
|
|
|
|
type tagKERNINGPAIR = struct {
|
|
wFirst WORD
|
|
wSecond WORD
|
|
iKernAmount int32
|
|
} /* wingdi.h:3373:11 */
|
|
|
|
type KERNINGPAIR = tagKERNINGPAIR /* wingdi.h:3377:5 */
|
|
type LPKERNINGPAIR = uintptr /* wingdi.h:3377:17 */
|
|
|
|
type ICMENUMPROCA = uintptr /* wingdi.h:3395:15 */
|
|
type ICMENUMPROCW = uintptr /* wingdi.h:3396:15 */
|
|
|
|
type tagEMR = struct {
|
|
iType DWORD
|
|
nSize DWORD
|
|
} /* wingdi.h:3561:11 */
|
|
|
|
type EMR = tagEMR /* wingdi.h:3564:5 */
|
|
type PEMR = uintptr /* wingdi.h:3564:9 */
|
|
|
|
type tagEMRTEXT = struct {
|
|
ptlReference POINTL
|
|
nChars DWORD
|
|
offString DWORD
|
|
fOptions DWORD
|
|
rcl RECTL
|
|
offDx DWORD
|
|
} /* wingdi.h:3566:11 */
|
|
|
|
type EMRTEXT = tagEMRTEXT /* wingdi.h:3573:5 */
|
|
type PEMRTEXT = uintptr /* wingdi.h:3573:13 */
|
|
|
|
type tagABORTPATH = struct{ emr EMR } /* wingdi.h:3575:11 */
|
|
|
|
type EMRABORTPATH = tagABORTPATH /* wingdi.h:3577:5 */
|
|
type PEMRABORTPATH = uintptr /* wingdi.h:3577:18 */
|
|
type EMRBEGINPATH = tagABORTPATH /* wingdi.h:3577:33 */
|
|
type PEMRBEGINPATH = uintptr /* wingdi.h:3577:46 */
|
|
type EMRENDPATH = tagABORTPATH /* wingdi.h:3577:61 */
|
|
type PEMRENDPATH = uintptr /* wingdi.h:3577:72 */
|
|
type EMRCLOSEFIGURE = tagABORTPATH /* wingdi.h:3577:85 */
|
|
type PEMRCLOSEFIGURE = uintptr /* wingdi.h:3577:100 */
|
|
type EMRFLATTENPATH = tagABORTPATH /* wingdi.h:3577:117 */
|
|
type PEMRFLATTENPATH = uintptr /* wingdi.h:3577:132 */
|
|
type EMRWIDENPATH = tagABORTPATH /* wingdi.h:3577:149 */
|
|
type PEMRWIDENPATH = uintptr /* wingdi.h:3577:162 */
|
|
type EMRSETMETARGN = tagABORTPATH /* wingdi.h:3577:177 */
|
|
type PEMRSETMETARGN = uintptr /* wingdi.h:3577:191 */
|
|
type EMRSAVEDC = tagABORTPATH /* wingdi.h:3577:207 */
|
|
type PEMRSAVEDC = uintptr /* wingdi.h:3577:217 */
|
|
type EMRREALIZEPALETTE = tagABORTPATH /* wingdi.h:3577:229 */
|
|
type PEMRREALIZEPALETTE = uintptr /* wingdi.h:3577:247 */
|
|
|
|
type tagEMRSELECTCLIPPATH = struct {
|
|
emr EMR
|
|
iMode DWORD
|
|
} /* wingdi.h:3579:11 */
|
|
|
|
type EMRSELECTCLIPPATH = tagEMRSELECTCLIPPATH /* wingdi.h:3582:5 */
|
|
type PEMRSELECTCLIPPATH = uintptr /* wingdi.h:3582:23 */
|
|
type EMRSETBKMODE = tagEMRSELECTCLIPPATH /* wingdi.h:3582:43 */
|
|
type PEMRSETBKMODE = uintptr /* wingdi.h:3582:56 */
|
|
type EMRSETMAPMODE = tagEMRSELECTCLIPPATH /* wingdi.h:3582:71 */
|
|
type PEMRSETMAPMODE = uintptr /* wingdi.h:3582:85 */
|
|
type EMRSETLAYOUT = tagEMRSELECTCLIPPATH /* wingdi.h:3582:101 */
|
|
type PEMRSETLAYOUT = uintptr /* wingdi.h:3582:114 */
|
|
type EMRSETPOLYFILLMODE = tagEMRSELECTCLIPPATH /* wingdi.h:3583:5 */
|
|
type PEMRSETPOLYFILLMODE = uintptr /* wingdi.h:3583:24 */
|
|
type EMRSETROP2 = tagEMRSELECTCLIPPATH /* wingdi.h:3583:45 */
|
|
type PEMRSETROP2 = uintptr /* wingdi.h:3583:56 */
|
|
type EMRSETSTRETCHBLTMODE = tagEMRSELECTCLIPPATH /* wingdi.h:3583:69 */
|
|
type PEMRSETSTRETCHBLTMODE = uintptr /* wingdi.h:3583:90 */
|
|
type EMRSETICMMODE = tagEMRSELECTCLIPPATH /* wingdi.h:3583:113 */
|
|
type PEMRSETICMMODE = uintptr /* wingdi.h:3584:5 */
|
|
type EMRSETTEXTALIGN = tagEMRSELECTCLIPPATH /* wingdi.h:3584:21 */
|
|
type PEMRSETTEXTALIGN = uintptr /* wingdi.h:3584:37 */
|
|
|
|
type tagEMRSETMITERLIMIT = struct {
|
|
emr EMR
|
|
eMiterLimit FLOAT
|
|
} /* wingdi.h:3586:11 */
|
|
|
|
type EMRSETMITERLIMIT = tagEMRSETMITERLIMIT /* wingdi.h:3589:5 */
|
|
type PEMRSETMITERLIMIT = uintptr /* wingdi.h:3589:22 */
|
|
|
|
type tagEMRRESTOREDC = struct {
|
|
emr EMR
|
|
iRelative LONG
|
|
} /* wingdi.h:3591:11 */
|
|
|
|
type EMRRESTOREDC = tagEMRRESTOREDC /* wingdi.h:3594:5 */
|
|
type PEMRRESTOREDC = uintptr /* wingdi.h:3594:18 */
|
|
|
|
type tagEMRSETARCDIRECTION = struct {
|
|
emr EMR
|
|
iArcDirection DWORD
|
|
} /* wingdi.h:3596:11 */
|
|
|
|
type EMRSETARCDIRECTION = tagEMRSETARCDIRECTION /* wingdi.h:3600:5 */
|
|
type PEMRSETARCDIRECTION = uintptr /* wingdi.h:3600:24 */
|
|
|
|
type tagEMRSETMAPPERFLAGS = struct {
|
|
emr EMR
|
|
dwFlags DWORD
|
|
} /* wingdi.h:3602:11 */
|
|
|
|
type EMRSETMAPPERFLAGS = tagEMRSETMAPPERFLAGS /* wingdi.h:3605:5 */
|
|
type PEMRSETMAPPERFLAGS = uintptr /* wingdi.h:3605:23 */
|
|
|
|
type tagEMRSETTEXTCOLOR = struct {
|
|
emr EMR
|
|
crColor COLORREF
|
|
} /* wingdi.h:3607:11 */
|
|
|
|
type EMRSETBKCOLOR = tagEMRSETTEXTCOLOR /* wingdi.h:3610:5 */
|
|
type PEMRSETBKCOLOR = uintptr /* wingdi.h:3610:19 */
|
|
type EMRSETTEXTCOLOR = tagEMRSETTEXTCOLOR /* wingdi.h:3610:35 */
|
|
type PEMRSETTEXTCOLOR = uintptr /* wingdi.h:3610:51 */
|
|
|
|
type tagEMRSELECTOBJECT = struct {
|
|
emr EMR
|
|
ihObject DWORD
|
|
} /* wingdi.h:3612:11 */
|
|
|
|
type EMRSELECTOBJECT = tagEMRSELECTOBJECT /* wingdi.h:3615:5 */
|
|
type PEMRSELECTOBJECT = uintptr /* wingdi.h:3615:21 */
|
|
type EMRDELETEOBJECT = tagEMRSELECTOBJECT /* wingdi.h:3615:39 */
|
|
type PEMRDELETEOBJECT = uintptr /* wingdi.h:3615:55 */
|
|
|
|
type tagEMRSELECTPALETTE = struct {
|
|
emr EMR
|
|
ihPal DWORD
|
|
} /* wingdi.h:3617:11 */
|
|
|
|
type EMRSELECTPALETTE = tagEMRSELECTPALETTE /* wingdi.h:3620:5 */
|
|
type PEMRSELECTPALETTE = uintptr /* wingdi.h:3620:22 */
|
|
|
|
type tagEMRRESIZEPALETTE = struct {
|
|
emr EMR
|
|
ihPal DWORD
|
|
cEntries DWORD
|
|
} /* wingdi.h:3622:11 */
|
|
|
|
type EMRRESIZEPALETTE = tagEMRRESIZEPALETTE /* wingdi.h:3626:5 */
|
|
type PEMRRESIZEPALETTE = uintptr /* wingdi.h:3626:22 */
|
|
|
|
type tagEMRSETPALETTEENTRIES = struct {
|
|
emr EMR
|
|
ihPal DWORD
|
|
iStart DWORD
|
|
cEntries DWORD
|
|
aPalEntries [1]PALETTEENTRY
|
|
} /* wingdi.h:3628:11 */
|
|
|
|
type EMRSETPALETTEENTRIES = tagEMRSETPALETTEENTRIES /* wingdi.h:3634:5 */
|
|
type PEMRSETPALETTEENTRIES = uintptr /* wingdi.h:3634:26 */
|
|
|
|
type tagEMRSETCOLORADJUSTMENT = struct {
|
|
emr EMR
|
|
ColorAdjustment COLORADJUSTMENT
|
|
} /* wingdi.h:3636:11 */
|
|
|
|
type EMRSETCOLORADJUSTMENT = tagEMRSETCOLORADJUSTMENT /* wingdi.h:3639:5 */
|
|
type PEMRSETCOLORADJUSTMENT = uintptr /* wingdi.h:3639:27 */
|
|
|
|
type tagEMRGDICOMMENT = struct {
|
|
emr EMR
|
|
cbData DWORD
|
|
Data [1]BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:3641:11 */
|
|
|
|
type EMRGDICOMMENT = tagEMRGDICOMMENT /* wingdi.h:3645:5 */
|
|
type PEMRGDICOMMENT = uintptr /* wingdi.h:3645:19 */
|
|
|
|
type tagEMREOF = struct {
|
|
emr EMR
|
|
nPalEntries DWORD
|
|
offPalEntries DWORD
|
|
nSizeLast DWORD
|
|
} /* wingdi.h:3647:11 */
|
|
|
|
type EMREOF = tagEMREOF /* wingdi.h:3652:5 */
|
|
type PEMREOF = uintptr /* wingdi.h:3652:12 */
|
|
|
|
type tagEMRLINETO = struct {
|
|
emr EMR
|
|
ptl POINTL
|
|
} /* wingdi.h:3654:11 */
|
|
|
|
type EMRLINETO = tagEMRLINETO /* wingdi.h:3657:5 */
|
|
type PEMRLINETO = uintptr /* wingdi.h:3657:15 */
|
|
type EMRMOVETOEX = tagEMRLINETO /* wingdi.h:3657:27 */
|
|
type PEMRMOVETOEX = uintptr /* wingdi.h:3657:39 */
|
|
|
|
type tagEMROFFSETCLIPRGN = struct {
|
|
emr EMR
|
|
ptlOffset POINTL
|
|
} /* wingdi.h:3659:11 */
|
|
|
|
type EMROFFSETCLIPRGN = tagEMROFFSETCLIPRGN /* wingdi.h:3662:5 */
|
|
type PEMROFFSETCLIPRGN = uintptr /* wingdi.h:3662:22 */
|
|
|
|
type tagEMRFILLPATH = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
} /* wingdi.h:3664:11 */
|
|
|
|
type EMRFILLPATH = tagEMRFILLPATH /* wingdi.h:3667:5 */
|
|
type PEMRFILLPATH = uintptr /* wingdi.h:3667:17 */
|
|
type EMRSTROKEANDFILLPATH = tagEMRFILLPATH /* wingdi.h:3667:31 */
|
|
type PEMRSTROKEANDFILLPATH = uintptr /* wingdi.h:3667:52 */
|
|
type EMRSTROKEPATH = tagEMRFILLPATH /* wingdi.h:3667:75 */
|
|
type PEMRSTROKEPATH = uintptr /* wingdi.h:3667:89 */
|
|
|
|
type tagEMREXCLUDECLIPRECT = struct {
|
|
emr EMR
|
|
rclClip RECTL
|
|
} /* wingdi.h:3669:11 */
|
|
|
|
type EMREXCLUDECLIPRECT = tagEMREXCLUDECLIPRECT /* wingdi.h:3672:5 */
|
|
type PEMREXCLUDECLIPRECT = uintptr /* wingdi.h:3672:24 */
|
|
type EMRINTERSECTCLIPRECT = tagEMREXCLUDECLIPRECT /* wingdi.h:3672:45 */
|
|
type PEMRINTERSECTCLIPRECT = uintptr /* wingdi.h:3672:66 */
|
|
|
|
type tagEMRSETVIEWPORTORGEX = struct {
|
|
emr EMR
|
|
ptlOrigin POINTL
|
|
} /* wingdi.h:3674:11 */
|
|
|
|
type EMRSETVIEWPORTORGEX = tagEMRSETVIEWPORTORGEX /* wingdi.h:3677:5 */
|
|
type PEMRSETVIEWPORTORGEX = uintptr /* wingdi.h:3677:25 */
|
|
type EMRSETWINDOWORGEX = tagEMRSETVIEWPORTORGEX /* wingdi.h:3677:47 */
|
|
type PEMRSETWINDOWORGEX = uintptr /* wingdi.h:3677:65 */
|
|
type EMRSETBRUSHORGEX = tagEMRSETVIEWPORTORGEX /* wingdi.h:3677:85 */
|
|
type PEMRSETBRUSHORGEX = uintptr /* wingdi.h:3677:102 */
|
|
|
|
type tagEMRSETVIEWPORTEXTEX = struct {
|
|
emr EMR
|
|
szlExtent SIZEL
|
|
} /* wingdi.h:3679:11 */
|
|
|
|
type EMRSETVIEWPORTEXTEX = tagEMRSETVIEWPORTEXTEX /* wingdi.h:3682:5 */
|
|
type PEMRSETVIEWPORTEXTEX = uintptr /* wingdi.h:3682:25 */
|
|
type EMRSETWINDOWEXTEX = tagEMRSETVIEWPORTEXTEX /* wingdi.h:3682:47 */
|
|
type PEMRSETWINDOWEXTEX = uintptr /* wingdi.h:3682:65 */
|
|
|
|
type tagEMRSCALEVIEWPORTEXTEX = struct {
|
|
emr EMR
|
|
xNum LONG
|
|
xDenom LONG
|
|
yNum LONG
|
|
yDenom LONG
|
|
} /* wingdi.h:3684:11 */
|
|
|
|
type EMRSCALEVIEWPORTEXTEX = tagEMRSCALEVIEWPORTEXTEX /* wingdi.h:3690:5 */
|
|
type PEMRSCALEVIEWPORTEXTEX = uintptr /* wingdi.h:3690:27 */
|
|
type EMRSCALEWINDOWEXTEX = tagEMRSCALEVIEWPORTEXTEX /* wingdi.h:3690:51 */
|
|
type PEMRSCALEWINDOWEXTEX = uintptr /* wingdi.h:3690:71 */
|
|
|
|
type tagEMRSETWORLDTRANSFORM = struct {
|
|
emr EMR
|
|
xform XFORM
|
|
} /* wingdi.h:3692:11 */
|
|
|
|
type EMRSETWORLDTRANSFORM = tagEMRSETWORLDTRANSFORM /* wingdi.h:3695:5 */
|
|
type PEMRSETWORLDTRANSFORM = uintptr /* wingdi.h:3695:26 */
|
|
|
|
type tagEMRMODIFYWORLDTRANSFORM = struct {
|
|
emr EMR
|
|
xform XFORM
|
|
iMode DWORD
|
|
} /* wingdi.h:3697:11 */
|
|
|
|
type EMRMODIFYWORLDTRANSFORM = tagEMRMODIFYWORLDTRANSFORM /* wingdi.h:3701:5 */
|
|
type PEMRMODIFYWORLDTRANSFORM = uintptr /* wingdi.h:3701:29 */
|
|
|
|
type tagEMRSETPIXELV = struct {
|
|
emr EMR
|
|
ptlPixel POINTL
|
|
crColor COLORREF
|
|
} /* wingdi.h:3703:11 */
|
|
|
|
type EMRSETPIXELV = tagEMRSETPIXELV /* wingdi.h:3707:5 */
|
|
type PEMRSETPIXELV = uintptr /* wingdi.h:3707:18 */
|
|
|
|
type tagEMREXTFLOODFILL = struct {
|
|
emr EMR
|
|
ptlStart POINTL
|
|
crColor COLORREF
|
|
iMode DWORD
|
|
} /* wingdi.h:3709:11 */
|
|
|
|
type EMREXTFLOODFILL = tagEMREXTFLOODFILL /* wingdi.h:3714:5 */
|
|
type PEMREXTFLOODFILL = uintptr /* wingdi.h:3714:21 */
|
|
|
|
type tagEMRELLIPSE = struct {
|
|
emr EMR
|
|
rclBox RECTL
|
|
} /* wingdi.h:3716:11 */
|
|
|
|
type EMRELLIPSE = tagEMRELLIPSE /* wingdi.h:3719:5 */
|
|
type PEMRELLIPSE = uintptr /* wingdi.h:3719:16 */
|
|
type EMRRECTANGLE = tagEMRELLIPSE /* wingdi.h:3719:29 */
|
|
type PEMRRECTANGLE = uintptr /* wingdi.h:3719:42 */
|
|
|
|
type tagEMRROUNDRECT = struct {
|
|
emr EMR
|
|
rclBox RECTL
|
|
szlCorner SIZEL
|
|
} /* wingdi.h:3721:11 */
|
|
|
|
type EMRROUNDRECT = tagEMRROUNDRECT /* wingdi.h:3725:5 */
|
|
type PEMRROUNDRECT = uintptr /* wingdi.h:3725:18 */
|
|
|
|
type tagEMRARC = struct {
|
|
emr EMR
|
|
rclBox RECTL
|
|
ptlStart POINTL
|
|
ptlEnd POINTL
|
|
} /* wingdi.h:3727:11 */
|
|
|
|
type EMRARC = tagEMRARC /* wingdi.h:3732:5 */
|
|
type PEMRARC = uintptr /* wingdi.h:3732:12 */
|
|
type EMRARCTO = tagEMRARC /* wingdi.h:3732:21 */
|
|
type PEMRARCTO = uintptr /* wingdi.h:3732:30 */
|
|
type EMRCHORD = tagEMRARC /* wingdi.h:3732:41 */
|
|
type PEMRCHORD = uintptr /* wingdi.h:3732:50 */
|
|
type EMRPIE = tagEMRARC /* wingdi.h:3732:61 */
|
|
type PEMRPIE = uintptr /* wingdi.h:3732:68 */
|
|
|
|
type tagEMRANGLEARC = struct {
|
|
emr EMR
|
|
ptlCenter POINTL
|
|
nRadius DWORD
|
|
eStartAngle FLOAT
|
|
eSweepAngle FLOAT
|
|
} /* wingdi.h:3734:11 */
|
|
|
|
type EMRANGLEARC = tagEMRANGLEARC /* wingdi.h:3740:5 */
|
|
type PEMRANGLEARC = uintptr /* wingdi.h:3740:17 */
|
|
|
|
type tagEMRPOLYLINE = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
cptl DWORD
|
|
aptl [1]POINTL
|
|
} /* wingdi.h:3742:11 */
|
|
|
|
type EMRPOLYLINE = tagEMRPOLYLINE /* wingdi.h:3747:5 */
|
|
type PEMRPOLYLINE = uintptr /* wingdi.h:3747:17 */
|
|
type EMRPOLYBEZIER = tagEMRPOLYLINE /* wingdi.h:3747:31 */
|
|
type PEMRPOLYBEZIER = uintptr /* wingdi.h:3747:45 */
|
|
type EMRPOLYGON = tagEMRPOLYLINE /* wingdi.h:3747:61 */
|
|
type PEMRPOLYGON = uintptr /* wingdi.h:3747:72 */
|
|
type EMRPOLYBEZIERTO = tagEMRPOLYLINE /* wingdi.h:3747:85 */
|
|
type PEMRPOLYBEZIERTO = uintptr /* wingdi.h:3747:101 */
|
|
type EMRPOLYLINETO = tagEMRPOLYLINE /* wingdi.h:3747:119 */
|
|
type PEMRPOLYLINETO = uintptr /* wingdi.h:3747:133 */
|
|
|
|
type tagEMRPOLYLINE16 = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
cpts DWORD
|
|
apts [1]POINTS
|
|
} /* wingdi.h:3749:11 */
|
|
|
|
type EMRPOLYLINE16 = tagEMRPOLYLINE16 /* wingdi.h:3754:5 */
|
|
type PEMRPOLYLINE16 = uintptr /* wingdi.h:3754:19 */
|
|
type EMRPOLYBEZIER16 = tagEMRPOLYLINE16 /* wingdi.h:3754:35 */
|
|
type PEMRPOLYBEZIER16 = uintptr /* wingdi.h:3754:51 */
|
|
type EMRPOLYGON16 = tagEMRPOLYLINE16 /* wingdi.h:3754:69 */
|
|
type PEMRPOLYGON16 = uintptr /* wingdi.h:3754:82 */
|
|
type EMRPOLYBEZIERTO16 = tagEMRPOLYLINE16 /* wingdi.h:3754:97 */
|
|
type PEMRPOLYBEZIERTO16 = uintptr /* wingdi.h:3754:115 */
|
|
type EMRPOLYLINETO16 = tagEMRPOLYLINE16 /* wingdi.h:3754:135 */
|
|
type PEMRPOLYLINETO16 = uintptr /* wingdi.h:3754:151 */
|
|
|
|
type tagEMRPOLYDRAW = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
cptl DWORD
|
|
aptl [1]POINTL
|
|
abTypes [1]BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:3756:11 */
|
|
|
|
type EMRPOLYDRAW = tagEMRPOLYDRAW /* wingdi.h:3762:5 */
|
|
type PEMRPOLYDRAW = uintptr /* wingdi.h:3762:17 */
|
|
|
|
type tagEMRPOLYDRAW16 = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
cpts DWORD
|
|
apts [1]POINTS
|
|
abTypes [1]BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:3764:11 */
|
|
|
|
type EMRPOLYDRAW16 = tagEMRPOLYDRAW16 /* wingdi.h:3770:5 */
|
|
type PEMRPOLYDRAW16 = uintptr /* wingdi.h:3770:19 */
|
|
|
|
type tagEMRPOLYPOLYLINE = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
nPolys DWORD
|
|
cptl DWORD
|
|
aPolyCounts [1]DWORD
|
|
aptl [1]POINTL
|
|
} /* wingdi.h:3772:11 */
|
|
|
|
type EMRPOLYPOLYLINE = tagEMRPOLYPOLYLINE /* wingdi.h:3779:5 */
|
|
type PEMRPOLYPOLYLINE = uintptr /* wingdi.h:3779:21 */
|
|
type EMRPOLYPOLYGON = tagEMRPOLYPOLYLINE /* wingdi.h:3779:39 */
|
|
type PEMRPOLYPOLYGON = uintptr /* wingdi.h:3779:54 */
|
|
|
|
type tagEMRPOLYPOLYLINE16 = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
nPolys DWORD
|
|
cpts DWORD
|
|
aPolyCounts [1]DWORD
|
|
apts [1]POINTS
|
|
} /* wingdi.h:3781:11 */
|
|
|
|
type EMRPOLYPOLYLINE16 = tagEMRPOLYPOLYLINE16 /* wingdi.h:3788:5 */
|
|
type PEMRPOLYPOLYLINE16 = uintptr /* wingdi.h:3788:23 */
|
|
type EMRPOLYPOLYGON16 = tagEMRPOLYPOLYLINE16 /* wingdi.h:3788:43 */
|
|
type PEMRPOLYPOLYGON16 = uintptr /* wingdi.h:3788:60 */
|
|
|
|
type tagEMRINVERTRGN = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
cbRgnData DWORD
|
|
RgnData [1]BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:3790:11 */
|
|
|
|
type EMRINVERTRGN = tagEMRINVERTRGN /* wingdi.h:3795:5 */
|
|
type PEMRINVERTRGN = uintptr /* wingdi.h:3795:18 */
|
|
type EMRPAINTRGN = tagEMRINVERTRGN /* wingdi.h:3795:33 */
|
|
type PEMRPAINTRGN = uintptr /* wingdi.h:3795:45 */
|
|
|
|
type tagEMRFILLRGN = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
cbRgnData DWORD
|
|
ihBrush DWORD
|
|
RgnData [1]BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:3797:11 */
|
|
|
|
type EMRFILLRGN = tagEMRFILLRGN /* wingdi.h:3803:5 */
|
|
type PEMRFILLRGN = uintptr /* wingdi.h:3803:16 */
|
|
|
|
type tagEMRFRAMERGN = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
cbRgnData DWORD
|
|
ihBrush DWORD
|
|
szlStroke SIZEL
|
|
RgnData [1]BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:3805:11 */
|
|
|
|
type EMRFRAMERGN = tagEMRFRAMERGN /* wingdi.h:3812:5 */
|
|
type PEMRFRAMERGN = uintptr /* wingdi.h:3812:17 */
|
|
|
|
type tagEMREXTSELECTCLIPRGN = struct {
|
|
emr EMR
|
|
cbRgnData DWORD
|
|
iMode DWORD
|
|
RgnData [1]BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:3814:11 */
|
|
|
|
type EMREXTSELECTCLIPRGN = tagEMREXTSELECTCLIPRGN /* wingdi.h:3819:5 */
|
|
type PEMREXTSELECTCLIPRGN = uintptr /* wingdi.h:3819:25 */
|
|
|
|
type tagEMREXTTEXTOUTA = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
iGraphicsMode DWORD
|
|
exScale FLOAT
|
|
eyScale FLOAT
|
|
emrtext EMRTEXT
|
|
} /* wingdi.h:3821:11 */
|
|
|
|
type EMREXTTEXTOUTA = tagEMREXTTEXTOUTA /* wingdi.h:3828:5 */
|
|
type PEMREXTTEXTOUTA = uintptr /* wingdi.h:3828:20 */
|
|
type EMREXTTEXTOUTW = tagEMREXTTEXTOUTA /* wingdi.h:3828:37 */
|
|
type PEMREXTTEXTOUTW = uintptr /* wingdi.h:3828:52 */
|
|
|
|
type tagEMRPOLYTEXTOUTA = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
iGraphicsMode DWORD
|
|
exScale FLOAT
|
|
eyScale FLOAT
|
|
cStrings LONG
|
|
aemrtext [1]EMRTEXT
|
|
} /* wingdi.h:3830:11 */
|
|
|
|
type EMRPOLYTEXTOUTA = tagEMRPOLYTEXTOUTA /* wingdi.h:3838:5 */
|
|
type PEMRPOLYTEXTOUTA = uintptr /* wingdi.h:3838:21 */
|
|
type EMRPOLYTEXTOUTW = tagEMRPOLYTEXTOUTA /* wingdi.h:3838:39 */
|
|
type PEMRPOLYTEXTOUTW = uintptr /* wingdi.h:3838:55 */
|
|
|
|
type tagEMRBITBLT = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
xDest LONG
|
|
yDest LONG
|
|
cxDest LONG
|
|
cyDest LONG
|
|
dwRop DWORD
|
|
xSrc LONG
|
|
ySrc LONG
|
|
xformSrc XFORM
|
|
crBkColorSrc COLORREF
|
|
iUsageSrc DWORD
|
|
offBmiSrc DWORD
|
|
cbBmiSrc DWORD
|
|
offBitsSrc DWORD
|
|
cbBitsSrc DWORD
|
|
} /* wingdi.h:3840:11 */
|
|
|
|
type EMRBITBLT = tagEMRBITBLT /* wingdi.h:3857:5 */
|
|
type PEMRBITBLT = uintptr /* wingdi.h:3857:15 */
|
|
|
|
type tagEMRSTRETCHBLT = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
xDest LONG
|
|
yDest LONG
|
|
cxDest LONG
|
|
cyDest LONG
|
|
dwRop DWORD
|
|
xSrc LONG
|
|
ySrc LONG
|
|
xformSrc XFORM
|
|
crBkColorSrc COLORREF
|
|
iUsageSrc DWORD
|
|
offBmiSrc DWORD
|
|
cbBmiSrc DWORD
|
|
offBitsSrc DWORD
|
|
cbBitsSrc DWORD
|
|
cxSrc LONG
|
|
cySrc LONG
|
|
} /* wingdi.h:3859:11 */
|
|
|
|
type EMRSTRETCHBLT = tagEMRSTRETCHBLT /* wingdi.h:3878:5 */
|
|
type PEMRSTRETCHBLT = uintptr /* wingdi.h:3878:19 */
|
|
|
|
type tagEMRMASKBLT = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
xDest LONG
|
|
yDest LONG
|
|
cxDest LONG
|
|
cyDest LONG
|
|
dwRop DWORD
|
|
xSrc LONG
|
|
ySrc LONG
|
|
xformSrc XFORM
|
|
crBkColorSrc COLORREF
|
|
iUsageSrc DWORD
|
|
offBmiSrc DWORD
|
|
cbBmiSrc DWORD
|
|
offBitsSrc DWORD
|
|
cbBitsSrc DWORD
|
|
xMask LONG
|
|
yMask LONG
|
|
iUsageMask DWORD
|
|
offBmiMask DWORD
|
|
cbBmiMask DWORD
|
|
offBitsMask DWORD
|
|
cbBitsMask DWORD
|
|
} /* wingdi.h:3880:11 */
|
|
|
|
type EMRMASKBLT = tagEMRMASKBLT /* wingdi.h:3904:5 */
|
|
type PEMRMASKBLT = uintptr /* wingdi.h:3904:16 */
|
|
|
|
type tagEMRPLGBLT = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
aptlDest [3]POINTL
|
|
xSrc LONG
|
|
ySrc LONG
|
|
cxSrc LONG
|
|
cySrc LONG
|
|
xformSrc XFORM
|
|
crBkColorSrc COLORREF
|
|
iUsageSrc DWORD
|
|
offBmiSrc DWORD
|
|
cbBmiSrc DWORD
|
|
offBitsSrc DWORD
|
|
cbBitsSrc DWORD
|
|
xMask LONG
|
|
yMask LONG
|
|
iUsageMask DWORD
|
|
offBmiMask DWORD
|
|
cbBmiMask DWORD
|
|
offBitsMask DWORD
|
|
cbBitsMask DWORD
|
|
} /* wingdi.h:3906:11 */
|
|
|
|
type EMRPLGBLT = tagEMRPLGBLT /* wingdi.h:3928:5 */
|
|
type PEMRPLGBLT = uintptr /* wingdi.h:3928:15 */
|
|
|
|
type tagEMRSETDIBITSTODEVICE = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
xDest LONG
|
|
yDest LONG
|
|
xSrc LONG
|
|
ySrc LONG
|
|
cxSrc LONG
|
|
cySrc LONG
|
|
offBmiSrc DWORD
|
|
cbBmiSrc DWORD
|
|
offBitsSrc DWORD
|
|
cbBitsSrc DWORD
|
|
iUsageSrc DWORD
|
|
iStartScan DWORD
|
|
cScans DWORD
|
|
} /* wingdi.h:3930:11 */
|
|
|
|
type EMRSETDIBITSTODEVICE = tagEMRSETDIBITSTODEVICE /* wingdi.h:3946:5 */
|
|
type PEMRSETDIBITSTODEVICE = uintptr /* wingdi.h:3946:26 */
|
|
|
|
type tagEMRSTRETCHDIBITS = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
xDest LONG
|
|
yDest LONG
|
|
xSrc LONG
|
|
ySrc LONG
|
|
cxSrc LONG
|
|
cySrc LONG
|
|
offBmiSrc DWORD
|
|
cbBmiSrc DWORD
|
|
offBitsSrc DWORD
|
|
cbBitsSrc DWORD
|
|
iUsageSrc DWORD
|
|
dwRop DWORD
|
|
cxDest LONG
|
|
cyDest LONG
|
|
} /* wingdi.h:3948:11 */
|
|
|
|
type EMRSTRETCHDIBITS = tagEMRSTRETCHDIBITS /* wingdi.h:3965:5 */
|
|
type PEMRSTRETCHDIBITS = uintptr /* wingdi.h:3965:22 */
|
|
|
|
type tagEMREXTCREATEFONTINDIRECTW = struct {
|
|
emr EMR
|
|
ihFont DWORD
|
|
elfw EXTLOGFONTW
|
|
} /* wingdi.h:3967:11 */
|
|
|
|
type EMREXTCREATEFONTINDIRECTW = tagEMREXTCREATEFONTINDIRECTW /* wingdi.h:3971:5 */
|
|
type PEMREXTCREATEFONTINDIRECTW = uintptr /* wingdi.h:3971:31 */
|
|
|
|
type tagEMRCREATEPALETTE = struct {
|
|
emr EMR
|
|
ihPal DWORD
|
|
lgpl LOGPALETTE
|
|
} /* wingdi.h:3973:11 */
|
|
|
|
type EMRCREATEPALETTE = tagEMRCREATEPALETTE /* wingdi.h:3977:5 */
|
|
type PEMRCREATEPALETTE = uintptr /* wingdi.h:3977:22 */
|
|
|
|
type tagEMRCREATEPEN = struct {
|
|
emr EMR
|
|
ihPen DWORD
|
|
lopn LOGPEN
|
|
} /* wingdi.h:3979:11 */
|
|
|
|
type EMRCREATEPEN = tagEMRCREATEPEN /* wingdi.h:3983:5 */
|
|
type PEMRCREATEPEN = uintptr /* wingdi.h:3983:18 */
|
|
|
|
type tagEMREXTCREATEPEN = struct {
|
|
emr EMR
|
|
ihPen DWORD
|
|
offBmi DWORD
|
|
cbBmi DWORD
|
|
offBits DWORD
|
|
cbBits DWORD
|
|
elp EXTLOGPEN
|
|
} /* wingdi.h:3985:11 */
|
|
|
|
type EMREXTCREATEPEN = tagEMREXTCREATEPEN /* wingdi.h:3993:5 */
|
|
type PEMREXTCREATEPEN = uintptr /* wingdi.h:3993:21 */
|
|
|
|
type tagEMRCREATEBRUSHINDIRECT = struct {
|
|
emr EMR
|
|
ihBrush DWORD
|
|
lb LOGBRUSH32
|
|
} /* wingdi.h:3995:11 */
|
|
|
|
type EMRCREATEBRUSHINDIRECT = tagEMRCREATEBRUSHINDIRECT /* wingdi.h:3999:5 */
|
|
type PEMRCREATEBRUSHINDIRECT = uintptr /* wingdi.h:3999:28 */
|
|
|
|
type tagEMRCREATEMONOBRUSH = struct {
|
|
emr EMR
|
|
ihBrush DWORD
|
|
iUsage DWORD
|
|
offBmi DWORD
|
|
cbBmi DWORD
|
|
offBits DWORD
|
|
cbBits DWORD
|
|
} /* wingdi.h:4001:11 */
|
|
|
|
type EMRCREATEMONOBRUSH = tagEMRCREATEMONOBRUSH /* wingdi.h:4009:5 */
|
|
type PEMRCREATEMONOBRUSH = uintptr /* wingdi.h:4009:24 */
|
|
|
|
type tagEMRCREATEDIBPATTERNBRUSHPT = struct {
|
|
emr EMR
|
|
ihBrush DWORD
|
|
iUsage DWORD
|
|
offBmi DWORD
|
|
cbBmi DWORD
|
|
offBits DWORD
|
|
cbBits DWORD
|
|
} /* wingdi.h:4011:11 */
|
|
|
|
type EMRCREATEDIBPATTERNBRUSHPT = tagEMRCREATEDIBPATTERNBRUSHPT /* wingdi.h:4019:5 */
|
|
type PEMRCREATEDIBPATTERNBRUSHPT = uintptr /* wingdi.h:4019:32 */
|
|
|
|
type tagEMRFORMAT = struct {
|
|
dSignature DWORD
|
|
nVersion DWORD
|
|
cbData DWORD
|
|
offData DWORD
|
|
} /* wingdi.h:4021:11 */
|
|
|
|
type EMRFORMAT = tagEMRFORMAT /* wingdi.h:4026:5 */
|
|
type PEMRFORMAT = uintptr /* wingdi.h:4026:15 */
|
|
|
|
type tagEMRGLSRECORD = struct {
|
|
emr EMR
|
|
cbData DWORD
|
|
Data [1]BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:4028:11 */
|
|
|
|
type EMRGLSRECORD = tagEMRGLSRECORD /* wingdi.h:4032:5 */
|
|
type PEMRGLSRECORD = uintptr /* wingdi.h:4032:18 */
|
|
|
|
type tagEMRGLSBOUNDEDRECORD = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
cbData DWORD
|
|
Data [1]BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:4034:11 */
|
|
|
|
type EMRGLSBOUNDEDRECORD = tagEMRGLSBOUNDEDRECORD /* wingdi.h:4039:5 */
|
|
type PEMRGLSBOUNDEDRECORD = uintptr /* wingdi.h:4039:25 */
|
|
|
|
type tagEMRPIXELFORMAT = struct {
|
|
emr EMR
|
|
pfd PIXELFORMATDESCRIPTOR
|
|
} /* wingdi.h:4041:11 */
|
|
|
|
type EMRPIXELFORMAT = tagEMRPIXELFORMAT /* wingdi.h:4044:5 */
|
|
type PEMRPIXELFORMAT = uintptr /* wingdi.h:4044:20 */
|
|
|
|
type tagEMRCREATECOLORSPACE = struct {
|
|
emr EMR
|
|
ihCS DWORD
|
|
lcs LOGCOLORSPACEA
|
|
} /* wingdi.h:4046:11 */
|
|
|
|
type EMRCREATECOLORSPACE = tagEMRCREATECOLORSPACE /* wingdi.h:4050:5 */
|
|
type PEMRCREATECOLORSPACE = uintptr /* wingdi.h:4050:25 */
|
|
|
|
type tagEMRSETCOLORSPACE = struct {
|
|
emr EMR
|
|
ihCS DWORD
|
|
} /* wingdi.h:4052:11 */
|
|
|
|
type EMRSETCOLORSPACE = tagEMRSETCOLORSPACE /* wingdi.h:4055:5 */
|
|
type PEMRSETCOLORSPACE = uintptr /* wingdi.h:4055:22 */
|
|
type EMRSELECTCOLORSPACE = tagEMRSETCOLORSPACE /* wingdi.h:4055:41 */
|
|
type PEMRSELECTCOLORSPACE = uintptr /* wingdi.h:4055:61 */
|
|
type EMRDELETECOLORSPACE = tagEMRSETCOLORSPACE /* wingdi.h:4055:83 */
|
|
type PEMRDELETECOLORSPACE = uintptr /* wingdi.h:4055:103 */
|
|
|
|
type tagEMREXTESCAPE = struct {
|
|
emr EMR
|
|
iEscape INT
|
|
cbEscData INT
|
|
EscData [1]BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:4057:11 */
|
|
|
|
type EMREXTESCAPE = tagEMREXTESCAPE /* wingdi.h:4062:5 */
|
|
type PEMREXTESCAPE = uintptr /* wingdi.h:4062:18 */
|
|
type EMRDRAWESCAPE = tagEMREXTESCAPE /* wingdi.h:4062:33 */
|
|
type PEMRDRAWESCAPE = uintptr /* wingdi.h:4062:47 */
|
|
|
|
type tagEMRNAMEDESCAPE = struct {
|
|
emr EMR
|
|
iEscape INT
|
|
cbDriver INT
|
|
cbEscData INT
|
|
EscData [1]BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:4064:11 */
|
|
|
|
type EMRNAMEDESCAPE = tagEMRNAMEDESCAPE /* wingdi.h:4070:5 */
|
|
type PEMRNAMEDESCAPE = uintptr /* wingdi.h:4070:20 */
|
|
|
|
type tagEMRSETICMPROFILE = struct {
|
|
emr EMR
|
|
dwFlags DWORD
|
|
cbName DWORD
|
|
cbData DWORD
|
|
Data [1]BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:4074:11 */
|
|
|
|
type EMRSETICMPROFILE = tagEMRSETICMPROFILE /* wingdi.h:4080:5 */
|
|
type PEMRSETICMPROFILE = uintptr /* wingdi.h:4080:22 */
|
|
type EMRSETICMPROFILEA = tagEMRSETICMPROFILE /* wingdi.h:4080:41 */
|
|
type PEMRSETICMPROFILEA = uintptr /* wingdi.h:4080:59 */
|
|
type EMRSETICMPROFILEW = tagEMRSETICMPROFILE /* wingdi.h:4080:79 */
|
|
type PEMRSETICMPROFILEW = uintptr /* wingdi.h:4080:97 */
|
|
|
|
type tagEMRCREATECOLORSPACEW = struct {
|
|
emr EMR
|
|
ihCS DWORD
|
|
lcs LOGCOLORSPACEW
|
|
dwFlags DWORD
|
|
cbData DWORD
|
|
Data [1]BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:4084:11 */
|
|
|
|
type EMRCREATECOLORSPACEW = tagEMRCREATECOLORSPACEW /* wingdi.h:4091:5 */
|
|
type PEMRCREATECOLORSPACEW = uintptr /* wingdi.h:4091:26 */
|
|
|
|
type tagCOLORMATCHTOTARGET = struct {
|
|
emr EMR
|
|
dwAction DWORD
|
|
dwFlags DWORD
|
|
cbName DWORD
|
|
cbData DWORD
|
|
Data [1]BYTE
|
|
_ [3]byte
|
|
} /* wingdi.h:4095:11 */
|
|
|
|
type EMRCOLORMATCHTOTARGET = tagCOLORMATCHTOTARGET /* wingdi.h:4102:5 */
|
|
type PEMRCOLORMATCHTOTARGET = uintptr /* wingdi.h:4102:27 */
|
|
|
|
type tagCOLORCORRECTPALETTE = struct {
|
|
emr EMR
|
|
ihPalette DWORD
|
|
nFirstEntry DWORD
|
|
nPalEntries DWORD
|
|
nReserved DWORD
|
|
} /* wingdi.h:4104:11 */
|
|
|
|
type EMRCOLORCORRECTPALETTE = tagCOLORCORRECTPALETTE /* wingdi.h:4110:5 */
|
|
type PEMRCOLORCORRECTPALETTE = uintptr /* wingdi.h:4110:28 */
|
|
|
|
type tagEMRALPHABLEND = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
xDest LONG
|
|
yDest LONG
|
|
cxDest LONG
|
|
cyDest LONG
|
|
dwRop DWORD
|
|
xSrc LONG
|
|
ySrc LONG
|
|
xformSrc XFORM
|
|
crBkColorSrc COLORREF
|
|
iUsageSrc DWORD
|
|
offBmiSrc DWORD
|
|
cbBmiSrc DWORD
|
|
offBitsSrc DWORD
|
|
cbBitsSrc DWORD
|
|
cxSrc LONG
|
|
cySrc LONG
|
|
} /* wingdi.h:4112:11 */
|
|
|
|
type EMRALPHABLEND = tagEMRALPHABLEND /* wingdi.h:4131:5 */
|
|
type PEMRALPHABLEND = uintptr /* wingdi.h:4131:19 */
|
|
|
|
type tagEMRGRADIENTFILL = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
nVer DWORD
|
|
nTri DWORD
|
|
ulMode ULONG
|
|
Ver [1]TRIVERTEX
|
|
} /* wingdi.h:4133:11 */
|
|
|
|
type EMRGRADIENTFILL = tagEMRGRADIENTFILL /* wingdi.h:4140:5 */
|
|
type PEMRGRADIENTFILL = uintptr /* wingdi.h:4140:21 */
|
|
|
|
type tagEMRTRANSPARENTBLT = struct {
|
|
emr EMR
|
|
rclBounds RECTL
|
|
xDest LONG
|
|
yDest LONG
|
|
cxDest LONG
|
|
cyDest LONG
|
|
dwRop DWORD
|
|
xSrc LONG
|
|
ySrc LONG
|
|
xformSrc XFORM
|
|
crBkColorSrc COLORREF
|
|
iUsageSrc DWORD
|
|
offBmiSrc DWORD
|
|
cbBmiSrc DWORD
|
|
offBitsSrc DWORD
|
|
cbBitsSrc DWORD
|
|
cxSrc LONG
|
|
cySrc LONG
|
|
} /* wingdi.h:4142:11 */
|
|
|
|
type EMRTRANSPARENTBLT = tagEMRTRANSPARENTBLT /* wingdi.h:4161:5 */
|
|
type PEMRTRANSPARENTBLT = uintptr /* wingdi.h:4161:23 */
|
|
|
|
type _POINTFLOAT = struct {
|
|
x FLOAT
|
|
y FLOAT
|
|
} /* wingdi.h:4188:11 */
|
|
|
|
type POINTFLOAT = _POINTFLOAT /* wingdi.h:4191:5 */
|
|
type PPOINTFLOAT = uintptr /* wingdi.h:4191:16 */
|
|
|
|
type _GLYPHMETRICSFLOAT = struct {
|
|
gmfBlackBoxX FLOAT
|
|
gmfBlackBoxY FLOAT
|
|
gmfptGlyphOrigin POINTFLOAT
|
|
gmfCellIncX FLOAT
|
|
gmfCellIncY FLOAT
|
|
} /* wingdi.h:4193:11 */
|
|
|
|
type GLYPHMETRICSFLOAT = _GLYPHMETRICSFLOAT /* wingdi.h:4199:5 */
|
|
type PGLYPHMETRICSFLOAT = uintptr /* wingdi.h:4199:23 */
|
|
type LPGLYPHMETRICSFLOAT = uintptr /* wingdi.h:4199:43 */
|
|
|
|
type tagLAYERPLANEDESCRIPTOR = struct {
|
|
nSize WORD
|
|
nVersion WORD
|
|
dwFlags DWORD
|
|
iPixelType BYTE
|
|
cColorBits BYTE
|
|
cRedBits BYTE
|
|
cRedShift BYTE
|
|
cGreenBits BYTE
|
|
cGreenShift BYTE
|
|
cBlueBits BYTE
|
|
cBlueShift BYTE
|
|
cAlphaBits BYTE
|
|
cAlphaShift BYTE
|
|
cAccumBits BYTE
|
|
cAccumRedBits BYTE
|
|
cAccumGreenBits BYTE
|
|
cAccumBlueBits BYTE
|
|
cAccumAlphaBits BYTE
|
|
cDepthBits BYTE
|
|
cStencilBits BYTE
|
|
cAuxBuffers BYTE
|
|
iLayerPlane BYTE
|
|
bReserved BYTE
|
|
crTransparent COLORREF
|
|
} /* wingdi.h:4209:11 */
|
|
|
|
type LAYERPLANEDESCRIPTOR = tagLAYERPLANEDESCRIPTOR /* wingdi.h:4234:5 */
|
|
type PLAYERPLANEDESCRIPTOR = uintptr /* wingdi.h:4234:26 */
|
|
type LPLAYERPLANEDESCRIPTOR = uintptr /* wingdi.h:4234:49 */
|
|
|
|
type _WGLSWAP = struct {
|
|
hdc HDC
|
|
uiFlags UINT
|
|
} /* wingdi.h:4288:11 */
|
|
|
|
type WGLSWAP = _WGLSWAP /* wingdi.h:4291:5 */
|
|
type PWGLSWAP = uintptr /* wingdi.h:4291:13 */
|
|
type LPWGLSWAP = uintptr /* wingdi.h:4291:23 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// Copyright (C) 1989, 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
|
|
//
|
|
// This file is part of GCC.
|
|
//
|
|
// GCC is free software; you can redistribute it and/or modify
|
|
// it under the terms of the GNU General Public License as published by
|
|
// the Free Software Foundation; either version 2, or (at your option)
|
|
// any later version.
|
|
//
|
|
// GCC is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
// GNU General Public License for more details.
|
|
//
|
|
// You should have received a copy of the GNU General Public License
|
|
// along with GCC; see the file COPYING. If not, write to
|
|
// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
|
|
// Boston, MA 02110-1301, USA.
|
|
|
|
// As a special exception, if you include this header file into source
|
|
// files compiled by GCC, this header file does not by itself cause
|
|
// the resulting executable to be covered by the GNU General Public
|
|
// License. This exception does not however invalidate any other
|
|
// reasons why the executable file might be covered by the GNU General
|
|
// Public License.
|
|
|
|
// ISO C Standard: 7.15 Variable arguments <stdarg.h>
|
|
|
|
// include mingw stuff
|
|
// *
|
|
// 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.
|
|
|
|
// Copyright (C) 1989-2018 Free Software Foundation, Inc.
|
|
//
|
|
// This file is part of GCC.
|
|
//
|
|
// GCC is free software; you can redistribute it and/or modify
|
|
// it under the terms of the GNU General Public License as published by
|
|
// the Free Software Foundation; either version 3, or (at your option)
|
|
// any later version.
|
|
//
|
|
// GCC is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
// GNU General Public License for more details.
|
|
//
|
|
// Under Section 7 of GPL version 3, you are granted additional
|
|
// permissions described in the GCC Runtime Library Exception, version
|
|
// 3.1, as published by the Free Software Foundation.
|
|
//
|
|
// You should have received a copy of the GNU General Public License and
|
|
// a copy of the GCC Runtime Library Exception along with this program;
|
|
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
|
// <http://www.gnu.org/licenses/>.
|
|
|
|
// ISO C Standard: 7.15 Variable arguments <stdarg.h>
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// __declspec(selectany) must be applied to initialized objects on GCC 5 hence must not be used here.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type HDWP = HANDLE /* winuser.h:32:18 */
|
|
type LPMENUTEMPLATEA = PVOID /* winuser.h:35:17 */
|
|
type LPMENUTEMPLATEW = PVOID /* winuser.h:36:17 */
|
|
type LPMENUTEMPLATE = LPMENUTEMPLATEA /* winuser.h:39:3 */
|
|
|
|
type WNDPROC = uintptr /* winuser.h:41:19 */
|
|
|
|
type DLGPROC = uintptr /* winuser.h:46:19 */
|
|
|
|
type TIMERPROC = uintptr /* winuser.h:50:16 */
|
|
type GRAYSTRINGPROC = uintptr /* winuser.h:51:19 */
|
|
type WNDENUMPROC = uintptr /* winuser.h:52:19 */
|
|
type HOOKPROC = uintptr /* winuser.h:53:19 */
|
|
type SENDASYNCPROC = uintptr /* winuser.h:54:16 */
|
|
|
|
type PROPENUMPROCA = uintptr /* winuser.h:56:19 */
|
|
type PROPENUMPROCW = uintptr /* winuser.h:57:19 */
|
|
|
|
type PROPENUMPROCEXA = uintptr /* winuser.h:59:19 */
|
|
type PROPENUMPROCEXW = uintptr /* winuser.h:60:19 */
|
|
|
|
type EDITWORDBREAKPROCA = uintptr /* winuser.h:62:15 */
|
|
type EDITWORDBREAKPROCW = uintptr /* winuser.h:63:15 */
|
|
|
|
type DRAWSTATEPROC = uintptr /* winuser.h:65:19 */
|
|
|
|
type PROPENUMPROC = PROPENUMPROCA /* winuser.h:93:3 */
|
|
type PROPENUMPROCEX = PROPENUMPROCEXA /* winuser.h:94:3 */
|
|
type EDITWORDBREAKPROC = EDITWORDBREAKPROCA /* winuser.h:95:3 */
|
|
|
|
type NAMEENUMPROCA = uintptr /* winuser.h:98:19 */
|
|
type NAMEENUMPROCW = uintptr /* winuser.h:99:19 */
|
|
type WINSTAENUMPROCA = NAMEENUMPROCA /* winuser.h:100:25 */
|
|
type WINSTAENUMPROCW = NAMEENUMPROCW /* winuser.h:101:25 */
|
|
type DESKTOPENUMPROCA = NAMEENUMPROCA /* winuser.h:102:25 */
|
|
type DESKTOPENUMPROCW = NAMEENUMPROCW /* winuser.h:103:25 */
|
|
|
|
type WINSTAENUMPROC = WINSTAENUMPROCA /* winuser.h:113:3 */
|
|
type DESKTOPENUMPROC = DESKTOPENUMPROCA /* winuser.h:114:3 */
|
|
|
|
type tagCBT_CREATEWNDA = struct {
|
|
lpcs uintptr
|
|
hwndInsertAfter HWND
|
|
} /* winuser.h:456:11 */
|
|
|
|
type tagCREATESTRUCTA = struct {
|
|
lpCreateParams LPVOID
|
|
hInstance HINSTANCE
|
|
hMenu HMENU
|
|
hwndParent HWND
|
|
cy int32
|
|
cx int32
|
|
y int32
|
|
x int32
|
|
style LONG
|
|
lpszName LPCSTR
|
|
lpszClass LPCSTR
|
|
dwExStyle DWORD
|
|
} /* winuser.h:456:11 */
|
|
|
|
type CBT_CREATEWNDA = tagCBT_CREATEWNDA /* winuser.h:459:5 */
|
|
type LPCBT_CREATEWNDA = uintptr /* winuser.h:459:20 */
|
|
|
|
type tagCBT_CREATEWNDW = struct {
|
|
lpcs uintptr
|
|
hwndInsertAfter HWND
|
|
} /* winuser.h:461:11 */
|
|
|
|
type tagCREATESTRUCTW = struct {
|
|
lpCreateParams LPVOID
|
|
hInstance HINSTANCE
|
|
hMenu HMENU
|
|
hwndParent HWND
|
|
cy int32
|
|
cx int32
|
|
y int32
|
|
x int32
|
|
style LONG
|
|
lpszName LPCWSTR
|
|
lpszClass LPCWSTR
|
|
dwExStyle DWORD
|
|
} /* winuser.h:461:11 */
|
|
|
|
type CBT_CREATEWNDW = tagCBT_CREATEWNDW /* winuser.h:464:5 */
|
|
type LPCBT_CREATEWNDW = uintptr /* winuser.h:464:20 */
|
|
|
|
type CBT_CREATEWND = CBT_CREATEWNDA /* winuser.h:466:3 */
|
|
type LPCBT_CREATEWND = LPCBT_CREATEWNDA /* winuser.h:467:3 */
|
|
|
|
type tagCBTACTIVATESTRUCT = struct {
|
|
fMouse WINBOOL
|
|
hWndActive HWND
|
|
} /* winuser.h:469:11 */
|
|
|
|
type CBTACTIVATESTRUCT = tagCBTACTIVATESTRUCT /* winuser.h:472:5 */
|
|
type LPCBTACTIVATESTRUCT = uintptr /* winuser.h:472:23 */
|
|
|
|
type tagWTSSESSION_NOTIFICATION = struct {
|
|
cbSize DWORD
|
|
dwSessionId DWORD
|
|
} /* winuser.h:476:11 */
|
|
|
|
type WTSSESSION_NOTIFICATION = tagWTSSESSION_NOTIFICATION /* winuser.h:479:5 */
|
|
type PWTSSESSION_NOTIFICATION = uintptr /* winuser.h:479:29 */
|
|
|
|
type SHELLHOOKINFO = struct {
|
|
hwnd HWND
|
|
rc RECT
|
|
} /* winuser.h:600:5 */
|
|
type LPSHELLHOOKINFO = uintptr /* winuser.h:600:19 */
|
|
|
|
type tagEVENTMSG = struct {
|
|
message UINT
|
|
paramL UINT
|
|
paramH UINT
|
|
time DWORD
|
|
hwnd HWND
|
|
} /* winuser.h:602:11 */
|
|
|
|
type EVENTMSG = tagEVENTMSG /* winuser.h:608:5 */
|
|
type PEVENTMSGMSG = uintptr /* winuser.h:608:14 */
|
|
type NPEVENTMSGMSG = uintptr /* winuser.h:608:28 */
|
|
type LPEVENTMSGMSG = uintptr /* winuser.h:608:43 */
|
|
|
|
type PEVENTMSG = uintptr /* winuser.h:610:30 */
|
|
type NPEVENTMSG = uintptr /* winuser.h:610:41 */
|
|
type LPEVENTMSG = uintptr /* winuser.h:610:53 */
|
|
|
|
type tagCWPSTRUCT = struct {
|
|
lParam LPARAM
|
|
wParam WPARAM
|
|
message UINT
|
|
hwnd HWND
|
|
} /* winuser.h:612:11 */
|
|
|
|
type CWPSTRUCT = tagCWPSTRUCT /* winuser.h:617:5 */
|
|
type PCWPSTRUCT = uintptr /* winuser.h:617:15 */
|
|
type NPCWPSTRUCT = uintptr /* winuser.h:617:27 */
|
|
type LPCWPSTRUCT = uintptr /* winuser.h:617:40 */
|
|
|
|
type tagCWPRETSTRUCT = struct {
|
|
lResult LRESULT
|
|
lParam LPARAM
|
|
wParam WPARAM
|
|
message UINT
|
|
hwnd HWND
|
|
} /* winuser.h:619:11 */
|
|
|
|
type CWPRETSTRUCT = tagCWPRETSTRUCT /* winuser.h:625:5 */
|
|
type PCWPRETSTRUCT = uintptr /* winuser.h:625:18 */
|
|
type NPCWPRETSTRUCT = uintptr /* winuser.h:625:33 */
|
|
type LPCWPRETSTRUCT = uintptr /* winuser.h:625:49 */
|
|
|
|
type tagKBDLLHOOKSTRUCT = struct {
|
|
vkCode DWORD
|
|
scanCode DWORD
|
|
flags DWORD
|
|
time DWORD
|
|
dwExtraInfo ULONG_PTR
|
|
} /* winuser.h:636:11 */
|
|
|
|
type KBDLLHOOKSTRUCT = tagKBDLLHOOKSTRUCT /* winuser.h:642:5 */
|
|
type LPKBDLLHOOKSTRUCT = uintptr /* winuser.h:642:21 */
|
|
type PKBDLLHOOKSTRUCT = uintptr /* winuser.h:642:40 */
|
|
|
|
type tagMSLLHOOKSTRUCT = struct {
|
|
pt POINT
|
|
mouseData DWORD
|
|
flags DWORD
|
|
time DWORD
|
|
dwExtraInfo ULONG_PTR
|
|
} /* winuser.h:644:11 */
|
|
|
|
type MSLLHOOKSTRUCT = tagMSLLHOOKSTRUCT /* winuser.h:650:5 */
|
|
type LPMSLLHOOKSTRUCT = uintptr /* winuser.h:650:20 */
|
|
type PMSLLHOOKSTRUCT = uintptr /* winuser.h:650:38 */
|
|
|
|
type tagDEBUGHOOKINFO = struct {
|
|
idThread DWORD
|
|
idThreadInstaller DWORD
|
|
lParam LPARAM
|
|
wParam WPARAM
|
|
code int32
|
|
} /* winuser.h:652:11 */
|
|
|
|
type DEBUGHOOKINFO = tagDEBUGHOOKINFO /* winuser.h:658:5 */
|
|
type PDEBUGHOOKINFO = uintptr /* winuser.h:658:19 */
|
|
type NPDEBUGHOOKINFO = uintptr /* winuser.h:658:35 */
|
|
type LPDEBUGHOOKINFO = uintptr /* winuser.h:658:52 */
|
|
|
|
type tagMOUSEHOOKSTRUCT = struct {
|
|
pt POINT
|
|
hwnd HWND
|
|
wHitTestCode UINT
|
|
dwExtraInfo ULONG_PTR
|
|
} /* winuser.h:660:11 */
|
|
|
|
type MOUSEHOOKSTRUCT = tagMOUSEHOOKSTRUCT /* winuser.h:665:5 */
|
|
type LPMOUSEHOOKSTRUCT = uintptr /* winuser.h:665:21 */
|
|
type PMOUSEHOOKSTRUCT = uintptr /* winuser.h:665:40 */
|
|
|
|
type tagMOUSEHOOKSTRUCTEX = struct {
|
|
__unnamed MOUSEHOOKSTRUCT
|
|
mouseData DWORD
|
|
} /* winuser.h:672:11 */
|
|
|
|
type MOUSEHOOKSTRUCTEX = tagMOUSEHOOKSTRUCTEX /* winuser.h:675:5 */
|
|
type LPMOUSEHOOKSTRUCTEX = uintptr /* winuser.h:675:23 */
|
|
type PMOUSEHOOKSTRUCTEX = uintptr /* winuser.h:675:44 */
|
|
|
|
type tagHARDWAREHOOKSTRUCT = struct {
|
|
hwnd HWND
|
|
message UINT
|
|
wParam WPARAM
|
|
lParam LPARAM
|
|
} /* winuser.h:678:11 */
|
|
|
|
type HARDWAREHOOKSTRUCT = tagHARDWAREHOOKSTRUCT /* winuser.h:683:5 */
|
|
type LPHARDWAREHOOKSTRUCT = uintptr /* winuser.h:683:24 */
|
|
type PHARDWAREHOOKSTRUCT = uintptr /* winuser.h:683:46 */
|
|
|
|
type tagMOUSEMOVEPOINT = struct {
|
|
x int32
|
|
y int32
|
|
time DWORD
|
|
dwExtraInfo ULONG_PTR
|
|
} /* winuser.h:719:11 */
|
|
|
|
type MOUSEMOVEPOINT = tagMOUSEMOVEPOINT /* winuser.h:724:5 */
|
|
type PMOUSEMOVEPOINT = uintptr /* winuser.h:724:20 */
|
|
type LPMOUSEMOVEPOINT = uintptr /* winuser.h:724:37 */
|
|
|
|
type tagUSEROBJECTFLAGS = struct {
|
|
fInherit WINBOOL
|
|
fReserved WINBOOL
|
|
dwFlags DWORD
|
|
} /* winuser.h:825:11 */
|
|
|
|
type USEROBJECTFLAGS = tagUSEROBJECTFLAGS /* winuser.h:829:5 */
|
|
type PUSEROBJECTFLAGS = uintptr /* winuser.h:829:21 */
|
|
|
|
type tagWNDCLASSEXA = struct {
|
|
cbSize UINT
|
|
style UINT
|
|
lpfnWndProc WNDPROC
|
|
cbClsExtra int32
|
|
cbWndExtra int32
|
|
hInstance HINSTANCE
|
|
hIcon HICON
|
|
hCursor HCURSOR
|
|
hbrBackground HBRUSH
|
|
lpszMenuName LPCSTR
|
|
lpszClassName LPCSTR
|
|
hIconSm HICON
|
|
} /* winuser.h:842:11 */
|
|
|
|
type WNDCLASSEXA = tagWNDCLASSEXA /* winuser.h:855:5 */
|
|
type PWNDCLASSEXA = uintptr /* winuser.h:855:17 */
|
|
type NPWNDCLASSEXA = uintptr /* winuser.h:855:31 */
|
|
type LPWNDCLASSEXA = uintptr /* winuser.h:855:46 */
|
|
|
|
type tagWNDCLASSEXW = struct {
|
|
cbSize UINT
|
|
style UINT
|
|
lpfnWndProc WNDPROC
|
|
cbClsExtra int32
|
|
cbWndExtra int32
|
|
hInstance HINSTANCE
|
|
hIcon HICON
|
|
hCursor HCURSOR
|
|
hbrBackground HBRUSH
|
|
lpszMenuName LPCWSTR
|
|
lpszClassName LPCWSTR
|
|
hIconSm HICON
|
|
} /* winuser.h:857:11 */
|
|
|
|
type WNDCLASSEXW = tagWNDCLASSEXW /* winuser.h:870:5 */
|
|
type PWNDCLASSEXW = uintptr /* winuser.h:870:17 */
|
|
type NPWNDCLASSEXW = uintptr /* winuser.h:870:31 */
|
|
type LPWNDCLASSEXW = uintptr /* winuser.h:870:46 */
|
|
|
|
type WNDCLASSEX = WNDCLASSEXA /* winuser.h:872:3 */
|
|
type PWNDCLASSEX = PWNDCLASSEXA /* winuser.h:873:3 */
|
|
type NPWNDCLASSEX = NPWNDCLASSEXA /* winuser.h:874:3 */
|
|
type LPWNDCLASSEX = LPWNDCLASSEXA /* winuser.h:875:3 */
|
|
|
|
type tagWNDCLASSA = struct {
|
|
style UINT
|
|
lpfnWndProc WNDPROC
|
|
cbClsExtra int32
|
|
cbWndExtra int32
|
|
hInstance HINSTANCE
|
|
hIcon HICON
|
|
hCursor HCURSOR
|
|
hbrBackground HBRUSH
|
|
lpszMenuName LPCSTR
|
|
lpszClassName LPCSTR
|
|
} /* winuser.h:877:11 */
|
|
|
|
type WNDCLASSA = tagWNDCLASSA /* winuser.h:888:5 */
|
|
type PWNDCLASSA = uintptr /* winuser.h:888:15 */
|
|
type NPWNDCLASSA = uintptr /* winuser.h:888:27 */
|
|
type LPWNDCLASSA = uintptr /* winuser.h:888:40 */
|
|
|
|
type tagWNDCLASSW = struct {
|
|
style UINT
|
|
lpfnWndProc WNDPROC
|
|
cbClsExtra int32
|
|
cbWndExtra int32
|
|
hInstance HINSTANCE
|
|
hIcon HICON
|
|
hCursor HCURSOR
|
|
hbrBackground HBRUSH
|
|
lpszMenuName LPCWSTR
|
|
lpszClassName LPCWSTR
|
|
} /* winuser.h:890:11 */
|
|
|
|
type WNDCLASSW = tagWNDCLASSW /* winuser.h:901:5 */
|
|
type PWNDCLASSW = uintptr /* winuser.h:901:15 */
|
|
type NPWNDCLASSW = uintptr /* winuser.h:901:27 */
|
|
type LPWNDCLASSW = uintptr /* winuser.h:901:40 */
|
|
|
|
type WNDCLASS = WNDCLASSA /* winuser.h:903:3 */
|
|
type PWNDCLASS = PWNDCLASSA /* winuser.h:904:3 */
|
|
type NPWNDCLASS = NPWNDCLASSA /* winuser.h:905:3 */
|
|
type LPWNDCLASS = LPWNDCLASSA /* winuser.h:906:3 */
|
|
|
|
type tagMSG = struct {
|
|
hwnd HWND
|
|
message UINT
|
|
wParam WPARAM
|
|
lParam LPARAM
|
|
time DWORD
|
|
pt POINT
|
|
} /* winuser.h:914:11 */
|
|
|
|
type MSG = tagMSG /* winuser.h:921:5 */
|
|
type PMSG = uintptr /* winuser.h:921:9 */
|
|
type NPMSG = uintptr /* winuser.h:921:15 */
|
|
type LPMSG = uintptr /* winuser.h:921:22 */
|
|
|
|
type tagMINMAXINFO = struct {
|
|
ptReserved POINT
|
|
ptMaxSize POINT
|
|
ptMaxPosition POINT
|
|
ptMinTrackSize POINT
|
|
ptMaxTrackSize POINT
|
|
} /* winuser.h:1031:11 */
|
|
|
|
type MINMAXINFO = tagMINMAXINFO /* winuser.h:1037:5 */
|
|
type PMINMAXINFO = uintptr /* winuser.h:1037:16 */
|
|
type LPMINMAXINFO = uintptr /* winuser.h:1037:29 */
|
|
|
|
type tagCOPYDATASTRUCT = struct {
|
|
dwData ULONG_PTR
|
|
cbData DWORD
|
|
lpData PVOID
|
|
} /* winuser.h:1074:11 */
|
|
|
|
type COPYDATASTRUCT = tagCOPYDATASTRUCT /* winuser.h:1078:5 */
|
|
type PCOPYDATASTRUCT = uintptr /* winuser.h:1078:20 */
|
|
|
|
type tagMDINEXTMENU = struct {
|
|
hmenuIn HMENU
|
|
hmenuNext HMENU
|
|
hwndNext HWND
|
|
} /* winuser.h:1080:11 */
|
|
|
|
type MDINEXTMENU = tagMDINEXTMENU /* winuser.h:1084:5 */
|
|
type PMDINEXTMENU = uintptr /* winuser.h:1084:17 */
|
|
type LPMDINEXTMENU = uintptr /* winuser.h:1084:31 */
|
|
|
|
type POWERBROADCAST_SETTING = struct {
|
|
PowerSetting GUID
|
|
DataLength DWORD
|
|
Data [1]UCHAR
|
|
_ [3]byte
|
|
} /* winuser.h:1268:5 */
|
|
type PPOWERBROADCAST_SETTING = uintptr /* winuser.h:1268:28 */
|
|
|
|
type tagWINDOWPOS = struct {
|
|
hwnd HWND
|
|
hwndInsertAfter HWND
|
|
x int32
|
|
y int32
|
|
cx int32
|
|
cy int32
|
|
flags UINT
|
|
} /* winuser.h:1462:11 */
|
|
|
|
type WINDOWPOS = tagWINDOWPOS /* winuser.h:1470:5 */
|
|
type LPWINDOWPOS = uintptr /* winuser.h:1470:15 */
|
|
type PWINDOWPOS = uintptr /* winuser.h:1470:28 */
|
|
|
|
type tagNCCALCSIZE_PARAMS = struct {
|
|
rgrc [3]RECT
|
|
lppos PWINDOWPOS
|
|
} /* winuser.h:1472:11 */
|
|
|
|
type NCCALCSIZE_PARAMS = tagNCCALCSIZE_PARAMS /* winuser.h:1475:5 */
|
|
type LPNCCALCSIZE_PARAMS = uintptr /* winuser.h:1475:23 */
|
|
|
|
type tagTRACKMOUSEEVENT = struct {
|
|
cbSize DWORD
|
|
dwFlags DWORD
|
|
hwndTrack HWND
|
|
dwHoverTime DWORD
|
|
} /* winuser.h:1509:11 */
|
|
|
|
type TRACKMOUSEEVENT = tagTRACKMOUSEEVENT /* winuser.h:1514:5 */
|
|
type LPTRACKMOUSEEVENT = uintptr /* winuser.h:1514:21 */
|
|
|
|
type tagACCEL = struct {
|
|
fVirt BYTE
|
|
_ [1]byte
|
|
key WORD
|
|
cmd WORD
|
|
} /* winuser.h:1753:11 */
|
|
|
|
type ACCEL = tagACCEL /* winuser.h:1757:5 */
|
|
type LPACCEL = uintptr /* winuser.h:1757:11 */
|
|
|
|
type tagPAINTSTRUCT = struct {
|
|
hdc HDC
|
|
fErase WINBOOL
|
|
rcPaint RECT
|
|
fRestore WINBOOL
|
|
fIncUpdate WINBOOL
|
|
rgbReserved [32]BYTE
|
|
} /* winuser.h:1759:11 */
|
|
|
|
type PAINTSTRUCT = tagPAINTSTRUCT /* winuser.h:1766:5 */
|
|
type PPAINTSTRUCT = uintptr /* winuser.h:1766:17 */
|
|
type NPPAINTSTRUCT = uintptr /* winuser.h:1766:31 */
|
|
type LPPAINTSTRUCT = uintptr /* winuser.h:1766:46 */
|
|
|
|
type CREATESTRUCTA = tagCREATESTRUCTA /* winuser.h:1781:5 */
|
|
type LPCREATESTRUCTA = uintptr /* winuser.h:1781:19 */
|
|
|
|
type CREATESTRUCTW = tagCREATESTRUCTW /* winuser.h:1796:5 */
|
|
type LPCREATESTRUCTW = uintptr /* winuser.h:1796:19 */
|
|
|
|
type CREATESTRUCT = CREATESTRUCTA /* winuser.h:1798:3 */
|
|
type LPCREATESTRUCT = LPCREATESTRUCTA /* winuser.h:1799:3 */
|
|
|
|
type tagWINDOWPLACEMENT = struct {
|
|
length UINT
|
|
flags UINT
|
|
showCmd UINT
|
|
ptMinPosition POINT
|
|
ptMaxPosition POINT
|
|
rcNormalPosition RECT
|
|
} /* winuser.h:1801:11 */
|
|
|
|
type WINDOWPLACEMENT = tagWINDOWPLACEMENT /* winuser.h:1808:5 */
|
|
type PWINDOWPLACEMENT = uintptr /* winuser.h:1809:27 */
|
|
type LPWINDOWPLACEMENT = uintptr /* winuser.h:1809:45 */
|
|
|
|
type tagNMHDR = struct {
|
|
hwndFrom HWND
|
|
idFrom UINT_PTR
|
|
code UINT
|
|
} /* winuser.h:1817:11 */
|
|
|
|
type NMHDR = tagNMHDR /* winuser.h:1821:5 */
|
|
|
|
type LPNMHDR = uintptr /* winuser.h:1825:17 */
|
|
|
|
type tagSTYLESTRUCT = struct {
|
|
styleOld DWORD
|
|
styleNew DWORD
|
|
} /* winuser.h:1827:11 */
|
|
|
|
type STYLESTRUCT = tagSTYLESTRUCT /* winuser.h:1830:5 */
|
|
type LPSTYLESTRUCT = uintptr /* winuser.h:1830:17 */
|
|
|
|
type tagMEASUREITEMSTRUCT = struct {
|
|
CtlType UINT
|
|
CtlID UINT
|
|
itemID UINT
|
|
itemWidth UINT
|
|
itemHeight UINT
|
|
itemData ULONG_PTR
|
|
} /* winuser.h:1856:11 */
|
|
|
|
type MEASUREITEMSTRUCT = tagMEASUREITEMSTRUCT /* winuser.h:1863:5 */
|
|
type PMEASUREITEMSTRUCT = uintptr /* winuser.h:1863:23 */
|
|
type LPMEASUREITEMSTRUCT = uintptr /* winuser.h:1863:43 */
|
|
|
|
type tagDRAWITEMSTRUCT = struct {
|
|
CtlType UINT
|
|
CtlID UINT
|
|
itemID UINT
|
|
itemAction UINT
|
|
itemState UINT
|
|
hwndItem HWND
|
|
hDC HDC
|
|
rcItem RECT
|
|
itemData ULONG_PTR
|
|
} /* winuser.h:1865:11 */
|
|
|
|
type DRAWITEMSTRUCT = tagDRAWITEMSTRUCT /* winuser.h:1875:5 */
|
|
type PDRAWITEMSTRUCT = uintptr /* winuser.h:1875:20 */
|
|
type LPDRAWITEMSTRUCT = uintptr /* winuser.h:1875:37 */
|
|
|
|
type tagDELETEITEMSTRUCT = struct {
|
|
CtlType UINT
|
|
CtlID UINT
|
|
itemID UINT
|
|
hwndItem HWND
|
|
itemData ULONG_PTR
|
|
} /* winuser.h:1877:11 */
|
|
|
|
type DELETEITEMSTRUCT = tagDELETEITEMSTRUCT /* winuser.h:1883:5 */
|
|
type PDELETEITEMSTRUCT = uintptr /* winuser.h:1883:22 */
|
|
type LPDELETEITEMSTRUCT = uintptr /* winuser.h:1883:41 */
|
|
|
|
type tagCOMPAREITEMSTRUCT = struct {
|
|
CtlType UINT
|
|
CtlID UINT
|
|
hwndItem HWND
|
|
itemID1 UINT
|
|
itemData1 ULONG_PTR
|
|
itemID2 UINT
|
|
itemData2 ULONG_PTR
|
|
dwLocaleId DWORD
|
|
} /* winuser.h:1885:11 */
|
|
|
|
type COMPAREITEMSTRUCT = tagCOMPAREITEMSTRUCT /* winuser.h:1894:5 */
|
|
type PCOMPAREITEMSTRUCT = uintptr /* winuser.h:1894:23 */
|
|
type LPCOMPAREITEMSTRUCT = uintptr /* winuser.h:1894:43 */
|
|
|
|
type BSMINFO = struct {
|
|
cbSize UINT
|
|
hdesk HDESK
|
|
hwnd HWND
|
|
luid LUID
|
|
} /* winuser.h:1997:5 */
|
|
type PBSMINFO = uintptr /* winuser.h:1997:13 */
|
|
|
|
type HDEVNOTIFY = PVOID /* winuser.h:2030:17 */
|
|
type PHDEVNOTIFY = uintptr /* winuser.h:2031:22 */
|
|
|
|
type HPOWERNOTIFY = HANDLE /* winuser.h:2054:18 */
|
|
type PHPOWERNOTIFY = uintptr /* winuser.h:2055:24 */
|
|
|
|
type PREGISTERCLASSNAMEW = uintptr /* winuser.h:2132:19 */
|
|
|
|
type tagUPDATELAYEREDWINDOWINFO = struct {
|
|
cbSize DWORD
|
|
hdcDst HDC
|
|
pptDst uintptr
|
|
psize uintptr
|
|
hdcSrc HDC
|
|
pptSrc uintptr
|
|
crKey COLORREF
|
|
pblend uintptr
|
|
dwFlags DWORD
|
|
prcDirty uintptr
|
|
} /* winuser.h:2155:11 */
|
|
|
|
type UPDATELAYEREDWINDOWINFO = tagUPDATELAYEREDWINDOWINFO /* winuser.h:2166:5 */
|
|
type PUPDATELAYEREDWINDOWINFO = uintptr /* winuser.h:2166:29 */
|
|
|
|
type FLASHWINFO = struct {
|
|
cbSize UINT
|
|
hwnd HWND
|
|
dwFlags DWORD
|
|
uCount UINT
|
|
dwTimeout DWORD
|
|
} /* winuser.h:2206:5 */
|
|
type PFLASHWINFO = uintptr /* winuser.h:2206:16 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type DLGTEMPLATE = struct {
|
|
style DWORD
|
|
dwExtendedStyle DWORD
|
|
cdit WORD
|
|
x int16
|
|
y int16
|
|
cx int16
|
|
cy int16
|
|
_ [2]byte
|
|
} /* winuser.h:2279:5 */
|
|
|
|
type LPDLGTEMPLATEA = uintptr /* winuser.h:2283:23 */
|
|
type LPDLGTEMPLATEW = uintptr /* winuser.h:2284:23 */
|
|
|
|
type LPDLGTEMPLATE = LPDLGTEMPLATEA /* winuser.h:2286:3 */
|
|
|
|
type LPCDLGTEMPLATEA = uintptr /* winuser.h:2290:29 */
|
|
type LPCDLGTEMPLATEW = uintptr /* winuser.h:2291:29 */
|
|
|
|
type LPCDLGTEMPLATE = LPCDLGTEMPLATEA /* winuser.h:2293:3 */
|
|
|
|
type DLGITEMTEMPLATE = struct {
|
|
style DWORD
|
|
dwExtendedStyle DWORD
|
|
x int16
|
|
y int16
|
|
cx int16
|
|
cy int16
|
|
id WORD
|
|
_ [2]byte
|
|
} /* winuser.h:2305:5 */
|
|
|
|
type PDLGITEMTEMPLATEA = uintptr /* winuser.h:2307:27 */
|
|
type PDLGITEMTEMPLATEW = uintptr /* winuser.h:2308:27 */
|
|
|
|
type PDLGITEMTEMPLATE = PDLGITEMTEMPLATEA /* winuser.h:2310:3 */
|
|
|
|
type LPDLGITEMTEMPLATEA = uintptr /* winuser.h:2312:27 */
|
|
type LPDLGITEMTEMPLATEW = uintptr /* winuser.h:2313:27 */
|
|
|
|
type LPDLGITEMTEMPLATE = LPDLGITEMTEMPLATEA /* winuser.h:2315:3 */
|
|
|
|
type tagMOUSEINPUT = struct {
|
|
dx LONG
|
|
dy LONG
|
|
mouseData DWORD
|
|
dwFlags DWORD
|
|
time DWORD
|
|
dwExtraInfo ULONG_PTR
|
|
} /* winuser.h:2646:11 */
|
|
|
|
type MOUSEINPUT = tagMOUSEINPUT /* winuser.h:2653:5 */
|
|
type PMOUSEINPUT = uintptr /* winuser.h:2653:16 */
|
|
type LPMOUSEINPUT = uintptr /* winuser.h:2653:29 */
|
|
|
|
type tagKEYBDINPUT = struct {
|
|
wVk WORD
|
|
wScan WORD
|
|
dwFlags DWORD
|
|
time DWORD
|
|
dwExtraInfo ULONG_PTR
|
|
} /* winuser.h:2655:11 */
|
|
|
|
type KEYBDINPUT = tagKEYBDINPUT /* winuser.h:2661:5 */
|
|
type PKEYBDINPUT = uintptr /* winuser.h:2661:16 */
|
|
type LPKEYBDINPUT = uintptr /* winuser.h:2661:29 */
|
|
|
|
type tagHARDWAREINPUT = struct {
|
|
uMsg DWORD
|
|
wParamL WORD
|
|
wParamH WORD
|
|
} /* winuser.h:2663:11 */
|
|
|
|
type HARDWAREINPUT = tagHARDWAREINPUT /* winuser.h:2667:5 */
|
|
type PHARDWAREINPUT = uintptr /* winuser.h:2667:19 */
|
|
type LPHARDWAREINPUT = uintptr /* winuser.h:2667:35 */
|
|
|
|
type tagINPUT = struct {
|
|
__type DWORD
|
|
u struct{ mi MOUSEINPUT }
|
|
} /* winuser.h:2669:11 */
|
|
|
|
type INPUT = tagINPUT /* winuser.h:2676:5 */
|
|
type PINPUT = uintptr /* winuser.h:2676:11 */
|
|
type LPINPUT = uintptr /* winuser.h:2676:19 */
|
|
|
|
type tagLASTINPUTINFO = struct {
|
|
cbSize UINT
|
|
dwTime DWORD
|
|
} /* winuser.h:2830:11 */
|
|
|
|
type LASTINPUTINFO = tagLASTINPUTINFO /* winuser.h:2833:5 */
|
|
type PLASTINPUTINFO = uintptr /* winuser.h:2833:19 */
|
|
|
|
type tagTPMPARAMS = struct {
|
|
cbSize UINT
|
|
rcExclude RECT
|
|
} /* winuser.h:3152:11 */
|
|
|
|
type TPMPARAMS = tagTPMPARAMS /* winuser.h:3155:5 */
|
|
|
|
type tagMENUINFO = struct {
|
|
cbSize DWORD
|
|
fMask DWORD
|
|
dwStyle DWORD
|
|
cyMax UINT
|
|
hbrBack HBRUSH
|
|
dwContextHelpID DWORD
|
|
dwMenuData ULONG_PTR
|
|
} /* winuser.h:3157:11 */
|
|
|
|
type MENUINFO = tagMENUINFO /* winuser.h:3165:5 */
|
|
type LPMENUINFO = uintptr /* winuser.h:3165:14 */
|
|
|
|
type LPTPMPARAMS = uintptr /* winuser.h:3167:21 */
|
|
type LPCMENUINFO = uintptr /* winuser.h:3168:26 */
|
|
|
|
type tagMENUGETOBJECTINFO = struct {
|
|
dwFlags DWORD
|
|
uPos UINT
|
|
hmenu HMENU
|
|
riid PVOID
|
|
pvObj PVOID
|
|
} /* winuser.h:3178:11 */
|
|
|
|
type MENUGETOBJECTINFO = tagMENUGETOBJECTINFO /* winuser.h:3184:5 */
|
|
type PMENUGETOBJECTINFO = uintptr /* winuser.h:3184:23 */
|
|
|
|
type tagMENUITEMINFOA = struct {
|
|
cbSize UINT
|
|
fMask UINT
|
|
fType UINT
|
|
fState UINT
|
|
wID UINT
|
|
hSubMenu HMENU
|
|
hbmpChecked HBITMAP
|
|
hbmpUnchecked HBITMAP
|
|
dwItemData ULONG_PTR
|
|
dwTypeData LPSTR
|
|
cch UINT
|
|
hbmpItem HBITMAP
|
|
} /* winuser.h:3186:11 */
|
|
|
|
type MENUITEMINFOA = tagMENUITEMINFOA /* winuser.h:3199:5 */
|
|
type LPMENUITEMINFOA = uintptr /* winuser.h:3199:19 */
|
|
|
|
type tagMENUITEMINFOW = struct {
|
|
cbSize UINT
|
|
fMask UINT
|
|
fType UINT
|
|
fState UINT
|
|
wID UINT
|
|
hSubMenu HMENU
|
|
hbmpChecked HBITMAP
|
|
hbmpUnchecked HBITMAP
|
|
dwItemData ULONG_PTR
|
|
dwTypeData LPWSTR
|
|
cch UINT
|
|
hbmpItem HBITMAP
|
|
} /* winuser.h:3201:11 */
|
|
|
|
type MENUITEMINFOW = tagMENUITEMINFOW /* winuser.h:3214:5 */
|
|
type LPMENUITEMINFOW = uintptr /* winuser.h:3214:19 */
|
|
|
|
type MENUITEMINFO = MENUITEMINFOA /* winuser.h:3216:3 */
|
|
type LPMENUITEMINFO = LPMENUITEMINFOA /* winuser.h:3217:3 */
|
|
|
|
type LPCMENUITEMINFOA = uintptr /* winuser.h:3219:31 */
|
|
type LPCMENUITEMINFOW = uintptr /* winuser.h:3220:31 */
|
|
|
|
type LPCMENUITEMINFO = LPCMENUITEMINFOA /* winuser.h:3222:3 */
|
|
|
|
type tagDROPSTRUCT = struct {
|
|
hwndSource HWND
|
|
hwndSink HWND
|
|
wFmt DWORD
|
|
dwData ULONG_PTR
|
|
ptDrop POINT
|
|
dwControlData DWORD
|
|
} /* winuser.h:3270:11 */
|
|
|
|
type DROPSTRUCT = tagDROPSTRUCT /* winuser.h:3277:5 */
|
|
type PDROPSTRUCT = uintptr /* winuser.h:3277:16 */
|
|
type LPDROPSTRUCT = uintptr /* winuser.h:3277:29 */
|
|
|
|
type tagDRAWTEXTPARAMS = struct {
|
|
cbSize UINT
|
|
iTabLength int32
|
|
iLeftMargin int32
|
|
iRightMargin int32
|
|
uiLengthDrawn UINT
|
|
} /* winuser.h:3324:11 */
|
|
|
|
type DRAWTEXTPARAMS = tagDRAWTEXTPARAMS /* winuser.h:3330:5 */
|
|
type LPDRAWTEXTPARAMS = uintptr /* winuser.h:3330:20 */
|
|
|
|
type tagHELPINFO = struct {
|
|
cbSize UINT
|
|
iContextType int32
|
|
iCtrlId int32
|
|
hItemHandle HANDLE
|
|
dwContextId DWORD_PTR
|
|
MousePos POINT
|
|
} /* winuser.h:3507:11 */
|
|
|
|
type HELPINFO = tagHELPINFO /* winuser.h:3514:5 */
|
|
type LPHELPINFO = uintptr /* winuser.h:3514:14 */
|
|
|
|
type MSGBOXCALLBACK = uintptr /* winuser.h:3571:16 */
|
|
|
|
type tagMSGBOXPARAMSA = struct {
|
|
cbSize UINT
|
|
hwndOwner HWND
|
|
hInstance HINSTANCE
|
|
lpszText LPCSTR
|
|
lpszCaption LPCSTR
|
|
dwStyle DWORD
|
|
lpszIcon LPCSTR
|
|
dwContextHelpId DWORD_PTR
|
|
lpfnMsgBoxCallback MSGBOXCALLBACK
|
|
dwLanguageId DWORD
|
|
} /* winuser.h:3573:11 */
|
|
|
|
type MSGBOXPARAMSA = tagMSGBOXPARAMSA /* winuser.h:3584:5 */
|
|
type PMSGBOXPARAMSA = uintptr /* winuser.h:3584:19 */
|
|
type LPMSGBOXPARAMSA = uintptr /* winuser.h:3584:35 */
|
|
|
|
type tagMSGBOXPARAMSW = struct {
|
|
cbSize UINT
|
|
hwndOwner HWND
|
|
hInstance HINSTANCE
|
|
lpszText LPCWSTR
|
|
lpszCaption LPCWSTR
|
|
dwStyle DWORD
|
|
lpszIcon LPCWSTR
|
|
dwContextHelpId DWORD_PTR
|
|
lpfnMsgBoxCallback MSGBOXCALLBACK
|
|
dwLanguageId DWORD
|
|
} /* winuser.h:3586:11 */
|
|
|
|
type MSGBOXPARAMSW = tagMSGBOXPARAMSW /* winuser.h:3597:5 */
|
|
type PMSGBOXPARAMSW = uintptr /* winuser.h:3597:19 */
|
|
type LPMSGBOXPARAMSW = uintptr /* winuser.h:3597:35 */
|
|
|
|
type MSGBOXPARAMS = MSGBOXPARAMSA /* winuser.h:3599:3 */
|
|
type PMSGBOXPARAMS = PMSGBOXPARAMSA /* winuser.h:3600:3 */
|
|
type LPMSGBOXPARAMS = LPMSGBOXPARAMSA /* winuser.h:3601:3 */
|
|
|
|
type MENUITEMTEMPLATEHEADER = struct {
|
|
versionNumber WORD
|
|
offset WORD
|
|
} /* winuser.h:3910:5 */
|
|
type PMENUITEMTEMPLATEHEADER = uintptr /* winuser.h:3910:28 */
|
|
|
|
type MENUITEMTEMPLATE = struct {
|
|
mtOption WORD
|
|
mtID WORD
|
|
mtString [1]WCHAR
|
|
} /* winuser.h:3916:5 */
|
|
type PMENUITEMTEMPLATE = uintptr /* winuser.h:3916:22 */
|
|
|
|
type _ICONINFO = struct {
|
|
fIcon WINBOOL
|
|
xHotspot DWORD
|
|
yHotspot DWORD
|
|
hbmMask HBITMAP
|
|
hbmColor HBITMAP
|
|
} /* winuser.h:3989:11 */
|
|
|
|
type ICONINFO = _ICONINFO /* winuser.h:3995:5 */
|
|
type PICONINFO = uintptr /* winuser.h:3996:20 */
|
|
|
|
type tagCURSORSHAPE = struct {
|
|
xHotSpot int32
|
|
yHotSpot int32
|
|
cx int32
|
|
cy int32
|
|
cbWidth int32
|
|
Planes BYTE
|
|
BitsPixel BYTE
|
|
_ [2]byte
|
|
} /* winuser.h:4013:11 */
|
|
|
|
type CURSORSHAPE = tagCURSORSHAPE /* winuser.h:4021:5 */
|
|
type LPCURSORSHAPE = uintptr /* winuser.h:4021:17 */
|
|
|
|
type tagSCROLLINFO = struct {
|
|
cbSize UINT
|
|
fMask UINT
|
|
nMin int32
|
|
nMax int32
|
|
nPage UINT
|
|
nPos int32
|
|
nTrackPos int32
|
|
} /* winuser.h:4701:11 */
|
|
|
|
type SCROLLINFO = tagSCROLLINFO /* winuser.h:4709:5 */
|
|
type LPSCROLLINFO = uintptr /* winuser.h:4709:16 */
|
|
type LPCSCROLLINFO = uintptr /* winuser.h:4710:28 */
|
|
|
|
type tagMDICREATESTRUCTA = struct {
|
|
szClass LPCSTR
|
|
szTitle LPCSTR
|
|
hOwner HANDLE
|
|
x int32
|
|
y int32
|
|
cx int32
|
|
cy int32
|
|
style DWORD
|
|
lParam LPARAM
|
|
} /* winuser.h:4728:11 */
|
|
|
|
type MDICREATESTRUCTA = tagMDICREATESTRUCTA /* winuser.h:4738:5 */
|
|
type LPMDICREATESTRUCTA = uintptr /* winuser.h:4738:22 */
|
|
|
|
type tagMDICREATESTRUCTW = struct {
|
|
szClass LPCWSTR
|
|
szTitle LPCWSTR
|
|
hOwner HANDLE
|
|
x int32
|
|
y int32
|
|
cx int32
|
|
cy int32
|
|
style DWORD
|
|
lParam LPARAM
|
|
} /* winuser.h:4740:11 */
|
|
|
|
type MDICREATESTRUCTW = tagMDICREATESTRUCTW /* winuser.h:4750:5 */
|
|
type LPMDICREATESTRUCTW = uintptr /* winuser.h:4750:22 */
|
|
|
|
type MDICREATESTRUCT = MDICREATESTRUCTA /* winuser.h:4752:3 */
|
|
type LPMDICREATESTRUCT = LPMDICREATESTRUCTA /* winuser.h:4753:3 */
|
|
|
|
type tagCLIENTCREATESTRUCT = struct {
|
|
hWindowMenu HANDLE
|
|
idFirstChild UINT
|
|
} /* winuser.h:4755:11 */
|
|
|
|
type CLIENTCREATESTRUCT = tagCLIENTCREATESTRUCT /* winuser.h:4758:5 */
|
|
type LPCLIENTCREATESTRUCT = uintptr /* winuser.h:4758:24 */
|
|
|
|
type HELPPOLY = DWORD /* winuser.h:4784:17 */
|
|
|
|
type tagMULTIKEYHELPA = struct {
|
|
mkSize DWORD
|
|
mkKeylist CHAR
|
|
szKeyphrase [1]CHAR
|
|
_ [2]byte
|
|
} /* winuser.h:4786:11 */
|
|
|
|
type MULTIKEYHELPA = tagMULTIKEYHELPA /* winuser.h:4790:5 */
|
|
type PMULTIKEYHELPA = uintptr /* winuser.h:4790:19 */
|
|
type LPMULTIKEYHELPA = uintptr /* winuser.h:4790:35 */
|
|
|
|
type tagMULTIKEYHELPW = struct {
|
|
mkSize DWORD
|
|
mkKeylist WCHAR
|
|
szKeyphrase [1]WCHAR
|
|
} /* winuser.h:4792:11 */
|
|
|
|
type MULTIKEYHELPW = tagMULTIKEYHELPW /* winuser.h:4796:5 */
|
|
type PMULTIKEYHELPW = uintptr /* winuser.h:4796:19 */
|
|
type LPMULTIKEYHELPW = uintptr /* winuser.h:4796:35 */
|
|
|
|
type MULTIKEYHELP = MULTIKEYHELPA /* winuser.h:4798:3 */
|
|
type PMULTIKEYHELP = PMULTIKEYHELPA /* winuser.h:4799:3 */
|
|
type LPMULTIKEYHELP = LPMULTIKEYHELPA /* winuser.h:4800:3 */
|
|
|
|
type tagHELPWININFOA = struct {
|
|
wStructSize int32
|
|
x int32
|
|
y int32
|
|
dx int32
|
|
dy int32
|
|
wMax int32
|
|
rgchMember [2]CHAR
|
|
_ [2]byte
|
|
} /* winuser.h:4802:11 */
|
|
|
|
type HELPWININFOA = tagHELPWININFOA /* winuser.h:4810:5 */
|
|
type PHELPWININFOA = uintptr /* winuser.h:4810:18 */
|
|
type LPHELPWININFOA = uintptr /* winuser.h:4810:33 */
|
|
|
|
type tagHELPWININFOW = struct {
|
|
wStructSize int32
|
|
x int32
|
|
y int32
|
|
dx int32
|
|
dy int32
|
|
wMax int32
|
|
rgchMember [2]WCHAR
|
|
} /* winuser.h:4812:11 */
|
|
|
|
type HELPWININFOW = tagHELPWININFOW /* winuser.h:4820:5 */
|
|
type PHELPWININFOW = uintptr /* winuser.h:4820:18 */
|
|
type LPHELPWININFOW = uintptr /* winuser.h:4820:33 */
|
|
|
|
type HELPWININFO = HELPWININFOA /* winuser.h:4822:3 */
|
|
type PHELPWININFO = PHELPWININFOA /* winuser.h:4823:3 */
|
|
type LPHELPWININFO = LPHELPWININFOA /* winuser.h:4824:3 */
|
|
|
|
type tagNONCLIENTMETRICSA = struct {
|
|
cbSize UINT
|
|
iBorderWidth int32
|
|
iScrollWidth int32
|
|
iScrollHeight int32
|
|
iCaptionWidth int32
|
|
iCaptionHeight int32
|
|
lfCaptionFont LOGFONTA
|
|
iSmCaptionWidth int32
|
|
iSmCaptionHeight int32
|
|
lfSmCaptionFont LOGFONTA
|
|
iMenuWidth int32
|
|
iMenuHeight int32
|
|
lfMenuFont LOGFONTA
|
|
lfStatusFont LOGFONTA
|
|
lfMessageFont LOGFONTA
|
|
} /* winuser.h:5183:11 */
|
|
|
|
type NONCLIENTMETRICSA = tagNONCLIENTMETRICSA /* winuser.h:5202:5 */
|
|
type PNONCLIENTMETRICSA = uintptr /* winuser.h:5202:23 */
|
|
type LPNONCLIENTMETRICSA = uintptr /* winuser.h:5202:43 */
|
|
|
|
type tagNONCLIENTMETRICSW = struct {
|
|
cbSize UINT
|
|
iBorderWidth int32
|
|
iScrollWidth int32
|
|
iScrollHeight int32
|
|
iCaptionWidth int32
|
|
iCaptionHeight int32
|
|
lfCaptionFont LOGFONTW
|
|
iSmCaptionWidth int32
|
|
iSmCaptionHeight int32
|
|
lfSmCaptionFont LOGFONTW
|
|
iMenuWidth int32
|
|
iMenuHeight int32
|
|
lfMenuFont LOGFONTW
|
|
lfStatusFont LOGFONTW
|
|
lfMessageFont LOGFONTW
|
|
} /* winuser.h:5204:11 */
|
|
|
|
type NONCLIENTMETRICSW = tagNONCLIENTMETRICSW /* winuser.h:5223:5 */
|
|
type PNONCLIENTMETRICSW = uintptr /* winuser.h:5223:23 */
|
|
type LPNONCLIENTMETRICSW = uintptr /* winuser.h:5223:43 */
|
|
|
|
type NONCLIENTMETRICS = NONCLIENTMETRICSA /* winuser.h:5225:3 */
|
|
type PNONCLIENTMETRICS = PNONCLIENTMETRICSA /* winuser.h:5226:3 */
|
|
type LPNONCLIENTMETRICS = LPNONCLIENTMETRICSA /* winuser.h:5227:3 */
|
|
|
|
type tagMINIMIZEDMETRICS = struct {
|
|
cbSize UINT
|
|
iWidth int32
|
|
iHorzGap int32
|
|
iVertGap int32
|
|
iArrange int32
|
|
} /* winuser.h:5247:11 */
|
|
|
|
type MINIMIZEDMETRICS = tagMINIMIZEDMETRICS /* winuser.h:5253:5 */
|
|
type PMINIMIZEDMETRICS = uintptr /* winuser.h:5253:22 */
|
|
type LPMINIMIZEDMETRICS = uintptr /* winuser.h:5253:41 */
|
|
|
|
type tagICONMETRICSA = struct {
|
|
cbSize UINT
|
|
iHorzSpacing int32
|
|
iVertSpacing int32
|
|
iTitleWrap int32
|
|
lfFont LOGFONTA
|
|
} /* winuser.h:5257:11 */
|
|
|
|
type ICONMETRICSA = tagICONMETRICSA /* winuser.h:5263:5 */
|
|
type PICONMETRICSA = uintptr /* winuser.h:5263:18 */
|
|
type LPICONMETRICSA = uintptr /* winuser.h:5263:33 */
|
|
|
|
type tagICONMETRICSW = struct {
|
|
cbSize UINT
|
|
iHorzSpacing int32
|
|
iVertSpacing int32
|
|
iTitleWrap int32
|
|
lfFont LOGFONTW
|
|
} /* winuser.h:5265:11 */
|
|
|
|
type ICONMETRICSW = tagICONMETRICSW /* winuser.h:5271:5 */
|
|
type PICONMETRICSW = uintptr /* winuser.h:5271:18 */
|
|
type LPICONMETRICSW = uintptr /* winuser.h:5271:33 */
|
|
|
|
type ICONMETRICS = ICONMETRICSA /* winuser.h:5273:3 */
|
|
type PICONMETRICS = PICONMETRICSA /* winuser.h:5274:3 */
|
|
type LPICONMETRICS = LPICONMETRICSA /* winuser.h:5275:3 */
|
|
|
|
type tagANIMATIONINFO = struct {
|
|
cbSize UINT
|
|
iMinAnimate int32
|
|
} /* winuser.h:5279:11 */
|
|
|
|
type ANIMATIONINFO = tagANIMATIONINFO /* winuser.h:5282:5 */
|
|
type LPANIMATIONINFO = uintptr /* winuser.h:5282:19 */
|
|
|
|
type tagSERIALKEYSA = struct {
|
|
cbSize UINT
|
|
dwFlags DWORD
|
|
lpszActivePort LPSTR
|
|
lpszPort LPSTR
|
|
iBaudRate UINT
|
|
iPortState UINT
|
|
iActive UINT
|
|
} /* winuser.h:5284:11 */
|
|
|
|
type SERIALKEYSA = tagSERIALKEYSA /* winuser.h:5292:5 */
|
|
type LPSERIALKEYSA = uintptr /* winuser.h:5292:17 */
|
|
|
|
type tagSERIALKEYSW = struct {
|
|
cbSize UINT
|
|
dwFlags DWORD
|
|
lpszActivePort LPWSTR
|
|
lpszPort LPWSTR
|
|
iBaudRate UINT
|
|
iPortState UINT
|
|
iActive UINT
|
|
} /* winuser.h:5294:11 */
|
|
|
|
type SERIALKEYSW = tagSERIALKEYSW /* winuser.h:5302:5 */
|
|
type LPSERIALKEYSW = uintptr /* winuser.h:5302:17 */
|
|
|
|
type SERIALKEYS = SERIALKEYSA /* winuser.h:5304:3 */
|
|
type LPSERIALKEYS = LPSERIALKEYSA /* winuser.h:5305:3 */
|
|
|
|
type tagHIGHCONTRASTA = struct {
|
|
cbSize UINT
|
|
dwFlags DWORD
|
|
lpszDefaultScheme LPSTR
|
|
} /* winuser.h:5307:11 */
|
|
|
|
type HIGHCONTRASTA = tagHIGHCONTRASTA /* winuser.h:5311:5 */
|
|
type LPHIGHCONTRASTA = uintptr /* winuser.h:5311:19 */
|
|
|
|
type tagHIGHCONTRASTW = struct {
|
|
cbSize UINT
|
|
dwFlags DWORD
|
|
lpszDefaultScheme LPWSTR
|
|
} /* winuser.h:5313:11 */
|
|
|
|
type HIGHCONTRASTW = tagHIGHCONTRASTW /* winuser.h:5317:5 */
|
|
type LPHIGHCONTRASTW = uintptr /* winuser.h:5317:19 */
|
|
|
|
type HIGHCONTRAST = HIGHCONTRASTA /* winuser.h:5319:3 */
|
|
type LPHIGHCONTRAST = LPHIGHCONTRASTA /* winuser.h:5320:3 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// __declspec(selectany) must be applied to initialized objects on GCC 5 hence must not be used here.
|
|
|
|
type _VIDEOPARAMETERS = struct {
|
|
Guid GUID
|
|
dwOffset ULONG
|
|
dwCommand ULONG
|
|
dwFlags ULONG
|
|
dwMode ULONG
|
|
dwTVStandard ULONG
|
|
dwAvailableModes ULONG
|
|
dwAvailableTVStandard ULONG
|
|
dwFlickerFilter ULONG
|
|
dwOverScanX ULONG
|
|
dwOverScanY ULONG
|
|
dwMaxUnscaledX ULONG
|
|
dwMaxUnscaledY ULONG
|
|
dwPositionX ULONG
|
|
dwPositionY ULONG
|
|
dwBrightness ULONG
|
|
dwContrast ULONG
|
|
dwCPType ULONG
|
|
dwCPCommand ULONG
|
|
dwCPStandard ULONG
|
|
dwCPKey ULONG
|
|
bCP_APSTriggerBits ULONG
|
|
bOEMCopyProtection [256]UCHAR
|
|
} /* tvout.h:11:9 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// __declspec(selectany) must be applied to initialized objects on GCC 5 hence must not be used here.
|
|
|
|
type VIDEOPARAMETERS = _VIDEOPARAMETERS /* tvout.h:35:3 */
|
|
type PVIDEOPARAMETERS = uintptr /* tvout.h:35:19 */
|
|
type LPVIDEOPARAMETERS = uintptr /* tvout.h:35:37 */
|
|
|
|
type tagFILTERKEYS = struct {
|
|
cbSize UINT
|
|
dwFlags DWORD
|
|
iWaitMSec DWORD
|
|
iDelayMSec DWORD
|
|
iRepeatMSec DWORD
|
|
iBounceMSec DWORD
|
|
} /* winuser.h:5409:11 */
|
|
|
|
type FILTERKEYS = tagFILTERKEYS /* winuser.h:5416:5 */
|
|
type LPFILTERKEYS = uintptr /* winuser.h:5416:16 */
|
|
|
|
type tagSTICKYKEYS = struct {
|
|
cbSize UINT
|
|
dwFlags DWORD
|
|
} /* winuser.h:5428:11 */
|
|
|
|
type STICKYKEYS = tagSTICKYKEYS /* winuser.h:5431:5 */
|
|
type LPSTICKYKEYS = uintptr /* winuser.h:5431:16 */
|
|
|
|
type tagMOUSEKEYS = struct {
|
|
cbSize UINT
|
|
dwFlags DWORD
|
|
iMaxSpeed DWORD
|
|
iTimeToMaxSpeed DWORD
|
|
iCtrlSpeed DWORD
|
|
dwReserved1 DWORD
|
|
dwReserved2 DWORD
|
|
} /* winuser.h:5461:11 */
|
|
|
|
type MOUSEKEYS = tagMOUSEKEYS /* winuser.h:5469:5 */
|
|
type LPMOUSEKEYS = uintptr /* winuser.h:5469:15 */
|
|
|
|
type tagACCESSTIMEOUT = struct {
|
|
cbSize UINT
|
|
dwFlags DWORD
|
|
iTimeOutMSec DWORD
|
|
} /* winuser.h:5487:11 */
|
|
|
|
type ACCESSTIMEOUT = tagACCESSTIMEOUT /* winuser.h:5491:5 */
|
|
type LPACCESSTIMEOUT = uintptr /* winuser.h:5491:19 */
|
|
|
|
type tagSOUNDSENTRYA = struct {
|
|
cbSize UINT
|
|
dwFlags DWORD
|
|
iFSTextEffect DWORD
|
|
iFSTextEffectMSec DWORD
|
|
iFSTextEffectColorBits DWORD
|
|
iFSGrafEffect DWORD
|
|
iFSGrafEffectMSec DWORD
|
|
iFSGrafEffectColor DWORD
|
|
iWindowsEffect DWORD
|
|
iWindowsEffectMSec DWORD
|
|
lpszWindowsEffectDLL LPSTR
|
|
iWindowsEffectOrdinal DWORD
|
|
} /* winuser.h:5512:11 */
|
|
|
|
type SOUNDSENTRYA = tagSOUNDSENTRYA /* winuser.h:5525:5 */
|
|
type LPSOUNDSENTRYA = uintptr /* winuser.h:5525:18 */
|
|
|
|
type tagSOUNDSENTRYW = struct {
|
|
cbSize UINT
|
|
dwFlags DWORD
|
|
iFSTextEffect DWORD
|
|
iFSTextEffectMSec DWORD
|
|
iFSTextEffectColorBits DWORD
|
|
iFSGrafEffect DWORD
|
|
iFSGrafEffectMSec DWORD
|
|
iFSGrafEffectColor DWORD
|
|
iWindowsEffect DWORD
|
|
iWindowsEffectMSec DWORD
|
|
lpszWindowsEffectDLL LPWSTR
|
|
iWindowsEffectOrdinal DWORD
|
|
} /* winuser.h:5527:11 */
|
|
|
|
type SOUNDSENTRYW = tagSOUNDSENTRYW /* winuser.h:5540:5 */
|
|
type LPSOUNDSENTRYW = uintptr /* winuser.h:5540:18 */
|
|
|
|
type SOUNDSENTRY = SOUNDSENTRYA /* winuser.h:5542:3 */
|
|
type LPSOUNDSENTRY = LPSOUNDSENTRYA /* winuser.h:5543:3 */
|
|
|
|
type tagTOGGLEKEYS = struct {
|
|
cbSize UINT
|
|
dwFlags DWORD
|
|
} /* winuser.h:5555:11 */
|
|
|
|
type TOGGLEKEYS = tagTOGGLEKEYS /* winuser.h:5558:5 */
|
|
type LPTOGGLEKEYS = uintptr /* winuser.h:5558:16 */
|
|
|
|
type tagMONITORINFO = struct {
|
|
cbSize DWORD
|
|
rcMonitor RECT
|
|
rcWork RECT
|
|
dwFlags DWORD
|
|
} /* winuser.h:5560:11 */
|
|
|
|
type MONITORINFO = tagMONITORINFO /* winuser.h:5565:5 */
|
|
type LPMONITORINFO = uintptr /* winuser.h:5565:17 */
|
|
|
|
type tagMONITORINFOEXA = struct {
|
|
__0 struct {
|
|
cbSize DWORD
|
|
rcMonitor RECT
|
|
rcWork RECT
|
|
dwFlags DWORD
|
|
}
|
|
szDevice [32]CHAR
|
|
} /* winuser.h:5587:11 */
|
|
|
|
type MONITORINFOEXA = tagMONITORINFOEXA /* winuser.h:5595:5 */
|
|
type LPMONITORINFOEXA = uintptr /* winuser.h:5595:20 */
|
|
|
|
type tagMONITORINFOEXW = struct {
|
|
__0 struct {
|
|
cbSize DWORD
|
|
rcMonitor RECT
|
|
rcWork RECT
|
|
dwFlags DWORD
|
|
}
|
|
szDevice [32]WCHAR
|
|
} /* winuser.h:5597:11 */
|
|
|
|
type MONITORINFOEXW = tagMONITORINFOEXW /* winuser.h:5605:5 */
|
|
type LPMONITORINFOEXW = uintptr /* winuser.h:5605:20 */
|
|
|
|
type MONITORINFOEX = MONITORINFOEXA /* winuser.h:5607:3 */
|
|
type LPMONITORINFOEX = LPMONITORINFOEXA /* winuser.h:5608:3 */
|
|
|
|
type MONITORENUMPROC = uintptr /* winuser.h:5611:19 */
|
|
|
|
type WINEVENTPROC = uintptr /* winuser.h:5653:16 */
|
|
|
|
type tagGUITHREADINFO = struct {
|
|
cbSize DWORD
|
|
flags DWORD
|
|
hwndActive HWND
|
|
hwndFocus HWND
|
|
hwndCapture HWND
|
|
hwndMenuOwner HWND
|
|
hwndMoveSize HWND
|
|
hwndCaret HWND
|
|
rcCaret RECT
|
|
} /* winuser.h:5830:11 */
|
|
|
|
type GUITHREADINFO = tagGUITHREADINFO /* winuser.h:5840:5 */
|
|
type PGUITHREADINFO = uintptr /* winuser.h:5840:19 */
|
|
type LPGUITHREADINFO = uintptr /* winuser.h:5840:35 */
|
|
|
|
type tagCURSORINFO = struct {
|
|
cbSize DWORD
|
|
flags DWORD
|
|
hCursor HCURSOR
|
|
ptScreenPos POINT
|
|
} /* winuser.h:5908:11 */
|
|
|
|
type CURSORINFO = tagCURSORINFO /* winuser.h:5913:5 */
|
|
type PCURSORINFO = uintptr /* winuser.h:5913:16 */
|
|
type LPCURSORINFO = uintptr /* winuser.h:5913:29 */
|
|
|
|
type tagWINDOWINFO = struct {
|
|
cbSize DWORD
|
|
rcWindow RECT
|
|
rcClient RECT
|
|
dwStyle DWORD
|
|
dwExStyle DWORD
|
|
dwWindowStatus DWORD
|
|
cxWindowBorders UINT
|
|
cyWindowBorders UINT
|
|
atomWindowType ATOM
|
|
wCreatorVersion WORD
|
|
} /* winuser.h:5922:11 */
|
|
|
|
type WINDOWINFO = tagWINDOWINFO /* winuser.h:5933:5 */
|
|
type PWINDOWINFO = uintptr /* winuser.h:5933:16 */
|
|
type LPWINDOWINFO = uintptr /* winuser.h:5933:29 */
|
|
|
|
type tagTITLEBARINFO = struct {
|
|
cbSize DWORD
|
|
rcTitleBar RECT
|
|
rgstate [6]DWORD
|
|
} /* winuser.h:5939:11 */
|
|
|
|
type TITLEBARINFO = tagTITLEBARINFO /* winuser.h:5943:5 */
|
|
type PTITLEBARINFO = uintptr /* winuser.h:5943:18 */
|
|
type LPTITLEBARINFO = uintptr /* winuser.h:5943:33 */
|
|
|
|
type tagMENUBARINFO = struct {
|
|
cbSize DWORD
|
|
rcBar RECT
|
|
hMenu HMENU
|
|
hwndMenu HWND
|
|
fBarFocused uint8 /* WINBOOL fBarFocused: 1, WINBOOL fFocused: 1 */
|
|
_ [3]byte
|
|
} /* winuser.h:5956:11 */
|
|
|
|
type MENUBARINFO = tagMENUBARINFO /* winuser.h:5963:5 */
|
|
type PMENUBARINFO = uintptr /* winuser.h:5963:17 */
|
|
type LPMENUBARINFO = uintptr /* winuser.h:5963:31 */
|
|
|
|
type tagSCROLLBARINFO = struct {
|
|
cbSize DWORD
|
|
rcScrollBar RECT
|
|
dxyLineButton int32
|
|
xyThumbTop int32
|
|
xyThumbBottom int32
|
|
reserved int32
|
|
rgstate [6]DWORD
|
|
} /* winuser.h:5967:11 */
|
|
|
|
type SCROLLBARINFO = tagSCROLLBARINFO /* winuser.h:5975:5 */
|
|
type PSCROLLBARINFO = uintptr /* winuser.h:5975:19 */
|
|
type LPSCROLLBARINFO = uintptr /* winuser.h:5975:35 */
|
|
|
|
type tagCOMBOBOXINFO = struct {
|
|
cbSize DWORD
|
|
rcItem RECT
|
|
rcButton RECT
|
|
stateButton DWORD
|
|
hwndCombo HWND
|
|
hwndItem HWND
|
|
hwndList HWND
|
|
} /* winuser.h:5979:11 */
|
|
|
|
type COMBOBOXINFO = tagCOMBOBOXINFO /* winuser.h:5987:5 */
|
|
type PCOMBOBOXINFO = uintptr /* winuser.h:5987:18 */
|
|
type LPCOMBOBOXINFO = uintptr /* winuser.h:5987:33 */
|
|
|
|
type tagALTTABINFO = struct {
|
|
cbSize DWORD
|
|
cItems int32
|
|
cColumns int32
|
|
cRows int32
|
|
iColFocus int32
|
|
iRowFocus int32
|
|
cxItem int32
|
|
cyItem int32
|
|
ptStart POINT
|
|
} /* winuser.h:6004:11 */
|
|
|
|
type ALTTABINFO = tagALTTABINFO /* winuser.h:6014:5 */
|
|
type PALTTABINFO = uintptr /* winuser.h:6014:16 */
|
|
type LPALTTABINFO = uintptr /* winuser.h:6014:29 */
|
|
|
|
type HRAWINPUT__ = struct{ unused int32 } /* winuser.h:6028:3 */
|
|
|
|
type HRAWINPUT = uintptr /* winuser.h:6028:3 */
|
|
|
|
type tagRAWINPUTHEADER = struct {
|
|
dwType DWORD
|
|
dwSize DWORD
|
|
hDevice HANDLE
|
|
wParam WPARAM
|
|
} /* winuser.h:6037:11 */
|
|
|
|
type RAWINPUTHEADER = tagRAWINPUTHEADER /* winuser.h:6042:5 */
|
|
type PRAWINPUTHEADER = uintptr /* winuser.h:6042:20 */
|
|
type LPRAWINPUTHEADER = uintptr /* winuser.h:6042:37 */
|
|
|
|
type tagRAWMOUSE = struct {
|
|
usFlags USHORT
|
|
_ [2]byte
|
|
__4 struct{ ulButtons ULONG }
|
|
ulRawButtons ULONG
|
|
lLastX LONG
|
|
lLastY LONG
|
|
ulExtraInformation ULONG
|
|
} /* winuser.h:6050:11 */
|
|
|
|
type RAWMOUSE = tagRAWMOUSE /* winuser.h:6063:5 */
|
|
type PRAWMOUSE = uintptr /* winuser.h:6063:14 */
|
|
type LPRAWMOUSE = uintptr /* winuser.h:6063:25 */
|
|
|
|
type tagRAWKEYBOARD = struct {
|
|
MakeCode USHORT
|
|
Flags USHORT
|
|
Reserved USHORT
|
|
VKey USHORT
|
|
Message UINT
|
|
ExtraInformation ULONG
|
|
} /* winuser.h:6094:11 */
|
|
|
|
type RAWKEYBOARD = tagRAWKEYBOARD /* winuser.h:6101:5 */
|
|
type PRAWKEYBOARD = uintptr /* winuser.h:6101:17 */
|
|
type LPRAWKEYBOARD = uintptr /* winuser.h:6101:31 */
|
|
|
|
type tagRAWHID = struct {
|
|
dwSizeHid DWORD
|
|
dwCount DWORD
|
|
bRawData [1]BYTE
|
|
_ [3]byte
|
|
} /* winuser.h:6114:11 */
|
|
|
|
type RAWHID = tagRAWHID /* winuser.h:6118:5 */
|
|
type PRAWHID = uintptr /* winuser.h:6118:12 */
|
|
type LPRAWHID = uintptr /* winuser.h:6118:21 */
|
|
|
|
type tagRAWINPUT = struct {
|
|
header RAWINPUTHEADER
|
|
data struct{ mouse RAWMOUSE }
|
|
} /* winuser.h:6120:11 */
|
|
|
|
type RAWINPUT = tagRAWINPUT /* winuser.h:6127:5 */
|
|
type PRAWINPUT = uintptr /* winuser.h:6127:14 */
|
|
type LPRAWINPUT = uintptr /* winuser.h:6127:25 */
|
|
|
|
type tagRID_DEVICE_INFO_MOUSE = struct {
|
|
dwId DWORD
|
|
dwNumberOfButtons DWORD
|
|
dwSampleRate DWORD
|
|
fHasHorizontalWheel WINBOOL
|
|
} /* winuser.h:6150:11 */
|
|
|
|
type RID_DEVICE_INFO_MOUSE = tagRID_DEVICE_INFO_MOUSE /* winuser.h:6155:5 */
|
|
type PRID_DEVICE_INFO_MOUSE = uintptr /* winuser.h:6155:27 */
|
|
|
|
type tagRID_DEVICE_INFO_KEYBOARD = struct {
|
|
dwType DWORD
|
|
dwSubType DWORD
|
|
dwKeyboardMode DWORD
|
|
dwNumberOfFunctionKeys DWORD
|
|
dwNumberOfIndicators DWORD
|
|
dwNumberOfKeysTotal DWORD
|
|
} /* winuser.h:6157:11 */
|
|
|
|
type RID_DEVICE_INFO_KEYBOARD = tagRID_DEVICE_INFO_KEYBOARD /* winuser.h:6164:5 */
|
|
type PRID_DEVICE_INFO_KEYBOARD = uintptr /* winuser.h:6164:30 */
|
|
|
|
type tagRID_DEVICE_INFO_HID = struct {
|
|
dwVendorId DWORD
|
|
dwProductId DWORD
|
|
dwVersionNumber DWORD
|
|
usUsagePage USHORT
|
|
usUsage USHORT
|
|
} /* winuser.h:6166:11 */
|
|
|
|
type RID_DEVICE_INFO_HID = tagRID_DEVICE_INFO_HID /* winuser.h:6172:5 */
|
|
type PRID_DEVICE_INFO_HID = uintptr /* winuser.h:6172:25 */
|
|
|
|
type tagRID_DEVICE_INFO = struct {
|
|
cbSize DWORD
|
|
dwType DWORD
|
|
u struct {
|
|
mouse RID_DEVICE_INFO_MOUSE
|
|
_ [8]byte
|
|
}
|
|
} /* winuser.h:6174:11 */
|
|
|
|
type RID_DEVICE_INFO = tagRID_DEVICE_INFO /* winuser.h:6182:5 */
|
|
type PRID_DEVICE_INFO = uintptr /* winuser.h:6182:21 */
|
|
type LPRID_DEVICE_INFO = uintptr /* winuser.h:6182:39 */
|
|
|
|
type tagRAWINPUTDEVICE = struct {
|
|
usUsagePage USHORT
|
|
usUsage USHORT
|
|
dwFlags DWORD
|
|
hwndTarget HWND
|
|
} /* winuser.h:6190:11 */
|
|
|
|
type RAWINPUTDEVICE = tagRAWINPUTDEVICE /* winuser.h:6195:5 */
|
|
type PRAWINPUTDEVICE = uintptr /* winuser.h:6195:20 */
|
|
type LPRAWINPUTDEVICE = uintptr /* winuser.h:6195:37 */
|
|
|
|
type PCRAWINPUTDEVICE = uintptr /* winuser.h:6197:32 */
|
|
|
|
type tagRAWINPUTDEVICELIST = struct {
|
|
hDevice HANDLE
|
|
dwType DWORD
|
|
} /* winuser.h:6224:11 */
|
|
|
|
type RAWINPUTDEVICELIST = tagRAWINPUTDEVICELIST /* winuser.h:6227:5 */
|
|
type PRAWINPUTDEVICELIST = uintptr /* winuser.h:6227:24 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type LGRPID = DWORD /* winnls.h:644:17 */
|
|
type LCTYPE = DWORD /* winnls.h:645:17 */
|
|
type CALTYPE = DWORD /* winnls.h:646:17 */
|
|
type CALID = DWORD /* winnls.h:647:17 */
|
|
|
|
type _cpinfo = struct {
|
|
MaxCharSize UINT
|
|
DefaultChar [2]BYTE
|
|
LeadByte [12]BYTE
|
|
_ [2]byte
|
|
} /* winnls.h:649:11 */
|
|
|
|
type CPINFO = _cpinfo /* winnls.h:653:5 */
|
|
type LPCPINFO = uintptr /* winnls.h:653:12 */
|
|
type _cpinfoexA = struct {
|
|
MaxCharSize UINT
|
|
DefaultChar [2]BYTE
|
|
LeadByte [12]BYTE
|
|
UnicodeDefaultChar WCHAR
|
|
CodePage UINT
|
|
CodePageName [260]CHAR
|
|
} /* winnls.h:654:11 */
|
|
|
|
type CPINFOEXA = _cpinfoexA /* winnls.h:661:5 */
|
|
type LPCPINFOEXA = uintptr /* winnls.h:661:15 */
|
|
|
|
type _cpinfoexW = struct {
|
|
MaxCharSize UINT
|
|
DefaultChar [2]BYTE
|
|
LeadByte [12]BYTE
|
|
UnicodeDefaultChar WCHAR
|
|
CodePage UINT
|
|
CodePageName [260]WCHAR
|
|
} /* winnls.h:663:11 */
|
|
|
|
type CPINFOEXW = _cpinfoexW /* winnls.h:670:5 */
|
|
type LPCPINFOEXW = uintptr /* winnls.h:670:15 */
|
|
|
|
type CPINFOEX = CPINFOEXA /* winnls.h:672:3 */
|
|
type LPCPINFOEX = LPCPINFOEXA /* winnls.h:673:3 */
|
|
|
|
type _numberfmtA = struct {
|
|
NumDigits UINT
|
|
LeadingZero UINT
|
|
Grouping UINT
|
|
lpDecimalSep LPSTR
|
|
lpThousandSep LPSTR
|
|
NegativeOrder UINT
|
|
} /* winnls.h:675:11 */
|
|
|
|
type NUMBERFMTA = _numberfmtA /* winnls.h:682:5 */
|
|
type LPNUMBERFMTA = uintptr /* winnls.h:682:16 */
|
|
type _numberfmtW = struct {
|
|
NumDigits UINT
|
|
LeadingZero UINT
|
|
Grouping UINT
|
|
lpDecimalSep LPWSTR
|
|
lpThousandSep LPWSTR
|
|
NegativeOrder UINT
|
|
} /* winnls.h:683:11 */
|
|
|
|
type NUMBERFMTW = _numberfmtW /* winnls.h:690:5 */
|
|
type LPNUMBERFMTW = uintptr /* winnls.h:690:16 */
|
|
|
|
type NUMBERFMT = NUMBERFMTA /* winnls.h:692:3 */
|
|
type LPNUMBERFMT = LPNUMBERFMTA /* winnls.h:693:3 */
|
|
|
|
type _currencyfmtA = struct {
|
|
NumDigits UINT
|
|
LeadingZero UINT
|
|
Grouping UINT
|
|
lpDecimalSep LPSTR
|
|
lpThousandSep LPSTR
|
|
NegativeOrder UINT
|
|
PositiveOrder UINT
|
|
lpCurrencySymbol LPSTR
|
|
} /* winnls.h:695:11 */
|
|
|
|
type CURRENCYFMTA = _currencyfmtA /* winnls.h:704:5 */
|
|
type LPCURRENCYFMTA = uintptr /* winnls.h:704:18 */
|
|
|
|
type _currencyfmtW = struct {
|
|
NumDigits UINT
|
|
LeadingZero UINT
|
|
Grouping UINT
|
|
lpDecimalSep LPWSTR
|
|
lpThousandSep LPWSTR
|
|
NegativeOrder UINT
|
|
PositiveOrder UINT
|
|
lpCurrencySymbol LPWSTR
|
|
} /* winnls.h:706:11 */
|
|
|
|
type CURRENCYFMTW = _currencyfmtW /* winnls.h:715:5 */
|
|
type LPCURRENCYFMTW = uintptr /* winnls.h:715:18 */
|
|
|
|
type CURRENCYFMT = CURRENCYFMTA /* winnls.h:717:3 */
|
|
type LPCURRENCYFMT = LPCURRENCYFMTA /* winnls.h:718:3 */
|
|
|
|
type NLS_FUNCTION = DWORD /* winnls.h:724:17 */
|
|
|
|
type _nlsversioninfo = struct {
|
|
dwNLSVersionInfoSize DWORD
|
|
dwNLSVersion DWORD
|
|
dwDefinedVersion DWORD
|
|
} /* winnls.h:735:11 */
|
|
|
|
type NLSVERSIONINFO = _nlsversioninfo /* winnls.h:739:5 */
|
|
type LPNLSVERSIONINFO = uintptr /* winnls.h:739:20 */
|
|
|
|
type _nlsversioninfoex = struct {
|
|
dwNLSVersionInfoSize DWORD
|
|
dwNLSVersion DWORD
|
|
dwDefinedVersion DWORD
|
|
dwEffectiveId DWORD
|
|
guidCustomVersion GUID
|
|
} /* winnls.h:742:11 */
|
|
|
|
type NLSVERSIONINFOEX = _nlsversioninfoex /* winnls.h:748:5 */
|
|
type LPNLSVERSIONINFOEX = uintptr /* winnls.h:748:22 */
|
|
|
|
type GEOID = LONG /* winnls.h:750:16 */
|
|
type GEOTYPE = DWORD /* winnls.h:751:17 */
|
|
type GEOCLASS = DWORD /* winnls.h:752:17 */
|
|
|
|
type LANGUAGEGROUP_ENUMPROCA = uintptr /* winnls.h:798:19 */
|
|
type LANGGROUPLOCALE_ENUMPROCA = uintptr /* winnls.h:799:19 */
|
|
type UILANGUAGE_ENUMPROCA = uintptr /* winnls.h:800:19 */
|
|
type CODEPAGE_ENUMPROCA = uintptr /* winnls.h:801:19 */
|
|
type DATEFMT_ENUMPROCA = uintptr /* winnls.h:802:19 */
|
|
type DATEFMT_ENUMPROCEXA = uintptr /* winnls.h:803:19 */
|
|
type TIMEFMT_ENUMPROCA = uintptr /* winnls.h:804:19 */
|
|
type CALINFO_ENUMPROCA = uintptr /* winnls.h:805:19 */
|
|
type CALINFO_ENUMPROCEXA = uintptr /* winnls.h:806:19 */
|
|
type LOCALE_ENUMPROCA = uintptr /* winnls.h:807:19 */
|
|
type LOCALE_ENUMPROCW = uintptr /* winnls.h:808:19 */
|
|
type LANGUAGEGROUP_ENUMPROCW = uintptr /* winnls.h:809:19 */
|
|
type LANGGROUPLOCALE_ENUMPROCW = uintptr /* winnls.h:810:19 */
|
|
type UILANGUAGE_ENUMPROCW = uintptr /* winnls.h:811:19 */
|
|
type CODEPAGE_ENUMPROCW = uintptr /* winnls.h:812:19 */
|
|
type DATEFMT_ENUMPROCW = uintptr /* winnls.h:813:19 */
|
|
type DATEFMT_ENUMPROCEXW = uintptr /* winnls.h:814:19 */
|
|
type TIMEFMT_ENUMPROCW = uintptr /* winnls.h:815:19 */
|
|
type CALINFO_ENUMPROCW = uintptr /* winnls.h:816:19 */
|
|
type CALINFO_ENUMPROCEXW = uintptr /* winnls.h:817:19 */
|
|
type GEO_ENUMPROC = uintptr /* winnls.h:818:19 */
|
|
|
|
type _FILEMUIINFO = struct {
|
|
dwSize DWORD
|
|
dwVersion DWORD
|
|
dwFileType DWORD
|
|
pChecksum [16]BYTE
|
|
pServiceChecksum [16]BYTE
|
|
dwLanguageNameOffset DWORD
|
|
dwTypeIDMainSize DWORD
|
|
dwTypeIDMainOffset DWORD
|
|
dwTypeNameMainOffset DWORD
|
|
dwTypeIDMUISize DWORD
|
|
dwTypeIDMUIOffset DWORD
|
|
dwTypeNameMUIOffset DWORD
|
|
abBuffer [8]BYTE
|
|
} /* winnls.h:869:11 */
|
|
|
|
type FILEMUIINFO = _FILEMUIINFO /* winnls.h:883:5 */
|
|
type PFILEMUIINFO = uintptr /* winnls.h:883:17 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type _COORD = struct {
|
|
X SHORT
|
|
Y SHORT
|
|
} /* wincon.h:17:11 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type COORD = _COORD /* wincon.h:20:5 */
|
|
type PCOORD = uintptr /* wincon.h:20:11 */
|
|
|
|
type _SMALL_RECT = struct {
|
|
Left SHORT
|
|
Top SHORT
|
|
Right SHORT
|
|
Bottom SHORT
|
|
} /* wincon.h:22:11 */
|
|
|
|
type SMALL_RECT = _SMALL_RECT /* wincon.h:27:5 */
|
|
type PSMALL_RECT = uintptr /* wincon.h:27:16 */
|
|
|
|
type _KEY_EVENT_RECORD = struct {
|
|
bKeyDown WINBOOL
|
|
wRepeatCount WORD
|
|
wVirtualKeyCode WORD
|
|
wVirtualScanCode WORD
|
|
uChar struct{ UnicodeChar WCHAR }
|
|
dwControlKeyState DWORD
|
|
} /* wincon.h:29:11 */
|
|
|
|
type KEY_EVENT_RECORD = _KEY_EVENT_RECORD /* wincon.h:39:5 */
|
|
type PKEY_EVENT_RECORD = uintptr /* wincon.h:39:22 */
|
|
|
|
type _MOUSE_EVENT_RECORD = struct {
|
|
dwMousePosition COORD
|
|
dwButtonState DWORD
|
|
dwControlKeyState DWORD
|
|
dwEventFlags DWORD
|
|
} /* wincon.h:58:11 */
|
|
|
|
type MOUSE_EVENT_RECORD = _MOUSE_EVENT_RECORD /* wincon.h:63:5 */
|
|
type PMOUSE_EVENT_RECORD = uintptr /* wincon.h:63:24 */
|
|
|
|
type _WINDOW_BUFFER_SIZE_RECORD = struct{ dwSize COORD } /* wincon.h:78:11 */
|
|
|
|
type WINDOW_BUFFER_SIZE_RECORD = _WINDOW_BUFFER_SIZE_RECORD /* wincon.h:80:5 */
|
|
type PWINDOW_BUFFER_SIZE_RECORD = uintptr /* wincon.h:80:31 */
|
|
|
|
type _MENU_EVENT_RECORD = struct{ dwCommandId UINT } /* wincon.h:82:11 */
|
|
|
|
type MENU_EVENT_RECORD = _MENU_EVENT_RECORD /* wincon.h:84:5 */
|
|
type PMENU_EVENT_RECORD = uintptr /* wincon.h:84:23 */
|
|
|
|
type _FOCUS_EVENT_RECORD = struct{ bSetFocus WINBOOL } /* wincon.h:86:11 */
|
|
|
|
type FOCUS_EVENT_RECORD = _FOCUS_EVENT_RECORD /* wincon.h:88:5 */
|
|
type PFOCUS_EVENT_RECORD = uintptr /* wincon.h:88:24 */
|
|
|
|
type _INPUT_RECORD = struct {
|
|
EventType WORD
|
|
_ [2]byte
|
|
Event struct{ KeyEvent KEY_EVENT_RECORD }
|
|
} /* wincon.h:90:11 */
|
|
|
|
type INPUT_RECORD = _INPUT_RECORD /* wincon.h:99:5 */
|
|
type PINPUT_RECORD = uintptr /* wincon.h:99:18 */
|
|
|
|
type _CHAR_INFO = struct {
|
|
Char struct{ UnicodeChar WCHAR }
|
|
Attributes WORD
|
|
} /* wincon.h:107:11 */
|
|
|
|
type CHAR_INFO = _CHAR_INFO /* wincon.h:113:5 */
|
|
type PCHAR_INFO = uintptr /* wincon.h:113:15 */
|
|
|
|
type _CONSOLE_SCREEN_BUFFER_INFO = struct {
|
|
dwSize COORD
|
|
dwCursorPosition COORD
|
|
wAttributes WORD
|
|
srWindow SMALL_RECT
|
|
dwMaximumWindowSize COORD
|
|
} /* wincon.h:133:11 */
|
|
|
|
type CONSOLE_SCREEN_BUFFER_INFO = _CONSOLE_SCREEN_BUFFER_INFO /* wincon.h:139:5 */
|
|
type PCONSOLE_SCREEN_BUFFER_INFO = uintptr /* wincon.h:139:32 */
|
|
|
|
type _CONSOLE_CURSOR_INFO = struct {
|
|
dwSize DWORD
|
|
bVisible WINBOOL
|
|
} /* wincon.h:141:11 */
|
|
|
|
type CONSOLE_CURSOR_INFO = _CONSOLE_CURSOR_INFO /* wincon.h:144:5 */
|
|
type PCONSOLE_CURSOR_INFO = uintptr /* wincon.h:144:25 */
|
|
|
|
type _CONSOLE_FONT_INFO = struct {
|
|
nFont DWORD
|
|
dwFontSize COORD
|
|
} /* wincon.h:146:11 */
|
|
|
|
type CONSOLE_FONT_INFO = _CONSOLE_FONT_INFO /* wincon.h:149:5 */
|
|
type PCONSOLE_FONT_INFO = uintptr /* wincon.h:149:23 */
|
|
|
|
type _CONSOLE_SELECTION_INFO = struct {
|
|
dwFlags DWORD
|
|
dwSelectionAnchor COORD
|
|
srSelection SMALL_RECT
|
|
} /* wincon.h:151:11 */
|
|
|
|
type CONSOLE_SELECTION_INFO = _CONSOLE_SELECTION_INFO /* wincon.h:155:5 */
|
|
type PCONSOLE_SELECTION_INFO = uintptr /* wincon.h:155:28 */
|
|
|
|
type PHANDLER_ROUTINE = uintptr /* wincon.h:163:19 */
|
|
|
|
type _CONSOLE_FONT_INFOEX = struct {
|
|
cbSize ULONG
|
|
nFont DWORD
|
|
dwFontSize COORD
|
|
FontFamily UINT
|
|
FontWeight UINT
|
|
FaceName [32]WCHAR
|
|
} /* wincon.h:297:9 */
|
|
|
|
type CONSOLE_FONT_INFOEX = _CONSOLE_FONT_INFOEX /* wincon.h:304:3 */
|
|
type PCONSOLE_FONT_INFOEX = uintptr /* wincon.h:304:24 */
|
|
|
|
type _CONSOLE_HISTORY_INFO = struct {
|
|
cbSize UINT
|
|
HistoryBufferSize UINT
|
|
NumberOfHistoryBuffers UINT
|
|
dwFlags DWORD
|
|
} /* wincon.h:306:9 */
|
|
|
|
type CONSOLE_HISTORY_INFO = _CONSOLE_HISTORY_INFO /* wincon.h:311:3 */
|
|
type PCONSOLE_HISTORY_INFO = uintptr /* wincon.h:311:25 */
|
|
|
|
type _CONSOLE_READCONSOLE_CONTROL = struct {
|
|
nLength ULONG
|
|
nInitialChars ULONG
|
|
dwCtrlWakeupMask ULONG
|
|
dwControlKeyState ULONG
|
|
} /* wincon.h:313:9 */
|
|
|
|
type CONSOLE_READCONSOLE_CONTROL = _CONSOLE_READCONSOLE_CONTROL /* wincon.h:318:3 */
|
|
type PCONSOLE_READCONSOLE_CONTROL = uintptr /* wincon.h:318:32 */
|
|
|
|
type _CONSOLE_SCREEN_BUFFER_INFOEX = struct {
|
|
cbSize ULONG
|
|
dwSize COORD
|
|
dwCursorPosition COORD
|
|
wAttributes WORD
|
|
srWindow SMALL_RECT
|
|
dwMaximumWindowSize COORD
|
|
wPopupAttributes WORD
|
|
bFullscreenSupported WINBOOL
|
|
ColorTable [16]COLORREF
|
|
} /* wincon.h:320:9 */
|
|
|
|
type CONSOLE_SCREEN_BUFFER_INFOEX = _CONSOLE_SCREEN_BUFFER_INFOEX /* wincon.h:330:3 */
|
|
type PCONSOLE_SCREEN_BUFFER_INFOEX = uintptr /* wincon.h:330:33 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type tagVS_FIXEDFILEINFO = struct {
|
|
dwSignature DWORD
|
|
dwStrucVersion DWORD
|
|
dwFileVersionMS DWORD
|
|
dwFileVersionLS DWORD
|
|
dwProductVersionMS DWORD
|
|
dwProductVersionLS DWORD
|
|
dwFileFlagsMask DWORD
|
|
dwFileFlags DWORD
|
|
dwFileOS DWORD
|
|
dwFileType DWORD
|
|
dwFileSubtype DWORD
|
|
dwFileDateMS DWORD
|
|
dwFileDateLS DWORD
|
|
} /* winver.h:113:11 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type VS_FIXEDFILEINFO = tagVS_FIXEDFILEINFO /* winver.h:128:5 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type REGSAM = ACCESS_MASK /* winreg.h:35:23 */
|
|
type LSTATUS = LONG /* winreg.h:36:16 */
|
|
|
|
type val_context = struct {
|
|
valuelen int32
|
|
value_context LPVOID
|
|
val_buff_ptr LPVOID
|
|
} /* winreg.h:54:3 */
|
|
|
|
type PVALCONTEXT = uintptr /* winreg.h:60:30 */
|
|
|
|
type pvalueA = struct {
|
|
pv_valuename LPSTR
|
|
pv_valuelen int32
|
|
pv_value_context LPVOID
|
|
pv_type DWORD
|
|
} /* winreg.h:62:11 */
|
|
|
|
type PVALUEA = pvalueA /* winreg.h:67:4 */
|
|
type PPVALUEA = uintptr /* winreg.h:67:12 */
|
|
|
|
type pvalueW = struct {
|
|
pv_valuename LPWSTR
|
|
pv_valuelen int32
|
|
pv_value_context LPVOID
|
|
pv_type DWORD
|
|
} /* winreg.h:69:11 */
|
|
|
|
type PVALUEW = pvalueW /* winreg.h:74:4 */
|
|
type PPVALUEW = uintptr /* winreg.h:74:12 */
|
|
|
|
type PVALUE = PVALUEA /* winreg.h:76:3 */
|
|
type PPVALUE = PPVALUEA /* winreg.h:77:3 */
|
|
|
|
type PQUERYHANDLER = uintptr /* winreg.h:81:24 */
|
|
|
|
type provider_info = struct {
|
|
pi_R0_1val PQUERYHANDLER
|
|
pi_R0_allvals PQUERYHANDLER
|
|
pi_R3_1val PQUERYHANDLER
|
|
pi_R3_allvals PQUERYHANDLER
|
|
pi_flags DWORD
|
|
pi_key_context LPVOID
|
|
} /* winreg.h:83:11 */
|
|
|
|
type REG_PROVIDER = provider_info /* winreg.h:90:5 */
|
|
|
|
type PPROVIDER = uintptr /* winreg.h:92:32 */
|
|
|
|
type value_entA = struct {
|
|
ve_valuename LPSTR
|
|
ve_valuelen DWORD
|
|
ve_valueptr DWORD_PTR
|
|
ve_type DWORD
|
|
} /* winreg.h:94:11 */
|
|
|
|
type VALENTA = value_entA /* winreg.h:99:5 */
|
|
type PVALENTA = uintptr /* winreg.h:99:13 */
|
|
|
|
type value_entW = struct {
|
|
ve_valuename LPWSTR
|
|
ve_valuelen DWORD
|
|
ve_valueptr DWORD_PTR
|
|
ve_type DWORD
|
|
} /* winreg.h:101:11 */
|
|
|
|
type VALENTW = value_entW /* winreg.h:106:5 */
|
|
type PVALENTW = uintptr /* winreg.h:106:13 */
|
|
|
|
type VALENT = VALENTA /* winreg.h:108:3 */
|
|
type PVALENT = PVALENTA /* winreg.h:109:3 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type _NETRESOURCEA = struct {
|
|
dwScope DWORD
|
|
dwType DWORD
|
|
dwDisplayType DWORD
|
|
dwUsage DWORD
|
|
lpLocalName LPSTR
|
|
lpRemoteName LPSTR
|
|
lpComment LPSTR
|
|
lpProvider LPSTR
|
|
} /* winnetwk.h:53:11 */
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type NETRESOURCEA = _NETRESOURCEA /* winnetwk.h:62:5 */
|
|
type LPNETRESOURCEA = uintptr /* winnetwk.h:62:18 */
|
|
type _NETRESOURCEW = struct {
|
|
dwScope DWORD
|
|
dwType DWORD
|
|
dwDisplayType DWORD
|
|
dwUsage DWORD
|
|
lpLocalName LPWSTR
|
|
lpRemoteName LPWSTR
|
|
lpComment LPWSTR
|
|
lpProvider LPWSTR
|
|
} /* winnetwk.h:63:11 */
|
|
|
|
type NETRESOURCEW = _NETRESOURCEW /* winnetwk.h:72:5 */
|
|
type LPNETRESOURCEW = uintptr /* winnetwk.h:72:18 */
|
|
|
|
type NETRESOURCE = NETRESOURCEA /* winnetwk.h:74:3 */
|
|
type LPNETRESOURCE = LPNETRESOURCEA /* winnetwk.h:75:3 */
|
|
|
|
type _CONNECTDLGSTRUCTA = struct {
|
|
cbStructure DWORD
|
|
hwndOwner HWND
|
|
lpConnRes LPNETRESOURCEA
|
|
dwFlags DWORD
|
|
dwDevNum DWORD
|
|
} /* winnetwk.h:129:11 */
|
|
|
|
type CONNECTDLGSTRUCTA = _CONNECTDLGSTRUCTA /* winnetwk.h:135:5 */
|
|
type LPCONNECTDLGSTRUCTA = uintptr /* winnetwk.h:135:23 */
|
|
|
|
type _CONNECTDLGSTRUCTW = struct {
|
|
cbStructure DWORD
|
|
hwndOwner HWND
|
|
lpConnRes LPNETRESOURCEW
|
|
dwFlags DWORD
|
|
dwDevNum DWORD
|
|
} /* winnetwk.h:137:11 */
|
|
|
|
type CONNECTDLGSTRUCTW = _CONNECTDLGSTRUCTW /* winnetwk.h:143:5 */
|
|
type LPCONNECTDLGSTRUCTW = uintptr /* winnetwk.h:143:23 */
|
|
|
|
type CONNECTDLGSTRUCT = CONNECTDLGSTRUCTA /* winnetwk.h:145:3 */
|
|
type LPCONNECTDLGSTRUCT = LPCONNECTDLGSTRUCTA /* winnetwk.h:146:3 */
|
|
|
|
type _DISCDLGSTRUCTA = struct {
|
|
cbStructure DWORD
|
|
hwndOwner HWND
|
|
lpLocalName LPSTR
|
|
lpRemoteName LPSTR
|
|
dwFlags DWORD
|
|
} /* winnetwk.h:161:11 */
|
|
|
|
type DISCDLGSTRUCTA = _DISCDLGSTRUCTA /* winnetwk.h:167:5 */
|
|
type LPDISCDLGSTRUCTA = uintptr /* winnetwk.h:167:20 */
|
|
|
|
type _DISCDLGSTRUCTW = struct {
|
|
cbStructure DWORD
|
|
hwndOwner HWND
|
|
lpLocalName LPWSTR
|
|
lpRemoteName LPWSTR
|
|
dwFlags DWORD
|
|
} /* winnetwk.h:169:11 */
|
|
|
|
type DISCDLGSTRUCTW = _DISCDLGSTRUCTW /* winnetwk.h:175:5 */
|
|
type LPDISCDLGSTRUCTW = uintptr /* winnetwk.h:175:20 */
|
|
|
|
type DISCDLGSTRUCT = DISCDLGSTRUCTA /* winnetwk.h:177:3 */
|
|
type LPDISCDLGSTRUCT = LPDISCDLGSTRUCTA /* winnetwk.h:178:3 */
|
|
|
|
type _UNIVERSAL_NAME_INFOA = struct{ lpUniversalName LPSTR } /* winnetwk.h:204:11 */
|
|
|
|
type UNIVERSAL_NAME_INFOA = _UNIVERSAL_NAME_INFOA /* winnetwk.h:206:5 */
|
|
type LPUNIVERSAL_NAME_INFOA = uintptr /* winnetwk.h:206:26 */
|
|
|
|
type _UNIVERSAL_NAME_INFOW = struct{ lpUniversalName LPWSTR } /* winnetwk.h:208:11 */
|
|
|
|
type UNIVERSAL_NAME_INFOW = _UNIVERSAL_NAME_INFOW /* winnetwk.h:210:5 */
|
|
type LPUNIVERSAL_NAME_INFOW = uintptr /* winnetwk.h:210:26 */
|
|
|
|
type UNIVERSAL_NAME_INFO = UNIVERSAL_NAME_INFOA /* winnetwk.h:212:3 */
|
|
type LPUNIVERSAL_NAME_INFO = LPUNIVERSAL_NAME_INFOA /* winnetwk.h:213:3 */
|
|
|
|
type _REMOTE_NAME_INFOA = struct {
|
|
lpUniversalName LPSTR
|
|
lpConnectionName LPSTR
|
|
lpRemainingPath LPSTR
|
|
} /* winnetwk.h:215:11 */
|
|
|
|
type REMOTE_NAME_INFOA = _REMOTE_NAME_INFOA /* winnetwk.h:219:5 */
|
|
type LPREMOTE_NAME_INFOA = uintptr /* winnetwk.h:219:23 */
|
|
|
|
type _REMOTE_NAME_INFOW = struct {
|
|
lpUniversalName LPWSTR
|
|
lpConnectionName LPWSTR
|
|
lpRemainingPath LPWSTR
|
|
} /* winnetwk.h:221:11 */
|
|
|
|
type REMOTE_NAME_INFOW = _REMOTE_NAME_INFOW /* winnetwk.h:225:5 */
|
|
type LPREMOTE_NAME_INFOW = uintptr /* winnetwk.h:225:23 */
|
|
|
|
type REMOTE_NAME_INFO = REMOTE_NAME_INFOA /* winnetwk.h:227:3 */
|
|
type LPREMOTE_NAME_INFO = LPREMOTE_NAME_INFOA /* winnetwk.h:228:3 */
|
|
|
|
type _NETINFOSTRUCT = struct {
|
|
cbStructure DWORD
|
|
dwProviderVersion DWORD
|
|
dwStatus DWORD
|
|
dwCharacteristics DWORD
|
|
dwHandle ULONG_PTR
|
|
wNetType WORD
|
|
_ [2]byte
|
|
dwPrinters DWORD
|
|
dwDrives DWORD
|
|
} /* winnetwk.h:247:11 */
|
|
|
|
type NETINFOSTRUCT = _NETINFOSTRUCT /* winnetwk.h:256:5 */
|
|
type LPNETINFOSTRUCT = uintptr /* winnetwk.h:256:19 */
|
|
|
|
type PFNGETPROFILEPATHA = uintptr /* winnetwk.h:267:16 */
|
|
type PFNGETPROFILEPATHW = uintptr /* winnetwk.h:268:16 */
|
|
|
|
type PFNRECONCILEPROFILEA = uintptr /* winnetwk.h:272:16 */
|
|
type PFNRECONCILEPROFILEW = uintptr /* winnetwk.h:273:16 */
|
|
|
|
type PFNPROCESSPOLICIESA = uintptr /* winnetwk.h:280:19 */
|
|
type PFNPROCESSPOLICIESW = uintptr /* winnetwk.h:281:19 */
|
|
|
|
type _NETCONNECTINFOSTRUCT = struct {
|
|
cbStructure DWORD
|
|
dwFlags DWORD
|
|
dwSpeed DWORD
|
|
dwDelay DWORD
|
|
dwOptDataSize DWORD
|
|
} /* winnetwk.h:335:11 */
|
|
|
|
type NETCONNECTINFOSTRUCT = _NETCONNECTINFOSTRUCT /* winnetwk.h:341:5 */
|
|
type LPNETCONNECTINFOSTRUCT = uintptr /* winnetwk.h:341:26 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type _SERVICE_DESCRIPTIONA = struct{ lpDescription LPSTR } /* winsvc.h:95:11 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// This file is part of the mingw-w64 runtime package.
|
|
// No warranty is given; refer to the file DISCLAIMER within this package.
|
|
|
|
type SERVICE_DESCRIPTIONA = _SERVICE_DESCRIPTIONA /* winsvc.h:97:5 */
|
|
type LPSERVICE_DESCRIPTIONA = uintptr /* winsvc.h:97:26 */
|
|
|
|
type _SERVICE_DESCRIPTIONW = struct{ lpDescription LPWSTR } /* winsvc.h:99:11 */
|
|
|
|
type SERVICE_DESCRIPTIONW = _SERVICE_DESCRIPTIONW /* winsvc.h:101:5 */
|
|
type LPSERVICE_DESCRIPTIONW = uintptr /* winsvc.h:101:26 */
|
|
|
|
type SERVICE_DESCRIPTION = SERVICE_DESCRIPTIONA /* winsvc.h:103:3 */
|
|
type LPSERVICE_DESCRIPTION = LPSERVICE_DESCRIPTIONA /* winsvc.h:104:3 */
|
|
|
|
type SC_ACTION_TYPE = uint32 /* winsvc.h:108:5 */
|
|
|
|
type _SC_ACTION = struct {
|
|
Type SC_ACTION_TYPE
|
|
Delay DWORD
|
|
} /* winsvc.h:110:11 */
|
|
|
|
type SC_ACTION = _SC_ACTION /* winsvc.h:113:5 */
|
|
type LPSC_ACTION = uintptr /* winsvc.h:113:15 */
|
|
|
|
type _SERVICE_FAILURE_ACTIONSA = struct {
|
|
dwResetPeriod DWORD
|
|
lpRebootMsg LPSTR
|
|
lpCommand LPSTR
|
|
cActions DWORD
|
|
lpsaActions uintptr
|
|
} /* winsvc.h:115:11 */
|
|
|
|
type SERVICE_FAILURE_ACTIONSA = _SERVICE_FAILURE_ACTIONSA /* winsvc.h:121:5 */
|
|
type LPSERVICE_FAILURE_ACTIONSA = uintptr /* winsvc.h:121:30 */
|
|
|
|
type _SERVICE_FAILURE_ACTIONSW = struct {
|
|
dwResetPeriod DWORD
|
|
lpRebootMsg LPWSTR
|
|
lpCommand LPWSTR
|
|
cActions DWORD
|
|
lpsaActions uintptr
|
|
} /* winsvc.h:123:11 */
|
|
|
|
type SERVICE_FAILURE_ACTIONSW = _SERVICE_FAILURE_ACTIONSW /* winsvc.h:129:5 */
|
|
type LPSERVICE_FAILURE_ACTIONSW = uintptr /* winsvc.h:129:30 */
|
|
|
|
type SERVICE_FAILURE_ACTIONS = SERVICE_FAILURE_ACTIONSA /* winsvc.h:131:3 */
|
|
type LPSERVICE_FAILURE_ACTIONS = LPSERVICE_FAILURE_ACTIONSA /* winsvc.h:132:3 */
|
|
|
|
type SC_HANDLE__ = struct{ unused int32 } /* winsvc.h:134:3 */
|
|
|
|
type SC_HANDLE = uintptr /* winsvc.h:134:3 */
|
|
type LPSC_HANDLE = uintptr /* winsvc.h:135:21 */
|
|
|
|
type SERVICE_STATUS_HANDLE__ = struct{ unused int32 } /* winsvc.h:137:3 */
|
|
|
|
type SERVICE_STATUS_HANDLE = uintptr /* winsvc.h:137:3 */
|
|
|
|
type SC_STATUS_TYPE = uint32 /* winsvc.h:141:5 */
|
|
|
|
type SC_ENUM_TYPE = uint32 /* winsvc.h:145:5 */
|
|
|
|
type _SERVICE_STATUS = struct {
|
|
dwServiceType DWORD
|
|
dwCurrentState DWORD
|
|
dwControlsAccepted DWORD
|
|
dwWin32ExitCode DWORD
|
|
dwServiceSpecificExitCode DWORD
|
|
dwCheckPoint DWORD
|
|
dwWaitHint DWORD
|
|
} /* winsvc.h:147:11 */
|
|
|
|
type SERVICE_STATUS = _SERVICE_STATUS /* winsvc.h:155:5 */
|
|
type LPSERVICE_STATUS = uintptr /* winsvc.h:155:20 */
|
|
|
|
type _SERVICE_STATUS_PROCESS = struct {
|
|
dwServiceType DWORD
|
|
dwCurrentState DWORD
|
|
dwControlsAccepted DWORD
|
|
dwWin32ExitCode DWORD
|
|
dwServiceSpecificExitCode DWORD
|
|
dwCheckPoint DWORD
|
|
dwWaitHint DWORD
|
|
dwProcessId DWORD
|
|
dwServiceFlags DWORD
|
|
} /* winsvc.h:157:11 */
|
|
|
|
type SERVICE_STATUS_PROCESS = _SERVICE_STATUS_PROCESS /* winsvc.h:167:5 */
|
|
type LPSERVICE_STATUS_PROCESS = uintptr /* winsvc.h:167:28 */
|
|
|
|
type _ENUM_SERVICE_STATUSA = struct {
|
|
lpServiceName LPSTR
|
|
lpDisplayName LPSTR
|
|
ServiceStatus SERVICE_STATUS
|
|
} /* winsvc.h:169:11 */
|
|
|
|
type ENUM_SERVICE_STATUSA = _ENUM_SERVICE_STATUSA /* winsvc.h:173:5 */
|
|
type LPENUM_SERVICE_STATUSA = uintptr /* winsvc.h:173:26 */
|
|
|
|
type _ENUM_SERVICE_STATUSW = struct {
|
|
lpServiceName LPWSTR
|
|
lpDisplayName LPWSTR
|
|
ServiceStatus SERVICE_STATUS
|
|
} /* winsvc.h:175:11 */
|
|
|
|
type ENUM_SERVICE_STATUSW = _ENUM_SERVICE_STATUSW /* winsvc.h:179:5 */
|
|
type LPENUM_SERVICE_STATUSW = uintptr /* winsvc.h:179:26 */
|
|
|
|
type ENUM_SERVICE_STATUS = ENUM_SERVICE_STATUSA /* winsvc.h:181:3 */
|
|
type LPENUM_SERVICE_STATUS = LPENUM_SERVICE_STATUSA /* winsvc.h:182:3 */
|
|
|
|
type _ENUM_SERVICE_STATUS_PROCESSA = struct {
|
|
lpServiceName LPSTR
|
|
lpDisplayName LPSTR
|
|
ServiceStatusProcess SERVICE_STATUS_PROCESS
|
|
} /* winsvc.h:184:11 */
|
|
|
|
type ENUM_SERVICE_STATUS_PROCESSA = _ENUM_SERVICE_STATUS_PROCESSA /* winsvc.h:188:5 */
|
|
type LPENUM_SERVICE_STATUS_PROCESSA = uintptr /* winsvc.h:188:34 */
|
|
|
|
type _ENUM_SERVICE_STATUS_PROCESSW = struct {
|
|
lpServiceName LPWSTR
|
|
lpDisplayName LPWSTR
|
|
ServiceStatusProcess SERVICE_STATUS_PROCESS
|
|
} /* winsvc.h:190:11 */
|
|
|
|
type ENUM_SERVICE_STATUS_PROCESSW = _ENUM_SERVICE_STATUS_PROCESSW /* winsvc.h:194:5 */
|
|
type LPENUM_SERVICE_STATUS_PROCESSW = uintptr /* winsvc.h:194:34 */
|
|
|
|
type ENUM_SERVICE_STATUS_PROCESS = ENUM_SERVICE_STATUS_PROCESSA /* winsvc.h:196:3 */
|
|
type LPENUM_SERVICE_STATUS_PROCESS = LPENUM_SERVICE_STATUS_PROCESSA /* winsvc.h:197:3 */
|
|
|
|
type SC_LOCK = LPVOID /* winsvc.h:199:18 */
|
|
|
|
type _QUERY_SERVICE_LOCK_STATUSA = struct {
|
|
fIsLocked DWORD
|
|
lpLockOwner LPSTR
|
|
dwLockDuration DWORD
|
|
} /* winsvc.h:201:11 */
|
|
|
|
type QUERY_SERVICE_LOCK_STATUSA = _QUERY_SERVICE_LOCK_STATUSA /* winsvc.h:205:5 */
|
|
type LPQUERY_SERVICE_LOCK_STATUSA = uintptr /* winsvc.h:205:32 */
|
|
|
|
type _QUERY_SERVICE_LOCK_STATUSW = struct {
|
|
fIsLocked DWORD
|
|
lpLockOwner LPWSTR
|
|
dwLockDuration DWORD
|
|
} /* winsvc.h:207:11 */
|
|
|
|
type QUERY_SERVICE_LOCK_STATUSW = _QUERY_SERVICE_LOCK_STATUSW /* winsvc.h:211:5 */
|
|
type LPQUERY_SERVICE_LOCK_STATUSW = uintptr /* winsvc.h:211:32 */
|
|
|
|
type QUERY_SERVICE_LOCK_STATUS = QUERY_SERVICE_LOCK_STATUSA /* winsvc.h:213:3 */
|
|
type LPQUERY_SERVICE_LOCK_STATUS = LPQUERY_SERVICE_LOCK_STATUSA /* winsvc.h:214:3 */
|
|
|
|
type _QUERY_SERVICE_CONFIGA = struct {
|
|
dwServiceType DWORD
|
|
dwStartType DWORD
|
|
dwErrorControl DWORD
|
|
lpBinaryPathName LPSTR
|
|
lpLoadOrderGroup LPSTR
|
|
dwTagId DWORD
|
|
lpDependencies LPSTR
|
|
lpServiceStartName LPSTR
|
|
lpDisplayName LPSTR
|
|
} /* winsvc.h:216:11 */
|
|
|
|
type QUERY_SERVICE_CONFIGA = _QUERY_SERVICE_CONFIGA /* winsvc.h:226:5 */
|
|
type LPQUERY_SERVICE_CONFIGA = uintptr /* winsvc.h:226:27 */
|
|
|
|
type _QUERY_SERVICE_CONFIGW = struct {
|
|
dwServiceType DWORD
|
|
dwStartType DWORD
|
|
dwErrorControl DWORD
|
|
lpBinaryPathName LPWSTR
|
|
lpLoadOrderGroup LPWSTR
|
|
dwTagId DWORD
|
|
lpDependencies LPWSTR
|
|
lpServiceStartName LPWSTR
|
|
lpDisplayName LPWSTR
|
|
} /* winsvc.h:228:11 */
|
|
|
|
type QUERY_SERVICE_CONFIGW = _QUERY_SERVICE_CONFIGW /* winsvc.h:238:5 */
|
|
type LPQUERY_SERVICE_CONFIGW = uintptr /* winsvc.h:238:27 */
|
|
|
|
type QUERY_SERVICE_CONFIG = QUERY_SERVICE_CONFIGA /* winsvc.h:240:3 */
|
|
type LPQUERY_SERVICE_CONFIG = LPQUERY_SERVICE_CONFIGA /* winsvc.h:241:3 */
|
|
|
|
type LPSERVICE_MAIN_FUNCTIONW = uintptr /* winsvc.h:243:16 */
|
|
type LPSERVICE_MAIN_FUNCTIONA = uintptr /* winsvc.h:244:16 */
|
|
|
|
type _SERVICE_TABLE_ENTRYA = struct {
|
|
lpServiceName LPSTR
|
|
lpServiceProc LPSERVICE_MAIN_FUNCTIONA
|
|
} /* winsvc.h:248:11 */
|
|
|
|
type SERVICE_TABLE_ENTRYA = _SERVICE_TABLE_ENTRYA /* winsvc.h:251:5 */
|
|
type LPSERVICE_TABLE_ENTRYA = uintptr /* winsvc.h:251:26 */
|
|
|
|
type _SERVICE_TABLE_ENTRYW = struct {
|
|
lpServiceName LPWSTR
|
|
lpServiceProc LPSERVICE_MAIN_FUNCTIONW
|
|
} /* winsvc.h:253:11 */
|
|
|
|
type SERVICE_TABLE_ENTRYW = _SERVICE_TABLE_ENTRYW /* winsvc.h:256:5 */
|
|
type LPSERVICE_TABLE_ENTRYW = uintptr /* winsvc.h:256:26 */
|
|
|
|
type SERVICE_TABLE_ENTRY = SERVICE_TABLE_ENTRYA /* winsvc.h:258:3 */
|
|
type LPSERVICE_TABLE_ENTRY = LPSERVICE_TABLE_ENTRYA /* winsvc.h:259:3 */
|
|
|
|
type LPHANDLER_FUNCTION = uintptr /* winsvc.h:261:16 */
|
|
type LPHANDLER_FUNCTION_EX = uintptr /* winsvc.h:262:17 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type _MODEMDEVCAPS = struct {
|
|
dwActualSize DWORD
|
|
dwRequiredSize DWORD
|
|
dwDevSpecificOffset DWORD
|
|
dwDevSpecificSize DWORD
|
|
dwModemProviderVersion DWORD
|
|
dwModemManufacturerOffset DWORD
|
|
dwModemManufacturerSize DWORD
|
|
dwModemModelOffset DWORD
|
|
dwModemModelSize DWORD
|
|
dwModemVersionOffset DWORD
|
|
dwModemVersionSize DWORD
|
|
dwDialOptions DWORD
|
|
dwCallSetupFailTimer DWORD
|
|
dwInactivityTimeout DWORD
|
|
dwSpeakerVolume DWORD
|
|
dwSpeakerMode DWORD
|
|
dwModemOptions DWORD
|
|
dwMaxDTERate DWORD
|
|
dwMaxDCERate DWORD
|
|
abVariablePortion [1]BYTE
|
|
_ [3]byte
|
|
} /* mcx.h:9:9 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type MODEMDEVCAPS = _MODEMDEVCAPS /* mcx.h:30:3 */
|
|
type PMODEMDEVCAPS = uintptr /* mcx.h:30:16 */
|
|
type LPMODEMDEVCAPS = uintptr /* mcx.h:30:31 */
|
|
|
|
type _MODEMSETTINGS = struct {
|
|
dwActualSize DWORD
|
|
dwRequiredSize DWORD
|
|
dwDevSpecificOffset DWORD
|
|
dwDevSpecificSize DWORD
|
|
dwCallSetupFailTimer DWORD
|
|
dwInactivityTimeout DWORD
|
|
dwSpeakerVolume DWORD
|
|
dwSpeakerMode DWORD
|
|
dwPreferredModemOptions DWORD
|
|
dwNegotiatedModemOptions DWORD
|
|
dwNegotiatedDCERate DWORD
|
|
abVariablePortion [1]BYTE
|
|
_ [3]byte
|
|
} /* mcx.h:32:9 */
|
|
|
|
type MODEMSETTINGS = _MODEMSETTINGS /* mcx.h:45:3 */
|
|
type PMODEMSETTINGS = uintptr /* mcx.h:45:17 */
|
|
type LPMODEMSETTINGS = uintptr /* mcx.h:45:33 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
type HIMC__ = struct{ unused int32 } /* imm.h:18:3 */
|
|
|
|
type HIMC = uintptr /* imm.h:18:3 */
|
|
type HIMCC__ = struct{ unused int32 } /* imm.h:19:3 */
|
|
|
|
type HIMCC = uintptr /* imm.h:19:3 */
|
|
|
|
type LPHKL = uintptr /* imm.h:21:15 */
|
|
type LPUINT = uintptr /* imm.h:24:16 */
|
|
|
|
type tagCOMPOSITIONFORM = struct {
|
|
dwStyle DWORD
|
|
ptCurrentPos POINT
|
|
rcArea RECT
|
|
} /* imm.h:27:11 */
|
|
|
|
type COMPOSITIONFORM = tagCOMPOSITIONFORM /* imm.h:31:5 */
|
|
type PCOMPOSITIONFORM = uintptr /* imm.h:31:21 */
|
|
type NPCOMPOSITIONFORM = uintptr /* imm.h:31:39 */
|
|
type LPCOMPOSITIONFORM = uintptr /* imm.h:31:58 */
|
|
|
|
type tagCANDIDATEFORM = struct {
|
|
dwIndex DWORD
|
|
dwStyle DWORD
|
|
ptCurrentPos POINT
|
|
rcArea RECT
|
|
} /* imm.h:33:11 */
|
|
|
|
type CANDIDATEFORM = tagCANDIDATEFORM /* imm.h:38:5 */
|
|
type PCANDIDATEFORM = uintptr /* imm.h:38:19 */
|
|
type NPCANDIDATEFORM = uintptr /* imm.h:38:35 */
|
|
type LPCANDIDATEFORM = uintptr /* imm.h:38:52 */
|
|
|
|
type tagCANDIDATELIST = struct {
|
|
dwSize DWORD
|
|
dwStyle DWORD
|
|
dwCount DWORD
|
|
dwSelection DWORD
|
|
dwPageStart DWORD
|
|
dwPageSize DWORD
|
|
dwOffset [1]DWORD
|
|
} /* imm.h:40:11 */
|
|
|
|
type CANDIDATELIST = tagCANDIDATELIST /* imm.h:48:5 */
|
|
type PCANDIDATELIST = uintptr /* imm.h:48:19 */
|
|
type NPCANDIDATELIST = uintptr /* imm.h:48:35 */
|
|
type LPCANDIDATELIST = uintptr /* imm.h:48:52 */
|
|
|
|
type tagREGISTERWORDA = struct {
|
|
lpReading LPSTR
|
|
lpWord LPSTR
|
|
} /* imm.h:50:11 */
|
|
|
|
type REGISTERWORDA = tagREGISTERWORDA /* imm.h:53:5 */
|
|
type PREGISTERWORDA = uintptr /* imm.h:53:19 */
|
|
type NPREGISTERWORDA = uintptr /* imm.h:53:35 */
|
|
type LPREGISTERWORDA = uintptr /* imm.h:53:52 */
|
|
|
|
type tagREGISTERWORDW = struct {
|
|
lpReading LPWSTR
|
|
lpWord LPWSTR
|
|
} /* imm.h:55:11 */
|
|
|
|
type REGISTERWORDW = tagREGISTERWORDW /* imm.h:58:5 */
|
|
type PREGISTERWORDW = uintptr /* imm.h:58:19 */
|
|
type NPREGISTERWORDW = uintptr /* imm.h:58:35 */
|
|
type LPREGISTERWORDW = uintptr /* imm.h:58:52 */
|
|
|
|
type REGISTERWORD = REGISTERWORDA /* imm.h:60:3 */
|
|
type PREGISTERWORD = PREGISTERWORDA /* imm.h:61:3 */
|
|
type NPREGISTERWORD = NPREGISTERWORDA /* imm.h:62:3 */
|
|
type LPREGISTERWORD = LPREGISTERWORDA /* imm.h:63:3 */
|
|
|
|
type tagRECONVERTSTRING = struct {
|
|
dwSize DWORD
|
|
dwVersion DWORD
|
|
dwStrLen DWORD
|
|
dwStrOffset DWORD
|
|
dwCompStrLen DWORD
|
|
dwCompStrOffset DWORD
|
|
dwTargetStrLen DWORD
|
|
dwTargetStrOffset DWORD
|
|
} /* imm.h:65:11 */
|
|
|
|
type RECONVERTSTRING = tagRECONVERTSTRING /* imm.h:74:5 */
|
|
type PRECONVERTSTRING = uintptr /* imm.h:74:21 */
|
|
type NPRECONVERTSTRING = uintptr /* imm.h:74:39 */
|
|
type LPRECONVERTSTRING = uintptr /* imm.h:74:58 */
|
|
|
|
type tagSTYLEBUFA = struct {
|
|
dwStyle DWORD
|
|
szDescription [32]CHAR
|
|
} /* imm.h:78:11 */
|
|
|
|
type STYLEBUFA = tagSTYLEBUFA /* imm.h:81:5 */
|
|
type PSTYLEBUFA = uintptr /* imm.h:81:15 */
|
|
type NPSTYLEBUFA = uintptr /* imm.h:81:27 */
|
|
type LPSTYLEBUFA = uintptr /* imm.h:81:40 */
|
|
|
|
type tagSTYLEBUFW = struct {
|
|
dwStyle DWORD
|
|
szDescription [32]WCHAR
|
|
} /* imm.h:83:11 */
|
|
|
|
type STYLEBUFW = tagSTYLEBUFW /* imm.h:86:5 */
|
|
type PSTYLEBUFW = uintptr /* imm.h:86:15 */
|
|
type NPSTYLEBUFW = uintptr /* imm.h:86:27 */
|
|
type LPSTYLEBUFW = uintptr /* imm.h:86:40 */
|
|
|
|
type STYLEBUF = STYLEBUFA /* imm.h:88:3 */
|
|
type PSTYLEBUF = PSTYLEBUFA /* imm.h:89:3 */
|
|
type NPSTYLEBUF = NPSTYLEBUFA /* imm.h:90:3 */
|
|
type LPSTYLEBUF = LPSTYLEBUFA /* imm.h:91:3 */
|
|
|
|
type tagIMEMENUITEMINFOA = struct {
|
|
cbSize UINT
|
|
fType UINT
|
|
fState UINT
|
|
wID UINT
|
|
hbmpChecked HBITMAP
|
|
hbmpUnchecked HBITMAP
|
|
dwItemData DWORD
|
|
szString [80]CHAR
|
|
hbmpItem HBITMAP
|
|
} /* imm.h:95:11 */
|
|
|
|
type IMEMENUITEMINFOA = tagIMEMENUITEMINFOA /* imm.h:105:5 */
|
|
type PIMEMENUITEMINFOA = uintptr /* imm.h:105:22 */
|
|
type NPIMEMENUITEMINFOA = uintptr /* imm.h:105:41 */
|
|
type LPIMEMENUITEMINFOA = uintptr /* imm.h:105:61 */
|
|
|
|
type tagIMEMENUITEMINFOW = struct {
|
|
cbSize UINT
|
|
fType UINT
|
|
fState UINT
|
|
wID UINT
|
|
hbmpChecked HBITMAP
|
|
hbmpUnchecked HBITMAP
|
|
dwItemData DWORD
|
|
szString [80]WCHAR
|
|
hbmpItem HBITMAP
|
|
} /* imm.h:107:11 */
|
|
|
|
type IMEMENUITEMINFOW = tagIMEMENUITEMINFOW /* imm.h:117:5 */
|
|
type PIMEMENUITEMINFOW = uintptr /* imm.h:117:22 */
|
|
type NPIMEMENUITEMINFOW = uintptr /* imm.h:117:41 */
|
|
type LPIMEMENUITEMINFOW = uintptr /* imm.h:117:61 */
|
|
|
|
type IMEMENUITEMINFO = IMEMENUITEMINFOA /* imm.h:119:3 */
|
|
type PIMEMENUITEMINFO = PIMEMENUITEMINFOA /* imm.h:120:3 */
|
|
type NPIMEMENUITEMINFO = NPIMEMENUITEMINFOA /* imm.h:121:3 */
|
|
type LPIMEMENUITEMINFO = LPIMEMENUITEMINFOA /* imm.h:122:3 */
|
|
|
|
type tagIMECHARPOSITION = struct {
|
|
dwSize DWORD
|
|
dwCharPos DWORD
|
|
pt POINT
|
|
cLineHeight UINT
|
|
rcDocument RECT
|
|
} /* imm.h:124:11 */
|
|
|
|
type IMECHARPOSITION = tagIMECHARPOSITION /* imm.h:130:5 */
|
|
type PIMECHARPOSITION = uintptr /* imm.h:130:21 */
|
|
type NPIMECHARPOSITION = uintptr /* imm.h:130:39 */
|
|
type LPIMECHARPOSITION = uintptr /* imm.h:130:58 */
|
|
|
|
type IMCENUMPROC = uintptr /* imm.h:132:19 */
|
|
|
|
type REGISTERWORDENUMPROCA = uintptr /* imm.h:185:15 */
|
|
type REGISTERWORDENUMPROCW = uintptr /* imm.h:186:15 */
|
|
|
|
// Posix thread extensions.
|
|
|
|
// Extension defined as by report VC 10+ defines error-numbers.
|
|
|
|
// Defined as WSAETIMEDOUT.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// Copyright (C) 1992-2018 Free Software Foundation, Inc.
|
|
//
|
|
// This file is part of GCC.
|
|
//
|
|
// GCC is free software; you can redistribute it and/or modify it under
|
|
// the terms of the GNU General Public License as published by the Free
|
|
// Software Foundation; either version 3, or (at your option) any later
|
|
// version.
|
|
//
|
|
// GCC is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
|
// for more details.
|
|
//
|
|
// Under Section 7 of GPL version 3, you are granted additional
|
|
// permissions described in the GCC Runtime Library Exception, version
|
|
// 3.1, as published by the Free Software Foundation.
|
|
//
|
|
// You should have received a copy of the GNU General Public License and
|
|
// a copy of the GCC Runtime Library Exception along with this program;
|
|
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
|
// <http://www.gnu.org/licenses/>.
|
|
|
|
// This administrivia gets added to the beginning of limits.h
|
|
// if the system has its own version of limits.h.
|
|
|
|
// We use _GCC_LIMITS_H_ because we want this not to match
|
|
// any macros that the system's limits.h uses for its own purposes.
|
|
|
|
// Use "..." so that we find syslimits.h only in this same directory.
|
|
// syslimits.h stands for the system's own limits.h file.
|
|
// If we can use it ok unmodified, then we install this text.
|
|
// If fixincludes fixes it, then the fixed version is installed
|
|
// instead of this text.
|
|
|
|
// *
|
|
// 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.
|
|
// *
|
|
// 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.
|
|
|
|
// File system limits
|
|
//
|
|
// NOTE: Apparently the actual size of PATH_MAX is 260, but a space is
|
|
// required for the NUL. TODO: Test?
|
|
// NOTE: PATH_MAX is the POSIX equivalent for Microsoft's MAX_PATH; the two
|
|
// are semantically identical, with a limit of 259 characters for the
|
|
// path name, plus one for a terminating NUL, for a total of 260.
|
|
|
|
// Copyright (C) 1991-2018 Free Software Foundation, Inc.
|
|
//
|
|
// This file is part of GCC.
|
|
//
|
|
// GCC is free software; you can redistribute it and/or modify it under
|
|
// the terms of the GNU General Public License as published by the Free
|
|
// Software Foundation; either version 3, or (at your option) any later
|
|
// version.
|
|
//
|
|
// GCC is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
|
// for more details.
|
|
//
|
|
// Under Section 7 of GPL version 3, you are granted additional
|
|
// permissions described in the GCC Runtime Library Exception, version
|
|
// 3.1, as published by the Free Software Foundation.
|
|
//
|
|
// You should have received a copy of the GNU General Public License and
|
|
// a copy of the GCC Runtime Library Exception along with this program;
|
|
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
|
// <http://www.gnu.org/licenses/>.
|
|
|
|
// Number of bits in a `char'.
|
|
|
|
// Maximum length of a multibyte character.
|
|
|
|
// Minimum and maximum values a `signed char' can hold.
|
|
|
|
// Maximum value an `unsigned char' can hold. (Minimum is 0).
|
|
|
|
// Minimum and maximum values a `char' can hold.
|
|
|
|
// Minimum and maximum values a `signed short int' can hold.
|
|
|
|
// Maximum value an `unsigned short int' can hold. (Minimum is 0).
|
|
|
|
// Minimum and maximum values a `signed int' can hold.
|
|
|
|
// Maximum value an `unsigned int' can hold. (Minimum is 0).
|
|
|
|
// Minimum and maximum values a `signed long int' can hold.
|
|
// (Same as `int').
|
|
|
|
// Maximum value an `unsigned long int' can hold. (Minimum is 0).
|
|
|
|
// Minimum and maximum values a `signed long long int' can hold.
|
|
|
|
// Maximum value an `unsigned long long int' can hold. (Minimum is 0).
|
|
|
|
// Minimum and maximum values a `signed long long int' can hold.
|
|
|
|
// Maximum value an `unsigned long long int' can hold. (Minimum is 0).
|
|
|
|
// This administrivia gets added to the end of limits.h
|
|
// if the system has its own version of limits.h.
|
|
|
|
type _onexit_t = uintptr /* stdlib.h:49:15 */
|
|
|
|
type _div_t = struct {
|
|
quot int32
|
|
rem int32
|
|
} /* stdlib.h:59:11 */
|
|
|
|
type div_t = _div_t /* stdlib.h:62:5 */
|
|
|
|
type _ldiv_t = struct {
|
|
quot int32
|
|
rem int32
|
|
} /* stdlib.h:64:11 */
|
|
|
|
type ldiv_t = _ldiv_t /* stdlib.h:67:5 */
|
|
|
|
type _LDOUBLE = struct{ ld [10]uint8 } /* stdlib.h:76:5 */
|
|
|
|
type _CRT_DOUBLE = struct{ x float64 } /* stdlib.h:83:5 */
|
|
|
|
type _CRT_FLOAT = struct{ f float32 } /* stdlib.h:87:5 */
|
|
|
|
type _LONGDOUBLE = struct{ x float64 } /* stdlib.h:94:5 */
|
|
|
|
type _LDBL12 = struct{ ld12 [12]uint8 } /* stdlib.h:101:5 */
|
|
|
|
type _purecall_handler = uintptr /* stdlib.h:142:16 */
|
|
|
|
type _invalid_parameter_handler = uintptr /* stdlib.h:147:16 */
|
|
|
|
type lldiv_t = struct {
|
|
quot int64
|
|
rem int64
|
|
} /* stdlib.h:699:61 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// Return codes for _heapwalk()
|
|
|
|
// Values for _heapinfo.useflag
|
|
|
|
// The structure used to walk through the heap with _heapwalk.
|
|
type _heapinfo = struct {
|
|
_pentry uintptr
|
|
_size size_t
|
|
_useflag int32
|
|
} /* malloc.h:46:11 */
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// Return codes for _heapwalk()
|
|
|
|
// Values for _heapinfo.useflag
|
|
|
|
// The structure used to walk through the heap with _heapwalk.
|
|
type _HEAPINFO = _heapinfo /* malloc.h:50:5 */
|
|
|
|
// Static assertion. Requires support in the compiler.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// The suffix to append to the child command lines, if any
|
|
|
|
// The directory separator character(s)
|
|
|
|
// Mark a parameter as unused to suppress compiler warnings
|
|
|
|
// Global data
|
|
type Global = struct {
|
|
argv0 uintptr
|
|
zVfs uintptr
|
|
zDbFile uintptr
|
|
db uintptr
|
|
zErrLog uintptr
|
|
pErrLog uintptr
|
|
zLog uintptr
|
|
pLog uintptr
|
|
zName [32]int8
|
|
taskId int32
|
|
iTrace int32
|
|
bSqlTrace int32
|
|
bIgnoreSqlErrors int32
|
|
nError int32
|
|
nTest int32
|
|
iTimeout int32
|
|
bSync int32
|
|
} /* mptest.c:72:8 */
|
|
|
|
// Static assertion. Requires support in the compiler.
|
|
|
|
// *
|
|
// 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.
|
|
|
|
// The suffix to append to the child command lines, if any
|
|
|
|
// The directory separator character(s)
|
|
|
|
// Mark a parameter as unused to suppress compiler warnings
|
|
|
|
// Global data
|
|
var g Global /* mptest.c:90:3: */
|
|
|
|
// Default timeout
|
|
|
|
// Print a message adding zPrefix[] to the beginning of every line.
|
|
func printWithPrefix(tls *libc.TLS, pOut uintptr, zPrefix uintptr, zMsg uintptr) { /* mptest.c:98:13: */
|
|
bp := tls.Alloc(32)
|
|
defer tls.Free(32)
|
|
|
|
for (zMsg != 0) && (*(*int8)(unsafe.Pointer(zMsg + uintptr(0))) != 0) {
|
|
var i int32
|
|
for i = 0; ((*(*int8)(unsafe.Pointer(zMsg + uintptr(i))) != 0) && (int32(*(*int8)(unsafe.Pointer(zMsg + uintptr(i)))) != '\n')) && (int32(*(*int8)(unsafe.Pointer(zMsg + uintptr(i)))) != '\r'); i++ {
|
|
}
|
|
libc.Xfprintf(tls, pOut, ts /* "%s%.*s\n" */, libc.VaList(bp, zPrefix, i, zMsg))
|
|
zMsg += uintptr(i)
|
|
for (int32(*(*int8)(unsafe.Pointer(zMsg + uintptr(0)))) == '\n') || (int32(*(*int8)(unsafe.Pointer(zMsg + uintptr(0)))) == '\r') {
|
|
zMsg++
|
|
}
|
|
}
|
|
}
|
|
|
|
// Compare two pointers to strings, where the pointers might be NULL.
|
|
func safe_strcmp(tls *libc.TLS, a uintptr, b uintptr) int32 { /* mptest.c:111:12: */
|
|
if a == b {
|
|
return 0
|
|
}
|
|
if a == uintptr(0) {
|
|
return -1
|
|
}
|
|
if b == uintptr(0) {
|
|
return 1
|
|
}
|
|
return libc.Xstrcmp(tls, a, b)
|
|
}
|
|
|
|
// Return TRUE if string z[] matches glob pattern zGlob[].
|
|
// Return FALSE if the pattern does not match.
|
|
//
|
|
// Globbing rules:
|
|
//
|
|
// '*' Matches any sequence of zero or more characters.
|
|
//
|
|
// '?' Matches exactly one character.
|
|
//
|
|
// [...] Matches one character from the enclosed list of
|
|
// characters.
|
|
//
|
|
// [^...] Matches one character not in the enclosed list.
|
|
//
|
|
// '#' Matches any sequence of one or more digits with an
|
|
// optional + or - sign in front
|
|
func strglob(tls *libc.TLS, zGlob uintptr, z uintptr) int32 { /* mptest.c:136:5: */
|
|
var c int32
|
|
var c2 int32
|
|
var invert int32
|
|
var seen int32
|
|
|
|
for (libc.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1)))))) != 0 {
|
|
if c == '*' {
|
|
for ((libc.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1)))))) == '*') || (c == '?') {
|
|
if (c == '?') && ((int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1))))) == 0) {
|
|
return 0
|
|
}
|
|
}
|
|
if c == 0 {
|
|
return 1
|
|
} else if c == '[' {
|
|
for (*(*int8)(unsafe.Pointer(z)) != 0) && (strglob(tls, (zGlob-uintptr(1)), z) != 0) {
|
|
z++
|
|
}
|
|
return (libc.Bool32((int32(*(*int8)(unsafe.Pointer(z)))) != 0))
|
|
}
|
|
for (libc.AssignInt32(&c2, int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1)))))) != 0 {
|
|
for c2 != c {
|
|
c2 = int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1))))
|
|
if c2 == 0 {
|
|
return 0
|
|
}
|
|
}
|
|
if strglob(tls, zGlob, z) != 0 {
|
|
return 1
|
|
}
|
|
}
|
|
return 0
|
|
} else if c == '?' {
|
|
if (int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1))))) == 0 {
|
|
return 0
|
|
}
|
|
} else if c == '[' {
|
|
var prior_c int32 = 0
|
|
seen = 0
|
|
invert = 0
|
|
c = int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1))))
|
|
if c == 0 {
|
|
return 0
|
|
}
|
|
c2 = int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1))))
|
|
if c2 == '^' {
|
|
invert = 1
|
|
c2 = int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1))))
|
|
}
|
|
if c2 == ']' {
|
|
if c == ']' {
|
|
seen = 1
|
|
}
|
|
c2 = int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1))))
|
|
}
|
|
for (c2 != 0) && (c2 != ']') {
|
|
if (((c2 == '-') && (int32(*(*int8)(unsafe.Pointer(zGlob + uintptr(0)))) != ']')) && (int32(*(*int8)(unsafe.Pointer(zGlob + uintptr(0)))) != 0)) && (prior_c > 0) {
|
|
c2 = int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1))))
|
|
if (c >= prior_c) && (c <= c2) {
|
|
seen = 1
|
|
}
|
|
prior_c = 0
|
|
} else {
|
|
if c == c2 {
|
|
seen = 1
|
|
}
|
|
prior_c = c2
|
|
}
|
|
c2 = int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1))))
|
|
}
|
|
if (c2 == 0) || ((seen ^ invert) == 0) {
|
|
return 0
|
|
}
|
|
} else if c == '#' {
|
|
if ((int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) == '-') || (int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) == '+')) && (libc.Xisdigit(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr(1)))))) != 0) {
|
|
z++
|
|
}
|
|
if !(libc.Xisdigit(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr(0)))))) != 0) {
|
|
return 0
|
|
}
|
|
z++
|
|
for libc.Xisdigit(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr(0)))))) != 0 {
|
|
z++
|
|
}
|
|
} else {
|
|
if c != (int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1))))) {
|
|
return 0
|
|
}
|
|
}
|
|
}
|
|
return (libc.Bool32(int32(*(*int8)(unsafe.Pointer(z))) == 0))
|
|
}
|
|
|
|
// Close output stream pOut if it is not stdout or stderr
|
|
func maybeClose(tls *libc.TLS, pOut uintptr) { /* mptest.c:208:13: */
|
|
if (pOut != (libc.X__acrt_iob_func(tls, uint32(1)))) && (pOut != (libc.X__acrt_iob_func(tls, uint32(2)))) {
|
|
libc.Xfclose(tls, pOut)
|
|
}
|
|
}
|
|
|
|
// Print an error message
|
|
func errorMessage(tls *libc.TLS, zFormat uintptr, va uintptr) { /* mptest.c:215:13: */
|
|
bp := tls.Alloc(46)
|
|
defer tls.Free(46)
|
|
|
|
var ap va_list
|
|
_ = ap
|
|
var zMsg uintptr
|
|
// var zPrefix [30]int8 at bp+16, 30
|
|
|
|
ap = va
|
|
zMsg = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap)
|
|
_ = ap
|
|
sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([30]int8{})), bp+16 /* &zPrefix[0] */, ts+8 /* "%s:ERROR: " */, libc.VaList(bp, uintptr(unsafe.Pointer(&g))+32 /* &.zName */))
|
|
if g.pLog != 0 {
|
|
printWithPrefix(tls, g.pLog, bp+16 /* &zPrefix[0] */, zMsg)
|
|
libc.Xfflush(tls, g.pLog)
|
|
}
|
|
if (g.pErrLog != 0) && (safe_strcmp(tls, g.zErrLog, g.zLog) != 0) {
|
|
printWithPrefix(tls, g.pErrLog, bp+16 /* &zPrefix[0] */, zMsg)
|
|
libc.Xfflush(tls, g.pErrLog)
|
|
}
|
|
sqlite3.Xsqlite3_free(tls, zMsg)
|
|
g.nError++
|
|
}
|
|
|
|
// Print an error message and then quit.
|
|
func fatalError(tls *libc.TLS, zFormat uintptr, va uintptr) { /* mptest.c:241:13: */
|
|
bp := tls.Alloc(46)
|
|
defer tls.Free(46)
|
|
|
|
var ap va_list
|
|
_ = ap
|
|
var zMsg uintptr
|
|
// var zPrefix [30]int8 at bp+16, 30
|
|
|
|
ap = va
|
|
zMsg = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap)
|
|
_ = ap
|
|
sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([30]int8{})), bp+16 /* &zPrefix[0] */, ts+19 /* "%s:FATAL: " */, libc.VaList(bp, uintptr(unsafe.Pointer(&g))+32 /* &.zName */))
|
|
if g.pLog != 0 {
|
|
printWithPrefix(tls, g.pLog, bp+16 /* &zPrefix[0] */, zMsg)
|
|
libc.Xfflush(tls, g.pLog)
|
|
maybeClose(tls, g.pLog)
|
|
}
|
|
if (g.pErrLog != 0) && (safe_strcmp(tls, g.zErrLog, g.zLog) != 0) {
|
|
printWithPrefix(tls, g.pErrLog, bp+16 /* &zPrefix[0] */, zMsg)
|
|
libc.Xfflush(tls, g.pErrLog)
|
|
maybeClose(tls, g.pErrLog)
|
|
}
|
|
sqlite3.Xsqlite3_free(tls, zMsg)
|
|
if g.db != 0 {
|
|
var nTry int32 = 0
|
|
g.iTimeout = 0
|
|
for (trySql(tls, ts+30 /* "UPDATE client SE..." */, 0) == 5) &&
|
|
((libc.PostIncInt32(&nTry, 1)) < 100) {
|
|
sqlite3.Xsqlite3_sleep(tls, 10)
|
|
}
|
|
}
|
|
sqlite3.Xsqlite3_close(tls, g.db)
|
|
libc.Xexit(tls, 1)
|
|
}
|
|
|
|
// Print a log message
|
|
func logMessage(tls *libc.TLS, zFormat uintptr, va uintptr) { /* mptest.c:276:13: */
|
|
bp := tls.Alloc(46)
|
|
defer tls.Free(46)
|
|
|
|
var ap va_list
|
|
_ = ap
|
|
var zMsg uintptr
|
|
// var zPrefix [30]int8 at bp+16, 30
|
|
|
|
ap = va
|
|
zMsg = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap)
|
|
_ = ap
|
|
sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([30]int8{})), bp+16 /* &zPrefix[0] */, ts+60 /* "%s: " */, libc.VaList(bp, uintptr(unsafe.Pointer(&g))+32 /* &.zName */))
|
|
if g.pLog != 0 {
|
|
printWithPrefix(tls, g.pLog, bp+16 /* &zPrefix[0] */, zMsg)
|
|
libc.Xfflush(tls, g.pLog)
|
|
}
|
|
sqlite3.Xsqlite3_free(tls, zMsg)
|
|
}
|
|
|
|
// Return the length of a string omitting trailing whitespace
|
|
func clipLength(tls *libc.TLS, z uintptr) int32 { /* mptest.c:294:12: */
|
|
var n int32 = int32(libc.Xstrlen(tls, z))
|
|
for (n > 0) && (libc.Xisspace(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr((n - 1))))))) != 0) {
|
|
n--
|
|
}
|
|
return n
|
|
}
|
|
|
|
// Auxiliary SQL function to return the name of the VFS
|
|
func vfsNameFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* mptest.c:303:13: */
|
|
bp := tls.Alloc(4)
|
|
defer tls.Free(4)
|
|
|
|
var db uintptr = sqlite3.Xsqlite3_context_db_handle(tls, context)
|
|
*(*uintptr)(unsafe.Pointer(bp /* zVfs */)) = uintptr(0)
|
|
_ = argc
|
|
_ = argv
|
|
sqlite3.Xsqlite3_file_control(tls, db, ts+65 /* "main" */, 12, bp /* &zVfs */)
|
|
if *(*uintptr)(unsafe.Pointer(bp /* zVfs */)) != 0 {
|
|
sqlite3.Xsqlite3_result_text(tls, context, *(*uintptr)(unsafe.Pointer(bp /* zVfs */)), -1, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{sqlite3.Xsqlite3_free})))
|
|
}
|
|
}
|
|
|
|
// Busy handler with a g.iTimeout-millisecond timeout
|
|
func busyHandler(tls *libc.TLS, pCD uintptr, count int32) int32 { /* mptest.c:321:12: */
|
|
bp := tls.Alloc(16)
|
|
defer tls.Free(16)
|
|
|
|
_ = pCD
|
|
if (count * 10) > g.iTimeout {
|
|
if g.iTimeout > 0 {
|
|
errorMessage(tls, ts+70 /* "timeout after %d..." */, libc.VaList(bp, g.iTimeout))
|
|
}
|
|
return 0
|
|
}
|
|
sqlite3.Xsqlite3_sleep(tls, 10)
|
|
return 1
|
|
}
|
|
|
|
// SQL Trace callback
|
|
func sqlTraceCallback(tls *libc.TLS, NotUsed1 uintptr, zSql uintptr) { /* mptest.c:334:13: */
|
|
bp := tls.Alloc(24)
|
|
defer tls.Free(24)
|
|
|
|
_ = NotUsed1
|
|
logMessage(tls, ts+89 /* "[%.*s]" */, libc.VaList(bp, clipLength(tls, zSql), zSql))
|
|
}
|
|
|
|
// SQL error log callback
|
|
func sqlErrorCallback(tls *libc.TLS, pArg uintptr, iErrCode int32, zMsg uintptr) { /* mptest.c:342:13: */
|
|
bp := tls.Alloc(40)
|
|
defer tls.Free(40)
|
|
|
|
_ = pArg
|
|
if (iErrCode == 1) && (g.bIgnoreSqlErrors != 0) {
|
|
return
|
|
}
|
|
if ((iErrCode & 0xff) == 17) && (g.iTrace < 3) {
|
|
return
|
|
}
|
|
if ((g.iTimeout == 0) && ((iErrCode & 0xff) == 5)) && (g.iTrace < 3) {
|
|
return
|
|
}
|
|
if (iErrCode & 0xff) == 27 {
|
|
logMessage(tls, ts+96 /* "(info) %s" */, libc.VaList(bp, zMsg))
|
|
} else {
|
|
errorMessage(tls, ts+106 /* "(errcode=%d) %s" */, libc.VaList(bp+16, iErrCode, zMsg))
|
|
}
|
|
}
|
|
|
|
// Prepare an SQL statement. Issue a fatal error if unable.
|
|
func prepareSql(tls *libc.TLS, zFormat uintptr, va uintptr) uintptr { /* mptest.c:357:21: */
|
|
bp := tls.Alloc(28)
|
|
defer tls.Free(28)
|
|
|
|
var ap va_list
|
|
_ = ap
|
|
var zSql uintptr
|
|
var rc int32
|
|
*(*uintptr)(unsafe.Pointer(bp + 24 /* pStmt */)) = uintptr(0)
|
|
ap = va
|
|
zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap)
|
|
_ = ap
|
|
rc = sqlite3.Xsqlite3_prepare_v2(tls, g.db, zSql, -1, bp+24 /* &pStmt */, uintptr(0))
|
|
if rc != 0 {
|
|
sqlite3.Xsqlite3_finalize(tls, *(*uintptr)(unsafe.Pointer(bp + 24 /* pStmt */)))
|
|
fatalError(tls, ts+122 /* "%s\n%s\n" */, libc.VaList(bp, sqlite3.Xsqlite3_errmsg(tls, g.db), zSql))
|
|
}
|
|
sqlite3.Xsqlite3_free(tls, zSql)
|
|
return *(*uintptr)(unsafe.Pointer(bp + 24 /* pStmt */))
|
|
}
|
|
|
|
// Run arbitrary SQL. Issue a fatal error on failure.
|
|
func runSql(tls *libc.TLS, zFormat uintptr, va uintptr) { /* mptest.c:377:13: */
|
|
bp := tls.Alloc(24)
|
|
defer tls.Free(24)
|
|
|
|
var ap va_list
|
|
_ = ap
|
|
var zSql uintptr
|
|
var rc int32
|
|
ap = va
|
|
zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap)
|
|
_ = ap
|
|
rc = sqlite3.Xsqlite3_exec(tls, g.db, zSql, uintptr(0), uintptr(0), uintptr(0))
|
|
if rc != 0 {
|
|
fatalError(tls, ts+122 /* "%s\n%s\n" */, libc.VaList(bp, sqlite3.Xsqlite3_errmsg(tls, g.db), zSql))
|
|
}
|
|
sqlite3.Xsqlite3_free(tls, zSql)
|
|
}
|
|
|
|
// Try to run arbitrary SQL. Return success code.
|
|
func trySql(tls *libc.TLS, zFormat uintptr, va uintptr) int32 { /* mptest.c:394:12: */
|
|
var ap va_list
|
|
_ = ap
|
|
var zSql uintptr
|
|
var rc int32
|
|
ap = va
|
|
zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap)
|
|
_ = ap
|
|
rc = sqlite3.Xsqlite3_exec(tls, g.db, zSql, uintptr(0), uintptr(0), uintptr(0))
|
|
sqlite3.Xsqlite3_free(tls, zSql)
|
|
return rc
|
|
}
|
|
|
|
// Structure for holding an arbitrary length string
|
|
type String1 = struct {
|
|
z uintptr
|
|
n int32
|
|
nAlloc int32
|
|
} /* mptest.c:408:9 */
|
|
|
|
// Structure for holding an arbitrary length string
|
|
type String = String1 /* mptest.c:408:23 */
|
|
|
|
// Free a string
|
|
func stringFree(tls *libc.TLS, p uintptr) { /* mptest.c:416:13: */
|
|
if (*String)(unsafe.Pointer(p)).z != 0 {
|
|
sqlite3.Xsqlite3_free(tls, (*String)(unsafe.Pointer(p)).z)
|
|
}
|
|
libc.Xmemset(tls, p, 0, uint32(unsafe.Sizeof(String{})))
|
|
}
|
|
|
|
// Append n bytes of text to a string. If n<0 append the entire string.
|
|
func stringAppend(tls *libc.TLS, p uintptr, z uintptr, n int32) { /* mptest.c:422:13: */
|
|
if n < 0 {
|
|
n = int32(libc.Xstrlen(tls, z))
|
|
}
|
|
if ((*String)(unsafe.Pointer(p)).n + n) >= (*String)(unsafe.Pointer(p)).nAlloc {
|
|
var nAlloc int32 = ((((*String)(unsafe.Pointer(p)).nAlloc * 2) + n) + 100)
|
|
var zNew uintptr = sqlite3.Xsqlite3_realloc(tls, (*String)(unsafe.Pointer(p)).z, nAlloc)
|
|
if zNew == uintptr(0) {
|
|
fatalError(tls, ts+129 /* "out of memory" */, 0)
|
|
}
|
|
(*String)(unsafe.Pointer(p)).z = zNew
|
|
(*String)(unsafe.Pointer(p)).nAlloc = nAlloc
|
|
}
|
|
libc.Xmemcpy(tls, ((*String)(unsafe.Pointer(p)).z + uintptr((*String)(unsafe.Pointer(p)).n)), z, uint32(n))
|
|
*(*int32)(unsafe.Pointer(p + 4 /* &.n */)) += (n)
|
|
*(*int8)(unsafe.Pointer((*String)(unsafe.Pointer(p)).z + uintptr((*String)(unsafe.Pointer(p)).n))) = int8(0)
|
|
}
|
|
|
|
// Reset a string to an empty string
|
|
func stringReset(tls *libc.TLS, p uintptr) { /* mptest.c:437:13: */
|
|
if (*String)(unsafe.Pointer(p)).z == uintptr(0) {
|
|
stringAppend(tls, p, ts+143 /* " " */, 1)
|
|
}
|
|
(*String)(unsafe.Pointer(p)).n = 0
|
|
*(*int8)(unsafe.Pointer((*String)(unsafe.Pointer(p)).z + uintptr(0))) = int8(0)
|
|
}
|
|
|
|
// Append a new token onto the end of the string
|
|
func stringAppendTerm(tls *libc.TLS, p uintptr, z uintptr) { /* mptest.c:444:13: */
|
|
var i int32
|
|
if (*String)(unsafe.Pointer(p)).n != 0 {
|
|
stringAppend(tls, p, ts+143 /* " " */, 1)
|
|
}
|
|
if z == uintptr(0) {
|
|
stringAppend(tls, p, ts+145 /* "nil" */, 3)
|
|
return
|
|
}
|
|
for i = 0; (*(*int8)(unsafe.Pointer(z + uintptr(i))) != 0) && !(libc.Xisspace(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr(i)))))) != 0); i++ {
|
|
}
|
|
if (i > 0) && (int32(*(*int8)(unsafe.Pointer(z + uintptr(i)))) == 0) {
|
|
stringAppend(tls, p, z, i)
|
|
return
|
|
}
|
|
stringAppend(tls, p, ts+149 /* "'" */, 1)
|
|
for *(*int8)(unsafe.Pointer(z + uintptr(0))) != 0 {
|
|
for i = 0; (*(*int8)(unsafe.Pointer(z + uintptr(i))) != 0) && (int32(*(*int8)(unsafe.Pointer(z + uintptr(i)))) != '\''); i++ {
|
|
}
|
|
if *(*int8)(unsafe.Pointer(z + uintptr(i))) != 0 {
|
|
stringAppend(tls, p, z, (i + 1))
|
|
stringAppend(tls, p, ts+149 /* "'" */, 1)
|
|
z += (uintptr(i + 1))
|
|
} else {
|
|
stringAppend(tls, p, z, i)
|
|
break
|
|
}
|
|
}
|
|
stringAppend(tls, p, ts+149 /* "'" */, 1)
|
|
}
|
|
|
|
// Callback function for evalSql()
|
|
func evalCallback(tls *libc.TLS, pCData uintptr, argc int32, argv uintptr, azCol uintptr) int32 { /* mptest.c:474:12: */
|
|
var p uintptr = pCData
|
|
var i int32
|
|
_ = azCol
|
|
for i = 0; i < argc; i++ {
|
|
stringAppendTerm(tls, p, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*4)))
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// Run arbitrary SQL and record the results in an output string
|
|
// given by the first parameter.
|
|
func evalSql(tls *libc.TLS, p uintptr, zFormat uintptr, va uintptr) int32 { /* mptest.c:486:12: */
|
|
bp := tls.Alloc(50)
|
|
defer tls.Free(50)
|
|
|
|
var ap va_list
|
|
_ = ap
|
|
var zSql uintptr
|
|
var rc int32
|
|
*(*uintptr)(unsafe.Pointer(bp + 16 /* zErrMsg */)) = uintptr(0)
|
|
ap = va
|
|
zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap)
|
|
_ = ap
|
|
|
|
rc = sqlite3.Xsqlite3_exec(tls, g.db, zSql, *(*uintptr)(unsafe.Pointer(&struct {
|
|
f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32
|
|
}{evalCallback})), p, bp+16 /* &zErrMsg */)
|
|
sqlite3.Xsqlite3_free(tls, zSql)
|
|
if rc != 0 {
|
|
// var zErr [30]int8 at bp+20, 30
|
|
|
|
sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([30]int8{})), bp+20 /* &zErr[0] */, ts+151 /* "error(%d)" */, libc.VaList(bp, rc))
|
|
stringAppendTerm(tls, p, bp+20 /* &zErr[0] */)
|
|
if *(*uintptr)(unsafe.Pointer(bp + 16 /* zErrMsg */)) != 0 {
|
|
stringAppendTerm(tls, p, *(*uintptr)(unsafe.Pointer(bp + 16 /* zErrMsg */)))
|
|
sqlite3.Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 16 /* zErrMsg */)))
|
|
}
|
|
}
|
|
return rc
|
|
}
|
|
|
|
// Auxiliary SQL function to recursively evaluate SQL.
|
|
func evalFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { /* mptest.c:512:13: */
|
|
bp := tls.Alloc(16)
|
|
defer tls.Free(16)
|
|
|
|
var db uintptr = sqlite3.Xsqlite3_context_db_handle(tls, context)
|
|
var zSql uintptr = sqlite3.Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(0)*4)))
|
|
// var res String at bp, 12
|
|
|
|
*(*uintptr)(unsafe.Pointer(bp + 12 /* zErrMsg */)) = uintptr(0)
|
|
var rc int32
|
|
_ = argc
|
|
libc.Xmemset(tls, bp /* &res */, 0, uint32(unsafe.Sizeof(String{})))
|
|
rc = sqlite3.Xsqlite3_exec(tls, db, zSql, *(*uintptr)(unsafe.Pointer(&struct {
|
|
f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32
|
|
}{evalCallback})), bp /* &res */, bp+12 /* &zErrMsg */)
|
|
if *(*uintptr)(unsafe.Pointer(bp + 12 /* zErrMsg */)) != 0 {
|
|
sqlite3.Xsqlite3_result_error(tls, context, *(*uintptr)(unsafe.Pointer(bp + 12 /* zErrMsg */)), -1)
|
|
sqlite3.Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 12 /* zErrMsg */)))
|
|
} else if rc != 0 {
|
|
sqlite3.Xsqlite3_result_error_code(tls, context, rc)
|
|
} else {
|
|
sqlite3.Xsqlite3_result_text(tls, context, (*String)(unsafe.Pointer(bp /* &res */)).z, -1, libc.UintptrFromInt32(-1))
|
|
}
|
|
stringFree(tls, bp /* &res */)
|
|
}
|
|
|
|
// Look up the next task for client iClient in the database.
|
|
// Return the task script and the task number and mark that
|
|
// task as being under way.
|
|
func startScript(tls *libc.TLS, iClient int32, pzScript uintptr, pTaskId uintptr, pzTaskName uintptr) int32 { /* mptest.c:541:12: */
|
|
bp := tls.Alloc(152)
|
|
defer tls.Free(152)
|
|
|
|
var pStmt uintptr = uintptr(0)
|
|
var taskId int32
|
|
var rc int32
|
|
var totalTime int32 = 0
|
|
|
|
*(*uintptr)(unsafe.Pointer(pzScript)) = uintptr(0)
|
|
g.iTimeout = 0
|
|
for 1 != 0 {
|
|
rc = trySql(tls, ts+161 /* "BEGIN IMMEDIATE" */, 0)
|
|
if rc == 5 {
|
|
sqlite3.Xsqlite3_sleep(tls, 10)
|
|
totalTime = totalTime + (10)
|
|
continue
|
|
}
|
|
if rc != 0 {
|
|
fatalError(tls, ts+177 /* "in startScript: ..." */, libc.VaList(bp, sqlite3.Xsqlite3_errmsg(tls, g.db)))
|
|
}
|
|
if (g.nError != 0) || (g.nTest != 0) {
|
|
runSql(tls, ts+196, /* "UPDATE counters ..." */
|
|
libc.VaList(bp+16, g.nError, g.nTest))
|
|
g.nError = 0
|
|
g.nTest = 0
|
|
}
|
|
pStmt = prepareSql(tls, ts+249 /* "SELECT 1 FROM cl..." */, libc.VaList(bp+40, iClient))
|
|
rc = sqlite3.Xsqlite3_step(tls, pStmt)
|
|
sqlite3.Xsqlite3_finalize(tls, pStmt)
|
|
if rc == 100 {
|
|
runSql(tls, ts+295 /* "DELETE FROM clie..." */, libc.VaList(bp+56, iClient))
|
|
g.iTimeout = 10000
|
|
runSql(tls, ts+326 /* "COMMIT TRANSACTI..." */, 0)
|
|
return 101
|
|
}
|
|
pStmt = prepareSql(tls,
|
|
|
|
ts+346 /* "SELECT script, i..." */, libc.VaList(bp+72, iClient))
|
|
rc = sqlite3.Xsqlite3_step(tls, pStmt)
|
|
if rc == 100 {
|
|
var n int32 = sqlite3.Xsqlite3_column_bytes(tls, pStmt, 0)
|
|
*(*uintptr)(unsafe.Pointer(pzScript)) = sqlite3.Xsqlite3_malloc(tls, (n + 1))
|
|
libc.Xstrcpy(tls, *(*uintptr)(unsafe.Pointer(pzScript)), sqlite3.Xsqlite3_column_text(tls, pStmt, 0))
|
|
*(*int32)(unsafe.Pointer(pTaskId)) = libc.AssignInt32(&taskId, sqlite3.Xsqlite3_column_int(tls, pStmt, 1))
|
|
*(*uintptr)(unsafe.Pointer(pzTaskName)) = sqlite3.Xsqlite3_mprintf(tls, ts+438 /* "%s" */, libc.VaList(bp+88, sqlite3.Xsqlite3_column_text(tls, pStmt, 2)))
|
|
sqlite3.Xsqlite3_finalize(tls, pStmt)
|
|
runSql(tls,
|
|
|
|
ts+441 /* "UPDATE task SE..." */, libc.VaList(bp+104, taskId))
|
|
g.iTimeout = 10000
|
|
runSql(tls, ts+326 /* "COMMIT TRANSACTI..." */, 0)
|
|
return 0
|
|
}
|
|
sqlite3.Xsqlite3_finalize(tls, pStmt)
|
|
if rc == 101 {
|
|
if totalTime > 30000 {
|
|
errorMessage(tls, ts+524 /* "Waited over 30 s..." */, 0)
|
|
runSql(tls, ts+573 /* "DELETE FROM clie..." */, libc.VaList(bp+120, iClient))
|
|
sqlite3.Xsqlite3_close(tls, g.db)
|
|
libc.Xexit(tls, 1)
|
|
}
|
|
for trySql(tls, ts+613 /* "COMMIT" */, 0) == 5 {
|
|
sqlite3.Xsqlite3_sleep(tls, 10)
|
|
totalTime = totalTime + (10)
|
|
}
|
|
sqlite3.Xsqlite3_sleep(tls, 100)
|
|
totalTime = totalTime + (100)
|
|
continue
|
|
}
|
|
fatalError(tls, ts+438 /* "%s" */, libc.VaList(bp+136, sqlite3.Xsqlite3_errmsg(tls, g.db)))
|
|
}
|
|
g.iTimeout = 10000
|
|
return int32(0)
|
|
}
|
|
|
|
// Mark a script as having finished. Remove the CLIENT table entry
|
|
// if bShutdown is true.
|
|
func finishScript(tls *libc.TLS, iClient int32, taskId int32, bShutdown int32) int32 { /* mptest.c:623:12: */
|
|
bp := tls.Alloc(32)
|
|
defer tls.Free(32)
|
|
|
|
runSql(tls,
|
|
|
|
ts+620 /* "UPDATE task SE..." */, libc.VaList(bp, taskId))
|
|
if bShutdown != 0 {
|
|
runSql(tls, ts+295 /* "DELETE FROM clie..." */, libc.VaList(bp+16, iClient))
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// Start up a client process for iClient, if it is not already
|
|
// running. If the client is already running, then this routine
|
|
// is a no-op.
|
|
func startClient(tls *libc.TLS, iClient int32) { /* mptest.c:638:13: */
|
|
bp := tls.Alloc(228)
|
|
defer tls.Free(228)
|
|
|
|
runSql(tls, ts+701 /* "INSERT OR IGNORE..." */, libc.VaList(bp, iClient))
|
|
if sqlite3.Xsqlite3_changes(tls, g.db) != 0 {
|
|
var zSys uintptr
|
|
var rc int32
|
|
zSys = sqlite3.Xsqlite3_mprintf(tls, ts+743, /* "%s \"%s\" --client..." */
|
|
libc.VaList(bp+16, g.argv0, g.zDbFile, iClient, g.iTrace))
|
|
if g.bSqlTrace != 0 {
|
|
zSys = sqlite3.Xsqlite3_mprintf(tls, ts+774 /* "%z --sqltrace" */, libc.VaList(bp+56, zSys))
|
|
}
|
|
if g.bSync != 0 {
|
|
zSys = sqlite3.Xsqlite3_mprintf(tls, ts+788 /* "%z --sync" */, libc.VaList(bp+72, zSys))
|
|
}
|
|
if g.zVfs != 0 {
|
|
zSys = sqlite3.Xsqlite3_mprintf(tls, ts+798 /* "%z --vfs \"%s\"" */, libc.VaList(bp+88, zSys, g.zVfs))
|
|
}
|
|
if g.iTrace >= 2 {
|
|
logMessage(tls, ts+812 /* "system('%q')" */, libc.VaList(bp+112, zSys))
|
|
}
|
|
{
|
|
// var startupInfo STARTUPINFOA at bp+144, 68
|
|
|
|
// var processInfo PROCESS_INFORMATION at bp+212, 16
|
|
|
|
libc.Xmemset(tls, bp+144 /* &startupInfo */, 0, uint32(unsafe.Sizeof(STARTUPINFOA{})))
|
|
(*STARTUPINFOA)(unsafe.Pointer(bp + 144 /* &startupInfo */)).cb = DWORD(unsafe.Sizeof(STARTUPINFOA{}))
|
|
libc.Xmemset(tls, bp+212 /* &processInfo */, 0, uint32(unsafe.Sizeof(PROCESS_INFORMATION{})))
|
|
rc = libc.XCreateProcessA(tls, uintptr(0), zSys, uintptr(0), uintptr(0), 0, uint32(0), uintptr(0), uintptr(0),
|
|
bp+144 /* &startupInfo */, bp+212 /* &processInfo */)
|
|
if rc != 0 {
|
|
libc.XCloseHandle(tls, (*PROCESS_INFORMATION)(unsafe.Pointer(bp+212 /* &processInfo */)).hThread)
|
|
libc.XCloseHandle(tls, (*PROCESS_INFORMATION)(unsafe.Pointer(bp+212 /* &processInfo */)).hProcess)
|
|
} else {
|
|
errorMessage(tls, ts+825, /* "CreateProcessA()..." */
|
|
libc.VaList(bp+128, libc.XGetLastError(tls)))
|
|
}
|
|
|
|
}
|
|
sqlite3.Xsqlite3_free(tls, zSys)
|
|
}
|
|
}
|
|
|
|
// Read the entire content of a file into memory
|
|
func readFile(tls *libc.TLS, zFilename uintptr) uintptr { /* mptest.c:684:13: */
|
|
bp := tls.Alloc(16)
|
|
defer tls.Free(16)
|
|
|
|
var in uintptr = libc.Xfopen(tls, zFilename, ts+868 /* "rb" */)
|
|
var sz int32
|
|
var z uintptr
|
|
if in == uintptr(0) {
|
|
fatalError(tls, ts+871 /* "cannot open \"%s\"..." */, libc.VaList(bp, zFilename))
|
|
}
|
|
libc.Xfseek(tls, in, 0, 2)
|
|
sz = libc.Xftell(tls, in)
|
|
libc.Xrewind(tls, in)
|
|
z = sqlite3.Xsqlite3_malloc(tls, (int32(sz + 1)))
|
|
sz = int32(libc.Xfread(tls, z, uint32(1), uint32(sz), in))
|
|
*(*int8)(unsafe.Pointer(z + uintptr(sz))) = int8(0)
|
|
libc.Xfclose(tls, in)
|
|
return z
|
|
}
|
|
|
|
// Return the length of the next token.
|
|
func tokenLength(tls *libc.TLS, z uintptr, pnLine uintptr) int32 { /* mptest.c:704:12: */
|
|
var n int32 = 0
|
|
if (libc.Xisspace(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr(0)))))) != 0) || ((int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) == '/') && (int32(*(*int8)(unsafe.Pointer(z + uintptr(1)))) == '*')) {
|
|
var inC int32 = 0
|
|
var c int32
|
|
if int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) == '/' {
|
|
inC = 1
|
|
n = 2
|
|
}
|
|
for (libc.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(z + uintptr(libc.PostIncInt32(&n, 1))))))) != 0 {
|
|
if c == '\n' {
|
|
(*(*int32)(unsafe.Pointer(pnLine)))++
|
|
}
|
|
if libc.Xisspace(tls, int32(uint8(c))) != 0 {
|
|
continue
|
|
}
|
|
if ((inC != 0) && (c == '*')) && (int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))) == '/') {
|
|
n++
|
|
inC = 0
|
|
} else if (!(inC != 0) && (c == '/')) && (int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))) == '*') {
|
|
n++
|
|
inC = 1
|
|
} else if !(inC != 0) {
|
|
break
|
|
}
|
|
}
|
|
n--
|
|
} else if (int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) == '-') && (int32(*(*int8)(unsafe.Pointer(z + uintptr(1)))) == '-') {
|
|
for n = 2; (*(*int8)(unsafe.Pointer(z + uintptr(n))) != 0) && (int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))) != '\n'); n++ {
|
|
}
|
|
if *(*int8)(unsafe.Pointer(z + uintptr(n))) != 0 {
|
|
(*(*int32)(unsafe.Pointer(pnLine)))++
|
|
n++
|
|
}
|
|
} else if (int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) == '"') || (int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) == '\'') {
|
|
var delim int32 = int32(*(*int8)(unsafe.Pointer(z + uintptr(0))))
|
|
for n = 1; *(*int8)(unsafe.Pointer(z + uintptr(n))) != 0; n++ {
|
|
if int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))) == '\n' {
|
|
(*(*int32)(unsafe.Pointer(pnLine)))++
|
|
}
|
|
if int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))) == delim {
|
|
n++
|
|
if int32(*(*int8)(unsafe.Pointer(z + uintptr((n + 1))))) != delim {
|
|
break
|
|
}
|
|
}
|
|
}
|
|
} else {
|
|
var c int32
|
|
for n = 1; (((((libc.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))))) != 0) && !(libc.Xisspace(tls, int32(uint8(c))) != 0)) && (c != '"')) && (c != '\'')) && (c != ';'); n++ {
|
|
}
|
|
}
|
|
return n
|
|
}
|
|
|
|
// Copy a single token into a string buffer.
|
|
func extractToken(tls *libc.TLS, zIn uintptr, nIn int32, zOut uintptr, nOut int32) int32 { /* mptest.c:749:12: */
|
|
var i int32
|
|
if nIn <= 0 {
|
|
*(*int8)(unsafe.Pointer(zOut + uintptr(0))) = int8(0)
|
|
return 0
|
|
}
|
|
for i = 0; ((i < nIn) && (i < (nOut - 1))) && !(libc.Xisspace(tls, int32(uint8(*(*int8)(unsafe.Pointer(zIn + uintptr(i)))))) != 0); i++ {
|
|
*(*int8)(unsafe.Pointer(zOut + uintptr(i))) = *(*int8)(unsafe.Pointer(zIn + uintptr(i)))
|
|
}
|
|
*(*int8)(unsafe.Pointer(zOut + uintptr(i))) = int8(0)
|
|
return i
|
|
}
|
|
|
|
// Find the number of characters up to the start of the next "--end" token.
|
|
func findEnd(tls *libc.TLS, z uintptr, pnLine uintptr) int32 { /* mptest.c:763:12: */
|
|
var n int32 = 0
|
|
for (*(*int8)(unsafe.Pointer(z + uintptr(n))) != 0) && ((libc.Xstrncmp(tls, (z+uintptr(n)), ts+900 /* "--end" */, uint32(5)) != 0) || !(libc.Xisspace(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr((n + 5))))))) != 0)) {
|
|
n = n + (tokenLength(tls, (z + uintptr(n)), pnLine))
|
|
}
|
|
return n
|
|
}
|
|
|
|
// Find the number of characters up to the first character past the
|
|
// of the next "--endif" or "--else" token. Nested --if commands are
|
|
// also skipped.
|
|
func findEndif(tls *libc.TLS, z uintptr, stopAtElse int32, pnLine uintptr) int32 { /* mptest.c:776:12: */
|
|
var n int32 = 0
|
|
for *(*int8)(unsafe.Pointer(z + uintptr(n))) != 0 {
|
|
var len int32 = tokenLength(tls, (z + uintptr(n)), pnLine)
|
|
if ((libc.Xstrncmp(tls, (z+uintptr(n)), ts+906 /* "--endif" */, uint32(7)) == 0) && (libc.Xisspace(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr((n + 7))))))) != 0)) ||
|
|
(((stopAtElse != 0) && (libc.Xstrncmp(tls, (z+uintptr(n)), ts+914 /* "--else" */, uint32(6)) == 0)) && (libc.Xisspace(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr((n + 6))))))) != 0)) {
|
|
return (n + len)
|
|
}
|
|
if (libc.Xstrncmp(tls, (z+uintptr(n)), ts+921 /* "--if" */, uint32(4)) == 0) && (libc.Xisspace(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr((n + 4))))))) != 0) {
|
|
var skip int32 = findEndif(tls, ((z + uintptr(n)) + uintptr(len)), 0, pnLine)
|
|
n = n + (skip + len)
|
|
} else {
|
|
n = n + (len)
|
|
}
|
|
}
|
|
return n
|
|
}
|
|
|
|
// Wait for a client process to complete all its tasks
|
|
func waitForClient(tls *libc.TLS, iClient int32, iTimeout int32, zErrPrefix uintptr) { /* mptest.c:798:13: */
|
|
bp := tls.Alloc(56)
|
|
defer tls.Free(56)
|
|
|
|
var pStmt uintptr
|
|
var rc int32
|
|
if iClient > 0 {
|
|
pStmt = prepareSql(tls,
|
|
|
|
ts+926, /* "SELECT 1 FROM ta..." */
|
|
libc.VaList(bp, iClient))
|
|
} else {
|
|
pStmt = prepareSql(tls,
|
|
|
|
ts+1022 /* "SELECT 1 FROM ta..." */, 0)
|
|
}
|
|
g.iTimeout = 0
|
|
for (((libc.AssignInt32(&rc, sqlite3.Xsqlite3_step(tls, pStmt))) == 5) || (rc == 100)) &&
|
|
(iTimeout > 0) {
|
|
sqlite3.Xsqlite3_reset(tls, pStmt)
|
|
sqlite3.Xsqlite3_sleep(tls, 50)
|
|
iTimeout = iTimeout - (50)
|
|
}
|
|
sqlite3.Xsqlite3_finalize(tls, pStmt)
|
|
g.iTimeout = 10000
|
|
if rc != 101 {
|
|
if zErrPrefix == uintptr(0) {
|
|
zErrPrefix = ts + 1103 /* "" */
|
|
}
|
|
if iClient > 0 {
|
|
errorMessage(tls, ts+1104 /* "%stimeout waitin..." */, libc.VaList(bp+16, zErrPrefix, iClient))
|
|
} else {
|
|
errorMessage(tls, ts+1136 /* "%stimeout waitin..." */, libc.VaList(bp+40, zErrPrefix))
|
|
}
|
|
}
|
|
}
|
|
|
|
// Return a pointer to the tail of a filename
|
|
func filenameTail(tls *libc.TLS, z uintptr) uintptr { /* mptest.c:836:13: */
|
|
var i int32
|
|
var j int32
|
|
for i = libc.AssignInt32(&j, 0); *(*int8)(unsafe.Pointer(z + uintptr(i))) != 0; i++ {
|
|
if ((int32(*(*int8)(unsafe.Pointer(z + uintptr(i))))) == '/') || ((int32(*(*int8)(unsafe.Pointer(z + uintptr(i))))) == '\\') {
|
|
j = (i + 1)
|
|
}
|
|
}
|
|
return (z + uintptr(j))
|
|
}
|
|
|
|
// Interpret zArg as a boolean value. Return either 0 or 1.
|
|
func booleanValue(tls *libc.TLS, zArg uintptr) int32 { /* mptest.c:845:12: */
|
|
bp := tls.Alloc(16)
|
|
defer tls.Free(16)
|
|
|
|
var i int32
|
|
if zArg == uintptr(0) {
|
|
return 0
|
|
}
|
|
for i = 0; (int32(*(*int8)(unsafe.Pointer(zArg + uintptr(i)))) >= '0') && (int32(*(*int8)(unsafe.Pointer(zArg + uintptr(i)))) <= '9'); i++ {
|
|
}
|
|
if (i > 0) && (int32(*(*int8)(unsafe.Pointer(zArg + uintptr(i)))) == 0) {
|
|
return libc.Xatoi(tls, zArg)
|
|
}
|
|
if (sqlite3.Xsqlite3_stricmp(tls, zArg, ts+1170 /* "on" */) == 0) || (sqlite3.Xsqlite3_stricmp(tls, zArg, ts+1173 /* "yes" */) == 0) {
|
|
return 1
|
|
}
|
|
if (sqlite3.Xsqlite3_stricmp(tls, zArg, ts+1177 /* "off" */) == 0) || (sqlite3.Xsqlite3_stricmp(tls, zArg, ts+1181 /* "no" */) == 0) {
|
|
return 0
|
|
}
|
|
errorMessage(tls, ts+1184 /* "unknown boolean:..." */, libc.VaList(bp, zArg))
|
|
return 0
|
|
}
|
|
|
|
// This routine exists as a convenient place to set a debugger
|
|
// breakpoint.
|
|
func test_breakpoint(tls *libc.TLS) { /* mptest.c:864:13: */
|
|
atomic.AddInt32(&cnt, 1)
|
|
}
|
|
|
|
var cnt int32 = 0 /* mptest.c:864:56 */
|
|
|
|
// Maximum number of arguments to a --command
|
|
|
|
// Run a script.
|
|
func runScript(tls *libc.TLS, iClient int32, taskId int32, zScript uintptr, zFilename uintptr) { /* mptest.c:872:13: */
|
|
bp := tls.Alloc(1766)
|
|
defer tls.Free(1766)
|
|
|
|
*(*int32)(unsafe.Pointer(bp + 532 /* lineno */)) = 1
|
|
var prevLine int32 = 1
|
|
var ii int32 = 0
|
|
var iBegin int32 = 0
|
|
var n int32
|
|
var c int32
|
|
var j int32
|
|
var len int32
|
|
var nArg int32
|
|
// var sResult String at bp+520, 12
|
|
|
|
// var zCmd [30]int8 at bp+536, 30
|
|
|
|
// var zError [1000]int8 at bp+766, 1000
|
|
|
|
// var azArg [2][100]int8 at bp+566, 200
|
|
|
|
libc.Xmemset(tls, bp+520 /* &sResult */, 0, uint32(unsafe.Sizeof(String{})))
|
|
stringReset(tls, bp+520 /* &sResult */)
|
|
for (libc.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(zScript + uintptr(ii)))))) != 0 {
|
|
prevLine = *(*int32)(unsafe.Pointer(bp + 532 /* lineno */))
|
|
len = tokenLength(tls, (zScript + uintptr(ii)), bp+532 /* &lineno */)
|
|
if (libc.Xisspace(tls, int32(uint8(c))) != 0) || ((c == '/') && (int32(*(*int8)(unsafe.Pointer(zScript + uintptr((ii + 1))))) == '*')) {
|
|
ii = ii + (len)
|
|
continue
|
|
}
|
|
if ((c != '-') || (int32(*(*int8)(unsafe.Pointer(zScript + uintptr((ii + 1))))) != '-')) || !(libc.Xisalpha(tls, int32(*(*int8)(unsafe.Pointer(zScript + uintptr((ii + 2)))))) != 0) {
|
|
ii = ii + (len)
|
|
continue
|
|
}
|
|
|
|
// Run any prior SQL before processing the new --command
|
|
if ii > iBegin {
|
|
var zSql uintptr = sqlite3.Xsqlite3_mprintf(tls, ts+1206 /* "%.*s" */, libc.VaList(bp, (ii-iBegin), (zScript+uintptr(iBegin))))
|
|
evalSql(tls, bp+520 /* &sResult */, zSql, 0)
|
|
sqlite3.Xsqlite3_free(tls, zSql)
|
|
iBegin = (ii + len)
|
|
}
|
|
|
|
// Parse the --command
|
|
if g.iTrace >= 2 {
|
|
logMessage(tls, ts+1206 /* "%.*s" */, libc.VaList(bp+24, len, (zScript+uintptr(ii))))
|
|
}
|
|
n = extractToken(tls, ((zScript + uintptr(ii)) + uintptr(2)), (len - 2), bp+536 /* &zCmd[0] */, int32(unsafe.Sizeof([30]int8{})))
|
|
for nArg = 0; (n < (len - 2)) && (nArg < 2); nArg++ {
|
|
for (n < (len - 2)) && (libc.Xisspace(tls, int32(uint8(*(*int8)(unsafe.Pointer(zScript + uintptr(((ii + 2) + n))))))) != 0) {
|
|
n++
|
|
}
|
|
if n >= (len - 2) {
|
|
break
|
|
}
|
|
n = n + (extractToken(tls, (((zScript + uintptr(ii)) + uintptr(2)) + uintptr(n)), ((len - 2) - n),
|
|
(bp + 566 /* &azArg[0] */ + uintptr(nArg)*100), int32(unsafe.Sizeof([100]int8{}))))
|
|
}
|
|
for j = nArg; j < 2; j++ {
|
|
*(*int8)(unsafe.Pointer((bp + 566 /* &azArg[0] */ + uintptr(libc.PostIncInt32(&j, 1))*100) + uintptr(0))) = int8(0)
|
|
}
|
|
|
|
// --sleep N
|
|
//
|
|
// Pause for N milliseconds
|
|
if libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1211 /* "sleep" */) == 0 {
|
|
sqlite3.Xsqlite3_sleep(tls, libc.Xatoi(tls, (bp+566 /* &azArg[0] */ +uintptr(0)*100)))
|
|
} else
|
|
|
|
// --exit N
|
|
//
|
|
// Exit this process. If N>0 then exit without shutting down
|
|
// SQLite. (In other words, simulate a crash.)
|
|
if libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1217 /* "exit" */) == 0 {
|
|
var rc int32 = libc.Xatoi(tls, (bp + 566 /* &azArg[0] */ + uintptr(0)*100))
|
|
finishScript(tls, iClient, taskId, 1)
|
|
if rc == 0 {
|
|
sqlite3.Xsqlite3_close(tls, g.db)
|
|
}
|
|
libc.Xexit(tls, rc)
|
|
} else
|
|
|
|
// --testcase NAME
|
|
//
|
|
// Begin a new test case. Announce in the log that the test case
|
|
// has begun.
|
|
if libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1222 /* "testcase" */) == 0 {
|
|
if g.iTrace == 1 {
|
|
logMessage(tls, ts+1206 /* "%.*s" */, libc.VaList(bp+48, (len-1), (zScript+uintptr(ii))))
|
|
}
|
|
stringReset(tls, bp+520 /* &sResult */)
|
|
} else
|
|
|
|
// --finish
|
|
//
|
|
// Mark the current task as having finished, even if it is not.
|
|
// This can be used in conjunction with --exit to simulate a crash.
|
|
if (libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1231 /* "finish" */) == 0) && (iClient > 0) {
|
|
finishScript(tls, iClient, taskId, 1)
|
|
} else
|
|
|
|
// --reset
|
|
//
|
|
// Reset accumulated results back to an empty string
|
|
if libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1238 /* "reset" */) == 0 {
|
|
stringReset(tls, bp+520 /* &sResult */)
|
|
} else
|
|
|
|
// --match ANSWER...
|
|
//
|
|
// Check to see if output matches ANSWER. Report an error if not.
|
|
if libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1244 /* "match" */) == 0 {
|
|
var jj int32
|
|
var zAns uintptr = (zScript + uintptr(ii))
|
|
for jj = 7; (jj < (len - 1)) && (libc.Xisspace(tls, int32(uint8(*(*int8)(unsafe.Pointer(zAns + uintptr(jj)))))) != 0); jj++ {
|
|
}
|
|
zAns += uintptr(jj)
|
|
if (((len - jj) - 1) != (*String)(unsafe.Pointer(bp+520 /* &sResult */)).n) || (libc.Xstrncmp(tls, (*String)(unsafe.Pointer(bp+520 /* &sResult */)).z, zAns, (uint32((len-jj)-1))) != 0) {
|
|
errorMessage(tls, ts+1250, /* "line %d of %s:\nE..." */
|
|
libc.VaList(bp+72, prevLine, zFilename, ((len-jj)-1), zAns, (*String)(unsafe.Pointer(bp+520 /* &sResult */)).z))
|
|
}
|
|
g.nTest++
|
|
stringReset(tls, bp+520 /* &sResult */)
|
|
} else
|
|
|
|
// --glob ANSWER...
|
|
// --notglob ANSWER....
|
|
//
|
|
// Check to see if output does or does not match the glob pattern
|
|
// ANSWER.
|
|
if (libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1295 /* "glob" */) == 0) || (libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1300 /* "notglob" */) == 0) {
|
|
var jj int32
|
|
var zAns uintptr = (zScript + uintptr(ii))
|
|
var zCopy uintptr
|
|
var isGlob int32 = (libc.Bool32(int32(*(*int8)(unsafe.Pointer(bp + 536 /* &zCmd[0] */ + uintptr(0)))) == 'g'))
|
|
for jj = (9 - (3 * isGlob)); (jj < (len - 1)) && (libc.Xisspace(tls, int32(uint8(*(*int8)(unsafe.Pointer(zAns + uintptr(jj)))))) != 0); jj++ {
|
|
}
|
|
zAns += uintptr(jj)
|
|
zCopy = sqlite3.Xsqlite3_mprintf(tls, ts+1206 /* "%.*s" */, libc.VaList(bp+120, ((len-jj)-1), zAns))
|
|
if ((libc.Bool32(sqlite3.Xsqlite3_strglob(tls, zCopy, (*String)(unsafe.Pointer(bp+520 /* &sResult */)).z) == 0)) ^ isGlob) != 0 {
|
|
errorMessage(tls, ts+1308, /* "line %d of %s:\nE..." */
|
|
libc.VaList(bp+144, prevLine, zFilename, zCopy, (*String)(unsafe.Pointer(bp+520 /* &sResult */)).z))
|
|
}
|
|
sqlite3.Xsqlite3_free(tls, zCopy)
|
|
g.nTest++
|
|
stringReset(tls, bp+520 /* &sResult */)
|
|
} else
|
|
|
|
// --output
|
|
//
|
|
// Output the result of the previous SQL.
|
|
if libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1351 /* "output" */) == 0 {
|
|
logMessage(tls, ts+438 /* "%s" */, libc.VaList(bp+184, (*String)(unsafe.Pointer(bp+520 /* &sResult */)).z))
|
|
} else
|
|
|
|
// --source FILENAME
|
|
//
|
|
// Run a subscript from a separate file.
|
|
if libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1358 /* "source" */) == 0 {
|
|
var zNewFile uintptr
|
|
var zNewScript uintptr
|
|
var zToDel uintptr = uintptr(0)
|
|
zNewFile = (bp + 566 /* &azArg[0] */ + uintptr(0)*100)
|
|
if !(((int32(*(*int8)(unsafe.Pointer(zNewFile + uintptr(0))))) == '/') || ((int32(*(*int8)(unsafe.Pointer(zNewFile + uintptr(0))))) == '\\')) {
|
|
var k int32
|
|
for k = (int32(libc.Xstrlen(tls, zFilename)) - 1); (k >= 0) && !(((int32(*(*int8)(unsafe.Pointer(zFilename + uintptr(k))))) == '/') || ((int32(*(*int8)(unsafe.Pointer(zFilename + uintptr(k))))) == '\\')); k-- {
|
|
}
|
|
if k > 0 {
|
|
zNewFile = libc.AssignUintptr(&zToDel, sqlite3.Xsqlite3_mprintf(tls, ts+1365 /* "%.*s/%s" */, libc.VaList(bp+200, k, zFilename, zNewFile)))
|
|
}
|
|
}
|
|
zNewScript = readFile(tls, zNewFile)
|
|
if g.iTrace != 0 {
|
|
logMessage(tls, ts+1373 /* "begin script [%s..." */, libc.VaList(bp+232, zNewFile))
|
|
}
|
|
runScript(tls, 0, 0, zNewScript, zNewFile)
|
|
sqlite3.Xsqlite3_free(tls, zNewScript)
|
|
if g.iTrace != 0 {
|
|
logMessage(tls, ts+1392 /* "end script [%s]\n" */, libc.VaList(bp+248, zNewFile))
|
|
}
|
|
sqlite3.Xsqlite3_free(tls, zToDel)
|
|
} else
|
|
|
|
// --print MESSAGE....
|
|
//
|
|
// Output the remainder of the line to the log file
|
|
if libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1409 /* "print" */) == 0 {
|
|
var jj int32
|
|
for jj = 7; (jj < len) && (libc.Xisspace(tls, int32(uint8(*(*int8)(unsafe.Pointer(zScript + uintptr((ii + jj))))))) != 0); jj++ {
|
|
}
|
|
logMessage(tls, ts+1206 /* "%.*s" */, libc.VaList(bp+264, (len-jj), ((zScript+uintptr(ii))+uintptr(jj))))
|
|
} else
|
|
|
|
// --if EXPR
|
|
//
|
|
// Skip forward to the next matching --endif or --else if EXPR is false.
|
|
if libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1415 /* "if" */) == 0 {
|
|
var jj int32
|
|
var rc int32
|
|
var pStmt uintptr
|
|
for jj = 4; (jj < len) && (libc.Xisspace(tls, int32(uint8(*(*int8)(unsafe.Pointer(zScript + uintptr((ii + jj))))))) != 0); jj++ {
|
|
}
|
|
pStmt = prepareSql(tls, ts+1418 /* "SELECT %.*s" */, libc.VaList(bp+288, (len-jj), ((zScript+uintptr(ii))+uintptr(jj))))
|
|
rc = sqlite3.Xsqlite3_step(tls, pStmt)
|
|
if (rc != 100) || (sqlite3.Xsqlite3_column_int(tls, pStmt, 0) == 0) {
|
|
ii = ii + (findEndif(tls, ((zScript + uintptr(ii)) + uintptr(len)), 1, bp+532 /* &lineno */))
|
|
}
|
|
sqlite3.Xsqlite3_finalize(tls, pStmt)
|
|
} else
|
|
|
|
// --else
|
|
//
|
|
// This command can only be encountered if currently inside an --if that
|
|
// is true. Skip forward to the next matching --endif.
|
|
if libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1430 /* "else" */) == 0 {
|
|
ii = ii + (findEndif(tls, ((zScript + uintptr(ii)) + uintptr(len)), 0, bp+532 /* &lineno */))
|
|
} else
|
|
|
|
// --endif
|
|
//
|
|
// This command can only be encountered if currently inside an --if that
|
|
// is true or an --else of a false if. This is a no-op.
|
|
if libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1435 /* "endif" */) == 0 {
|
|
// no-op
|
|
} else
|
|
|
|
// --start CLIENT
|
|
//
|
|
// Start up the given client.
|
|
if (libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1441 /* "start" */) == 0) && (iClient == 0) {
|
|
var iNewClient int32 = libc.Xatoi(tls, (bp + 566 /* &azArg[0] */ + uintptr(0)*100))
|
|
if iNewClient > 0 {
|
|
startClient(tls, iNewClient)
|
|
}
|
|
} else
|
|
|
|
// --wait CLIENT TIMEOUT
|
|
//
|
|
// Wait until all tasks complete for the given client. If CLIENT is
|
|
// "all" then wait for all clients to complete. Wait no longer than
|
|
// TIMEOUT milliseconds (default 10,000)
|
|
if (libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1447 /* "wait" */) == 0) && (iClient == 0) {
|
|
var iTimeout int32
|
|
if nArg >= 2 {
|
|
iTimeout = libc.Xatoi(tls, (bp + 566 /* &azArg[0] */ + uintptr(1)*100))
|
|
} else {
|
|
iTimeout = 10000
|
|
}
|
|
sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([1000]int8{})), bp+766 /* &zError[0] */, ts+1452, /* "line %d of %s\n" */
|
|
libc.VaList(bp+312, prevLine, zFilename))
|
|
waitForClient(tls, libc.Xatoi(tls, (bp+566 /* &azArg[0] */ +uintptr(0)*100)), iTimeout, bp+766 /* &zError[0] */)
|
|
} else
|
|
|
|
// --task CLIENT
|
|
// <task-content-here>
|
|
// --end
|
|
//
|
|
// Assign work to a client. Start the client if it is not running
|
|
// already.
|
|
if (libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1467 /* "task" */) == 0) && (iClient == 0) {
|
|
var iTarget int32 = libc.Xatoi(tls, (bp + 566 /* &azArg[0] */ + uintptr(0)*100))
|
|
var iEnd int32
|
|
var zTask uintptr
|
|
var zTName uintptr
|
|
iEnd = findEnd(tls, ((zScript + uintptr(ii)) + uintptr(len)), bp+532 /* &lineno */)
|
|
if iTarget < 0 {
|
|
errorMessage(tls, ts+1472, /* "line %d of %s: b..." */
|
|
libc.VaList(bp+336, prevLine, zFilename, iTarget))
|
|
} else {
|
|
zTask = sqlite3.Xsqlite3_mprintf(tls, ts+1206 /* "%.*s" */, libc.VaList(bp+368, iEnd, ((zScript+uintptr(ii))+uintptr(len))))
|
|
if nArg > 1 {
|
|
zTName = sqlite3.Xsqlite3_mprintf(tls, ts+438 /* "%s" */, libc.VaList(bp+392, (bp+566 /* &azArg[0] */ +uintptr(1)*100)))
|
|
} else {
|
|
zTName = sqlite3.Xsqlite3_mprintf(tls, ts+1509 /* "%s:%d" */, libc.VaList(bp+408, filenameTail(tls, zFilename), prevLine))
|
|
}
|
|
startClient(tls, iTarget)
|
|
runSql(tls,
|
|
ts+1515 /* "INSERT INTO task..." */, libc.VaList(bp+432, iTarget, zTask, zTName))
|
|
sqlite3.Xsqlite3_free(tls, zTask)
|
|
sqlite3.Xsqlite3_free(tls, zTName)
|
|
}
|
|
iEnd = iEnd + (tokenLength(tls, (((zScript + uintptr(ii)) + uintptr(len)) + uintptr(iEnd)), bp+532 /* &lineno */))
|
|
len = len + (iEnd)
|
|
iBegin = (ii + len)
|
|
} else
|
|
|
|
// --breakpoint
|
|
//
|
|
// This command calls "test_breakpoint()" which is a routine provided
|
|
// as a convenient place to set a debugger breakpoint.
|
|
if libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1571 /* "breakpoint" */) == 0 {
|
|
test_breakpoint(tls)
|
|
} else
|
|
|
|
// --show-sql-errors BOOLEAN
|
|
//
|
|
// Turn display of SQL errors on and off.
|
|
if libc.Xstrcmp(tls, bp+536 /* &zCmd[0] */, ts+1582 /* "show-sql-errors" */) == 0 {
|
|
g.bIgnoreSqlErrors = func() int32 {
|
|
if nArg >= 1 {
|
|
return libc.BoolInt32(!(booleanValue(tls, (bp+566 /* &azArg[0] */ +uintptr(0)*100)) != 0))
|
|
}
|
|
return 1
|
|
}()
|
|
} else {
|
|
errorMessage(tls, ts+1598, /* "line %d of %s: u..." */
|
|
libc.VaList(bp+464, prevLine, zFilename, bp+536 /* &zCmd[0] */))
|
|
}
|
|
ii = ii + (len)
|
|
}
|
|
if iBegin < ii {
|
|
var zSql uintptr = sqlite3.Xsqlite3_mprintf(tls, ts+1206 /* "%.*s" */, libc.VaList(bp+496, (ii-iBegin), (zScript+uintptr(iBegin))))
|
|
runSql(tls, zSql, 0)
|
|
sqlite3.Xsqlite3_free(tls, zSql)
|
|
}
|
|
stringFree(tls, bp+520 /* &sResult */)
|
|
}
|
|
|
|
// Look for a command-line option. If present, return a pointer.
|
|
// Return NULL if missing.
|
|
//
|
|
// hasArg==0 means the option is a flag. It is either present or not.
|
|
// hasArg==1 means the option has an argument. Return a pointer to the
|
|
// argument.
|
|
func findOption(tls *libc.TLS, azArg uintptr, pnArg uintptr, zOption uintptr, hasArg int32) uintptr { /* mptest.c:1201:13: */
|
|
bp := tls.Alloc(16)
|
|
defer tls.Free(16)
|
|
|
|
var i int32
|
|
var j int32
|
|
var zReturn uintptr = uintptr(0)
|
|
var nArg int32 = *(*int32)(unsafe.Pointer(pnArg))
|
|
|
|
for i = 0; i < nArg; i++ {
|
|
var z uintptr
|
|
if (i + hasArg) >= nArg {
|
|
break
|
|
}
|
|
z = *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4))
|
|
if int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) != '-' {
|
|
continue
|
|
}
|
|
z++
|
|
if int32(*(*int8)(unsafe.Pointer(z + uintptr(0)))) == '-' {
|
|
if int32(*(*int8)(unsafe.Pointer(z + uintptr(1)))) == 0 {
|
|
break
|
|
}
|
|
z++
|
|
}
|
|
if libc.Xstrcmp(tls, z, zOption) == 0 {
|
|
if (hasArg != 0) && (i == (nArg - 1)) {
|
|
fatalError(tls, ts+1634 /* "command-line opt..." */, libc.VaList(bp, z))
|
|
}
|
|
if hasArg != 0 {
|
|
zReturn = *(*uintptr)(unsafe.Pointer(azArg + uintptr((i+1))*4))
|
|
} else {
|
|
zReturn = *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4))
|
|
}
|
|
j = ((i + 1) + (libc.Bool32(hasArg != 0)))
|
|
for j < nArg {
|
|
*(*uintptr)(unsafe.Pointer(azArg + uintptr(libc.PostIncInt32(&i, 1))*4)) = *(*uintptr)(unsafe.Pointer(azArg + uintptr(libc.PostIncInt32(&j, 1))*4))
|
|
}
|
|
*(*int32)(unsafe.Pointer(pnArg)) = i
|
|
return zReturn
|
|
}
|
|
}
|
|
return zReturn
|
|
}
|
|
|
|
// Print a usage message for the program and exit
|
|
func usage(tls *libc.TLS, argv0 uintptr) { /* mptest.c:1241:13: */
|
|
bp := tls.Alloc(16)
|
|
defer tls.Free(16)
|
|
|
|
var i int32
|
|
var zTail uintptr = argv0
|
|
for i = 0; *(*int8)(unsafe.Pointer(argv0 + uintptr(i))) != 0; i++ {
|
|
if ((int32(*(*int8)(unsafe.Pointer(argv0 + uintptr(i))))) == '/') || ((int32(*(*int8)(unsafe.Pointer(argv0 + uintptr(i))))) == '\\') {
|
|
zTail = ((argv0 + uintptr(i)) + uintptr(1))
|
|
}
|
|
}
|
|
libc.Xfprintf(tls, libc.X__acrt_iob_func(tls, uint32(2)), ts+1682 /* "Usage: %s DATABA..." */, libc.VaList(bp, zTail))
|
|
libc.Xfprintf(tls, libc.X__acrt_iob_func(tls, uint32(2)),
|
|
|
|
ts+1721 /* "Options:\n --er..." */, 0)
|
|
libc.Xexit(tls, 1)
|
|
}
|
|
|
|
// Report on unrecognized arguments
|
|
func unrecognizedArguments(tls *libc.TLS, argv0 uintptr, nArg int32, azArg uintptr) { /* mptest.c:1265:13: */
|
|
bp := tls.Alloc(32)
|
|
defer tls.Free(32)
|
|
|
|
var i int32
|
|
libc.Xfprintf(tls, libc.X__acrt_iob_func(tls, uint32(2)), ts+2293 /* "%s: unrecognized..." */, libc.VaList(bp, argv0))
|
|
for i = 0; i < nArg; i++ {
|
|
libc.Xfprintf(tls, libc.X__acrt_iob_func(tls, uint32(2)), ts+2321 /* " %s" */, libc.VaList(bp+16, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4))))
|
|
}
|
|
libc.Xfprintf(tls, libc.X__acrt_iob_func(tls, uint32(2)), ts+2325 /* "\n" */, 0)
|
|
libc.Xexit(tls, 1)
|
|
}
|
|
|
|
func main1(tls *libc.TLS, argc int32, argv uintptr) int32 { /* mptest.c:1279:18: */
|
|
bp := tls.Alloc(416)
|
|
defer tls.Free(416)
|
|
|
|
var zClient uintptr
|
|
var iClient int32
|
|
// var n int32 at bp+400, 4
|
|
|
|
var i int32
|
|
var openFlags int32 = 0x00000002
|
|
var rc int32
|
|
// var zScript uintptr at bp+404, 4
|
|
|
|
// var taskId int32 at bp+408, 4
|
|
|
|
var zTrace uintptr
|
|
var zCOption uintptr
|
|
var zJMode uintptr
|
|
var zNRep uintptr
|
|
var nRep int32 = 1
|
|
var iRep int32
|
|
var iTmout int32 = 0 // Default: no timeout
|
|
var zTmout uintptr
|
|
|
|
g.argv0 = *(*uintptr)(unsafe.Pointer(argv + uintptr(0)*4))
|
|
g.iTrace = 1
|
|
if argc < 2 {
|
|
usage(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(0)*4)))
|
|
}
|
|
g.zDbFile = *(*uintptr)(unsafe.Pointer(argv + uintptr(1)*4))
|
|
if strglob(tls, ts+2327 /* "*.test" */, g.zDbFile) != 0 {
|
|
usage(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(0)*4)))
|
|
}
|
|
if libc.Xstrcmp(tls, sqlite3.Xsqlite3_sourceid(tls), ts+2334 /* "2020-08-14 13:23..." */) != 0 {
|
|
libc.Xfprintf(tls, libc.X__acrt_iob_func(tls, uint32(2)),
|
|
|
|
ts+2419, /* "SQLite library a..." */
|
|
libc.VaList(bp, sqlite3.Xsqlite3_sourceid(tls), ts+2334 /* "2020-08-14 13:23..." */))
|
|
libc.Xexit(tls, 1)
|
|
}
|
|
*(*int32)(unsafe.Pointer(bp + 400 /* n */)) = (argc - 2)
|
|
sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([32]int8{})), uintptr(unsafe.Pointer(&g))+32 /* &.zName */, ts+2479 /* "%05d.mptest" */, libc.VaList(bp+24, int32(libc.XGetCurrentProcessId(tls))))
|
|
zJMode = findOption(tls, (argv + uintptr(2)*4), bp+400 /* &n */, ts+2491 /* "journalmode" */, 1)
|
|
zNRep = findOption(tls, (argv + uintptr(2)*4), bp+400 /* &n */, ts+2503 /* "repeat" */, 1)
|
|
if zNRep != 0 {
|
|
nRep = libc.Xatoi(tls, zNRep)
|
|
}
|
|
if nRep < 1 {
|
|
nRep = 1
|
|
}
|
|
g.zVfs = findOption(tls, (argv + uintptr(2)*4), bp+400 /* &n */, ts+2510 /* "vfs" */, 1)
|
|
zClient = findOption(tls, (argv + uintptr(2)*4), bp+400 /* &n */, ts+2514 /* "client" */, 1)
|
|
g.zErrLog = findOption(tls, (argv + uintptr(2)*4), bp+400 /* &n */, ts+2521 /* "errlog" */, 1)
|
|
g.zLog = findOption(tls, (argv + uintptr(2)*4), bp+400 /* &n */, ts+2528 /* "log" */, 1)
|
|
zTrace = findOption(tls, (argv + uintptr(2)*4), bp+400 /* &n */, ts+2532 /* "trace" */, 1)
|
|
if zTrace != 0 {
|
|
g.iTrace = libc.Xatoi(tls, zTrace)
|
|
}
|
|
if findOption(tls, (argv+uintptr(2)*4), bp+400 /* &n */, ts+2538 /* "quiet" */, 0) != uintptr(0) {
|
|
g.iTrace = 0
|
|
}
|
|
zTmout = findOption(tls, (argv + uintptr(2)*4), bp+400 /* &n */, ts+2544 /* "timeout" */, 1)
|
|
if zTmout != 0 {
|
|
iTmout = libc.Xatoi(tls, zTmout)
|
|
}
|
|
g.bSqlTrace = (libc.Bool32(findOption(tls, (argv+uintptr(2)*4), bp+400 /* &n */, ts+2552 /* "sqltrace" */, 0) != uintptr(0)))
|
|
g.bSync = (libc.Bool32(findOption(tls, (argv+uintptr(2)*4), bp+400 /* &n */, ts+2561 /* "sync" */, 0) != uintptr(0)))
|
|
if g.zErrLog != 0 {
|
|
g.pErrLog = libc.Xfopen(tls, g.zErrLog, ts+2566 /* "a" */)
|
|
} else {
|
|
g.pErrLog = libc.X__acrt_iob_func(tls, uint32(2))
|
|
}
|
|
if g.zLog != 0 {
|
|
g.pLog = libc.Xfopen(tls, g.zLog, ts+2566 /* "a" */)
|
|
} else {
|
|
g.pLog = libc.X__acrt_iob_func(tls, uint32(1))
|
|
}
|
|
|
|
sqlite3.Xsqlite3_config(tls, 16, libc.VaList(bp+40, *(*uintptr)(unsafe.Pointer(&struct {
|
|
f func(*libc.TLS, uintptr, int32, uintptr)
|
|
}{sqlErrorCallback})), 0))
|
|
if zClient != 0 {
|
|
iClient = libc.Xatoi(tls, zClient)
|
|
if iClient < 1 {
|
|
fatalError(tls, ts+2568 /* "illegal client n..." */, libc.VaList(bp+64, iClient))
|
|
}
|
|
sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([32]int8{})), uintptr(unsafe.Pointer(&g))+32 /* &.zName */, ts+2595, /* "%05d.client%02d" */
|
|
libc.VaList(bp+80, int32(libc.XGetCurrentProcessId(tls)), iClient))
|
|
} else {
|
|
var nTry int32 = 0
|
|
if g.iTrace > 0 {
|
|
libc.Xprintf(tls, ts+2611 /* "BEGIN: %s" */, libc.VaList(bp+104, *(*uintptr)(unsafe.Pointer(argv + uintptr(0)*4))))
|
|
for i = 1; i < argc; i++ {
|
|
libc.Xprintf(tls, ts+2321 /* " %s" */, libc.VaList(bp+120, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*4))))
|
|
}
|
|
libc.Xprintf(tls, ts+2325 /* "\n" */, 0)
|
|
libc.Xprintf(tls, ts+2621 /* "With SQLite 3.33..." */, 0)
|
|
for i = 0; (libc.AssignUintptr(&zCOption, sqlite3.Xsqlite3_compileoption_get(tls, i))) != uintptr(0); i++ {
|
|
libc.Xprintf(tls, ts+2726 /* "-DSQLITE_%s\n" */, libc.VaList(bp+136, zCOption))
|
|
}
|
|
libc.Xfflush(tls, libc.X__acrt_iob_func(tls, uint32(1)))
|
|
}
|
|
iClient = 0
|
|
for ok := true; ok; ok = (((rc != 0) && ((libc.PreIncInt32(&nTry, 1)) < 60)) && (sqlite3.Xsqlite3_sleep(tls, 1000) > 0)) {
|
|
if (nTry % 5) == 4 {
|
|
libc.Xprintf(tls, ts+2739, /* "... %strying to ..." */
|
|
libc.VaList(bp+152, func() uintptr {
|
|
if nTry > 5 {
|
|
return ts + 2768 /* "still " */
|
|
}
|
|
return ts + 1103 /* "" */
|
|
}(), g.zDbFile))
|
|
}
|
|
rc = libc.Xunlink(tls, g.zDbFile)
|
|
if (rc != 0) && ((*(*int32)(unsafe.Pointer(libc.X_errno(tls)))) == 2) {
|
|
rc = 0
|
|
}
|
|
}
|
|
if rc != 0 {
|
|
fatalError(tls, ts+2775, /* "unable to unlink..." */
|
|
libc.VaList(bp+176, g.zDbFile, nTry))
|
|
}
|
|
openFlags = openFlags | (0x00000004)
|
|
}
|
|
rc = sqlite3.Xsqlite3_open_v2(tls, g.zDbFile, (uintptr(unsafe.Pointer(&g)) + 12 /* &.db */), openFlags, g.zVfs)
|
|
if rc != 0 {
|
|
fatalError(tls, ts+2816 /* "cannot open [%s]" */, libc.VaList(bp+200, g.zDbFile))
|
|
}
|
|
if iTmout > 0 {
|
|
sqlite3.Xsqlite3_busy_timeout(tls, g.db, iTmout)
|
|
}
|
|
|
|
if zJMode != 0 {
|
|
if (sqlite3.Xsqlite3_stricmp(tls, zJMode, ts+2833 /* "persist" */) == 0) ||
|
|
(sqlite3.Xsqlite3_stricmp(tls, zJMode, ts+2841 /* "truncate" */) == 0) {
|
|
libc.Xprintf(tls, ts+2850 /* "Changing journal..." */, libc.VaList(bp+216, zJMode))
|
|
zJMode = ts + 2890 /* "DELETE" */
|
|
}
|
|
runSql(tls, ts+2897 /* "PRAGMA journal_m..." */, libc.VaList(bp+232, zJMode))
|
|
}
|
|
if !(g.bSync != 0) {
|
|
trySql(tls, ts+2921 /* "PRAGMA synchrono..." */, 0)
|
|
}
|
|
sqlite3.Xsqlite3_enable_load_extension(tls, g.db, 1)
|
|
sqlite3.Xsqlite3_busy_handler(tls, g.db, *(*uintptr)(unsafe.Pointer(&struct {
|
|
f func(*libc.TLS, uintptr, int32) int32
|
|
}{busyHandler})), uintptr(0))
|
|
sqlite3.Xsqlite3_create_function(tls, g.db, ts+2944 /* "vfsname" */, 0, 1, uintptr(0),
|
|
*(*uintptr)(unsafe.Pointer(&struct {
|
|
f func(*libc.TLS, uintptr, int32, uintptr)
|
|
}{vfsNameFunc})), uintptr(0), uintptr(0))
|
|
sqlite3.Xsqlite3_create_function(tls, g.db, ts+2952 /* "eval" */, 1, 1, uintptr(0),
|
|
*(*uintptr)(unsafe.Pointer(&struct {
|
|
f func(*libc.TLS, uintptr, int32, uintptr)
|
|
}{evalFunc})), uintptr(0), uintptr(0))
|
|
g.iTimeout = 10000
|
|
if g.bSqlTrace != 0 {
|
|
sqlite3.Xsqlite3_trace(tls, g.db, *(*uintptr)(unsafe.Pointer(&struct {
|
|
f func(*libc.TLS, uintptr, uintptr)
|
|
}{sqlTraceCallback})), uintptr(0))
|
|
}
|
|
if iClient > 0 {
|
|
if *(*int32)(unsafe.Pointer(bp + 400 /* n */)) > 0 {
|
|
unrecognizedArguments(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(0)*4)), *(*int32)(unsafe.Pointer(bp + 400 /* n */)), (argv + uintptr(2)*4))
|
|
}
|
|
if g.iTrace != 0 {
|
|
logMessage(tls, ts+2957 /* "start-client" */, 0)
|
|
}
|
|
for 1 != 0 {
|
|
*(*uintptr)(unsafe.Pointer(bp + 412 /* zTaskName */)) = uintptr(0)
|
|
rc = startScript(tls, iClient, bp+404 /* &zScript */, bp+408 /* &taskId */, bp+412 /* &zTaskName */)
|
|
if rc == 101 {
|
|
break
|
|
}
|
|
if g.iTrace != 0 {
|
|
logMessage(tls, ts+2970 /* "begin %s (%d)" */, libc.VaList(bp+248, *(*uintptr)(unsafe.Pointer(bp + 412 /* zTaskName */)), *(*int32)(unsafe.Pointer(bp + 408 /* taskId */))))
|
|
}
|
|
runScript(tls, iClient, *(*int32)(unsafe.Pointer(bp + 408 /* taskId */)), *(*uintptr)(unsafe.Pointer(bp + 404 /* zScript */)), *(*uintptr)(unsafe.Pointer(bp + 412 /* zTaskName */)))
|
|
if g.iTrace != 0 {
|
|
logMessage(tls, ts+2984 /* "end %s (%d)" */, libc.VaList(bp+272, *(*uintptr)(unsafe.Pointer(bp + 412 /* zTaskName */)), *(*int32)(unsafe.Pointer(bp + 408 /* taskId */))))
|
|
}
|
|
finishScript(tls, iClient, *(*int32)(unsafe.Pointer(bp + 408 /* taskId */)), 0)
|
|
sqlite3.Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 412 /* zTaskName */)))
|
|
sqlite3.Xsqlite3_sleep(tls, 10)
|
|
}
|
|
if g.iTrace != 0 {
|
|
logMessage(tls, ts+2996 /* "end-client" */, 0)
|
|
}
|
|
} else {
|
|
var pStmt uintptr
|
|
var iTimeout int32
|
|
if *(*int32)(unsafe.Pointer(bp + 400 /* n */)) == 0 {
|
|
fatalError(tls, ts+3007 /* "missing script f..." */, 0)
|
|
}
|
|
if *(*int32)(unsafe.Pointer(bp + 400 /* n */)) > 1 {
|
|
unrecognizedArguments(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(0)*4)), *(*int32)(unsafe.Pointer(bp + 400 /* n */)), (argv + uintptr(2)*4))
|
|
}
|
|
runSql(tls,
|
|
|
|
ts+3031 /* "DROP TABLE IF EX..." */, 0)
|
|
*(*uintptr)(unsafe.Pointer(bp + 404 /* zScript */)) = readFile(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(2)*4)))
|
|
for iRep = 1; iRep <= nRep; iRep++ {
|
|
if g.iTrace != 0 {
|
|
logMessage(tls, ts+3467 /* "begin script [%s..." */, libc.VaList(bp+296, *(*uintptr)(unsafe.Pointer(argv + uintptr(2)*4)), iRep))
|
|
}
|
|
runScript(tls, 0, 0, *(*uintptr)(unsafe.Pointer(bp + 404 /* zScript */)), *(*uintptr)(unsafe.Pointer(argv + uintptr(2)*4)))
|
|
if g.iTrace != 0 {
|
|
logMessage(tls, ts+3495 /* "end script [%s] ..." */, libc.VaList(bp+320, *(*uintptr)(unsafe.Pointer(argv + uintptr(2)*4)), iRep))
|
|
}
|
|
}
|
|
sqlite3.Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 404 /* zScript */)))
|
|
waitForClient(tls, 0, 2000, ts+3521 /* "during shutdown...." */)
|
|
trySql(tls, ts+3541 /* "UPDATE client SE..." */, 0)
|
|
sqlite3.Xsqlite3_sleep(tls, 10)
|
|
g.iTimeout = 0
|
|
iTimeout = 1000
|
|
for (((libc.AssignInt32(&rc, trySql(tls, ts+3570 /* "SELECT 1 FROM cl..." */, 0))) == 5) ||
|
|
(rc == 100)) && (iTimeout > 0) {
|
|
sqlite3.Xsqlite3_sleep(tls, 10)
|
|
iTimeout = iTimeout - (10)
|
|
}
|
|
sqlite3.Xsqlite3_sleep(tls, 100)
|
|
pStmt = prepareSql(tls, ts+3591 /* "SELECT nError, n..." */, 0)
|
|
iTimeout = 1000
|
|
for ((libc.AssignInt32(&rc, sqlite3.Xsqlite3_step(tls, pStmt))) == 5) && (iTimeout > 0) {
|
|
sqlite3.Xsqlite3_sleep(tls, 10)
|
|
iTimeout = iTimeout - (10)
|
|
}
|
|
if rc == 100 {
|
|
*(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 80 /* &.nError */)) += (sqlite3.Xsqlite3_column_int(tls, pStmt, 0))
|
|
*(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 84 /* &.nTest */)) += (sqlite3.Xsqlite3_column_int(tls, pStmt, 1))
|
|
}
|
|
sqlite3.Xsqlite3_finalize(tls, pStmt)
|
|
}
|
|
sqlite3.Xsqlite3_close(tls, g.db)
|
|
maybeClose(tls, g.pLog)
|
|
maybeClose(tls, g.pErrLog)
|
|
if iClient == 0 {
|
|
libc.Xprintf(tls, ts+3626 /* "Summary: %d erro..." */, libc.VaList(bp+344, g.nError, g.nTest))
|
|
libc.Xprintf(tls, ts+3662 /* "END: %s" */, libc.VaList(bp+368, *(*uintptr)(unsafe.Pointer(argv + uintptr(0)*4))))
|
|
for i = 1; i < argc; i++ {
|
|
libc.Xprintf(tls, ts+2321 /* " %s" */, libc.VaList(bp+384, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*4))))
|
|
}
|
|
libc.Xprintf(tls, ts+2325 /* "\n" */, 0)
|
|
}
|
|
return (libc.Bool32(g.nError > 0))
|
|
}
|
|
|
|
var ts1 = "%s%.*s\n\x00%s:ERROR: \x00%s:FATAL: \x00UPDATE client SET wantHalt=1;\x00%s: \x00main\x00timeout after %dms\x00[%.*s]\x00(info) %s\x00(errcode=%d) %s\x00%s\n%s\n\x00out of memory\x00 \x00nil\x00'\x00error(%d)\x00BEGIN IMMEDIATE\x00in startScript: %s\x00UPDATE counters SET nError=nError+%d, nTest=nTest+%d\x00SELECT 1 FROM client WHERE id=%d AND wantHalt\x00DELETE FROM client WHERE id=%d\x00COMMIT TRANSACTION;\x00SELECT script, id, name FROM task WHERE client=%d AND starttime IS NULL ORDER BY id LIMIT 1\x00%s\x00UPDATE task SET starttime=strftime('%%Y-%%m-%%d %%H:%%M:%%f','now') WHERE id=%d;\x00Waited over 30 seconds with no work. Giving up.\x00DELETE FROM client WHERE id=%d; COMMIT;\x00COMMIT\x00UPDATE task SET endtime=strftime('%%Y-%%m-%%d %%H:%%M:%%f','now') WHERE id=%d;\x00INSERT OR IGNORE INTO client VALUES(%d,0)\x00%s \"%s\" --client %d --trace %d\x00%z --sqltrace\x00%z --sync\x00%z --vfs \"%s\"\x00system('%q')\x00CreateProcessA() fails with error code %lu\x00rb\x00cannot open \"%s\" for reading\x00--end\x00--endif\x00--else\x00--if\x00SELECT 1 FROM task WHERE client=%d AND client IN (SELECT id FROM client) AND endtime IS NULL\x00SELECT 1 FROM task WHERE client IN (SELECT id FROM client) AND endtime IS NULL\x00\x00%stimeout waiting for client %d\x00%stimeout waiting for all clients\x00on\x00yes\x00off\x00no\x00unknown boolean: [%s]\x00%.*s\x00sleep\x00exit\x00testcase\x00finish\x00reset\x00match\x00line %d of %s:\nExpected [%.*s]\n Got [%s]\x00glob\x00notglob\x00line %d of %s:\nExpected [%s]\n Got [%s]\x00output\x00source\x00%.*s/%s\x00begin script [%s]\n\x00end script [%s]\n\x00print\x00if\x00SELECT %.*s\x00else\x00endif\x00start\x00wait\x00line %d of %s\n\x00task\x00line %d of %s: bad client number: %d\x00%s:%d\x00INSERT INTO task(client,script,name) VALUES(%d,'%q',%Q)\x00breakpoint\x00show-sql-errors\x00line %d of %s: unknown command --%s\x00command-line option \"--%s\" requires an argument\x00Usage: %s DATABASE ?OPTIONS? ?SCRIPT?\n\x00Options:\n --errlog FILENAME Write errors to FILENAME\n --journalmode MODE Use MODE as the journal_mode\n --log FILENAME Log messages to FILENAME\n --quiet Suppress unnecessary output\n --vfs NAME Use NAME as the VFS\n --repeat N Repeat the test N times\n --sqltrace Enable SQL tracing\n --sync Enable synchronous disk writes\n --timeout MILLISEC Busy timeout is MILLISEC\n --trace BOOLEAN Enable or disable tracing\n\x00%s: unrecognized arguments:\x00 %s\x00\n\x00*.test\x002020-08-14 13:23:32 fca8dc8b578f215a969cd899336378966156154710873e68b3d9ac5881b0ff3f\x00SQLite library and header mismatch\nLibrary: %s\nHeader: %s\n\x00%05d.mptest\x00journalmode\x00repeat\x00vfs\x00client\x00errlog\x00log\x00trace\x00quiet\x00timeout\x00sqltrace\x00sync\x00a\x00illegal client number: %d\n\x00%05d.client%02d\x00BEGIN: %s\x00With SQLite 3.33.0 2020-08-14 13:23:32 fca8dc8b578f215a969cd899336378966156154710873e68b3d9ac5881b0ff3f\n\x00-DSQLITE_%s\n\x00... %strying to unlink '%s'\n\x00still \x00unable to unlink '%s' after %d attempts\n\x00cannot open [%s]\x00persist\x00truncate\x00Changing journal mode to DELETE from %s\x00DELETE\x00PRAGMA journal_mode=%Q;\x00PRAGMA synchronous=OFF\x00vfsname\x00eval\x00start-client\x00begin %s (%d)\x00end %s (%d)\x00end-client\x00missing script filename\x00DROP TABLE IF EXISTS task;\nDROP TABLE IF EXISTS counters;\nDROP TABLE IF EXISTS client;\nCREATE TABLE task(\n id INTEGER PRIMARY KEY,\n name TEXT,\n client INTEGER,\n starttime DATE,\n endtime DATE,\n script TEXT\n);CREATE INDEX task_i1 ON task(client, starttime);\nCREATE INDEX task_i2 ON task(client, endtime);\nCREATE TABLE counters(nError,nTest);\nINSERT INTO counters VALUES(0,0);\nCREATE TABLE client(id INTEGER PRIMARY KEY, wantHalt);\n\x00begin script [%s] cycle %d\n\x00end script [%s] cycle %d\n\x00during shutdown...\n\x00UPDATE client SET wantHalt=1\x00SELECT 1 FROM client\x00SELECT nError, nTest FROM counters\x00Summary: %d errors out of %d tests\n\x00END: %s\x00"
|
|
var ts = (*reflect.StringHeader)(unsafe.Pointer(&ts1)).Data
|