Module:    Win32-Kernel
Copyright:    Original Code is Copyright (c) 1995-2004 Functional Objects, Inc.
              All rights reserved.
License:      See License.txt in this distribution for details.
Warranty:     Distributed WITHOUT WARRANTY OF ANY KIND

// This file is automatically generated from "winnt.h"; do not edit.


// Adapted from:
/*++ BUILD Version: 0094     Increment this if a change has global effects


Module Name:

    winnt.h

Abstract:

    This module defines the 32-Bit Windows types and constants that are
    defined by NT, but exposed through the Win32 API.

Revision History:

--*/
define inline-only constant $STATUS-WAIT-0              = #x00000000;
define inline-only constant $STATUS-ABANDONED-WAIT-0    = #x00000080;
define inline-only constant $STATUS-USER-APC            = #x000000C0;
define inline-only constant $STATUS-TIMEOUT             = #x00000102;
define inline-only constant $STATUS-PENDING             = #x00000103;
define inline-only constant $STATUS-SEGMENT-NOTIFICATION =
	as(<machine-word>, #x40000005);
define inline-only constant $STATUS-GUARD-PAGE-VIOLATION =
	as(<machine-word>, #x80000001);
define inline-only constant $STATUS-DATATYPE-MISALIGNMENT =
	as(<machine-word>, #x80000002);
define inline-only constant $STATUS-BREAKPOINT          =
	as(<machine-word>, #x80000003);
define inline-only constant $STATUS-SINGLE-STEP         =
	as(<machine-word>, #x80000004);
define inline-only constant $STATUS-ACCESS-VIOLATION    =
	as(<machine-word>, #xC0000005);
define inline-only constant $STATUS-IN-PAGE-ERROR       =
	as(<machine-word>, #xC0000006);
define inline-only constant $STATUS-INVALID-HANDLE      =
	as(<machine-word>, #xC0000008);
define inline-only constant $STATUS-NO-MEMORY           =
	as(<machine-word>, #xC0000017);
define inline-only constant $STATUS-ILLEGAL-INSTRUCTION =
	as(<machine-word>, #xC000001D);
define inline-only constant $STATUS-NONCONTINUABLE-EXCEPTION =
	as(<machine-word>, #xC0000025);
define inline-only constant $STATUS-INVALID-DISPOSITION =
	as(<machine-word>, #xC0000026);
define inline-only constant $STATUS-ARRAY-BOUNDS-EXCEEDED =
	as(<machine-word>, #xC000008C);
define inline-only constant $STATUS-FLOAT-DENORMAL-OPERAND =
	as(<machine-word>, #xC000008D);
define inline-only constant $STATUS-FLOAT-DIVIDE-BY-ZERO =
	as(<machine-word>, #xC000008E);
define inline-only constant $STATUS-FLOAT-INEXACT-RESULT =
	as(<machine-word>, #xC000008F);
define inline-only constant $STATUS-FLOAT-INVALID-OPERATION =
	as(<machine-word>, #xC0000090);
define inline-only constant $STATUS-FLOAT-OVERFLOW      =
	as(<machine-word>, #xC0000091);
define inline-only constant $STATUS-FLOAT-STACK-CHECK   =
	as(<machine-word>, #xC0000092);
define inline-only constant $STATUS-FLOAT-UNDERFLOW     =
	as(<machine-word>, #xC0000093);
define inline-only constant $STATUS-INTEGER-DIVIDE-BY-ZERO =
	as(<machine-word>, #xC0000094);
define inline-only constant $STATUS-INTEGER-OVERFLOW    =
	as(<machine-word>, #xC0000095);
define inline-only constant $STATUS-PRIVILEGED-INSTRUCTION =
	as(<machine-word>, #xC0000096);
define inline-only constant $STATUS-STACK-OVERFLOW      =
	as(<machine-word>, #xC00000FD);
define inline-only constant $STATUS-CONTROL-C-EXIT      =
	as(<machine-word>, #xC000013A);
define inline-only constant $READ-CONTROL               = #x00020000;
define inline-only constant $SYNCHRONIZE                = #x00100000;
define inline-only constant $STANDARD-RIGHTS-REQUIRED   = #x000F0000;
define inline-only constant $STANDARD-RIGHTS-READ       =
	$READ-CONTROL;
define inline-only constant $STANDARD-RIGHTS-WRITE      =
	$READ-CONTROL;
define inline-only constant $STANDARD-RIGHTS-EXECUTE    =
	$READ-CONTROL;
define inline-only constant $STANDARD-RIGHTS-ALL        = #x001F0000;
define inline-only constant $GENERIC-READ               =
	as(<machine-word>, #x80000000);
define inline-only constant $GENERIC-WRITE              =
	as(<machine-word>, #x40000000);
define inline-only constant $MUTANT-QUERY-STATE         = #x0001;
define inline-only constant $MUTANT-ALL-ACCESS          =
	logior($STANDARD-RIGHTS-REQUIRED, $SYNCHRONIZE, $MUTANT-QUERY-STATE);
define inline-only constant $SECTION-QUERY              = #x0001;
define inline-only constant $SECTION-MAP-WRITE          = #x0002;
define inline-only constant $SECTION-MAP-READ           = #x0004;
define inline-only constant $SECTION-MAP-EXECUTE        = #x0008;
define inline-only constant $SECTION-EXTEND-SIZE        = #x0010;
define inline-only constant $SECTION-ALL-ACCESS         =
	logior($STANDARD-RIGHTS-REQUIRED, $SECTION-QUERY, $SECTION-MAP-WRITE, $SECTION-MAP-READ, $SECTION-MAP-EXECUTE, $SECTION-EXTEND-SIZE);
define inline-only constant $FILE-READ-DATA             = #x0001;
define inline-only constant $FILE-LIST-DIRECTORY        = #x0001;
define inline-only constant $FILE-WRITE-DATA            = #x0002;
define inline-only constant $FILE-ADD-FILE              = #x0002;
define inline-only constant $FILE-APPEND-DATA           = #x0004;
define inline-only constant $FILE-ADD-SUBDIRECTORY      = #x0004;
define inline-only constant $FILE-CREATE-PIPE-INSTANCE  = #x0004;
define inline-only constant $FILE-READ-EA               = #x0008;
define inline-only constant $FILE-WRITE-EA              = #x0010;
define inline-only constant $FILE-EXECUTE               = #x0020;
define inline-only constant $FILE-TRAVERSE              = #x0020;
define inline-only constant $FILE-DELETE-CHILD          = #x0040;
define inline-only constant $FILE-READ-ATTRIBUTES       = #x0080;
define inline-only constant $FILE-WRITE-ATTRIBUTES      = #x0100;
define inline-only constant $FILE-ALL-ACCESS            =
	logior($STANDARD-RIGHTS-REQUIRED, $SYNCHRONIZE, #x1FF);
define inline-only constant $FILE-GENERIC-READ          =
	logior($STANDARD-RIGHTS-READ, $FILE-READ-DATA, $FILE-READ-ATTRIBUTES, $FILE-READ-EA, $SYNCHRONIZE);
define inline-only constant $FILE-GENERIC-WRITE         =
	logior($STANDARD-RIGHTS-WRITE, $FILE-WRITE-DATA, $FILE-WRITE-ATTRIBUTES, $FILE-WRITE-EA, $FILE-APPEND-DATA, $SYNCHRONIZE);
define inline-only constant $FILE-GENERIC-EXECUTE       =
	logior($STANDARD-RIGHTS-EXECUTE, $FILE-READ-ATTRIBUTES, $FILE-EXECUTE, $SYNCHRONIZE);
define inline-only constant $FILE-SHARE-READ            = #x00000001;
define inline-only constant $FILE-SHARE-WRITE           = #x00000002;
define inline-only constant $FILE-SHARE-DELETE          = #x00000004;
define inline-only constant $FILE-ATTRIBUTE-READONLY    = #x00000001;
define inline-only constant $FILE-ATTRIBUTE-HIDDEN      = #x00000002;
define inline-only constant $FILE-ATTRIBUTE-SYSTEM      = #x00000004;
define inline-only constant $FILE-ATTRIBUTE-DIRECTORY   = #x00000010;
define inline-only constant $FILE-ATTRIBUTE-ARCHIVE     = #x00000020;
define inline-only constant $FILE-ATTRIBUTE-ENCRYPTED   = #x00000040;
define inline-only constant $FILE-ATTRIBUTE-NORMAL      = #x00000080;
define inline-only constant $FILE-ATTRIBUTE-TEMPORARY   = #x00000100;
define inline-only constant $FILE-ATTRIBUTE-SPARSE-FILE = #x00000200;
define inline-only constant $FILE-ATTRIBUTE-REPARSE-POINT =
	#x00000400;
define inline-only constant $FILE-ATTRIBUTE-COMPRESSED  = #x00000800;
define inline-only constant $FILE-ATTRIBUTE-OFFLINE     = #x00001000;
define inline-only constant $FILE-NOTIFY-CHANGE-FILE-NAME =
	#x00000001;
define inline-only constant $FILE-NOTIFY-CHANGE-DIR-NAME =
	#x00000002;
define inline-only constant $FILE-NOTIFY-CHANGE-ATTRIBUTES =
	#x00000004;
define inline-only constant $FILE-NOTIFY-CHANGE-SIZE    = #x00000008;
define inline-only constant $FILE-NOTIFY-CHANGE-LAST-WRITE =
	#x00000010;
define inline-only constant $FILE-NOTIFY-CHANGE-LAST-ACCESS =
	#x00000020;
define inline-only constant $FILE-NOTIFY-CHANGE-CREATION =
	#x00000040;
define inline-only constant $FILE-NOTIFY-CHANGE-SECURITY =
	#x00000100;
define inline-only constant $FILE-ACTION-ADDED          = #x00000001;
define inline-only constant $FILE-ACTION-REMOVED        = #x00000002;
define inline-only constant $FILE-ACTION-MODIFIED       = #x00000003;
define inline-only constant $FILE-ACTION-RENAMED-OLD-NAME =
	#x00000004;
define inline-only constant $FILE-ACTION-RENAMED-NEW-NAME =
	#x00000005;
define inline-only constant $FILE-CASE-SENSITIVE-SEARCH = #x00000001;
define inline-only constant $FILE-CASE-PRESERVED-NAMES  = #x00000002;
define inline-only constant $FILE-UNICODE-ON-DISK       = #x00000004;
define inline-only constant $FILE-PERSISTENT-ACLS       = #x00000008;
define inline-only constant $FILE-FILE-COMPRESSION      = #x00000010;
define inline-only constant $FILE-VOLUME-QUOTAS         = #x00000020;
define inline-only constant $FILE-SUPPORTS-SPARSE-FILES = #x00000040;
define inline-only constant $FILE-SUPPORTS-REPARSE-POINTS =
	#x00000080;
define inline-only constant $FILE-SUPPORTS-REMOTE-STORAGE =
	#x00000100;
define inline-only constant $FILE-VOLUME-IS-COMPRESSED  = #x00008000;
define inline-only constant $FILE-SUPPORTS-OBJECT-IDS   = #x00010000;
define inline-only constant $FILE-SUPPORTS-ENCRYPTION   = #x00020000;
define inline-only constant $ES-CONTINUOUS              =
	as(<machine-word>, #x80000000);
// enum LATENCY_TIME:
define inline-only constant $LT-DONT-CARE = -1 + 1;
define inline-only constant $LT-LOWEST-LATENCY = $LT-DONT-CARE + 1;


