reactos/subsystems/win32/win32k/include/monitor.h
Jérôme Gardou c16ad873a6 sync with trunk (r46275)
svn path=/branches/reactos-yarotows/; revision=46279
2010-03-19 21:09:21 +00:00

44 lines
1.1 KiB
C

#pragma once
/* monitor object */
typedef struct _MONITOR
{
HEAD head;
//
FAST_MUTEX Lock; /* R/W lock */
UNICODE_STRING DeviceName; /* name of the monitor */
PDEVOBJ *GdiDevice; /* pointer to the GDI device to
which this monitor is attached */
// This is the structure Windows uses:
// struct _MONITOR* pMonitorNext;
union {
DWORD dwMONFlags;
struct {
DWORD IsVisible:1;
DWORD IsPalette:1;
DWORD IsPrimary:1; /* wether this is the primary monitor */
};};
RECT rcMonitor;
RECT rcWork;
HRGN hrgnMonitor;
SHORT Spare0;
SHORT cWndStack;
HDEV hDev;
HDEV hDevReal;
// BYTE DockTargets[4][7];
// Use LIST_ENTRY
struct _MONITOR* Next; //Flink;
struct _MONITOR* Prev; //Blink;
} MONITOR, *PMONITOR;
/* functions */
NTSTATUS InitMonitorImpl();
NTSTATUS CleanupMonitorImpl();
NTSTATUS IntAttachMonitor(PDEVOBJ *pGdiDevice, ULONG DisplayNumber);
NTSTATUS IntDetachMonitor(PDEVOBJ *pGdiDevice);
PMONITOR FASTCALL UserGetMonitorObject(IN HMONITOR);
PMONITOR FASTCALL IntGetPrimaryMonitor(VOID);
/* EOF */