ReactOS  0.4.15-dev-439-g292f67a
dxeng.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define DXENG_INDEX_Resverd0   0x00
 
#define DXENG_INDEX_DxEngNUIsTermSrv   0x01
 
#define DXENG_INDEX_DxEngScreenAccessCheck   0x02
 
#define DXENG_INDEX_DxEngRedrawDesktop   0x03
 
#define DXENG_INDEX_DxEngDispUniq   0x04
 
#define DXENG_INDEX_DxEngIncDispUniq   0x05
 
#define DXENG_INDEX_DxEngVisRgnUniq   0x06
 
#define DXENG_INDEX_DxEngLockShareSem   0x07
 
#define DXENG_INDEX_DxEngUnlockShareSem   0x08
 
#define DXENG_INDEX_DxEngEnumerateHdev   0x09
 
#define DXENG_INDEX_DxEngLockHdev   0x0A
 
#define DXENG_INDEX_DxEngUnlockHdev   0x0B
 
#define DXENG_INDEX_DxEngIsHdevLockedByCurrentThread   0x0C
 
#define DXENG_INDEX_DxEngReferenceHdev   0x0D
 
#define DXENG_INDEX_DxEngUnreferenceHdev   0x0E
 
#define DXENG_INDEX_DxEngGetDeviceGammaRamp   0x0F
 
#define DXENG_INDEX_DxEngSetDeviceGammaRamp   0x10
 
#define DXENG_INDEX_DxEngSpTearDownSprites   0x11
 
#define DXENG_INDEX_DxEngSpUnTearDownSprites   0x12
 
#define DXENG_INDEX_DxEngSpSpritesVisible   0x13
 
#define DXENG_INDEX_DxEngGetHdevData   0x14
 
#define DXENG_INDEX_DxEngSetHdevData   0x15
 
#define DXENG_INDEX_DxEngCreateMemoryDC   0x16
 
#define DXENG_INDEX_DxEngGetDesktopDC   0x17
 
#define DXENG_INDEX_DxEngDeleteDC   0x18
 
#define DXENG_INDEX_DxEngCleanDC   0x19
 
#define DXENG_INDEX_DxEngSetDCOwner   0x1A
 
#define DXENG_INDEX_DxEngLockDC   0x1B
 
#define DXENG_INDEX_DxEngUnlockDC   0x1C
 
#define DXENG_INDEX_DxEngSetDCState   0x1D
 
#define DXENG_INDEX_DxEngGetDCState   0x1E
 
#define DXENG_INDEX_DxEngSelectBitmap   0x1F
 
#define DXENG_INDEX_DxEngSetBitmapOwner   0x20
 
#define DXENG_INDEX_DxEngDeleteSurface   0x21
 
#define DXENG_INDEX_DxEngGetSurfaceData   0x22
 
#define DXENG_INDEX_DxEngAltLockSurface   0x23
 
#define DXENG_INDEX_DxEngUploadPaletteEntryToSurface   0x24
 
#define DXENG_INDEX_DxEngMarkSurfaceAsDirectDraw   0x25
 
#define DXENG_INDEX_DxEngSelectPaletteToSurface   0x26
 
#define DXENG_INDEX_DxEngSyncPaletteTableWithDevice   0x27
 
#define DXENG_INDEX_DxEngSetPaletteState   0x28
 
#define DXENG_INDEX_DxEngGetRedirectionBitmap   0x29
 
#define DXENG_INDEX_DxEngLoadImage   0x2A
 

Typedefs

typedef enum _DXEGSHDEVDATA DXEGSHDEVDATA
 
typedef enum _DXEGSHDEVDATAPDXEGSHDEVDATA
 

Enumerations

enum  _DXEGSHDEVDATA {
  DxEGShDevData_Surface, DxEGShDevData_hSpooler, DxEGShDevData_DitherFmt, DxEGShDevData_FxCaps,
  DxEGShDevData_FxCaps2, DxEGShDevData_DrvFuncs, DxEGShDevData_dhpdev, DxEGShDevData_eddg,
  DxEGShDevData_dd_nCount, DxEGShDevData_dd_flags, DxEGShDevData_disable, DxEGShDevData_metadev,
  DxEGShDevData_display, DxEGShDevData_Parent, DxEGShDevData_OpenRefs, DxEGShDevData_palette,
  DxEGShDevData_ldev, DxEGShDevData_GDev, DxEGShDevData_clonedev
}
 

Functions

BOOLEAN NTAPI DxEngNUIsTermSrv (VOID)
 
PDC NTAPI DxEngLockDC (HDC hDC)
 
BOOLEAN NTAPI DxEngUnlockDC (PDC pDC)
 
DWORD_PTR NTAPI DxEngGetHdevData (HDEV, DXEGSHDEVDATA)
 
BOOLEAN NTAPI DxEngSetHdevData (HDEV, DXEGSHDEVDATA, DWORD_PTR)
 
BOOLEAN NTAPI DxEngLockHdev (HDEV hdev)
 
BOOLEAN NTAPI DxEngUnlockHdev (HDEV hdev)
 
DWORD_PTR NTAPI DxEngGetDCState (HDC hDC, DWORD type)
 
BOOLEAN NTAPI DxEngReferenceHdev (HDEV hdev)
 
BOOLEAN NTAPI DxEngLockShareSem (VOID)
 
BOOLEAN NTAPI DxEngUnlockShareSem (VOID)
 
DWORD NTAPI DxEngScreenAccessCheck (VOID)
 
BOOL NTAPI DxEngSetDCOwner (HGDIOBJ hObject, DWORD OwnerMask)
 
BOOLEAN NTAPI DxEngRedrawDesktop (VOID)
 
ULONG NTAPI DxEngDispUniq (VOID)
 
ULONG NTAPI DxEngVisRgnUniq (VOID)
 
HDEV *NTAPI DxEngEnumerateHdev (HDEV *hdev)
 
BOOL NTAPI DxEngGetDeviceGammaRamp (HDEV hPDev, PGAMMARAMP Ramp)
 
BOOLEAN NTAPI DxEngSetDeviceGammaRamp (HDEV hPDev, PGAMMARAMP Ramp, BOOL Unuse)
 
BOOLEAN NTAPI DxEngCleanDC (HDC hdc)
 
BOOLEAN NTAPI DxEngIncDispUniq (VOID)
 
HDC NTAPI DxEngCreateMemoryDC (HDEV hDev)
 
BOOLEAN NTAPI DxEngIsHdevLockedByCurrentThread (HDEV hDev)
 
BOOLEAN NTAPI DxEngUnreferenceHdev (HDEV hDev)
 
DWORD NTAPI DxEngSpTearDownSprites (DWORD x1, DWORD x2, DWORD x3)
 
DWORD NTAPI DxEngSpUnTearDownSprites (DWORD x1, DWORD x2, DWORD x3)
 
DWORD NTAPI DxEngSpSpritesVisible (DWORD x1)
 
HDC NTAPI DxEngGetDesktopDC (ULONG DcType, BOOL EmptyDC, BOOL ValidatehWnd)
 
BOOLEAN NTAPI DxEngDeleteDC (HDC hdc, BOOL Force)
 
BOOLEAN NTAPI DxEngSetDCState (HDC hDC, DWORD SetType, DWORD Set)
 
DWORD NTAPI DxEngSelectBitmap (DWORD x1, DWORD x2)
 
DWORD NTAPI DxEngSetBitmapOwner (DWORD x1, DWORD x2)
 
DWORD NTAPI DxEngDeleteSurface (DWORD x1)
 
DWORD NTAPI DxEngGetSurfaceData (DWORD x1, DWORD x2)
 
DWORD NTAPI DxEngAltLockSurface (DWORD x1)
 
DWORD NTAPI DxEngUploadPaletteEntryToSurface (DWORD x1, DWORD x2, DWORD x3, DWORD x4)
 
DWORD NTAPI DxEngMarkSurfaceAsDirectDraw (DWORD x1, DWORD x2)
 
DWORD NTAPI DxEngSelectPaletteToSurface (DWORD x1, DWORD x2)
 
DWORD NTAPI DxEngSyncPaletteTableWithDevice (DWORD x1, DWORD x2)
 
DWORD NTAPI DxEngSetPaletteState (DWORD x1, DWORD x2, DWORD x3)
 
DWORD NTAPI DxEngGetRedirectionBitmap (DWORD x1)
 
DWORD NTAPI DxEngLoadImage (DWORD x1, DWORD x2)
 

Macro Definition Documentation

◆ DXENG_INDEX_DxEngAltLockSurface

#define DXENG_INDEX_DxEngAltLockSurface   0x23

Definition at line 41 of file dxeng.h.

◆ DXENG_INDEX_DxEngCleanDC

#define DXENG_INDEX_DxEngCleanDC   0x19

Definition at line 31 of file dxeng.h.

◆ DXENG_INDEX_DxEngCreateMemoryDC

#define DXENG_INDEX_DxEngCreateMemoryDC   0x16

Definition at line 28 of file dxeng.h.

◆ DXENG_INDEX_DxEngDeleteDC

#define DXENG_INDEX_DxEngDeleteDC   0x18

Definition at line 30 of file dxeng.h.

◆ DXENG_INDEX_DxEngDeleteSurface

#define DXENG_INDEX_DxEngDeleteSurface   0x21

Definition at line 39 of file dxeng.h.

◆ DXENG_INDEX_DxEngDispUniq

#define DXENG_INDEX_DxEngDispUniq   0x04

Definition at line 10 of file dxeng.h.

◆ DXENG_INDEX_DxEngEnumerateHdev

#define DXENG_INDEX_DxEngEnumerateHdev   0x09

Definition at line 15 of file dxeng.h.

◆ DXENG_INDEX_DxEngGetDCState

#define DXENG_INDEX_DxEngGetDCState   0x1E

Definition at line 36 of file dxeng.h.

◆ DXENG_INDEX_DxEngGetDesktopDC

#define DXENG_INDEX_DxEngGetDesktopDC   0x17

Definition at line 29 of file dxeng.h.

◆ DXENG_INDEX_DxEngGetDeviceGammaRamp

#define DXENG_INDEX_DxEngGetDeviceGammaRamp   0x0F

Definition at line 21 of file dxeng.h.

◆ DXENG_INDEX_DxEngGetHdevData

#define DXENG_INDEX_DxEngGetHdevData   0x14

Definition at line 26 of file dxeng.h.

◆ DXENG_INDEX_DxEngGetRedirectionBitmap

#define DXENG_INDEX_DxEngGetRedirectionBitmap   0x29

Definition at line 47 of file dxeng.h.

◆ DXENG_INDEX_DxEngGetSurfaceData

#define DXENG_INDEX_DxEngGetSurfaceData   0x22

Definition at line 40 of file dxeng.h.

◆ DXENG_INDEX_DxEngIncDispUniq

#define DXENG_INDEX_DxEngIncDispUniq   0x05

Definition at line 11 of file dxeng.h.

◆ DXENG_INDEX_DxEngIsHdevLockedByCurrentThread

#define DXENG_INDEX_DxEngIsHdevLockedByCurrentThread   0x0C

Definition at line 18 of file dxeng.h.

◆ DXENG_INDEX_DxEngLoadImage

#define DXENG_INDEX_DxEngLoadImage   0x2A

Definition at line 48 of file dxeng.h.

◆ DXENG_INDEX_DxEngLockDC

#define DXENG_INDEX_DxEngLockDC   0x1B

Definition at line 33 of file dxeng.h.

◆ DXENG_INDEX_DxEngLockHdev

#define DXENG_INDEX_DxEngLockHdev   0x0A

Definition at line 16 of file dxeng.h.

◆ DXENG_INDEX_DxEngLockShareSem

#define DXENG_INDEX_DxEngLockShareSem   0x07

Definition at line 13 of file dxeng.h.

◆ DXENG_INDEX_DxEngMarkSurfaceAsDirectDraw

#define DXENG_INDEX_DxEngMarkSurfaceAsDirectDraw   0x25

Definition at line 43 of file dxeng.h.

◆ DXENG_INDEX_DxEngNUIsTermSrv

#define DXENG_INDEX_DxEngNUIsTermSrv   0x01

Definition at line 7 of file dxeng.h.

◆ DXENG_INDEX_DxEngRedrawDesktop

#define DXENG_INDEX_DxEngRedrawDesktop   0x03

Definition at line 9 of file dxeng.h.

◆ DXENG_INDEX_DxEngReferenceHdev

#define DXENG_INDEX_DxEngReferenceHdev   0x0D

Definition at line 19 of file dxeng.h.

◆ DXENG_INDEX_DxEngScreenAccessCheck

#define DXENG_INDEX_DxEngScreenAccessCheck   0x02

Definition at line 8 of file dxeng.h.

◆ DXENG_INDEX_DxEngSelectBitmap

#define DXENG_INDEX_DxEngSelectBitmap   0x1F

Definition at line 37 of file dxeng.h.

◆ DXENG_INDEX_DxEngSelectPaletteToSurface

#define DXENG_INDEX_DxEngSelectPaletteToSurface   0x26

Definition at line 44 of file dxeng.h.

◆ DXENG_INDEX_DxEngSetBitmapOwner

#define DXENG_INDEX_DxEngSetBitmapOwner   0x20

Definition at line 38 of file dxeng.h.

◆ DXENG_INDEX_DxEngSetDCOwner

#define DXENG_INDEX_DxEngSetDCOwner   0x1A

Definition at line 32 of file dxeng.h.

◆ DXENG_INDEX_DxEngSetDCState

#define DXENG_INDEX_DxEngSetDCState   0x1D

Definition at line 35 of file dxeng.h.

◆ DXENG_INDEX_DxEngSetDeviceGammaRamp

#define DXENG_INDEX_DxEngSetDeviceGammaRamp   0x10

Definition at line 22 of file dxeng.h.

◆ DXENG_INDEX_DxEngSetHdevData

#define DXENG_INDEX_DxEngSetHdevData   0x15

Definition at line 27 of file dxeng.h.

◆ DXENG_INDEX_DxEngSetPaletteState

#define DXENG_INDEX_DxEngSetPaletteState   0x28

Definition at line 46 of file dxeng.h.

◆ DXENG_INDEX_DxEngSpSpritesVisible

#define DXENG_INDEX_DxEngSpSpritesVisible   0x13

Definition at line 25 of file dxeng.h.

◆ DXENG_INDEX_DxEngSpTearDownSprites

#define DXENG_INDEX_DxEngSpTearDownSprites   0x11

Definition at line 23 of file dxeng.h.

◆ DXENG_INDEX_DxEngSpUnTearDownSprites

#define DXENG_INDEX_DxEngSpUnTearDownSprites   0x12

Definition at line 24 of file dxeng.h.

◆ DXENG_INDEX_DxEngSyncPaletteTableWithDevice

#define DXENG_INDEX_DxEngSyncPaletteTableWithDevice   0x27

Definition at line 45 of file dxeng.h.

◆ DXENG_INDEX_DxEngUnlockDC

#define DXENG_INDEX_DxEngUnlockDC   0x1C

Definition at line 34 of file dxeng.h.

◆ DXENG_INDEX_DxEngUnlockHdev

#define DXENG_INDEX_DxEngUnlockHdev   0x0B

Definition at line 17 of file dxeng.h.

◆ DXENG_INDEX_DxEngUnlockShareSem

#define DXENG_INDEX_DxEngUnlockShareSem   0x08

Definition at line 14 of file dxeng.h.

◆ DXENG_INDEX_DxEngUnreferenceHdev

#define DXENG_INDEX_DxEngUnreferenceHdev   0x0E

Definition at line 20 of file dxeng.h.

◆ DXENG_INDEX_DxEngUploadPaletteEntryToSurface

#define DXENG_INDEX_DxEngUploadPaletteEntryToSurface   0x24

Definition at line 42 of file dxeng.h.

◆ DXENG_INDEX_DxEngVisRgnUniq

#define DXENG_INDEX_DxEngVisRgnUniq   0x06

Definition at line 12 of file dxeng.h.

◆ DXENG_INDEX_Resverd0

#define DXENG_INDEX_Resverd0   0x00

Definition at line 6 of file dxeng.h.

Typedef Documentation

◆ DXEGSHDEVDATA

◆ PDXEGSHDEVDATA

Enumeration Type Documentation

◆ _DXEGSHDEVDATA

Enumerator
DxEGShDevData_Surface 
DxEGShDevData_hSpooler 
DxEGShDevData_DitherFmt 
DxEGShDevData_FxCaps 
DxEGShDevData_FxCaps2 
DxEGShDevData_DrvFuncs 
DxEGShDevData_dhpdev 
DxEGShDevData_eddg 
DxEGShDevData_dd_nCount 
DxEGShDevData_dd_flags 
DxEGShDevData_disable 
DxEGShDevData_metadev 
DxEGShDevData_display 
DxEGShDevData_Parent 
DxEGShDevData_OpenRefs 
DxEGShDevData_palette 
DxEGShDevData_ldev 
DxEGShDevData_GDev 
DxEGShDevData_clonedev 

Definition at line 50 of file dxeng.h.

51 {
enum _DXEGSHDEVDATA DXEGSHDEVDATA
enum _DXEGSHDEVDATA * PDXEGSHDEVDATA

Function Documentation

◆ DxEngAltLockSurface()

DWORD NTAPI DxEngAltLockSurface ( DWORD  x1)

Definition at line 799 of file dxeng.c.

800 {
802  return FALSE;
803 }
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngCleanDC()

BOOLEAN NTAPI DxEngCleanDC ( HDC  hdc)

Definition at line 719 of file dxeng.c.

720 {
721  return IntGdiCleanDC(hdc);
722 }
BOOL FASTCALL IntGdiCleanDC(HDC hDC)
Definition: dcstate.c:73
HDC hdc
Definition: main.c:9

◆ DxEngCreateMemoryDC()

HDC NTAPI DxEngCreateMemoryDC ( HDEV  hDev)

Definition at line 655 of file dxeng.c.

656 {
658 }
HDC FASTCALL IntGdiCreateDisplayDC(HDEV hDev, ULONG DcType, BOOL EmptyDC)
Definition: dclife.c:1063
#define DC_TYPE_MEMORY
Definition: ntgdihdl.h:124

◆ DxEngDeleteDC()

BOOLEAN NTAPI DxEngDeleteDC ( HDC  hdc,
BOOL  Force 
)

Definition at line 709 of file dxeng.c.

710 {
711  return IntGdiDeleteDC(hdc, Force);
712 }
BOOL FASTCALL IntGdiDeleteDC(HDC, BOOL)
Definition: dclife.c:892
HDC hdc
Definition: main.c:9
_Inout_ PVCB _In_ BOOLEAN Force
Definition: cdprocs.h:1425

◆ DxEngDeleteSurface()

DWORD NTAPI DxEngDeleteSurface ( DWORD  x1)

Definition at line 781 of file dxeng.c.

782 {
784  return FALSE;
785 }
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngDispUniq()

ULONG NTAPI DxEngDispUniq ( VOID  )

Definition at line 79 of file dxeng.c.

80 {
81  DPRINT1("ReactX Calling : DxEngDispUniq\n");
82  return GdiHandleTable->flDeviceUniq;
83 }
#define GdiHandleTable
Definition: win32nt.h:35
#define DPRINT1
Definition: precomp.h:8

◆ DxEngEnumerateHdev()

HDEV* NTAPI DxEngEnumerateHdev ( HDEV *  hdev)

Definition at line 643 of file dxeng.c.

644 {
645  /* FIXME: Enumerate all drivers in win32k */
647  return FALSE;
648 }
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngGetDCState()

DWORD_PTR NTAPI DxEngGetDCState ( HDC  hDC,
DWORD  type 
)

Definition at line 451 of file dxeng.c.

453 {
454  PDC pDC = DC_LockDc(hDC);
455  DWORD_PTR retVal = 0;
456 
457  DPRINT1("ReactX Calling : DxEngGetDCState type : %lu\n", type);
458 
459  if (pDC)
460  {
461  switch (type)
462  {
463  case 1:
464  retVal = (DWORD_PTR) pDC->fs & DC_FLAG_FULLSCREEN;
465  break;
466  case 2:
467  /* Return the number of rectangles in the visible region. */
468  retVal = (DWORD_PTR) pDC->prgnRao ? pDC->prgnRao->rdh.nCount : pDC->prgnVis->rdh.nCount;
469  break;
470  case 3:
471  {
472  /* Return the HDEV of this DC. */
473  retVal = (DWORD_PTR) pDC->ppdev;
474  break;
475  }
476  default:
477  /* If a valid type is not found, zero is returned */
478  DPRINT1("Warning: did not find type %lu\n", type);
479  break;
480  }
481  DC_UnlockDc(pDC);
482  }
483 
484  return retVal;
485 }
FORCEINLINE PDC DC_LockDc(HDC hdc)
Definition: dc.h:219
#define DWORD_PTR
Definition: treelist.c:76
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
Definition: polytest.cpp:40
uint32_t DWORD_PTR
Definition: typedefs.h:64
static HDC hDC
Definition: 3dtext.c:33
FORCEINLINE VOID DC_UnlockDc(PDC pdc)
Definition: dc.h:237
#define DC_FLAG_FULLSCREEN
Definition: ntgdihdl.h:139
#define DPRINT1
Definition: precomp.h:8

◆ DxEngGetDesktopDC()

HDC NTAPI DxEngGetDesktopDC ( ULONG  DcType,
BOOL  EmptyDC,
BOOL  ValidatehWnd 
)

Definition at line 699 of file dxeng.c.

700 {
701  return UserGetDesktopDC(DcType, EmptyDC, ValidatehWnd);
702 }
HDC FASTCALL UserGetDesktopDC(ULONG DcType, BOOL bAltDc, BOOL ValidatehWnd)
Definition: desktop.c:1536

◆ DxEngGetDeviceGammaRamp()

BOOL NTAPI DxEngGetDeviceGammaRamp ( HDEV  hPDev,
PGAMMARAMP  Ramp 
)

Definition at line 106 of file dxeng.c.

107 {
108  DPRINT1("ReactX Calling : DxEngGetDeviceGammaRamp\n");
109  return IntGetDeviceGammaRamp(hPDev, Ramp);
110 }
BOOL FASTCALL IntGetDeviceGammaRamp(HDEV hPDev, PGAMMARAMP Ramp)
Definition: icm.c:92
#define DPRINT1
Definition: precomp.h:8

◆ DxEngGetHdevData()

DWORD_PTR NTAPI DxEngGetHdevData ( HDEV  ,
DXEGSHDEVDATA   
)

Definition at line 281 of file dxeng.c.

283 {
284  DWORD_PTR retVal = 0;
285  PPDEVOBJ PDev = (PPDEVOBJ)hDev;
286 
287  DPRINT1("ReactX Calling : DxEngGetHdevData DXEGSHDEVDATA : %ld\n", Type);
288 
289 #if 1
290  DPRINT1("HDEV hDev %p\n", hDev);
291 #endif
292 
293  switch ( Type )
294  {
296  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_Surface\n");
297  retVal = (DWORD_PTR) PDev->pSurface; // ptr to Surface handle.
298  break;
300  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_hSpooler\n");
301  retVal = (DWORD_PTR) PDev->hSpooler;
302  break;
304  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_DitherFmt\n");
305  retVal = (DWORD_PTR) PDev->devinfo.iDitherFormat;
306  break;
308  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_FxCaps\n");
309  retVal = (DWORD_PTR) PDev->devinfo.flGraphicsCaps;
310  break;
312  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_FxCaps2\n");
313  retVal = (DWORD_PTR) PDev->devinfo.flGraphicsCaps2;
314  break;
316  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_DrvFuncs\n");
317  retVal = (DWORD_PTR) &PDev->DriverFunctions;
318  break;
320  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_dhpdev\n");
321  retVal = (DWORD_PTR) PDev->dhpdev; // DHPDEV
322  break;
323  case DxEGShDevData_eddg:
324  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_eddg\n");
325  retVal = (DWORD_PTR) PDev->pEDDgpl;
326  break;
328  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_dd_nCount\n");
329  retVal = (DWORD_PTR) PDev->DxDd_nCount;
330  break;
332  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_dd_flags\n");
333  retVal = (DWORD_PTR) PDev->DxDd_Flags;
334  break;
336  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_disable\n");
337  retVal = (DWORD_PTR) PDev->flFlags & PDEV_DISABLED;
338  break;
340  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_metadev\n");
341  retVal = (DWORD_PTR) PDev->flFlags & PDEV_META_DEVICE;
342  break;
344  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_display\n");
345  retVal = (DWORD_PTR) PDev->flFlags & PDEV_DISPLAY;
346  break;
348  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_Parent\n");
349  retVal = (DWORD_PTR) PDev->ppdevParent;
350  break;
352  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_OpenRefs\n");
353  retVal = (DWORD_PTR) PDev->cPdevOpenRefs != 0;
354  break;
356  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_palette\n");
357  retVal = (DWORD_PTR) PDev->gdiinfo.flRaster & RC_PALETTE;
358  break;
359  case DxEGShDevData_ldev:
360  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_ldev\n");
361  retVal = (DWORD_PTR) PDev->pldev;
362  break;
363  case DxEGShDevData_GDev:
364  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_GDev\n");
365  retVal = (DWORD_PTR) PDev->pGraphicsDevice; // P"GRAPHICS_DEVICE"
366  break;
368  DPRINT1("requested DXEGSHDEVDATA DxEGShDevData_clonedev\n");
369  retVal = (DWORD_PTR) PDev->flFlags & PDEV_CLONE_DEVICE;
370  break;
371 
372  default:
373  break;
374  }
375 
376 #if 1
377  DPRINT1("return value %08lx\n", retVal);
378 #endif
379 
380  return retVal;
381 
382 }
DHPDEV dhpdev
Definition: pdevobj.h:121
Type
Definition: Type.h:6
struct _LDEVOBJ * pldev
Definition: pdevobj.h:120
#define DWORD_PTR
Definition: treelist.c:76
GDIINFO gdiinfo
Definition: pdevobj.h:124
struct _PDEVOBJ * PPDEVOBJ
DRIVER_FUNCTIONS DriverFunctions
Definition: pdevobj.h:138
FLONG flFlags
Definition: pdevobj.h:89
LONG cPdevOpenRefs
Definition: pdevobj.h:87
ULONG iDitherFormat
Definition: winddi.h:395
DEVINFO devinfo
Definition: pdevobj.h:123
#define RC_PALETTE
Definition: wingdi.h:789
struct _PDEVOBJ * ppdevParent
Definition: pdevobj.h:88
HANDLE hSpooler
Definition: pdevobj.h:126
ULONG flRaster
Definition: winddi.h:887
uint32_t DWORD_PTR
Definition: typedefs.h:64
ULONG DxDd_nCount
Definition: pdevobj.h:144
struct _EDD_DIRECTDRAW_GLOBAL * pEDDgpl
Definition: pdevobj.h:150
FLONG DxDd_Flags
Definition: pdevobj.h:132
FLONG flGraphicsCaps
Definition: winddi.h:390
PSURFACE pSurface
Definition: pdevobj.h:125
#define DPRINT1
Definition: precomp.h:8
PGRAPHICS_DEVICE pGraphicsDevice
Definition: pdevobj.h:128
FLONG flGraphicsCaps2
Definition: winddi.h:399

◆ DxEngGetRedirectionBitmap()

DWORD NTAPI DxEngGetRedirectionBitmap ( DWORD  x1)

Definition at line 855 of file dxeng.c.

856 {
857  return FALSE; // Normal return.
858 }

◆ DxEngGetSurfaceData()

DWORD NTAPI DxEngGetSurfaceData ( DWORD  x1,
DWORD  x2 
)

Definition at line 790 of file dxeng.c.

791 {
793  return FALSE;
794 }
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngIncDispUniq()

BOOLEAN NTAPI DxEngIncDispUniq ( VOID  )

Definition at line 502 of file dxeng.c.

503 {
504  DPRINT1("ReactX Calling : DxEngIncDispUniq \n");
505 
506  InterlockedIncrement((LONG*)&GdiHandleTable->flDeviceUniq);
507  return TRUE;
508 }
#define TRUE
Definition: types.h:120
long LONG
Definition: pedump.c:60
#define GdiHandleTable
Definition: win32nt.h:35
#define InterlockedIncrement
Definition: armddk.h:53
#define DPRINT1
Definition: precomp.h:8

◆ DxEngIsHdevLockedByCurrentThread()

BOOLEAN NTAPI DxEngIsHdevLockedByCurrentThread ( HDEV  hDev)

Definition at line 676 of file dxeng.c.

677 { // Based on EngIsSemaphoreOwnedByCurrentThread w/o the Ex call.
678  PERESOURCE pSem = (PERESOURCE)(((PPDEVOBJ)hDev)->hsemDevLock);
679  return pSem->OwnerEntry.OwnerThread == (ERESOURCE_THREAD)PsGetCurrentThread();
680 }
ULONG_PTR ERESOURCE_THREAD
Definition: extypes.h:208
#define PsGetCurrentThread()
Definition: env_spec_w32.h:81
ERESOURCE * PERESOURCE
Definition: env_spec_w32.h:595

◆ DxEngLoadImage()

DWORD NTAPI DxEngLoadImage ( DWORD  x1,
DWORD  x2 
)

Definition at line 863 of file dxeng.c.

864 {
866  return FALSE;
867 }
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngLockDC()

PDC NTAPI DxEngLockDC ( HDC  hDC)

Definition at line 131 of file dxeng.c.

132 {
133  DPRINT1("ReactX Calling : DxEngLockDC\n");
134  return DC_LockDc(hDC);
135 }
FORCEINLINE PDC DC_LockDc(HDC hdc)
Definition: dc.h:219
static HDC hDC
Definition: 3dtext.c:33
#define DPRINT1
Definition: precomp.h:8

◆ DxEngLockHdev()

BOOLEAN NTAPI DxEngLockHdev ( HDEV  hdev)

Definition at line 528 of file dxeng.c.

529 {
530  PPDEVOBJ ppdev = (PPDEVOBJ)hDev;
532 
533  DPRINT1("ReactX Calling : DxEngLockHdev \n");
534 
535  DPRINT1("hDev : 0x%p\n",hDev);
536 
537  Resource = (PERESOURCE)ppdev->hsemDevLock;
538 
539  if (Resource)
540  {
542  ExAcquireResourceExclusiveLite( Resource , TRUE); // Lock monitor.
543  }
544  return TRUE;
545 }
#define TRUE
Definition: types.h:120
struct _PDEVOBJ * PPDEVOBJ
BOOLEAN NTAPI ExAcquireResourceExclusiveLite(IN PERESOURCE Resource, IN BOOLEAN Wait)
Definition: resource.c:770
ERESOURCE * PERESOURCE
Definition: env_spec_w32.h:595
_Acquires_exclusive_lock_ Resource _Acquires_shared_lock_ Resource _Inout_ PERESOURCE Resource
Definition: cdprocs.h:848
HSEMAPHORE hsemDevLock
Definition: pdevobj.h:91
if(!(yy_init))
Definition: macro.lex.yy.c:714
#define KeEnterCriticalRegion()
Definition: ke_x.h:83
#define DPRINT1
Definition: precomp.h:8

◆ DxEngLockShareSem()

BOOLEAN NTAPI DxEngLockShareSem ( VOID  )

Definition at line 180 of file dxeng.c.

181 {
182  DPRINT1("ReactX Calling : DxEngLockShareSem\n");
183  if(!ghsemShareDevLock) ghsemShareDevLock = EngCreateSemaphore(); // Hax, should be in dllmain.c
185  return TRUE;
186 }
#define TRUE
Definition: types.h:120
ENGAPI VOID APIENTRY EngAcquireSemaphore(_Inout_ HSEMAPHORE hsem)
#define DPRINT1
Definition: precomp.h:8
HSEMAPHORE WINAPI EngCreateSemaphore(VOID)
Definition: eng.c:75
HSEMAPHORE ghsemShareDevLock
Definition: dxeng.c:13

◆ DxEngMarkSurfaceAsDirectDraw()

DWORD NTAPI DxEngMarkSurfaceAsDirectDraw ( DWORD  x1,
DWORD  x2 
)

Definition at line 817 of file dxeng.c.

818 {
820  return FALSE;
821 }
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngNUIsTermSrv()

BOOLEAN NTAPI DxEngNUIsTermSrv ( VOID  )

Definition at line 600 of file dxeng.c.

601 {
602  /* FIXME: ReactOS does not suport terminal server yet, we can not check if we got connections or not */
604  return FALSE;
605 }
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngRedrawDesktop()

BOOLEAN NTAPI DxEngRedrawDesktop ( VOID  )

Definition at line 615 of file dxeng.c.

616 {
618  return TRUE;
619 }
#define TRUE
Definition: types.h:120
VOID APIENTRY UserRedrawDesktop(VOID)
Definition: desktop.c:1561

◆ DxEngReferenceHdev()

BOOLEAN NTAPI DxEngReferenceHdev ( HDEV  hdev)

Definition at line 586 of file dxeng.c.

587 {
589  /* ALWAYS return true */
590  return TRUE;
591 }
#define TRUE
Definition: types.h:120
VOID FASTCALL IntGdiReferencePdev(PPDEVOBJ pPDev)
Definition: device.c:17

◆ DxEngScreenAccessCheck()

DWORD NTAPI DxEngScreenAccessCheck ( VOID  )

Definition at line 663 of file dxeng.c.

664 {
666 
667  /* We're cheating here and telling dxg.sys it has always had permissions to access the screen */
668  return TRUE;
669 }
#define TRUE
Definition: types.h:120
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngSelectBitmap()

DWORD NTAPI DxEngSelectBitmap ( DWORD  x1,
DWORD  x2 
)

Definition at line 763 of file dxeng.c.

764 {
766  return FALSE;
767 }
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngSelectPaletteToSurface()

DWORD NTAPI DxEngSelectPaletteToSurface ( DWORD  x1,
DWORD  x2 
)

Definition at line 826 of file dxeng.c.

827 {
829  return FALSE;
830 }
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngSetBitmapOwner()

DWORD NTAPI DxEngSetBitmapOwner ( DWORD  x1,
DWORD  x2 
)

Definition at line 772 of file dxeng.c.

773 {
775  return FALSE;
776 }
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngSetDCOwner()

BOOL NTAPI DxEngSetDCOwner ( HGDIOBJ  hObject,
DWORD  OwnerMask 
)

Definition at line 727 of file dxeng.c.

728 {
729  DPRINT1("ReactX Calling : DxEngSetDCOwner \n");
730 
731  return GreSetDCOwner(hObject, OwnerMask);
732 }
BOOL NTAPI GreSetDCOwner(HDC hdc, ULONG ulOwner)
Definition: dclife.c:455
#define DPRINT1
Definition: precomp.h:8

◆ DxEngSetDCState()

BOOLEAN NTAPI DxEngSetDCState ( HDC  hDC,
DWORD  SetType,
DWORD  Set 
)

Definition at line 739 of file dxeng.c.

740 {
741  BOOLEAN Ret = FALSE;
742  PDC pDC = DC_LockDc(hDC);
743 
744  if (pDC)
745  {
746  if (SetType == 1)
747  {
748  if ( Set )
749  pDC->fs |= DC_FLAG_FULLSCREEN;
750  else
751  pDC->fs &= ~DC_FLAG_FULLSCREEN;
752  Ret = TRUE;
753  }
754  DC_UnlockDc(pDC);
755  return Ret; // Everything else returns FALSE.
756  }
757  return Ret;
758 }
#define TRUE
Definition: types.h:120
FORCEINLINE PDC DC_LockDc(HDC hdc)
Definition: dc.h:219
static BOOL Set
Definition: pageheap.c:10
unsigned char BOOLEAN
Definition: polytest.cpp:40
static HDC hDC
Definition: 3dtext.c:33
FORCEINLINE VOID DC_UnlockDc(PDC pdc)
Definition: dc.h:237
#define DC_FLAG_FULLSCREEN
Definition: ntgdihdl.h:139

◆ DxEngSetDeviceGammaRamp()

BOOLEAN NTAPI DxEngSetDeviceGammaRamp ( HDEV  hPDev,
PGAMMARAMP  Ramp,
BOOL  Unuse 
)

Definition at line 234 of file dxeng.c.

235 {
236  DPRINT1("ReactX Calling : DxEngSetDeviceGammaRamp\n");
237  return IntSetDeviceGammaRamp(hPDev, Ramp, Test);
238 }
BOOL FASTCALL IntSetDeviceGammaRamp(HDEV hPDev, PGAMMARAMP Ramp, BOOL Test)
Definition: icm.c:284
#define DPRINT1
Definition: precomp.h:8

◆ DxEngSetHdevData()

BOOLEAN NTAPI DxEngSetHdevData ( HDEV  ,
DXEGSHDEVDATA  ,
DWORD_PTR   
)

Definition at line 408 of file dxeng.c.

411 {
412  BOOLEAN retVal = FALSE; // Default, no set.
413 
414  DPRINT1("ReactX Calling : DxEngSetHdevData DXEGSHDEVDATA : %ld\n", Type);
415 
416  if ( Type == DxEGShDevData_dd_nCount )
417  {
418  ((PPDEVOBJ)hDev)->DxDd_nCount = Data;
419  retVal = TRUE; // Set
420  }
421  return retVal;
422 }
#define TRUE
Definition: types.h:120
Type
Definition: Type.h:6
struct _PDEVOBJ * PPDEVOBJ
unsigned char BOOLEAN
_In_ LPGUID _In_ PVOID Data
Definition: classpnp.h:778
#define DPRINT1
Definition: precomp.h:8

◆ DxEngSetPaletteState()

DWORD NTAPI DxEngSetPaletteState ( DWORD  x1,
DWORD  x2,
DWORD  x3 
)

Definition at line 844 of file dxeng.c.

845 {
847  return FALSE;
848 }
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngSpSpritesVisible()

DWORD NTAPI DxEngSpSpritesVisible ( DWORD  x1)

Definition at line 890 of file dxeng.c.

891 {
893  return FALSE;
894 }
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngSpTearDownSprites()

DWORD NTAPI DxEngSpTearDownSprites ( DWORD  x1,
DWORD  x2,
DWORD  x3 
)

Definition at line 872 of file dxeng.c.

873 {
875  return FALSE;
876 }
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngSpUnTearDownSprites()

DWORD NTAPI DxEngSpUnTearDownSprites ( DWORD  x1,
DWORD  x2,
DWORD  x3 
)

Definition at line 881 of file dxeng.c.

882 {
884  return FALSE;
885 }
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngSyncPaletteTableWithDevice()

DWORD NTAPI DxEngSyncPaletteTableWithDevice ( DWORD  x1,
DWORD  x2 
)

Definition at line 835 of file dxeng.c.

836 {
838  return FALSE;
839 }
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngUnlockDC()

BOOLEAN NTAPI DxEngUnlockDC ( PDC  pDC)

Definition at line 156 of file dxeng.c.

157 {
158  DPRINT1("ReactX Calling : DxEngUnlockDC\n");
159  DC_UnlockDc(pDC);
160  return TRUE;
161 }
#define TRUE
Definition: types.h:120
FORCEINLINE VOID DC_UnlockDc(PDC pdc)
Definition: dc.h:237
#define DPRINT1
Definition: precomp.h:8

◆ DxEngUnlockHdev()

BOOLEAN NTAPI DxEngUnlockHdev ( HDEV  hdev)

Definition at line 565 of file dxeng.c.

566 {
567  PPDEVOBJ ppdev = (PPDEVOBJ)hDev;
569 
570  DPRINT1("ReactX Calling : DxEngUnlockHdev \n");
571 
572  if (Resource)
573  {
576  }
577  return TRUE;
578 }
#define TRUE
Definition: types.h:120
struct _PDEVOBJ * PPDEVOBJ
ERESOURCE * PERESOURCE
Definition: env_spec_w32.h:595
_Acquires_exclusive_lock_ Resource _Acquires_shared_lock_ Resource _Inout_ PERESOURCE Resource
Definition: cdprocs.h:848
HSEMAPHORE hsemDevLock
Definition: pdevobj.h:91
VOID FASTCALL ExReleaseResourceLite(IN PERESOURCE Resource)
Definition: resource.c:1817
#define KeLeaveCriticalRegion()
Definition: ke_x.h:114
#define DPRINT1
Definition: precomp.h:8

◆ DxEngUnlockShareSem()

BOOLEAN NTAPI DxEngUnlockShareSem ( VOID  )

Definition at line 203 of file dxeng.c.

204 {
205  DPRINT1("ReactX Calling : DxEngUnlockShareSem\n");
207  return TRUE;
208 }
VOID WINAPI EngReleaseSemaphore(IN HSEMAPHORE hsem)
Definition: eng.c:235
#define TRUE
Definition: types.h:120
#define DPRINT1
Definition: precomp.h:8
HSEMAPHORE ghsemShareDevLock
Definition: dxeng.c:13

◆ DxEngUnreferenceHdev()

BOOLEAN NTAPI DxEngUnreferenceHdev ( HDEV  hDev)

Definition at line 688 of file dxeng.c.

689 {
690  IntGdiUnreferencePdev((PPDEVOBJ) hDev, 0);
691  return TRUE; // Always true.
692 }
#define TRUE
Definition: types.h:120
VOID FASTCALL IntGdiUnreferencePdev(PPDEVOBJ pPDev, DWORD CleanUpType)
Definition: device.c:23

◆ DxEngUploadPaletteEntryToSurface()

DWORD NTAPI DxEngUploadPaletteEntryToSurface ( DWORD  x1,
DWORD  x2,
DWORD  x3,
DWORD  x4 
)

Definition at line 808 of file dxeng.c.

809 {
811  return FALSE;
812 }
#define UNIMPLEMENTED
Definition: debug.h:115

◆ DxEngVisRgnUniq()

ULONG NTAPI DxEngVisRgnUniq ( VOID  )

Definition at line 630 of file dxeng.c.

631 {
632  DPRINT1("ReactX Calling : DxEngVisRgnUniq \n");
633 
634  return gulVisRgnUniqueness;
635 }
ULONG gulVisRgnUniqueness
Definition: dxeng.c:622
#define DPRINT1
Definition: precomp.h:8