1 #ifndef __WIN32K_MDEVOBJ_H 2 #define __WIN32K_MDEVOBJ_H 3 4 /* Type definitions ***********************************************************/ 5 6 typedef struct _PDEVOBJ *PPDEVOBJ; 7 8 typedef struct _MDEVOBJ 9 { 10 ULONG cDev; 11 PPDEVOBJ ppdevGlobal; 12 struct 13 { 14 PPDEVOBJ ppdev; 15 } dev[10]; /* FIXME: max number of displays. Needs dynamic allocation */ 16 } MDEVOBJ, *PMDEVOBJ; 17 18 /* Globals ********************************************************************/ 19 20 extern PMDEVOBJ gpmdev; /* FIXME: should be stored in gpDispInfo->pmdev */ 21 22 /* Function prototypes ********************************************************/ 23 24 VOID 25 MDEVOBJ_vEnable( 26 _Inout_ PMDEVOBJ pmdev); 27 28 BOOL 29 MDEVOBJ_bDisable( 30 _Inout_ PMDEVOBJ pmdev); 31 32 /* Create a new MDEV: 33 * - pustrDeviceName: name of the device to put in MDEV. If NULL, will put all graphics devices in MDEV 34 * - pdm: settings associated to pustrDeviceName. Unused if pustrDeviceName is NULL. 35 * Return value: the new MDEV (or NULL in case of error) 36 */ 37 PMDEVOBJ 38 MDEVOBJ_Create( 39 _In_opt_ PUNICODE_STRING pustrDeviceName, 40 _In_opt_ PDEVMODEW pdm); 41 42 VOID 43 MDEVOBJ_vDestroy( 44 _Inout_ PMDEVOBJ pmdev); 45 46 #endif /* !__WIN32K_MDEVOBJ_H */ 47