Windows NT 4.0 source code leak
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.
 
 
 
 
 
 

83 lines
2.2 KiB

/*******************************************************************
* ddhelpri.h
*
* private include file for the ddhel
*
* defines the dsmprivate structure which is stored in the directsurface's
* fpvidmem.
*
* history
*
* 4/15/95 created it andyco
* 5/20/95 added macros,etc. andyco
* 6/20/95 cruised the cahced infoheader andyco
*
* Copyright (c) Microsoft Corporation 1994-1995
*
*********************************************************************/
#ifndef __DDHELPRI_INCLUDED__
#define __DDHELPRI_INCLUDED__
#ifdef _WIN32
//#ifdef WINNT //NT_FIX
//typedef ULONG SCODE;
//#endif
//
// flags for our own dwReserved1 field (GLOBAL not LOCAL)
//
#define DDHEL_DONTFREE 0x00000001
//
// pointer value we use to mean, not valid
//
#define SCREEN_PTR 0xFFBADBAD
// some useful macros for extracting info from our private structures
// these macros will need to be extended to handle non-emulated surfaces
#define ISPRIMARY(psurf) ((psurf)->ddsCaps.dwCaps & DDSCAPS_PRIMARYSURFACE)
#define ISVISIBLE(psurf) ((psurf)->ddsCaps.dwCaps & DDSCAPS_VISIBLE)
#define ISEMULATED(psurf) ((psurf)->ddsCaps.dwCaps & DDSCAPS_SYSTEMMEMORY)
#define ISOVERLAY(psurf) ((psurf)->dwFlags & DDRAWISURF_HASOVERLAYDATA)
// prototypes
void PASCAL SurfDibInfo(LPDDRAWI_DDRAWSURFACE_LCL,LPBITMAPINFO);
LPBYTE PASCAL GetSurfPtr(LPDDRAWI_DDRAWSURFACE_LCL,RECTL*);
void PASCAL ReleaseSurfPtr(LPDDRAWI_DDRAWSURFACE_LCL);
// initial screen size.
#define DEFAULT_SCREENWIDTH 640
#define DEFAULT_SCREENHEIGHT 480
// ddhel data structures
// from gfxtypes.h
typedef BITMAPINFO * PDIBINFO;
typedef LPBYTE PDIBBITS;
typedef DWORD ALPHAREF;
#ifdef WIN95
typedef ALPHAREF __RPC_FAR *LPALPHAREF;
#else
typedef ALPHAREF *LPALPHAREF;
#endif //WIN95
#define ALPHA_INVALID 0xffffffff
// the dirty rect structure is used by the overlay code.
typedef struct _dirtyrect
{
BOOL bDelete;
RECT rcRect;
} DIRTYRECT;
typedef DIRTYRECT * PDIRTYRECT;
// functions in overlay.c called from myUpdateOverlay
SCODE UpdateDisplay(LPDDHAL_UPDATEOVERLAYDATA puod);
SCODE AddDirtyRect(LPRECT lpRect);
HRESULT OverlayPound(LPDDHAL_UPDATEOVERLAYDATA puod);
#endif // _WIN32
#endif // __DDHELPRI_INCLUDED__