winddi.h

来自「开放源码的编译器open watcom 1.6.0版的源代码」· C头文件 代码 · 共 3,009 行 · 第 1/5 页

H
3,009
字号
EngInitializeSafeSemaphore(

  /*OUT*/ ENGSAFESEMAPHORE  *pssem);

WIN32KAPI
BOOL
DDKAPI
EngIsSemaphoreOwned(
  /*IN*/ HSEMAPHORE  hsem);

WIN32KAPI
BOOL
DDKAPI
EngIsSemaphoreOwnedByCurrentThread(
  /*IN*/ HSEMAPHORE  hsem);

WIN32KAPI
BOOL
DDKAPI
EngLineTo(
  SURFOBJ  *pso,
  CLIPOBJ  *pco,
  BRUSHOBJ  *pbo,
  LONG  x1,
  LONG  y1,
  LONG  x2,
  LONG  y2,
  RECTL  *prclBounds,
  MIX  mix);

WIN32KAPI
HANDLE
DDKAPI
EngLoadImage(
  /*IN*/ LPWSTR  pwszDriver);

WIN32KAPI
HANDLE
DDKAPI
EngLoadModule(
  /*IN*/ LPWSTR  pwsz);

WIN32KAPI
HANDLE
DDKAPI
EngLoadModuleForWrite(
  /*IN*/ LPWSTR  pwsz,
  /*IN*/ ULONG  cjSizeOfModule);

WIN32KAPI
PDD_SURFACE_LOCAL
DDKAPI
EngLockDirectDrawSurface(
  /*IN*/ HANDLE  hSurface);

WIN32KAPI
DRIVEROBJ*
DDKAPI
EngLockDriverObj(
  /*IN*/ HDRVOBJ  hdo);

WIN32KAPI
SURFOBJ*
DDKAPI
EngLockSurface(
  /*IN*/ HSURF  hsurf);

WIN32KAPI
BOOL
DDKAPI
EngLpkInstalled(
  VOID);

WIN32KAPI
PEVENT
DDKAPI
EngMapEvent(
  /*IN*/ HDEV  hDev,
  /*IN*/ HANDLE  hUserObject,
  /*IN*/ PVOID  Reserved1,
  /*IN*/ PVOID  Reserved2,
  /*IN*/ PVOID  Reserved3);

WIN32KAPI
PVOID
DDKAPI
EngMapFile(
  /*IN*/ LPWSTR  pwsz,
  /*IN*/ ULONG  cjSize,

  /*OUT*/ ULONG_PTR  *piFile);

WIN32KAPI
BOOL
DDKAPI
EngMapFontFile(
  ULONG_PTR  iFile,
  PULONG  *ppjBuf,
  ULONG  *pcjBuf);

WIN32KAPI
BOOL
DDKAPI
EngMapFontFileFD(
  /*IN*/ ULONG_PTR  iFile,

  /*OUT*/ PULONG  *ppjBuf,

  /*OUT*/ ULONG  *pcjBuf);

WIN32KAPI
PVOID
DDKAPI
EngMapModule(
  /*IN*/ HANDLE  h,

  /*OUT*/ PULONG  pSize);

WIN32KAPI
BOOL
DDKAPI
EngMarkBandingSurface(
  /*IN*/ HSURF  hsurf);

/* EngModifySurface.flSurface constants */
#define MS_NOTSYSTEMMEMORY                0x00000001
#define MS_SHAREDACCESS                   0x00000002

WIN32KAPI
BOOL
DDKAPI
EngModifySurface(
  /*IN*/ HSURF  hsurf,
  /*IN*/ HDEV  hdev,
  /*IN*/ FLONG  flHooks,
  /*IN*/ FLONG  flSurface,
  /*IN*/ DHSURF  dhsurf,
  /*IN*/ VOID  *pvScan0,
  /*IN*/ LONG  lDelta,
  /*IN*/ VOID  *pvReserved);

WIN32KAPI
VOID
DDKAPI
EngMovePointer(
  /*IN*/ SURFOBJ  *pso,
  /*IN*/ LONG  x,
  /*IN*/ LONG  y,
  /*IN*/ RECTL  *prcl);

WIN32KAPI
int
DDKAPI
EngMulDiv(
  /*IN*/ int  a,
  /*IN*/ int  b,
  /*IN*/ int  c);

WIN32KAPI
VOID
DDKAPI
EngMultiByteToUnicodeN(

  /*OUT*/ LPWSTR  UnicodeString,
  /*IN*/ ULONG  MaxBytesInUnicodeString,

  /*OUT*/ PULONG  BytesInUnicodeString,
  /*IN*/ PCHAR  MultiByteString,
  /*IN*/ ULONG  BytesInMultiByteString);

WIN32KAPI
INT
DDKAPI
EngMultiByteToWideChar(
  /*IN*/ UINT  CodePage,

  /*OUT*/ LPWSTR  WideCharString,
  /*IN*/ INT  BytesInWideCharString,
  /*IN*/ LPSTR  MultiByteString,
  /*IN*/ INT  BytesInMultiByteString);

WIN32KAPI
BOOL
DDKAPI
EngPaint(
  /*IN*/ SURFOBJ  *pso,
  /*IN*/ CLIPOBJ  *pco,
  /*IN*/ BRUSHOBJ  *pbo,
  /*IN*/ POINTL  *pptlBrushOrg,
  /*IN*/ MIX  mix);

WIN32KAPI
BOOL
DDKAPI
EngPlgBlt(
  /*IN*/ SURFOBJ  *psoTrg,
  /*IN*/ SURFOBJ  *psoSrc,
  /*IN*/ SURFOBJ  *psoMsk,
  /*IN*/ CLIPOBJ  *pco,
  /*IN*/ XLATEOBJ  *pxlo,
  /*IN*/ COLORADJUSTMENT  *pca,
  /*IN*/ POINTL  *pptlBrushOrg,
  /*IN*/ POINTFIX  *pptfx,
  /*IN*/ RECTL  *prcl,
  /*IN*/ POINTL  *pptl,
  /*IN*/ ULONG  iMode);

WIN32KAPI
VOID
DDKAPI
EngProbeForRead(
  /*IN*/ PVOID  Address,
  /*IN*/ ULONG  Length,
  /*IN*/ ULONG  Alignment);

WIN32KAPI
VOID
DDKAPI
EngProbeForReadAndWrite(
  /*IN*/ PVOID  Address,
  /*IN*/ ULONG  Length,
  /*IN*/ ULONG  Alignment);

typedef enum _ENG_DEVICE_ATTRIBUTE {
  QDA_RESERVED = 0,
  QDA_ACCELERATION_LEVEL
} ENG_DEVICE_ATTRIBUTE;

WIN32KAPI
BOOL
DDKAPI
EngQueryDeviceAttribute(
  /*IN*/ HDEV  hdev,
  /*IN*/ ENG_DEVICE_ATTRIBUTE  devAttr,
  /*IN*/ VOID  *pvIn,
  /*IN*/ ULONG  ulInSize,

  /*OUT*/ VOID  *pvOut,

  /*OUT*/ ULONG  ulOutSize);

WIN32KAPI
LARGE_INTEGER
DDKAPI
EngQueryFileTimeStamp(
  /*IN*/ LPWSTR  pwsz);

WIN32KAPI
VOID
DDKAPI
EngQueryLocalTime(

  /*OUT*/ PENG_TIME_FIELDS  ptf);

WIN32KAPI
ULONG
DDKAPI
EngQueryPalette(
  /*IN*/ HPALETTE  hPal,

  /*OUT*/ ULONG  *piMode,
  /*IN*/ ULONG  cColors,

  /*OUT*/ ULONG  *pulColors);

WIN32KAPI
VOID
DDKAPI
EngQueryPerformanceCounter(

  /*OUT*/ LONGLONG  *pPerformanceCount);

WIN32KAPI
VOID
DDKAPI
EngQueryPerformanceFrequency(

  /*OUT*/ LONGLONG  *pFrequency);

typedef enum _ENG_SYSTEM_ATTRIBUTE {
  EngProcessorFeature = 1,
  EngNumberOfProcessors,
  EngOptimumAvailableUserMemory,
  EngOptimumAvailableSystemMemory,
} ENG_SYSTEM_ATTRIBUTE;

#define QSA_MMX                           0x00000100
#define QSA_SSE                           0x00002000
#define QSA_3DNOW                         0x00004000

WIN32KAPI
BOOL
DDKAPI
EngQuerySystemAttribute(
  /*IN*/ ENG_SYSTEM_ATTRIBUTE  CapNum,

  /*OUT*/ PDWORD  pCapability);

WIN32KAPI
LONG
DDKAPI
EngReadStateEvent(
  /*IN*/ PEVENT  pEvent);

WIN32KAPI
VOID
DDKAPI
EngReleaseSemaphore(
  /*IN*/ HSEMAPHORE  hsem);

WIN32KAPI
BOOL
DDKAPI
EngRestoreFloatingPointState(
  /*IN*/ VOID  *pBuffer);

WIN32KAPI
ULONG
DDKAPI
EngSaveFloatingPointState(

  /*OUT*/ VOID  *pBuffer,
  /*IN*/ ULONG  cjBufferSize);

WIN32KAPI
HANDLE
DDKAPI
EngSecureMem(
  /*IN*/ PVOID  Address,
  /*IN*/ ULONG  Length);

WIN32KAPI
LONG
DDKAPI
EngSetEvent(
  /*IN*/ PEVENT  pEvent);

WIN32KAPI
VOID
DDKAPI
EngSetLastError(
  /*IN*/ ULONG  iError);

WIN32KAPI
ULONG
DDKAPI
EngSetPointerShape(
  /*IN*/ SURFOBJ  *pso,
  /*IN*/ SURFOBJ  *psoMask,
  /*IN*/ SURFOBJ  *psoColor,
  /*IN*/ XLATEOBJ  *pxlo,
  /*IN*/ LONG  xHot,
  /*IN*/ LONG  yHot,
  /*IN*/ LONG  x,
  /*IN*/ LONG  y,
  /*IN*/ RECTL  *prcl,
  /*IN*/ FLONG  fl);

WIN32KAPI
BOOL
DDKAPI
EngSetPointerTag(
  /*IN*/ HDEV  hdev,
  /*IN*/ SURFOBJ  *psoMask,
  /*IN*/ SURFOBJ  *psoColor,
  /*IN*/ XLATEOBJ  *pxlo,
  /*IN*/ FLONG  fl);

WIN32KAPI
DWORD
DDKAPI
EngSetPrinterData(
  /*IN*/ HANDLE  hPrinter,
  /*IN*/ LPWSTR  pType,
  /*IN*/ DWORD  dwType,
  /*IN*/ LPBYTE  lpbPrinterData,
  /*IN*/ DWORD  cjPrinterData);

typedef int DDKCDECLAPI (*SORTCOMP)(const void *pv1, const void *pv2);

WIN32KAPI
VOID
DDKAPI
EngSort(
  /*IN OUT*/ PBYTE  pjBuf,
  /*IN*/ ULONG  c,
  /*IN*/ ULONG  cjElem,
  /*IN*/ SORTCOMP  pfnComp);

WIN32KAPI
BOOL
DDKAPI
EngStretchBlt(
  /*IN*/ SURFOBJ  *psoDest,
  /*IN*/ SURFOBJ  *psoSrc,
  /*IN*/ SURFOBJ  *psoMask,
  /*IN*/ CLIPOBJ  *pco,
  /*IN*/ XLATEOBJ  *pxlo,
  /*IN*/ COLORADJUSTMENT  *pca,
  /*IN*/ POINTL  *pptlHTOrg,
  /*IN*/ RECTL  *prclDest,
  /*IN*/ RECTL  *prclSrc,
  /*IN*/ POINTL  *pptlMask,
  /*IN*/ ULONG  iMode);

WIN32KAPI
BOOL
DDKAPI
EngStretchBltROP(
  /*IN*/ SURFOBJ  *psoDest,
  /*IN*/ SURFOBJ  *psoSrc,
  /*IN*/ SURFOBJ  *psoMask,
  /*IN*/ CLIPOBJ  *pco,
  /*IN*/ XLATEOBJ  *pxlo,
  /*IN*/ COLORADJUSTMENT  *pca,
  /*IN*/ POINTL  *pptlHTOrg,
  /*IN*/ RECTL  *prclDest,
  /*IN*/ RECTL  *prclSrc,
  /*IN*/ POINTL  *pptlMask,
  /*IN*/ ULONG  iMode,
  /*IN*/ BRUSHOBJ  *pbo,
  /*IN*/ DWORD  rop4);

WIN32KAPI
BOOL
DDKAPI
EngStrokeAndFillPath(
  /*IN*/ SURFOBJ  *pso,
  /*IN*/ PATHOBJ  *ppo,
  /*IN*/ CLIPOBJ  *pco,
  /*IN*/ XFORMOBJ  *pxo,
  /*IN*/ BRUSHOBJ  *pboStroke,
  /*IN*/ LINEATTRS  *plineattrs,
  /*IN*/ BRUSHOBJ  *pboFill,
  /*IN*/ POINTL  *pptlBrushOrg,
  /*IN*/ MIX  mixFill,
  /*IN*/ FLONG  flOptions);

WIN32KAPI
BOOL
DDKAPI
EngStrokePath(
  /*IN*/ SURFOBJ  *pso,
  /*IN*/ PATHOBJ  *ppo,
  /*IN*/ CLIPOBJ  *pco,
  /*IN*/ XFORMOBJ  *pxo,
  /*IN*/ BRUSHOBJ  *pbo,
  /*IN*/ POINTL  *pptlBrushOrg,
  /*IN*/ LINEATTRS  *plineattrs,
  /*IN*/ MIX  mix);

WIN32KAPI
BOOL
DDKAPI
EngTextOut(
  /*IN*/ SURFOBJ  *pso,
  /*IN*/ STROBJ  *pstro,
  /*IN*/ FONTOBJ  *pfo,
  /*IN*/ CLIPOBJ  *pco,
  /*IN*/ RECTL  *prclExtra,
  /*IN*/ RECTL  *prclOpaque,
  /*IN*/ BRUSHOBJ  *pboFore,
  /*IN*/ BRUSHOBJ  *pboOpaque,
  /*IN*/ POINTL  *pptlOrg,
  /*IN*/ MIX  mix);

WIN32KAPI
BOOL
DDKAPI
EngTransparentBlt(
  /*IN*/ SURFOBJ  *psoDst,
  /*IN*/ SURFOBJ  *psoSrc,
  /*IN*/ CLIPOBJ  *pco,
  /*IN*/ XLATEOBJ  *pxlo,
  /*IN*/ RECTL  *prclDst,
  /*IN*/ RECTL  *prclSrc,
  /*IN*/ ULONG  iTransColor,
  /*IN*/ ULONG  ulReserved);

WIN32KAPI
VOID
DDKAPI
EngUnicodeToMultiByteN(

  /*OUT*/ PCHAR  MultiByteString,
  /*IN*/ ULONG  MaxBytesInMultiByteString,

  /*OUT*/ PULONG  BytesInMultiByteString,
  /*IN*/ PWSTR  UnicodeString,
  /*IN*/ ULONG  BytesInUnicodeString);

WIN32KAPI
VOID
DDKAPI
EngUnloadImage(
  /*IN*/ HANDLE  hModule);

WIN32KAPI
BOOL
DDKAPI
EngUnlockDirectDrawSurface(
  /*IN*/ PDD_SURFACE_LOCAL  pSurface);

WIN32KAPI
BOOL
DDKAPI
EngUnlockDriverObj(
  /*IN*/ HDRVOBJ  hdo);

WIN32KAPI
VOID
DDKAPI
EngUnlockSurface(
  /*IN*/ SURFOBJ  *pso);

WIN32KAPI
BOOL
DDKAPI
EngUnmapEvent(
  /*IN*/ PEVENT  pEvent);

WIN32KAPI
BOOL
DDKAPI
EngUnmapFile(
  /*IN*/ ULONG_PTR  iFile);

WIN32KAPI
VOID
DDKAPI
EngUnmapFontFile(
  ULONG_PTR  iFile);

WIN32KAPI
VOID
DDKAPI
EngUnmapFontFileFD(
  /*IN*/ ULONG_PTR  iFile);

WIN32KAPI
VOID
DDKAPI
EngUnsecureMem(
  /*IN*/ HANDLE  hSecure);

WIN32KAPI
BOOL
DDKAPI
EngWaitForSingleObject(
  /*IN*/ PEVENT  pEvent,
  /*IN*/ PLARGE_INTEGER  pTimeOut);

WIN32KAPI
INT
DDKAPI
EngWideCharToMultiByte(
  /*IN*/ UINT  CodePage,
  /*IN*/ LPWSTR  WideCharString,
  /*IN*/ INT  BytesInWideCharString,

  /*OUT*/ LPSTR  MultiByteString,
  /*IN*/ INT  BytesInMultiByteString);

WIN32KAPI
BOOL
DDKAPI
EngWritePrinter(
  /*IN*/ HANDLE  hPrinter,
  /*IN*/ LPVOID  pBuf,
  /*IN*/ DWORD  cbBuf,

  /*OUT*/ LPDWORD  pcWritten);

WIN32KAPI
VOID
DDKAPI
FLOATOBJ_Add(
  /*IN OUT*/ PFLOATOBJ  pf,
  /*IN*/ PFLOATOBJ  pf1);

WIN32KAPI
VOID
DDKAPI
FLOATOBJ_AddFloat(
  /*IN OUT*/ PFLOATOBJ  pf,
  /*IN*/ FLOATL  f);

WIN32KAPI
VOID
DDKAPI
FLOATOBJ_AddLong(
  /*IN OUT*/ PFLOATOBJ  pf,
  /*IN*/ LONG  l);

WIN32KAPI
VOID
DDKAPI
FLOATOBJ_Div(
  /*IN OUT*/ PFLOATOBJ  pf,
  /*IN*/ PFLOATOBJ  pf1);

WIN32KAPI

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?