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.
|
|
/*==========================================================================;
* * Copyright (C) 1994-1996 Microsoft Corporation. All Rights Reserved. * * File: dmemmgr.h * Content: Direct Memory Manager include file *@@BEGIN_MSINTERNAL * History: * Date By Reason * ==== == ====== * 10-jun-95 craige initial implementation * 18-jun-95 craige pitch in VidMemInit * 17-jul-95 craige added VidMemLargestFree * 29-nov-95 colinmc added VidMemAmountAllocated *@@END_MSINTERNAL ***************************************************************************/
#ifndef __DMEMMGR_INCLUDED__
#define __DMEMMGR_INCLUDED__
#ifdef __cplusplus
extern "C" { #endif
/*
* pointer to video meory */ typedef unsigned long FLATPTR;
/*
* video memory manager structures */ typedef struct _VMEML { struct _VMEML FAR *next; FLATPTR ptr; DWORD size; } VMEML, FAR *LPVMEML, FAR * FAR *LPLPVMEML;
typedef struct _VMEMR { struct _VMEMR FAR *next; struct _VMEMR FAR *prev; struct _VMEMR FAR *pUp; struct _VMEMR FAR *pDown; struct _VMEMR FAR *pLeft; struct _VMEMR FAR *pRight; FLATPTR ptr; DWORD size; DWORD x; DWORD y; DWORD cx; DWORD cy; DWORD flags; } VMEMR, FAR *LPVMEMR, FAR * FAR *LPLPVMEMR;
#ifdef NT_KERNEL_HEAPS
typedef void VMEMHEAP; #else
typedef struct _VMEMHEAP { DWORD dwFlags; DWORD stride; LPVOID freeList; LPVOID allocList; } VMEMHEAP; #endif
typedef VMEMHEAP FAR *LPVMEMHEAP;
#define VMEMHEAP_LINEAR 0x00000001l
#define VMEMHEAP_RECTANGULAR 0x00000002l
extern FLATPTR WINAPI VidMemAlloc( LPVMEMHEAP pvmh, DWORD width, DWORD height ); extern void WINAPI VidMemFree( LPVMEMHEAP pvmh, FLATPTR ptr );
//@@BEGIN_MSINTERNAL
extern LPVMEMHEAP WINAPI VidMemInit( DWORD flags, FLATPTR start, FLATPTR end_or_width, DWORD height, DWORD pitch ); extern void WINAPI VidMemFini( LPVMEMHEAP pvmh ); extern DWORD WINAPI VidMemAmountFree( LPVMEMHEAP pvmh ); extern DWORD WINAPI VidMemAmountAllocated( LPVMEMHEAP pvmh ); extern DWORD WINAPI VidMemLargestFree( LPVMEMHEAP pvmh ); extern void WINAPI VidMemGetRectStride( LPVMEMHEAP pvmh, LPLONG newstride ); //@@END_MSINTERNAL
#ifdef __cplusplus
}; #endif
#endif
|