Hex Artifact Content

Not logged in

Artifact 2d9ec241e2f4195dfa30a74cb3ad7f1407a5c7e9:


0000: 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  /***************
0010: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0020: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0030: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0040: 2a 2a 2a 2a 2a 2a 2a 2a 5c 0a 2a 20 20 20 20 20  ********\.*     
0050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0060: 20 20 20 20 20 20 20 20 20 20 62 61 73 65 74 73            basets
0070: 64 2e 64 20 20 20 20 20 20 20 20 20 20 20 20 20  d.d             
0080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0090: 20 20 2a 0a 2a 20 20 20 20 20 20 20 20 20 20 20    *.*           
00a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00d0: 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 20              *.* 
00e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00f0: 20 20 20 20 20 20 57 69 6e 64 6f 77 73 20 41 50        Windows AP
0100: 49 20 68 65 61 64 65 72 20 6d 6f 64 75 6c 65 20  I header module 
0110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0120: 20 20 20 20 20 20 2a 0a 2a 20 20 20 20 20 20 20        *.*       
0130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0170: 2a 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20  *.*             
0180: 54 72 61 6e 73 6c 61 74 65 64 20 66 72 6f 6d 20  Translated from 
0190: 4d 69 6e 47 57 20 41 50 49 20 66 6f 72 20 4d 53  MinGW API for MS
01a0: 2d 57 69 6e 64 6f 77 73 20 33 2e 31 32 20 20 20  -Windows 3.12   
01b0: 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 20 20 20            *.*   
01c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
01d0: 20 20 20 20 20 20 20 20 62 79 20 53 74 65 77 61          by Stewa
01e0: 72 74 20 47 6f 72 64 6f 6e 20 20 20 20 20 20 20  rt Gordon       
01f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0200: 20 20 20 20 2a 0a 2a 20 20 20 20 20 20 20 20 20      *.*         
0210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0220: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0230: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a                *.
0250: 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  *               
0260: 20 20 20 20 20 20 20 20 50 6c 61 63 65 64 20 69          Placed i
0270: 6e 74 6f 20 70 75 62 6c 69 63 20 64 6f 6d 61 69  nto public domai
0280: 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  n               
0290: 20 20 20 20 20 20 20 20 2a 0a 5c 2a 2a 2a 2a 2a          *.\*****
02a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
02b0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
02c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
02d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
02e0: 2a 2a 2f 0a 6d 6f 64 75 6c 65 20 77 69 6e 33 32  **/.module win32
02f0: 2e 62 61 73 65 74 73 64 3b 0a 0a 2f 2a 09 54 68  .basetsd;../*.Th
0300: 69 73 20 74 65 6d 70 6c 61 74 65 20 69 73 20 75  is template is u
0310: 73 65 64 20 69 6e 20 74 68 65 73 65 20 6d 6f 64  sed in these mod
0320: 75 6c 65 73 20 74 6f 20 64 65 63 6c 61 72 65 20  ules to declare 
0330: 63 6f 6e 73 74 61 6e 74 20 70 6f 69 6e 74 65 72  constant pointer
0340: 20 74 79 70 65 73 2c 0a 20 2a 09 69 6e 20 6f 72   types,. *.in or
0350: 64 65 72 20 74 6f 20 73 75 70 70 6f 72 74 20 62  der to support b
0360: 6f 74 68 20 44 20 31 2e 78 20 61 6e 64 20 32 2e  oth D 1.x and 2.
0370: 78 2e 0a 20 2a 2f 0a 74 65 6d 70 6c 61 74 65 20  x.. */.template 
0380: 43 50 74 72 28 54 29 20 7b 0a 09 76 65 72 73 69  CPtr(T) {..versi
0390: 6f 6e 20 28 44 5f 56 65 72 73 69 6f 6e 32 29 20  on (D_Version2) 
03a0: 7b 0a 09 09 2f 2f 20 6d 75 73 74 20 75 73 65 20  {...// must use 
03b0: 6d 69 78 69 6e 20 73 6f 20 74 68 61 74 20 69 74  mixin so that it
03c0: 20 64 6f 65 73 6e 27 74 20 63 61 75 73 65 20 61   doesn't cause a
03d0: 20 73 79 6e 74 61 78 20 65 72 72 6f 72 20 75 6e   syntax error un
03e0: 64 65 72 20 44 31 0a 09 09 6d 69 78 69 6e 28 22  der D1...mixin("
03f0: 61 6c 69 61 73 20 63 6f 6e 73 74 28 54 29 2a 20  alias const(T)* 
0400: 43 50 74 72 3b 22 29 3b 0a 09 7d 20 65 6c 73 65  CPtr;");..} else
0410: 20 7b 0a 09 09 61 6c 69 61 73 20 54 2a 20 43 50   {...alias T* CP
0420: 74 72 3b 0a 09 7d 0a 7d 0a 0a 2f 2f 20 5b 53 6e  tr;..}.}..// [Sn
0430: 61 6b 45 20 32 30 30 39 2d 30 32 2d 32 33 5d 20  akE 2009-02-23] 
0440: 4d 6f 76 65 64 20 48 41 4e 44 4c 45 20 64 65 66  Moved HANDLE def
0450: 69 6e 69 74 69 6f 6e 20 68 65 72 65 20 66 72 6f  inition here fro
0460: 6d 20 77 69 6e 6e 74 2e 64 20 74 6f 20 61 76 6f  m winnt.d to avo
0470: 69 64 0a 2f 2f 20 27 66 6f 72 77 61 74 64 20 74  id.// 'forwatd t
0480: 65 6d 70 6c 61 74 65 20 72 65 66 65 72 65 6e 63  emplate referenc
0490: 65 27 20 74 6f 20 43 50 74 72 20 66 72 6f 6d 20  e' to CPtr from 
04a0: 77 69 6e 6e 74 2e 64 20 63 61 75 73 65 64 20 62  winnt.d caused b
04b0: 79 20 61 20 63 69 72 63 75 6c 61 72 0a 2f 2f 20  y a circular.// 
04c0: 69 6d 70 6f 72 74 2e 0a 0a 61 6c 69 61 73 20 76  import...alias v
04d0: 6f 69 64 2a 20 48 41 4e 44 4c 45 3b 0a 0a 61 6c  oid* HANDLE;..al
04e0: 69 61 73 20 48 41 4e 44 4c 45 2a 20 50 48 41 4e  ias HANDLE* PHAN
04f0: 44 4c 45 2c 20 4c 50 48 41 4e 44 4c 45 3b 0a 0a  DLE, LPHANDLE;..
0500: 76 65 72 73 69 6f 6e 20 28 57 69 6e 36 34 29 20  version (Win64) 
0510: 7b 0a 09 61 6c 69 61 73 20 6c 6f 6e 67 20 5f 5f  {..alias long __
0520: 69 6e 74 33 32 36 34 3b 0a 09 63 6f 6e 73 74 20  int3264;..const 
0530: 75 6c 6f 6e 67 20 41 44 44 52 45 53 53 5f 54 41  ulong ADDRESS_TA
0540: 47 5f 42 49 54 20 3d 20 30 78 34 30 30 30 30 30  G_BIT = 0x400000
0550: 30 30 30 30 30 3b 0a 0a 09 61 6c 69 61 73 20 6c  00000;...alias l
0560: 6f 6e 67 20 49 4e 54 5f 50 54 52 2c 20 4c 4f 4e  ong INT_PTR, LON
0570: 47 5f 50 54 52 3b 0a 09 61 6c 69 61 73 20 6c 6f  G_PTR;..alias lo
0580: 6e 67 2a 20 50 49 4e 54 5f 50 54 52 2c 20 50 4c  ng* PINT_PTR, PL
0590: 4f 4e 47 5f 50 54 52 3b 0a 09 61 6c 69 61 73 20  ONG_PTR;..alias 
05a0: 75 6c 6f 6e 67 20 55 49 4e 54 5f 50 54 52 2c 20  ulong UINT_PTR, 
05b0: 55 4c 4f 4e 47 5f 50 54 52 2c 20 48 41 4e 44 4c  ULONG_PTR, HANDL
05c0: 45 5f 50 54 52 3b 0a 09 61 6c 69 61 73 20 75 6c  E_PTR;..alias ul
05d0: 6f 6e 67 2a 20 50 55 49 4e 54 5f 50 54 52 2c 20  ong* PUINT_PTR, 
05e0: 50 55 4c 4f 4e 47 5f 50 54 52 3b 0a 09 61 6c 69  PULONG_PTR;..ali
05f0: 61 73 20 69 6e 74 20 48 41 4c 46 5f 50 54 52 3b  as int HALF_PTR;
0600: 0a 09 61 6c 69 61 73 20 69 6e 74 2a 20 50 48 41  ..alias int* PHA
0610: 4c 46 5f 50 54 52 3b 0a 09 61 6c 69 61 73 20 75  LF_PTR;..alias u
0620: 69 6e 74 20 55 48 41 4c 46 5f 50 54 52 3b 0a 09  int UHALF_PTR;..
0630: 61 6c 69 61 73 20 75 69 6e 74 2a 20 50 55 48 41  alias uint* PUHA
0640: 4c 46 5f 50 54 52 3b 0a 0a 09 2f 2a 09 2a 54 6f  LF_PTR;.../*.*To
0650: 2a 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 65 20  * functions are 
0660: 63 6f 6e 64 69 74 69 6f 6e 65 64 20 6f 75 74 20  conditioned out 
0670: 69 6e 20 4d 69 6e 47 57 2e 0a 09 20 2a 09 50 72  in MinGW... *.Pr
0680: 65 73 75 6d 61 62 6c 79 20 74 68 65 79 27 72 65  esumably they're
0690: 20 6e 6f 74 20 77 6f 72 6b 69 6e 67 2f 74 65 73   not working/tes
06a0: 74 65 64 20 79 65 74 2e 20 20 43 6f 6d 6d 65 6e  ted yet.  Commen
06b0: 74 3a 0a 09 09 09 54 4f 44 4f 20 77 68 65 6e 20  t:....TODO when 
06c0: 57 49 4e 36 34 20 69 73 20 68 65 72 65 0a 09 20  WIN64 is here.. 
06d0: 2a 2f 0a 7d 20 65 6c 73 65 20 7b 0a 09 61 6c 69  */.} else {..ali
06e0: 61 73 20 69 6e 74 20 5f 5f 69 6e 74 33 32 36 34  as int __int3264
06f0: 3b 0a 09 63 6f 6e 73 74 20 75 69 6e 74 20 41 44  ;..const uint AD
0700: 44 52 45 53 53 5f 54 41 47 5f 42 49 54 20 3d 20  DRESS_TAG_BIT = 
0710: 30 78 38 30 30 30 30 30 30 30 3b 0a 0a 09 61 6c  0x80000000;...al
0720: 69 61 73 20 69 6e 74 20 49 4e 54 5f 50 54 52 2c  ias int INT_PTR,
0730: 20 4c 4f 4e 47 5f 50 54 52 3b 0a 09 61 6c 69 61   LONG_PTR;..alia
0740: 73 20 69 6e 74 2a 20 50 49 4e 54 5f 50 54 52 2c  s int* PINT_PTR,
0750: 20 50 4c 4f 4e 47 5f 50 54 52 3b 0a 09 61 6c 69   PLONG_PTR;..ali
0760: 61 73 20 75 69 6e 74 20 55 49 4e 54 5f 50 54 52  as uint UINT_PTR
0770: 2c 20 55 4c 4f 4e 47 5f 50 54 52 2c 20 48 41 4e  , ULONG_PTR, HAN
0780: 44 4c 45 5f 50 54 52 3b 0a 09 61 6c 69 61 73 20  DLE_PTR;..alias 
0790: 75 69 6e 74 2a 20 50 55 49 4e 54 5f 50 54 52 2c  uint* PUINT_PTR,
07a0: 20 50 55 4c 4f 4e 47 5f 50 54 52 3b 0a 09 61 6c   PULONG_PTR;..al
07b0: 69 61 73 20 73 68 6f 72 74 20 48 41 4c 46 5f 50  ias short HALF_P
07c0: 54 52 3b 0a 09 61 6c 69 61 73 20 73 68 6f 72 74  TR;..alias short
07d0: 2a 20 50 48 41 4c 46 5f 50 54 52 3b 0a 09 61 6c  * PHALF_PTR;..al
07e0: 69 61 73 20 75 73 68 6f 72 74 20 55 48 41 4c 46  ias ushort UHALF
07f0: 5f 50 54 52 3b 0a 09 61 6c 69 61 73 20 75 73 68  _PTR;..alias ush
0800: 6f 72 74 2a 20 50 55 48 41 4c 46 5f 50 54 52 3b  ort* PUHALF_PTR;
0810: 0a 0a 09 75 69 6e 74 20 48 61 6e 64 6c 65 54 6f  ...uint HandleTo
0820: 55 6c 6f 6e 67 28 48 41 4e 44 4c 45 20 68 29 20  Ulong(HANDLE h) 
0830: 20 20 20 20 20 7b 20 72 65 74 75 72 6e 20 63 61       { return ca
0840: 73 74 28 75 69 6e 74 29 20 68 3b 20 7d 0a 09 69  st(uint) h; }..i
0850: 6e 74 20 48 61 6e 64 6c 65 54 6f 4c 6f 6e 67 28  nt HandleToLong(
0860: 48 41 4e 44 4c 45 20 68 29 20 20 20 20 20 20 20  HANDLE h)       
0870: 20 7b 20 72 65 74 75 72 6e 20 63 61 73 74 28 69   { return cast(i
0880: 6e 74 29 20 68 3b 20 7d 0a 09 48 41 4e 44 4c 45  nt) h; }..HANDLE
0890: 20 4c 6f 6e 67 54 6f 48 61 6e 64 6c 65 28 4c 4f   LongToHandle(LO
08a0: 4e 47 5f 50 54 52 20 68 29 20 20 20 7b 20 72 65  NG_PTR h)   { re
08b0: 74 75 72 6e 20 63 61 73 74 28 48 41 4e 44 4c 45  turn cast(HANDLE
08c0: 29 20 68 3b 20 7d 0a 09 75 69 6e 74 20 50 74 72  ) h; }..uint Ptr
08d0: 54 6f 55 6c 6f 6e 67 28 43 50 74 72 21 28 76 6f  ToUlong(CPtr!(vo
08e0: 69 64 29 20 70 29 20 20 20 20 7b 20 72 65 74 75  id) p)    { retu
08f0: 72 6e 20 63 61 73 74 28 75 69 6e 74 29 20 70 3b  rn cast(uint) p;
0900: 20 7d 0a 09 75 69 6e 74 20 50 74 72 54 6f 55 69   }..uint PtrToUi
0910: 6e 74 28 43 50 74 72 21 28 76 6f 69 64 29 20 70  nt(CPtr!(void) p
0920: 29 20 20 20 20 20 7b 20 72 65 74 75 72 6e 20 63  )     { return c
0930: 61 73 74 28 75 69 6e 74 29 20 70 3b 20 7d 0a 09  ast(uint) p; }..
0940: 69 6e 74 20 50 74 72 54 6f 49 6e 74 28 43 50 74  int PtrToInt(CPt
0950: 72 21 28 76 6f 69 64 29 20 70 29 20 20 20 20 20  r!(void) p)     
0960: 20 20 7b 20 72 65 74 75 72 6e 20 63 61 73 74 28    { return cast(
0970: 69 6e 74 29 20 70 3b 20 7d 0a 09 75 73 68 6f 72  int) p; }..ushor
0980: 74 20 50 74 72 54 6f 55 73 68 6f 72 74 28 43 50  t PtrToUshort(CP
0990: 74 72 21 28 76 6f 69 64 29 20 70 29 20 7b 20 72  tr!(void) p) { r
09a0: 65 74 75 72 6e 20 63 61 73 74 28 75 73 68 6f 72  eturn cast(ushor
09b0: 74 29 20 70 3b 20 7d 0a 09 73 68 6f 72 74 20 50  t) p; }..short P
09c0: 74 72 54 6f 53 68 6f 72 74 28 43 50 74 72 21 28  trToShort(CPtr!(
09d0: 76 6f 69 64 29 20 70 29 20 20 20 7b 20 72 65 74  void) p)   { ret
09e0: 75 72 6e 20 63 61 73 74 28 73 68 6f 72 74 29 20  urn cast(short) 
09f0: 70 3b 20 7d 0a 09 76 6f 69 64 2a 20 49 6e 74 54  p; }..void* IntT
0a00: 6f 50 74 72 28 69 6e 74 20 69 29 20 20 20 20 20  oPtr(int i)     
0a10: 20 20 20 20 20 20 20 20 7b 20 72 65 74 75 72 6e          { return
0a20: 20 63 61 73 74 28 76 6f 69 64 2a 29 20 69 3b 20   cast(void*) i; 
0a30: 7d 0a 09 76 6f 69 64 2a 20 55 49 6e 74 54 6f 50  }..void* UIntToP
0a40: 74 72 28 75 69 6e 74 20 75 69 29 20 20 20 20 20  tr(uint ui)     
0a50: 20 20 20 20 20 7b 20 72 65 74 75 72 6e 20 63 61       { return ca
0a60: 73 74 28 76 6f 69 64 2a 29 20 75 69 3b 20 7d 0a  st(void*) ui; }.
0a70: 09 61 6c 69 61 73 20 49 6e 74 54 6f 50 74 72 20  .alias IntToPtr 
0a80: 4c 6f 6e 67 54 6f 50 74 72 3b 0a 09 61 6c 69 61  LongToPtr;..alia
0a90: 73 20 55 49 6e 74 54 6f 50 74 72 20 55 4c 6f 6e  s UIntToPtr ULon
0aa0: 67 54 6f 50 74 72 3b 0a 7d 0a 0a 61 6c 69 61 73  gToPtr;.}..alias
0ab0: 20 55 49 6e 74 54 6f 50 74 72 20 55 69 6e 74 54   UIntToPtr UintT
0ac0: 6f 50 74 72 2c 20 55 6c 6f 6e 67 54 6f 50 74 72  oPtr, UlongToPtr
0ad0: 3b 0a 0a 65 6e 75 6d 20 3a 20 55 49 4e 54 5f 50  ;..enum : UINT_P
0ae0: 54 52 20 7b 0a 09 4d 41 58 55 49 4e 54 5f 50 54  TR {..MAXUINT_PT
0af0: 52 20 3d 20 55 49 4e 54 5f 50 54 52 2e 6d 61 78  R = UINT_PTR.max
0b00: 0a 7d 0a 0a 65 6e 75 6d 20 3a 20 49 4e 54 5f 50  .}..enum : INT_P
0b10: 54 52 20 7b 0a 09 4d 41 58 49 4e 54 5f 50 54 52  TR {..MAXINT_PTR
0b20: 20 3d 20 49 4e 54 5f 50 54 52 2e 6d 61 78 2c 0a   = INT_PTR.max,.
0b30: 09 4d 49 4e 49 4e 54 5f 50 54 52 20 3d 20 49 4e  .MININT_PTR = IN
0b40: 54 5f 50 54 52 2e 6d 69 6e 0a 7d 0a 0a 65 6e 75  T_PTR.min.}..enu
0b50: 6d 20 3a 20 55 4c 4f 4e 47 5f 50 54 52 20 7b 0a  m : ULONG_PTR {.
0b60: 09 4d 41 58 55 4c 4f 4e 47 5f 50 54 52 20 3d 20  .MAXULONG_PTR = 
0b70: 55 4c 4f 4e 47 5f 50 54 52 2e 6d 61 78 0a 7d 0a  ULONG_PTR.max.}.
0b80: 0a 65 6e 75 6d 20 3a 20 4c 4f 4e 47 5f 50 54 52  .enum : LONG_PTR
0b90: 20 7b 0a 09 4d 41 58 4c 4f 4e 47 5f 50 54 52 20   {..MAXLONG_PTR 
0ba0: 3d 20 4c 4f 4e 47 5f 50 54 52 2e 6d 61 78 2c 0a  = LONG_PTR.max,.
0bb0: 09 4d 49 4e 4c 4f 4e 47 5f 50 54 52 20 3d 20 4c  .MINLONG_PTR = L
0bc0: 4f 4e 47 5f 50 54 52 2e 6d 69 6e 0a 7d 0a 0a 65  ONG_PTR.min.}..e
0bd0: 6e 75 6d 20 3a 20 55 48 41 4c 46 5f 50 54 52 20  num : UHALF_PTR 
0be0: 7b 0a 09 4d 41 58 55 48 41 4c 46 5f 50 54 52 20  {..MAXUHALF_PTR 
0bf0: 3d 20 55 48 41 4c 46 5f 50 54 52 2e 6d 61 78 0a  = UHALF_PTR.max.
0c00: 7d 0a 0a 65 6e 75 6d 20 3a 20 48 41 4c 46 5f 50  }..enum : HALF_P
0c10: 54 52 20 7b 0a 09 4d 41 58 48 41 4c 46 5f 50 54  TR {..MAXHALF_PT
0c20: 52 20 3d 20 48 41 4c 46 5f 50 54 52 2e 6d 61 78  R = HALF_PTR.max
0c30: 2c 0a 09 4d 49 4e 48 41 4c 46 5f 50 54 52 20 3d  ,..MINHALF_PTR =
0c40: 20 48 41 4c 46 5f 50 54 52 2e 6d 69 6e 0a 7d 0a   HALF_PTR.min.}.
0c50: 0a 61 6c 69 61 73 20 62 79 74 65 20 49 4e 54 38  .alias byte INT8
0c60: 3b 0a 61 6c 69 61 73 20 62 79 74 65 2a 20 50 49  ;.alias byte* PI
0c70: 4e 54 38 3b 0a 61 6c 69 61 73 20 75 62 79 74 65  NT8;.alias ubyte
0c80: 20 55 49 4e 54 38 3b 0a 61 6c 69 61 73 20 75 62   UINT8;.alias ub
0c90: 79 74 65 2a 20 50 55 49 4e 54 38 3b 0a 0a 61 6c  yte* PUINT8;..al
0ca0: 69 61 73 20 73 68 6f 72 74 20 49 4e 54 31 36 3b  ias short INT16;
0cb0: 0a 61 6c 69 61 73 20 73 68 6f 72 74 2a 20 50 49  .alias short* PI
0cc0: 4e 54 31 36 3b 0a 61 6c 69 61 73 20 75 73 68 6f  NT16;.alias usho
0cd0: 72 74 20 55 49 4e 54 31 36 3b 0a 61 6c 69 61 73  rt UINT16;.alias
0ce0: 20 75 73 68 6f 72 74 2a 20 50 55 49 4e 54 31 36   ushort* PUINT16
0cf0: 3b 0a 0a 61 6c 69 61 73 20 69 6e 74 20 4c 4f 4e  ;..alias int LON
0d00: 47 33 32 2c 20 49 4e 54 33 32 3b 0a 61 6c 69 61  G32, INT32;.alia
0d10: 73 20 69 6e 74 2a 20 50 4c 4f 4e 47 33 32 2c 20  s int* PLONG32, 
0d20: 50 49 4e 54 33 32 3b 0a 61 6c 69 61 73 20 75 69  PINT32;.alias ui
0d30: 6e 74 20 55 4c 4f 4e 47 33 32 2c 20 44 57 4f 52  nt ULONG32, DWOR
0d40: 44 33 32 2c 20 55 49 4e 54 33 32 3b 0a 61 6c 69  D32, UINT32;.ali
0d50: 61 73 20 75 69 6e 74 2a 20 50 55 4c 4f 4e 47 33  as uint* PULONG3
0d60: 32 2c 20 50 44 57 4f 52 44 33 32 2c 20 50 55 49  2, PDWORD32, PUI
0d70: 4e 54 33 32 3b 0a 0a 61 6c 69 61 73 20 55 4c 4f  NT32;..alias ULO
0d80: 4e 47 5f 50 54 52 20 53 49 5a 45 5f 54 2c 20 44  NG_PTR SIZE_T, D
0d90: 57 4f 52 44 5f 50 54 52 3b 0a 61 6c 69 61 73 20  WORD_PTR;.alias 
0da0: 55 4c 4f 4e 47 5f 50 54 52 2a 20 50 53 49 5a 45  ULONG_PTR* PSIZE
0db0: 5f 54 2c 20 50 44 57 4f 52 44 5f 50 54 52 3b 0a  _T, PDWORD_PTR;.
0dc0: 61 6c 69 61 73 20 4c 4f 4e 47 5f 50 54 52 20 53  alias LONG_PTR S
0dd0: 53 49 5a 45 5f 54 3b 0a 61 6c 69 61 73 20 4c 4f  SIZE_T;.alias LO
0de0: 4e 47 5f 50 54 52 2a 20 50 53 53 49 5a 45 5f 54  NG_PTR* PSSIZE_T
0df0: 3b 0a 0a 61 6c 69 61 73 20 6c 6f 6e 67 20 4c 4f  ;..alias long LO
0e00: 4e 47 36 34 2c 20 49 4e 54 36 34 3b 0a 61 6c 69  NG64, INT64;.ali
0e10: 61 73 20 6c 6f 6e 67 2a 20 50 4c 4f 4e 47 36 34  as long* PLONG64
0e20: 2c 20 50 49 4e 54 36 34 3b 0a 61 6c 69 61 73 20  , PINT64;.alias 
0e30: 75 6c 6f 6e 67 20 55 4c 4f 4e 47 36 34 2c 20 44  ulong ULONG64, D
0e40: 57 4f 52 44 36 34 2c 20 55 49 4e 54 36 34 3b 0a  WORD64, UINT64;.
0e50: 61 6c 69 61 73 20 75 6c 6f 6e 67 2a 20 50 55 4c  alias ulong* PUL
0e60: 4f 4e 47 36 34 2c 20 50 44 57 4f 52 44 36 34 2c  ONG64, PDWORD64,
0e70: 20 50 55 49 4e 54 36 34 3b 0a                     PUINT64;.