Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/******************************Module*Header*******************************\ * * Module Name: mcdesc.h * * Defines the enhanced ExtEscape functionality used for MCD support. * * Copyright (c) Microsoft Corporation. All rights reserved. * \**************************************************************************/
#ifndef __MCDESC_H__ #define __MCDESC_H__
// Escape through which all MCD functionality is accessed.
#ifndef MCDFUNCS #define MCDFUNCS 3076 #endif
// Video memory surface description, for DDraw surface rendering.
typedef struct _MCDESC_SURFACE { HANDLE hSurf; LONG lOffset; LONG lStride; RECTL rclPos; } MCDESC_SURFACE;
// Data header for every escape.
typedef struct _MCDESC_HEADER { ULONG flags; HANDLE hRC; HANDLE hSharedMem; VOID *pSharedMem; ULONG sharedMemSize; ULONG_PTR dwWindow; MCDESC_SURFACE msrfColor; MCDESC_SURFACE msrfDepth; ULONG cLockSurfaces; ULONG cExtraWndobj; } MCDESC_HEADER;
// Data header used only on NT.
typedef struct _MCDESC_HEADER_NTPRIVATE { struct _WNDOBJ *pwo; VOID *pBuffer; ULONG bufferSize; HANDLE *pLockSurfaces; HDC *pExtraWndobj; } MCDESC_HEADER_NTPRIVATE;
// MCDESC_HEADER flags.
#define MCDESC_FL_CREATE_CONTEXT 0x00000001 #define MCDESC_FL_SURFACES 0x00000002 #define MCDESC_FL_LOCK_SURFACES 0x00000004 #define MCDESC_FL_EXTRA_WNDOBJ 0x00000008 #define MCDESC_FL_DISPLAY_LOCK 0x00000010 #define MCDESC_FL_BATCH 0x00000020 // Used only for Win95. #define MCDESC_FL_SWAPBUFFER 0x00000040
#define MCDESC_MAX_LOCK_SURFACES 12 #define MCDESC_MAX_EXTRA_WNDOBJ 16
// MCDSURFACE_HWND alias, used when creating contexts. #define MCDESC_SURFACE_HWND 0x00000001
// Context creation information. typedef struct _MCDESC_CREATE_CONTEXT { ULONG flags; HWND hwnd; } MCDESC_CREATE_CONTEXT;
#endif // __MCDESC_H__
|