1 /* 2 * Copyright 2016 Henri Verbeet for CodeWeavers 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Lesser General Public 6 * License as published by the Free Software Foundation; either 7 * version 2.1 of the License, or (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Lesser General Public License for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public 15 * License along with this library; if not, write to the Free Software 16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 17 */ 18 19 #ifndef __WINE_D3DUKMDT_H 20 #define __WINE_D3DUKMDT_H 21 22 #ifndef MAKEFOURCC 23 #define MAKEFOURCC(ch0, ch1, ch2, ch3) \ 24 ((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | \ 25 ((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24)) 26 #endif /* MAKEFOURCC */ 27 28 typedef enum _D3DDDIFORMAT 29 { 30 D3DDDIFMT_UNKNOWN = 0, 31 D3DDDIFMT_R8G8B8 = 0x14, 32 D3DDDIFMT_A8R8G8B8 = 0x15, 33 D3DDDIFMT_X8R8G8B8 = 0x16, 34 D3DDDIFMT_R5G6B5 = 0x17, 35 D3DDDIFMT_X1R5G5B5 = 0x18, 36 D3DDDIFMT_A1R5G5B5 = 0x19, 37 D3DDDIFMT_A4R4G4B4 = 0x1a, 38 D3DDDIFMT_R3G3B2 = 0x1b, 39 D3DDDIFMT_A8 = 0x1c, 40 D3DDDIFMT_A8R3G3B2 = 0x1d, 41 D3DDDIFMT_X4R4G4B4 = 0x1e, 42 D3DDDIFMT_A2B10G10R10 = 0x1f, 43 D3DDDIFMT_A8B8G8R8 = 0x20, 44 D3DDDIFMT_X8B8G8R8 = 0x21, 45 D3DDDIFMT_G16R16 = 0x22, 46 D3DDDIFMT_A2R10G10B10 = 0x23, 47 D3DDDIFMT_A16B16G16R16 = 0x24, 48 D3DDDIFMT_A8P8 = 0x28, 49 D3DDDIFMT_P8 = 0x29, 50 D3DDDIFMT_L8 = 0x32, 51 D3DDDIFMT_A8L8 = 0x33, 52 D3DDDIFMT_A4L4 = 0x34, 53 D3DDDIFMT_V8U8 = 0x3c, 54 D3DDDIFMT_L6V5U5 = 0x3d, 55 D3DDDIFMT_X8L8V8U8 = 0x3e, 56 D3DDDIFMT_Q8W8V8U8 = 0x3f, 57 D3DDDIFMT_V16U16 = 0x40, 58 D3DDDIFMT_W11V11U10 = 0x41, 59 D3DDDIFMT_A2W10V10U10 = 0x43, 60 D3DDDIFMT_D16_LOCKABLE = 0x46, 61 D3DDDIFMT_D32 = 0x47, 62 D3DDDIFMT_S1D15 = 0x48, 63 D3DDDIFMT_D15S1 = 0x49, 64 D3DDDIFMT_S8D24 = 0x4a, 65 D3DDDIFMT_D24S8 = 0x4b, 66 D3DDDIFMT_X8D24 = 0x4c, 67 D3DDDIFMT_D24X8 = 0x4d, 68 D3DDDIFMT_X4S4D24 = 0x4e, 69 D3DDDIFMT_D24X4S4 = 0x4f, 70 D3DDDIFMT_D16 = 0x50, 71 D3DDDIFMT_L16 = 0x51, 72 D3DDDIFMT_D32F_LOCKABLE = 0x52, 73 D3DDDIFMT_D24FS8 = 0x53, 74 D3DDDIFMT_D32_LOCKABLE = 0x54, 75 D3DDDIFMT_S8_LOCKABLE = 0x55, 76 D3DDDIFMT_G8R8 = 0x5b, 77 D3DDDIFMT_R8 = 0x5c, 78 D3DDDIFMT_VERTEXDATA = 0x64, 79 D3DDDIFMT_INDEX16 = 0x65, 80 D3DDDIFMT_INDEX32 = 0x66, 81 D3DDDIFMT_Q16W16V16U16 = 0x6e, 82 D3DDDIFMT_R16F = 0x6f, 83 D3DDDIFMT_G16R16F = 0x70, 84 D3DDDIFMT_A16B16G16R16F = 0x71, 85 D3DDDIFMT_R32F = 0x72, 86 D3DDDIFMT_G32R32F = 0x73, 87 D3DDDIFMT_A32B32G32R32F = 0x74, 88 D3DDDIFMT_CxV8U8 = 0x75, 89 D3DDDIFMT_A1 = 0x76, 90 D3DDDIFMT_A2B10G10R10_XR_BIAS = 0x77, 91 D3DDDIFMT_DXVACOMPBUFFER_BASE = 0x96, 92 D3DDDIFMT_PICTUREPARAMSDATA = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0, 93 D3DDDIFMT_MACROBLOCKDATA = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x01, 94 D3DDDIFMT_RESIDUALDIFFERENCEDATA = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x02, 95 D3DDDIFMT_DEBLOCKINGDATA = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x03, 96 D3DDDIFMT_INVERSEQUANTIZATIONDATA = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x04, 97 D3DDDIFMT_SLICECONTROLDATA = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x05, 98 D3DDDIFMT_BITSTREAMDATA = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x06, 99 D3DDDIFMT_MOTIONVECTORBUFFER = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x07, 100 D3DDDIFMT_FILMGRAINBUFFER = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x08, 101 D3DDDIFMT_DXVA_RESERVED9 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x09, 102 D3DDDIFMT_DXVA_RESERVED10 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x0a, 103 D3DDDIFMT_DXVA_RESERVED11 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x0b, 104 D3DDDIFMT_DXVA_RESERVED12 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x0c, 105 D3DDDIFMT_DXVA_RESERVED13 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x0d, 106 D3DDDIFMT_DXVA_RESERVED14 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x0e, 107 D3DDDIFMT_DXVA_RESERVED15 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x0f, 108 D3DDDIFMT_DXVA_RESERVED16 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x10, 109 D3DDDIFMT_DXVA_RESERVED17 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x11, 110 D3DDDIFMT_DXVA_RESERVED18 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x12, 111 D3DDDIFMT_DXVA_RESERVED19 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x13, 112 D3DDDIFMT_DXVA_RESERVED20 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x14, 113 D3DDDIFMT_DXVA_RESERVED21 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x15, 114 D3DDDIFMT_DXVA_RESERVED22 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x16, 115 D3DDDIFMT_DXVA_RESERVED23 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x17, 116 D3DDDIFMT_DXVA_RESERVED24 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x18, 117 D3DDDIFMT_DXVA_RESERVED25 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x19, 118 D3DDDIFMT_DXVA_RESERVED26 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x1a, 119 D3DDDIFMT_DXVA_RESERVED27 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x1b, 120 D3DDDIFMT_DXVA_RESERVED28 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x1c, 121 D3DDDIFMT_DXVA_RESERVED29 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x1d, 122 D3DDDIFMT_DXVA_RESERVED30 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x1e, 123 D3DDDIFMT_DXVA_RESERVED31 = D3DDDIFMT_DXVACOMPBUFFER_BASE + 0x1f, 124 D3DDDIFMT_DXVACOMPBUFFER_MAX = D3DDDIFMT_DXVA_RESERVED31, 125 D3DDDIFMT_BINARYBUFFER = 0xc7, 126 D3DDDIFMT_DXT1 = MAKEFOURCC('D', 'X', 'T', '1'), 127 D3DDDIFMT_DXT2 = MAKEFOURCC('D', 'X', 'T', '2'), 128 D3DDDIFMT_DXT3 = MAKEFOURCC('D', 'X', 'T', '3'), 129 D3DDDIFMT_DXT4 = MAKEFOURCC('D', 'X', 'T', '4'), 130 D3DDDIFMT_DXT5 = MAKEFOURCC('D', 'X', 'T', '5'), 131 D3DDDIFMT_G8R8_G8B8 = MAKEFOURCC('G', 'R', 'G', 'B'), 132 D3DDDIFMT_MULTI2_ARGB8 = MAKEFOURCC('M', 'E', 'T', '1'), 133 D3DDDIFMT_R8G8_B8G8 = MAKEFOURCC('R', 'G', 'B', 'G'), 134 D3DDDIFMT_UYVY = MAKEFOURCC('U', 'Y', 'V', 'Y'), 135 D3DDDIFMT_YUY2 = MAKEFOURCC('Y', 'U', 'Y', '2'), 136 D3DDDIFMT_FORCE_UINT = 0x7fffffff, 137 } D3DDDIFORMAT; 138 139 #endif /* __WINE_D3DUKMDT_H */ 140