/usr/share/mingw-w64/include/dmemmgr.h is in mingw-w64-common 4.0.4-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 | /**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#ifndef __DMEMMGR_INCLUDED__
#define __DMEMMGR_INCLUDED__
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#define VMEMHEAP_LINEAR __MSABI_LONG(0x1)
#define VMEMHEAP_RECTANGULAR __MSABI_LONG(0x2)
#define VMEMHEAP_ALIGNMENT __MSABI_LONG(0x4)
#define SURFACEALIGN_DISCARDABLE __MSABI_LONG(0x1)
#ifdef __cplusplus
extern "C" {
#endif
typedef ULONG_PTR FLATPTR;
typedef struct _SURFACEALIGNMENT {
__C89_NAMELESS union {
struct {
DWORD dwStartAlignment;
DWORD dwPitchAlignment;
DWORD dwFlags;
DWORD dwReserved2;
} Linear;
struct {
DWORD dwXAlignment;
DWORD dwYAlignment;
DWORD dwFlags;
DWORD dwReserved2;
} Rectangular;
};
} SURFACEALIGNMENT;
typedef struct _HEAPALIGNMENT {
DWORD dwSize;
DDSCAPS ddsCaps;
DWORD dwReserved;
SURFACEALIGNMENT ExecuteBuffer;
SURFACEALIGNMENT Overlay;
SURFACEALIGNMENT Texture;
SURFACEALIGNMENT ZBuffer;
SURFACEALIGNMENT AlphaBuffer;
SURFACEALIGNMENT Offscreen;
SURFACEALIGNMENT FlipTarget;
} HEAPALIGNMENT;
typedef struct _DD_GETHEAPALIGNMENTDATA {
ULONG_PTR dwInstance;
DWORD dwHeap;
HRESULT ddRVal;
VOID *GetHeapAlignment;
HEAPALIGNMENT Alignment;
} DD_GETHEAPALIGNMENTDATA;
typedef struct _VMEML {
struct _VMEML *next;
FLATPTR ptr;
DWORD size;
WINBOOL bDiscardable;
} VMEML,*LPVMEML,**LPLPVMEML;
typedef struct _VMEMR {
struct _VMEMR *next;
struct _VMEMR *prev;
struct _VMEMR *pUp;
struct _VMEMR *pDown;
struct _VMEMR *pLeft;
struct _VMEMR *pRight;
FLATPTR ptr;
DWORD size;
DWORD x;
DWORD y;
DWORD cx;
DWORD cy;
DWORD flags;
FLATPTR pBits;
WINBOOL bDiscardable;
} VMEMR,*LPVMEMR,**LPLPVMEMR;
typedef struct _VMEMHEAP {
DWORD dwFlags;
DWORD stride;
LPVOID freeList;
LPVOID allocList;
DWORD dwTotalSize;
FLATPTR fpGARTLin;
FLATPTR fpGARTDev;
DWORD dwCommitedSize;
DWORD dwCoalesceCount;
HEAPALIGNMENT Alignment;
DDSCAPSEX ddsCapsEx;
DDSCAPSEX ddsCapsExAlt;
#ifndef IS_16
LARGE_INTEGER liPhysAGPBase;
#endif
HANDLE hdevAGP;
LPVOID pvPhysRsrv;
#if NTDDI_VERSION >= 0x05010000
BYTE *pAgpCommitMask;
DWORD dwAgpCommitMaskSize;
#endif
} VMEMHEAP;
#ifndef __NTDDKCOMP__
typedef struct _VIDMEM *LPVIDMEM;
#else
typedef struct _VIDEOMEMORY *LPVIDMEM;
#endif
typedef struct _SURFACEALIGNMENT *LPSURFACEALIGNMENT;
typedef struct _HEAPALIGNMENT *LPHEAPALIGNMENT;
typedef struct _DD_GETHEAPALIGNMENTDATA *PDD_GETHEAPALIGNMENTDATA;
typedef VMEMHEAP *LPVMEMHEAP;
#ifndef __NTDDKCOMP__
extern FLATPTR WINAPI VidMemAlloc (LPVMEMHEAP pvmh, DWORD width, DWORD height);
#endif
extern FLATPTR WINAPI HeapVidMemAllocAligned (LPVIDMEM lpVidMem, DWORD dwWidth, DWORD dwHeight, LPSURFACEALIGNMENT lpAlignment, LPLONG lpNewPitch);
extern void WINAPI VidMemFree (LPVMEMHEAP pvmh, FLATPTR ptr);
#ifdef __cplusplus
};
#endif
#endif
#endif
|