home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / graddfil.zip / senforce.zip / SENFORCE.h < prev   
C/C++ Source or Header  |  2000-12-20  |  2KB  |  74 lines

  1. /* SENFORCE.h  GRADD software simulation enforcement filter  r0.0.2  (C header file)
  2.    Copyright 2000 Takayuki 'January June' Suwa / Beliefia Productions. */
  3.  
  4. #if !defined(__SENFORCE)
  5. #define __SENFORCE
  6.  
  7. #if defined(__cplusplus)
  8. extern "C" {
  9. #endif
  10.  
  11. /* SENFORCE filter counters structure */
  12. typedef struct
  13. {
  14.     ULONG aulFiltered[5];
  15.     ULONG ulUnfilteredHardware;
  16.     ULONG ulUnfilteredSimulation;
  17. } SENFORCE_FILTERCOUNTERS, * PSENFORCE_FILTERCOUNTERS;
  18.  
  19. /* SENFORCE VMI_CMD_EXTENSION/VHI_CMD_EXTENSION subfunctions */
  20. #define XSF_SENFORCE_QUERYENFORCEMENTFILTERFLAGS    ('SENF' + 0)
  21.   /* stored current flags(ULONG) to pOut-pointed location
  22.        bit 0: screen->screen BitBlt operations filter
  23.        bit 1: screen->memory BitBlt operations filter
  24.        bit 2: memory->screen BitBlt operations filter
  25.        bit 3: solid/pattern Fill operations filter
  26.        bit 4: Line operations filter */
  27. #define XSF_SENFORCE_SETENFORCEMENTFILTERFLAGS      ('SENF' + 1)
  28.   /* set pointer to new flags(ULONG), to HWEXTENSION.pXP1 */
  29. #define XSF_SENFORCE_QUERYENFORCEMENTFILTERCOUNTERS ('SENF' + 2)
  30.   /* stored current counters(SENFORCE_FILTERCOUNTERS) to pOut-pointed location */
  31.  
  32. #if defined(BUILD_GRADD)
  33.  
  34. /* TRUE if RING0PTR locking is done  */
  35. extern BOOL bRing0Initialized;
  36.  
  37. /* GRADD ID of SENFORCE */
  38. extern GID gidSelf;
  39.  
  40. /* previous HWEntry in GRADD chain */
  41. extern PFNHWENTRY PreviousChainedHWEntry;
  42.  
  43. /* software simulation enforcement filter flags */
  44. extern ULONG ulFilterFlags;
  45.  
  46. /* GHI commands table */
  47. extern const HWCMD axGHICommandTable[GHI_CMD_MAX];
  48.  
  49. /* SENFORCE filter counters */
  50. extern SENFORCE_FILTERCOUNTERS xFilterCounters;
  51.  
  52. /* GHI command entry */
  53. extern ULONG EXPENTRY HWEntry(GID gid,
  54.                               ULONG ulFunction,
  55.                               PVOID pIn,
  56.                               PVOID pOut);
  57.  
  58. /* GHI command processors */
  59. extern ULONG EXPENTRY HWQueryCaps(PVOID pIn,
  60.                                   PVOID pOut);
  61. extern ULONG EXPENTRY HWQueryModes(PVOID pIn,
  62.                                    PVOID pOut);
  63. extern ULONG EXPENTRY HWExtension(PVOID pIn,
  64.                                   PVOID pOut);
  65.  
  66. #endif
  67.  
  68. #if defined(__cplusplus)
  69. }
  70. #endif
  71.  
  72. #endif
  73.  
  74.