1 module aurora.directx.d3d11.d3d11_0; 2 3 version(Windows): 4 5 public import std.bitmanip; 6 public import aurora.directx.com; 7 public import aurora.directx.dxgi; 8 public import aurora.directx.d3d.d3dcommon; 9 public import aurora.directx.d3d11.d3d11shader; 10 public import aurora.directx.d3d11.d3d11sdklayers; 11 public import aurora.directx.d3d11.d3d11shadertracing; 12 13 public: 14 15 /// 16 /// Constants 17 /// 18 enum int D3D11_16BIT_INDEX_STRIP_CUT_VALUE = 0xffff; 19 enum int D3D11_32BIT_INDEX_STRIP_CUT_VALUE = 0xffffffff; 20 enum int D3D11_8BIT_INDEX_STRIP_CUT_VALUE = 0xff; 21 enum int D3D11_ARRAY_AXIS_ADDRESS_RANGE_BIT_COUNT = 9; 22 enum int D3D11_CLIP_OR_CULL_DISTANCE_COUNT = 8; 23 enum int D3D11_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT = 2; 24 enum int D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT = 14; 25 enum int D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENTS = 4; 26 enum int D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT = 32; 27 enum int D3D11_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT = 15; 28 enum int D3D11_COMMONSHADER_CONSTANT_BUFFER_PARTIAL_UPDATE_EXTENTS_BYTE_ALIGNMENT = 16; 29 enum int D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS = 4; 30 enum int D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT = 15; 31 enum int D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST = 1; 32 enum int D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS = 1; 33 enum int D3D11_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT = 64; 34 enum int D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS = 4; 35 enum int D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT = 1; 36 enum int D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST = 1; 37 enum int D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS = 1; 38 enum int D3D11_COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT = 32; 39 enum int D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS = 1; 40 enum int D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT = 128; 41 enum int D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST = 1; 42 enum int D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS = 1; 43 enum int D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT = 128; 44 enum int D3D11_COMMONSHADER_SAMPLER_REGISTER_COMPONENTS = 1; 45 enum int D3D11_COMMONSHADER_SAMPLER_REGISTER_COUNT = 16; 46 enum int D3D11_COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST = 1; 47 enum int D3D11_COMMONSHADER_SAMPLER_REGISTER_READ_PORTS = 1; 48 enum int D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT = 16; 49 enum int D3D11_COMMONSHADER_SUBROUTINE_NESTING_LIMIT = 32; 50 enum int D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENTS = 4; 51 enum int D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT = 32; 52 enum int D3D11_COMMONSHADER_TEMP_REGISTER_COUNT = 4096; 53 enum int D3D11_COMMONSHADER_TEMP_REGISTER_READS_PER_INST = 3; 54 enum int D3D11_COMMONSHADER_TEMP_REGISTER_READ_PORTS = 3; 55 enum int D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX = 10; 56 enum int D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN = -10; 57 enum int D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE = -8; 58 enum int D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE = 7; 59 enum int D3D11_CS_4_X_BUCKET00_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 256; 60 enum int D3D11_CS_4_X_BUCKET00_MAX_NUM_THREADS_PER_GROUP = 64; 61 enum int D3D11_CS_4_X_BUCKET01_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 240; 62 enum int D3D11_CS_4_X_BUCKET01_MAX_NUM_THREADS_PER_GROUP = 68; 63 enum int D3D11_CS_4_X_BUCKET02_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 224; 64 enum int D3D11_CS_4_X_BUCKET02_MAX_NUM_THREADS_PER_GROUP = 72; 65 enum int D3D11_CS_4_X_BUCKET03_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 208; 66 enum int D3D11_CS_4_X_BUCKET03_MAX_NUM_THREADS_PER_GROUP = 76; 67 enum int D3D11_CS_4_X_BUCKET04_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 192; 68 enum int D3D11_CS_4_X_BUCKET04_MAX_NUM_THREADS_PER_GROUP = 84; 69 enum int D3D11_CS_4_X_BUCKET05_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 176; 70 enum int D3D11_CS_4_X_BUCKET05_MAX_NUM_THREADS_PER_GROUP = 92; 71 enum int D3D11_CS_4_X_BUCKET06_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 160; 72 enum int D3D11_CS_4_X_BUCKET06_MAX_NUM_THREADS_PER_GROUP = 100; 73 enum int D3D11_CS_4_X_BUCKET07_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 144; 74 enum int D3D11_CS_4_X_BUCKET07_MAX_NUM_THREADS_PER_GROUP = 112; 75 enum int D3D11_CS_4_X_BUCKET08_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 128; 76 enum int D3D11_CS_4_X_BUCKET08_MAX_NUM_THREADS_PER_GROUP = 128; 77 enum int D3D11_CS_4_X_BUCKET09_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 112; 78 enum int D3D11_CS_4_X_BUCKET09_MAX_NUM_THREADS_PER_GROUP = 144; 79 enum int D3D11_CS_4_X_BUCKET10_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 96; 80 enum int D3D11_CS_4_X_BUCKET10_MAX_NUM_THREADS_PER_GROUP = 168; 81 enum int D3D11_CS_4_X_BUCKET11_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 80; 82 enum int D3D11_CS_4_X_BUCKET11_MAX_NUM_THREADS_PER_GROUP = 204; 83 enum int D3D11_CS_4_X_BUCKET12_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 64; 84 enum int D3D11_CS_4_X_BUCKET12_MAX_NUM_THREADS_PER_GROUP = 256; 85 enum int D3D11_CS_4_X_BUCKET13_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 48; 86 enum int D3D11_CS_4_X_BUCKET13_MAX_NUM_THREADS_PER_GROUP = 34; 87 enum int D3D11_CS_4_X_BUCKET14_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 32; 88 enum int D3D11_CS_4_X_BUCKET14_MAX_NUM_THREADS_PER_GROUP = 512; 89 enum int D3D11_CS_4_X_BUCKET15_MAX_BYTES_TGSM_WRITABLE_PER_THREAD = 16; 90 enum int D3D11_CS_4_X_BUCKET15_MAX_NUM_THREADS_PER_GROUP = 768; 91 enum int D3D11_CS_4_X_DISPATCH_MAX_THREAD_GROUPS_IN_Z_DIMENSION = 1; 92 enum int D3D11_CS_4_X_RAW_UAV_BYTE_ALIGNMENT = 256; 93 enum int D3D11_CS_4_X_THREAD_GROUP_MAX_THREADS_PER_GROUP = 768; 94 enum int D3D11_CS_4_X_THREAD_GROUP_MAX_X = 768; 95 enum int D3D11_CS_4_X_THREAD_GROUP_MAX_Y = 768; 96 enum int D3D11_CS_4_X_UAV_REGISTER_COUNT = 1; 97 enum int D3D11_CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION = 65535; 98 enum int D3D11_CS_TGSM_REGISTER_COUNT = 8192; 99 enum int D3D11_CS_TGSM_REGISTER_READS_PER_INST = 1; 100 enum int D3D11_CS_TGSM_RESOURCE_REGISTER_COMPONENTS = 1; 101 enum int D3D11_CS_TGSM_RESOURCE_REGISTER_READ_PORTS = 1; 102 enum int D3D11_CS_THREADGROUPID_REGISTER_COMPONENTS = 3; 103 enum int D3D11_CS_THREADGROUPID_REGISTER_COUNT = 1; 104 enum int D3D11_CS_THREADIDINGROUPFLATTENED_REGISTER_COMPONENTS = 1; 105 enum int D3D11_CS_THREADIDINGROUPFLATTENED_REGISTER_COUNT = 1; 106 enum int D3D11_CS_THREADIDINGROUP_REGISTER_COMPONENTS = 3; 107 enum int D3D11_CS_THREADIDINGROUP_REGISTER_COUNT = 1; 108 enum int D3D11_CS_THREADID_REGISTER_COMPONENTS = 3; 109 enum int D3D11_CS_THREADID_REGISTER_COUNT = 1; 110 enum int D3D11_CS_THREAD_GROUP_MAX_THREADS_PER_GROUP = 1024; 111 enum int D3D11_CS_THREAD_GROUP_MAX_X = 1024; 112 enum int D3D11_CS_THREAD_GROUP_MAX_Y = 1024; 113 enum int D3D11_CS_THREAD_GROUP_MAX_Z = 64; 114 enum int D3D11_CS_THREAD_GROUP_MIN_X = 1; 115 enum int D3D11_CS_THREAD_GROUP_MIN_Y = 1; 116 enum int D3D11_CS_THREAD_GROUP_MIN_Z = 1; 117 enum int D3D11_CS_THREAD_LOCAL_TEMP_REGISTER_POOL = 16384; 118 enum float D3D11_DEFAULT_BLEND_FACTOR_ALPHA = 1.0f; 119 enum float D3D11_DEFAULT_BLEND_FACTOR_BLUE = 1.0f; 120 enum float D3D11_DEFAULT_BLEND_FACTOR_GREEN = 1.0f; 121 enum float D3D11_DEFAULT_BLEND_FACTOR_RED = 1.0f; 122 enum float D3D11_DEFAULT_BORDER_COLOR_COMPONENT = 0.0f; 123 enum int D3D11_DEFAULT_DEPTH_BIAS = 0; 124 enum float D3D11_DEFAULT_DEPTH_BIAS_CLAMP = 0.0f; 125 enum int D3D11_DEFAULT_MAX_ANISOTROPY = 16; 126 enum float D3D11_DEFAULT_MIP_LOD_BIAS = 0.0f; 127 enum int D3D11_DEFAULT_RENDER_TARGET_ARRAY_INDEX = 0; 128 enum int D3D11_DEFAULT_SAMPLE_MASK = 0xffffffff; 129 enum int D3D11_DEFAULT_SCISSOR_ENDX = 0; 130 enum int D3D11_DEFAULT_SCISSOR_ENDY = 0; 131 enum int D3D11_DEFAULT_SCISSOR_STARTX = 0; 132 enum int D3D11_DEFAULT_SCISSOR_STARTY = 0; 133 enum float D3D11_DEFAULT_SLOPE_SCALED_DEPTH_BIAS = 0.0f; 134 enum int D3D11_DEFAULT_STENCIL_READ_MASK = 0xff; 135 enum int D3D11_DEFAULT_STENCIL_REFERENCE = 0; 136 enum int D3D11_DEFAULT_STENCIL_WRITE_MASK = 0xff; 137 enum int D3D11_DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX = 0; 138 enum int D3D11_DEFAULT_VIEWPORT_HEIGHT = 0; 139 enum float D3D11_DEFAULT_VIEWPORT_MAX_DEPTH = 0.0f; 140 enum float D3D11_DEFAULT_VIEWPORT_MIN_DEPTH = 0.0f; 141 enum int D3D11_DEFAULT_VIEWPORT_TOPLEFTX = 0; 142 enum int D3D11_DEFAULT_VIEWPORT_TOPLEFTY = 0; 143 enum int D3D11_DEFAULT_VIEWPORT_WIDTH = 0; 144 enum int D3D11_DS_INPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS = 3968; 145 enum int D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COMPONENTS = 4; 146 enum int D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT = 32; 147 enum int D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COUNT = 32; 148 enum int D3D11_DS_INPUT_CONTROL_POINT_REGISTER_READS_PER_INST = 2; 149 enum int D3D11_DS_INPUT_CONTROL_POINT_REGISTER_READ_PORTS = 1; 150 enum int D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENTS = 3; 151 enum int D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENT_BIT_COUNT = 32; 152 enum int D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_COUNT = 1; 153 enum int D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_READS_PER_INST = 2; 154 enum int D3D11_DS_INPUT_DOMAIN_POINT_REGISTER_READ_PORTS = 1; 155 enum int D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENTS = 4; 156 enum int D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT = 32; 157 enum int D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_COUNT = 32; 158 enum int D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST = 2; 159 enum int D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_READ_PORTS = 1; 160 enum int D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS = 1; 161 enum int D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT = 32; 162 enum int D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_COUNT = 1; 163 enum int D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST = 2; 164 enum int D3D11_DS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS = 1; 165 enum int D3D11_DS_OUTPUT_REGISTER_COMPONENTS = 4; 166 enum int D3D11_DS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32; 167 enum int D3D11_DS_OUTPUT_REGISTER_COUNT = 32; 168 enum float D3D11_FLOAT16_FUSED_TOLERANCE_IN_ULP = 0.6f; 169 enum float D3D11_FLOAT32_MAX = 3.402823466e+38f; 170 enum float D3D11_FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP = 0.6f; 171 enum float D3D11_FLOAT_TO_SRGB_EXPONENT_DENOMINATOR = 2.4f; 172 enum float D3D11_FLOAT_TO_SRGB_EXPONENT_NUMERATOR = 1.0f; 173 enum float D3D11_FLOAT_TO_SRGB_OFFSET = 0.055f; 174 enum float D3D11_FLOAT_TO_SRGB_SCALE_1 = 12.92f; 175 enum float D3D11_FLOAT_TO_SRGB_SCALE_2 = 1.055f; 176 enum float D3D11_FLOAT_TO_SRGB_THRESHOLD = 0.0031308f; 177 enum float D3D11_FTOI_INSTRUCTION_MAX_INPUT = 2147483647.999f; 178 enum float D3D11_FTOI_INSTRUCTION_MIN_INPUT = -2147483648.999f; 179 enum float D3D11_FTOU_INSTRUCTION_MAX_INPUT = 4294967295.999f; 180 enum float D3D11_FTOU_INSTRUCTION_MIN_INPUT = 0.0f; 181 enum int D3D11_GS_INPUT_INSTANCE_ID_READS_PER_INST = 2; 182 enum int D3D11_GS_INPUT_INSTANCE_ID_READ_PORTS = 1; 183 enum int D3D11_GS_INPUT_INSTANCE_ID_REGISTER_COMPONENTS = 1; 184 enum int D3D11_GS_INPUT_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT = 32; 185 enum int D3D11_GS_INPUT_INSTANCE_ID_REGISTER_COUNT = 1; 186 enum int D3D11_GS_INPUT_PRIM_CONST_REGISTER_COMPONENTS = 1; 187 enum int D3D11_GS_INPUT_PRIM_CONST_REGISTER_COMPONENT_BIT_COUNT = 32; 188 enum int D3D11_GS_INPUT_PRIM_CONST_REGISTER_COUNT = 1; 189 enum int D3D11_GS_INPUT_PRIM_CONST_REGISTER_READS_PER_INST = 2; 190 enum int D3D11_GS_INPUT_PRIM_CONST_REGISTER_READ_PORTS = 1; 191 enum int D3D11_GS_INPUT_REGISTER_COMPONENTS = 4; 192 enum int D3D11_GS_INPUT_REGISTER_COMPONENT_BIT_COUNT = 32; 193 enum int D3D11_GS_INPUT_REGISTER_COUNT = 32; 194 enum int D3D11_GS_INPUT_REGISTER_READS_PER_INST = 2; 195 enum int D3D11_GS_INPUT_REGISTER_READ_PORTS = 1; 196 enum int D3D11_GS_INPUT_REGISTER_VERTICES = 32; 197 enum int D3D11_GS_MAX_INSTANCE_COUNT = 32; 198 enum int D3D11_GS_MAX_OUTPUT_VERTEX_COUNT_ACROSS_INSTANCES = 1024; 199 enum int D3D11_GS_OUTPUT_ELEMENTS = 32; 200 enum int D3D11_GS_OUTPUT_REGISTER_COMPONENTS = 4; 201 enum int D3D11_GS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32; 202 enum int D3D11_GS_OUTPUT_REGISTER_COUNT = 32; 203 enum int D3D11_HS_CONTROL_POINT_PHASE_INPUT_REGISTER_COUNT = 32; 204 enum int D3D11_HS_CONTROL_POINT_PHASE_OUTPUT_REGISTER_COUNT = 32; 205 enum int D3D11_HS_CONTROL_POINT_REGISTER_COMPONENTS = 4; 206 enum int D3D11_HS_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT = 32; 207 enum int D3D11_HS_CONTROL_POINT_REGISTER_READS_PER_INST = 2; 208 enum int D3D11_HS_CONTROL_POINT_REGISTER_READ_PORTS = 1; 209 enum int D3D11_HS_FORK_PHASE_INSTANCE_COUNT_UPPER_BOUND = 0xffffffff; 210 enum int D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENTS = 1; 211 enum int D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT = 32; 212 enum int D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_COUNT = 1; 213 enum int D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_READS_PER_INST = 2; 214 enum int D3D11_HS_INPUT_FORK_INSTANCE_ID_REGISTER_READ_PORTS = 1; 215 enum int D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENTS = 1; 216 enum int D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT = 32; 217 enum int D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COUNT = 1; 218 enum int D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READS_PER_INST = 2; 219 enum int D3D11_HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READ_PORTS = 1; 220 enum int D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS = 1; 221 enum int D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT = 32; 222 enum int D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_COUNT = 1; 223 enum int D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST = 2; 224 enum int D3D11_HS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS = 1; 225 enum int D3D11_HS_JOIN_PHASE_INSTANCE_COUNT_UPPER_BOUND = 0xffffffff; 226 enum float D3D11_HS_MAXTESSFACTOR_LOWER_BOUND = 1.0f; 227 enum float D3D11_HS_MAXTESSFACTOR_UPPER_BOUND = 64.0f; 228 enum int D3D11_HS_OUTPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS = 3968; 229 enum int D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENTS = 1; 230 enum int D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENT_BIT_COUNT = 32; 231 enum int D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COUNT = 1; 232 enum int D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READS_PER_INST = 2; 233 enum int D3D11_HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READ_PORTS = 1; 234 enum int D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENTS = 4; 235 enum int D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT = 32; 236 enum int D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COUNT = 32; 237 enum int D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST = 2; 238 enum int D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_READ_PORTS = 1; 239 enum int D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_SCALAR_COMPONENTS = 128; 240 enum int D3D11_IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES = 0; 241 enum int D3D11_IA_DEFAULT_PRIMITIVE_TOPOLOGY = 0; 242 enum int D3D11_IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES = 0; 243 enum int D3D11_IA_INDEX_INPUT_RESOURCE_SLOT_COUNT = 1; 244 enum int D3D11_IA_INSTANCE_ID_BIT_COUNT = 32; 245 enum int D3D11_IA_INTEGER_ARITHMETIC_BIT_COUNT = 32; 246 enum int D3D11_IA_PATCH_MAX_CONTROL_POINT_COUNT = 32; 247 enum int D3D11_IA_PRIMITIVE_ID_BIT_COUNT = 32; 248 enum int D3D11_IA_VERTEX_ID_BIT_COUNT = 32; 249 enum int D3D11_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT = 32; 250 enum int D3D11_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS = 128; 251 enum int D3D11_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT = 32; 252 enum int D3D11_INTEGER_DIVIDE_BY_ZERO_QUOTIENT = 0xffffffff; 253 enum int D3D11_INTEGER_DIVIDE_BY_ZERO_REMAINDER = 0xffffffff; 254 enum int D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL = 0xffffffff; 255 enum int D3D11_KEEP_UNORDERED_ACCESS_VIEWS = 0xffffffff; 256 enum float D3D11_LINEAR_GAMMA = 1.0f; 257 enum int D3D11_MAJOR_VERSION = 11; 258 enum float D3D11_MAX_BORDER_COLOR_COMPONENT = 1.0f; 259 enum float D3D11_MAX_DEPTH = 1.0f; 260 enum int D3D11_MAX_MAXANISOTROPY = 16; 261 enum int D3D11_MAX_MULTISAMPLE_SAMPLE_COUNT = 32; 262 enum float D3D11_MAX_POSITION_VALUE = 3.402823466e+34f; 263 enum int D3D11_MAX_TEXTURE_DIMENSION_2_TO_EXP = 17; 264 enum int D3D11_MINOR_VERSION = 0; 265 enum float D3D11_MIN_BORDER_COLOR_COMPONENT = 0.0f; 266 enum float D3D11_MIN_DEPTH = 0.0f; 267 enum int D3D11_MIN_MAXANISOTROPY = 0; 268 enum float D3D11_MIP_LOD_BIAS_MAX = 15.99f; 269 enum float D3D11_MIP_LOD_BIAS_MIN = -16.0f; 270 enum int D3D11_MIP_LOD_FRACTIONAL_BIT_COUNT = 8; 271 enum int D3D11_MIP_LOD_RANGE_BIT_COUNT = 8; 272 enum float D3D11_MULTISAMPLE_ANTIALIAS_LINE_WIDTH = 1.4f; 273 enum int D3D11_NONSAMPLE_FETCH_OUT_OF_RANGE_ACCESS_RESULT = 0; 274 enum int D3D11_PIXEL_ADDRESS_RANGE_BIT_COUNT = 15; 275 enum int D3D11_PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT = 16; 276 enum int D3D11_PS_CS_UAV_REGISTER_COMPONENTS = 1; 277 enum int D3D11_PS_CS_UAV_REGISTER_COUNT = 8; 278 enum int D3D11_PS_CS_UAV_REGISTER_READS_PER_INST = 1; 279 enum int D3D11_PS_CS_UAV_REGISTER_READ_PORTS = 1; 280 enum int D3D11_PS_FRONTFACING_DEFAULT_VALUE = 0xffffffff; 281 enum int D3D11_PS_FRONTFACING_FALSE_VALUE = 0; 282 enum int D3D11_PS_FRONTFACING_TRUE_VALUE = 0xffffffff; 283 enum int D3D11_PS_INPUT_REGISTER_COMPONENTS = 4; 284 enum int D3D11_PS_INPUT_REGISTER_COMPONENT_BIT_COUNT = 32; 285 enum int D3D11_PS_INPUT_REGISTER_COUNT = 32; 286 enum int D3D11_PS_INPUT_REGISTER_READS_PER_INST = 2; 287 enum int D3D11_PS_INPUT_REGISTER_READ_PORTS = 1; 288 enum float D3D11_PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT = 0.0f; 289 enum int D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENTS = 1; 290 enum int D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT = 32; 291 enum int D3D11_PS_OUTPUT_DEPTH_REGISTER_COUNT = 1; 292 enum int D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENTS = 1; 293 enum int D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT = 32; 294 enum int D3D11_PS_OUTPUT_MASK_REGISTER_COUNT = 1; 295 enum int D3D11_PS_OUTPUT_REGISTER_COMPONENTS = 4; 296 enum int D3D11_PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32; 297 enum int D3D11_PS_OUTPUT_REGISTER_COUNT = 8; 298 enum float D3D11_PS_PIXEL_CENTER_FRACTIONAL_COMPONENT = 0.5f; 299 enum int D3D11_RAW_UAV_SRV_BYTE_ALIGNMENT = 16; 300 enum int D3D11_REQ_BLEND_OBJECT_COUNT_PER_DEVICE = 4096; 301 enum int D3D11_REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP = 27; 302 enum int D3D11_REQ_CONSTANT_BUFFER_ELEMENT_COUNT = 4096; 303 enum int D3D11_REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_DEVICE = 4096; 304 enum int D3D11_REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP = 32; 305 enum int D3D11_REQ_DRAW_VERTEX_COUNT_2_TO_EXP = 32; 306 enum int D3D11_REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION = 16384; 307 enum int D3D11_REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT = 1024; 308 enum int D3D11_REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT = 4096; 309 enum int D3D11_REQ_MAXANISOTROPY = 16; 310 enum int D3D11_REQ_MIP_LEVELS = 15; 311 enum int D3D11_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES = 2048; 312 enum int D3D11_REQ_RASTERIZER_OBJECT_COUNT_PER_DEVICE = 4096; 313 enum int D3D11_REQ_RENDER_TO_BUFFER_WINDOW_WIDTH = 16384; 314 enum int D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM = 128; 315 enum float D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_B_TERM = 0.25f; 316 enum int D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_C_TERM = 2048; 317 enum int D3D11_REQ_RESOURCE_VIEW_COUNT_PER_DEVICE_2_TO_EXP = 20; 318 enum int D3D11_REQ_SAMPLER_OBJECT_COUNT_PER_DEVICE = 4096; 319 enum int D3D11_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION = 2048; 320 enum int D3D11_REQ_TEXTURE1D_U_DIMENSION = 16384; 321 enum int D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION = 2048; 322 enum int D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION = 16384; 323 enum int D3D11_REQ_TEXTURE3D_U_V_OR_W_DIMENSION = 2048; 324 enum int D3D11_REQ_TEXTURECUBE_DIMENSION = 16384; 325 enum int D3D11_RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL = 0; 326 enum int D3D11_SHADER_MAJOR_VERSION = 5; 327 enum int D3D11_SHADER_MAX_INSTANCES = 65535; 328 enum int D3D11_SHADER_MAX_INTERFACES = 253; 329 enum int D3D11_SHADER_MAX_INTERFACE_CALL_SITES = 4096; 330 enum int D3D11_SHADER_MAX_TYPES = 65535; 331 enum int D3D11_SHADER_MINOR_VERSION = 0; 332 enum int D3D11_SHIFT_INSTRUCTION_PAD_VALUE = 0; 333 enum int D3D11_SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT = 5; 334 enum int D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT = 8; 335 enum int D3D11_SO_BUFFER_MAX_STRIDE_IN_BYTES = 2048; 336 enum int D3D11_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES = 512; 337 enum int D3D11_SO_BUFFER_SLOT_COUNT = 4; 338 enum int D3D11_SO_DDI_REGISTER_INDEX_DENOTING_GAP = 0xffffffff; 339 enum int D3D11_SO_NO_RASTERIZED_STREAM = 0xffffffff; 340 enum int D3D11_SO_OUTPUT_COMPONENT_COUNT = 128; 341 enum int D3D11_SO_STREAM_COUNT = 4; 342 enum int D3D11_SPEC_DATE_DAY = 16; 343 enum int D3D11_SPEC_DATE_MONTH = 05; 344 enum int D3D11_SPEC_DATE_YEAR = 2011; 345 enum float D3D11_SPEC_VERSION = 1.07f; 346 enum float D3D11_SRGB_GAMMA = 2.2f; 347 enum float D3D11_SRGB_TO_FLOAT_DENOMINATOR_1 = 12.92f; 348 enum float D3D11_SRGB_TO_FLOAT_DENOMINATOR_2 = 1.055f; 349 enum float D3D11_SRGB_TO_FLOAT_EXPONENT = 2.4f; 350 enum float D3D11_SRGB_TO_FLOAT_OFFSET = 0.055f; 351 enum float D3D11_SRGB_TO_FLOAT_THRESHOLD = 0.04045f; 352 enum float D3D11_SRGB_TO_FLOAT_TOLERANCE_IN_ULP = 0.5f; 353 enum int D3D11_STANDARD_COMPONENT_BIT_COUNT = 32; 354 enum int D3D11_STANDARD_COMPONENT_BIT_COUNT_DOUBLED = 64; 355 enum int D3D11_STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE = 4; 356 enum int D3D11_STANDARD_PIXEL_COMPONENT_COUNT = 128; 357 enum int D3D11_STANDARD_PIXEL_ELEMENT_COUNT = 32; 358 enum int D3D11_STANDARD_VECTOR_SIZE = 4; 359 enum int D3D11_STANDARD_VERTEX_ELEMENT_COUNT = 32; 360 enum int D3D11_STANDARD_VERTEX_TOTAL_COMPONENT_COUNT = 64; 361 enum int D3D11_SUBPIXEL_FRACTIONAL_BIT_COUNT = 8; 362 enum int D3D11_SUBTEXEL_FRACTIONAL_BIT_COUNT = 8; 363 enum int D3D11_TESSELLATOR_MAX_EVEN_TESSELLATION_FACTOR = 64; 364 enum int D3D11_TESSELLATOR_MAX_ISOLINE_DENSITY_TESSELLATION_FACTOR = 64; 365 enum int D3D11_TESSELLATOR_MAX_ODD_TESSELLATION_FACTOR = 63; 366 enum int D3D11_TESSELLATOR_MAX_TESSELLATION_FACTOR = 64; 367 enum int D3D11_TESSELLATOR_MIN_EVEN_TESSELLATION_FACTOR = 2; 368 enum int D3D11_TESSELLATOR_MIN_ISOLINE_DENSITY_TESSELLATION_FACTOR = 1; 369 enum int D3D11_TESSELLATOR_MIN_ODD_TESSELLATION_FACTOR = 1; 370 enum int D3D11_TEXEL_ADDRESS_RANGE_BIT_COUNT = 16; 371 enum int D3D11_UNBOUND_MEMORY_ACCESS_RESULT = 0; 372 enum int D3D11_VIEWPORT_AND_SCISSORRECT_MAX_INDEX = 15; 373 enum int D3D11_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE = 16; 374 enum int D3D11_VIEWPORT_BOUNDS_MAX = 32767; 375 enum int D3D11_VIEWPORT_BOUNDS_MIN = -32768; 376 enum int D3D11_VS_INPUT_REGISTER_COMPONENTS = 4; 377 enum int D3D11_VS_INPUT_REGISTER_COMPONENT_BIT_COUNT = 3; 378 enum int D3D11_VS_INPUT_REGISTER_COUNT = 32; 379 enum int D3D11_VS_INPUT_REGISTER_READS_PER_INST = 2; 380 enum int D3D11_VS_INPUT_REGISTER_READ_PORTS = 1; 381 enum int D3D11_VS_OUTPUT_REGISTER_COMPONENTS = 4; 382 enum int D3D11_VS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32; 383 enum int D3D11_VS_OUTPUT_REGISTER_COUNT = 32; 384 enum int D3D11_WHQL_CONTEXT_COUNT_FOR_RESOURCE_LIMIT = 10; 385 enum int D3D11_WHQL_DRAWINDEXED_INDEX_COUNT_2_TO_EXP = 25; 386 enum int D3D11_WHQL_DRAW_VERTEX_COUNT_2_TO_EXP = 25; 387 enum int D3D11_APPEND_ALIGNED_ELEMENT = 0xffffffff; 388 389 enum int D3D11_FILTER_REDUCTION_TYPE_MASK = 0x3; 390 enum int D3D11_FILTER_REDUCTION_TYPE_SHIFT = 7; 391 enum int D3D11_FILTER_TYPE_MASK = 0x3; 392 enum int D3D11_MIN_FILTER_SHIFT = 4; 393 enum int D3D11_MAG_FILTER_SHIFT = 2; 394 enum int D3D11_MIP_FILTER_SHIFT = 0; 395 enum int D3D11_COMPARISON_FILTERING_BIT = 0x80; 396 enum int D3D11_ANISOTROPIC_FILTERING_BIT = 0x40; 397 398 const IID D3D11_KEY_EXCHANGE_RSAES_OAEP = {0xc1949895, 0xd72a, 0x4a1d, [0x8e, 0x5d, 0xed, 0x85, 0x7d, 0x17, 0x15, 0x20]}; 399 const IID D3D11_CRYPTO_TYPE_AES128_CTR = {0x9b6bd711, 0x4f74, 0x41c9, [0x9e, 0x7b, 0xb, 0xe2, 0xd7, 0xd9, 0x3b, 0x4f]}; 400 const IID D3D11_DECODER_ENCRYPTION_HW_CENC = {0x89d6ac4f, 0x9f2, 0x4229, [0xb2, 0xcd, 0x37, 0x74, 0xa, 0x6d, 0xfd, 0x81]}; 401 const IID D3D11_KEY_EXCHANGE_HW_PROTECTION = {0xb1170d8a, 0x628d, 0x4da3, [0xad, 0x3b, 0x82, 0xdd, 0xb0, 0x8b, 0x49, 0x70]}; 402 const IID D3D11_DECODER_PROFILE_MPEG2_MOCOMP = {0xe6a9f44b, 0x61b0, 0x4563, [0x9e, 0xa4, 0x63, 0xd2, 0xa3, 0xc6, 0xfe, 0x66]}; 403 const IID D3D11_DECODER_PROFILE_MPEG2_IDCT = {0xbf22ad00, 0x03ea, 0x4690, [0x80, 0x77, 0x47, 0x33, 0x46, 0x20, 0x9b, 0x7e]}; 404 const IID D3D11_DECODER_PROFILE_MPEG2_VLD = {0xee27417f, 0x5e28, 0x4e65, [0xbe, 0xea, 0x1d, 0x26, 0xb5, 0x08, 0xad, 0xc9]}; 405 const IID D3D11_DECODER_PROFILE_MPEG1_VLD = {0x6f3ec719, 0x3735, 0x42cc, [0x80, 0x63, 0x65, 0xcc, 0x3c, 0xb3, 0x66, 0x16]}; 406 const IID D3D11_DECODER_PROFILE_MPEG2and1_VLD = {0x86695f12, 0x340e, 0x4f04, [0x9f, 0xd3, 0x92, 0x53, 0xdd, 0x32, 0x74, 0x60]}; 407 const IID D3D11_DECODER_PROFILE_H264_MOCOMP_NOFGT = {0x1b81be64, 0xa0c7, 0x11d3, [0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5]}; 408 const IID D3D11_DECODER_PROFILE_H264_MOCOMP_FGT = {0x1b81be65, 0xa0c7, 0x11d3, [0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5]}; 409 const IID D3D11_DECODER_PROFILE_H264_IDCT_NOFGT = {0x1b81be66, 0xa0c7, 0x11d3, [0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5]}; 410 const IID D3D11_DECODER_PROFILE_H264_IDCT_FGT = {0x1b81be67, 0xa0c7, 0x11d3, [0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5]}; 411 const IID D3D11_DECODER_PROFILE_H264_VLD_NOFGT = {0x1b81be68, 0xa0c7, 0x11d3, [0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5]}; 412 const IID D3D11_DECODER_PROFILE_H264_VLD_FGT = {0x1b81be69, 0xa0c7, 0x11d3, [0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5]}; 413 const IID D3D11_DECODER_PROFILE_H264_VLD_WITHFMOASO_NOFGT = {0xd5f04ff9, 0x3418, 0x45d8, [0x95, 0x61, 0x32, 0xa7, 0x6a, 0xae, 0x2d, 0xdd]}; 414 const IID D3D11_DECODER_PROFILE_H264_VLD_STEREO_PROGRESSIVE_NOFGT = {0xd79be8da, 0x0cf1, 0x4c81, [0xb8, 0x2a, 0x69, 0xa4, 0xe2, 0x36, 0xf4, 0x3d]}; 415 const IID D3D11_DECODER_PROFILE_H264_VLD_STEREO_NOFGT = {0xf9aaccbb, 0xc2b6, 0x4cfc, [0x87, 0x79, 0x57, 0x07, 0xb1, 0x76, 0x05, 0x52]}; 416 const IID D3D11_DECODER_PROFILE_H264_VLD_MULTIVIEW_NOFGT = {0x705b9d82, 0x76cf, 0x49d6, [0xb7, 0xe6, 0xac, 0x88, 0x72, 0xdb, 0x01, 0x3c]}; 417 const IID D3D11_DECODER_PROFILE_WMV8_POSTPROC = {0x1b81be80, 0xa0c7, 0x11d3, [0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5]}; 418 const IID D3D11_DECODER_PROFILE_WMV8_MOCOMP = {0x1b81be81, 0xa0c7, 0x11d3, [0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5]}; 419 const IID D3D11_DECODER_PROFILE_WMV9_POSTPROC = {0x1b81be90, 0xa0c7, 0x11d3, [0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5]}; 420 const IID D3D11_DECODER_PROFILE_WMV9_MOCOMP = {0x1b81be91, 0xa0c7, 0x11d3, [0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5]}; 421 const IID D3D11_DECODER_PROFILE_WMV9_IDCT = {0x1b81be94, 0xa0c7, 0x11d3, [0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5]}; 422 const IID D3D11_DECODER_PROFILE_VC1_POSTPROC = {0x1b81beA0, 0xa0c7, 0x11d3, [0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5]}; 423 const IID D3D11_DECODER_PROFILE_VC1_MOCOMP = {0x1b81beA1, 0xa0c7, 0x11d3, [0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5]}; 424 const IID D3D11_DECODER_PROFILE_VC1_IDCT = {0x1b81beA2, 0xa0c7, 0x11d3, [0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5]}; 425 const IID D3D11_DECODER_PROFILE_VC1_VLD = {0x1b81beA3, 0xa0c7, 0x11d3, [0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5]}; 426 const IID D3D11_DECODER_PROFILE_VC1_D2010 = {0x1b81beA4, 0xa0c7, 0x11d3, [0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5]}; 427 const IID D3D11_DECODER_PROFILE_MPEG4PT2_VLD_SIMPLE = {0xefd64d74, 0xc9e8, 0x41d7, [0xa5, 0xe9, 0xe9, 0xb0, 0xe3, 0x9f, 0xa3, 0x19]}; 428 const IID D3D11_DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_NOGMC = {0xed418a9f, 0x010d, 0x4eda, [0x9a, 0xe3, 0x9a, 0x65, 0x35, 0x8d, 0x8d, 0x2e]}; 429 const IID D3D11_DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_GMC = {0xab998b5b, 0x4258, 0x44a9, [0x9f, 0xeb, 0x94, 0xe5, 0x97, 0xa6, 0xba, 0xae]}; 430 const IID D3D11_DECODER_PROFILE_HEVC_VLD_MAIN = {0x5b11d51b, 0x2f4c, 0x4452, [0xbc, 0xc3, 0x09, 0xf2, 0xa1, 0x16, 0x0c, 0xc0]}; 431 const IID D3D11_DECODER_PROFILE_HEVC_VLD_MAIN10 = {0x107af0e0, 0xef1a, 0x4d19, [0xab, 0xa8, 0x67, 0xa1, 0x63, 0x07, 0x3d, 0x13]}; 432 const IID D3D11_DECODER_PROFILE_VP9_VLD_PROFILE0 = {0x463707f8, 0xa1d0, 0x4585, [0x87, 0x6d, 0x83, 0xaa, 0x6d, 0x60, 0xb8, 0x9e]}; 433 const IID D3D11_DECODER_PROFILE_VP9_VLD_10BIT_PROFILE2 = {0xa4c749ef, 0x6ecf, 0x48aa, [0x84, 0x48, 0x50, 0xa7, 0xa1, 0x16, 0x5f, 0xf7]}; 434 const IID D3D11_DECODER_PROFILE_VP8_VLD = {0x90b899ea, 0x3a62, 0x4705, [0x88, 0xb3, 0x8d, 0xf0, 0x4b, 0x27, 0x44, 0xe7]}; 435 const IID D3D11_AUTHENTICATED_QUERY_PROTECTION = {0xa84eb584, 0xc495, 0x48aa, [0xb9, 0x4d, 0x8b, 0xd2, 0xd6, 0xfb, 0xce, 0x5]}; 436 const IID D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE = {0xbc1b18a5, 0xb1fb, 0x42ab, [0xbd, 0x94, 0xb5, 0x82, 0x8b, 0x4b, 0xf7, 0xbe]}; 437 const IID D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE = {0xec1c539d, 0x8cff, 0x4e2a, [0xbc, 0xc4, 0xf5, 0x69, 0x2f, 0x99, 0xf4, 0x80]}; 438 const IID D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION = {0x2634499e, 0xd018, 0x4d74, [0xac, 0x17, 0x7f, 0x72, 0x40, 0x59, 0x52, 0x8d]}; 439 const IID D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT = {0xdb207b3, 0x9450, 0x46a6, [0x82, 0xde, 0x1b, 0x96, 0xd4, 0x4f, 0x9c, 0xf2]}; 440 const IID D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS = {0x649bbadb, 0xf0f4, 0x4639, [0xa1, 0x5b, 0x24, 0x39, 0x3f, 0xc3, 0xab, 0xac]}; 441 const IID D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT = {0x12f0bd6, 0xe662, 0x4474, [0xbe, 0xfd, 0xaa, 0x53, 0xe5, 0x14, 0x3c, 0x6d]}; 442 const IID D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT = {0x2c042b5e, 0x8c07, 0x46d5, [0xaa, 0xbe, 0x8f, 0x75, 0xcb, 0xad, 0x4c, 0x31]}; 443 const IID D3D11_AUTHENTICATED_QUERY_OUTPUT_ID = {0x839ddca3, 0x9b4e, 0x41e4, [0xb0, 0x53, 0x89, 0x2b, 0xd2, 0xa1, 0x1e, 0xe7]}; 444 const IID D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ATTRIBUTES = {0x6214d9d2, 0x432c, 0x4abb, [0x9f, 0xce, 0x21, 0x6e, 0xea, 0x26, 0x9e, 0x3b]}; 445 const IID D3D11_AUTHENTICATED_QUERY_ENCRYPTION_WHEN_ACCESSIBLE_GUID_COUNT = {0xb30f7066, 0x203c, 0x4b07, [0x93, 0xfc, 0xce, 0xaa, 0xfd, 0x61, 0x24, 0x1e]}; 446 const IID D3D11_AUTHENTICATED_QUERY_ENCRYPTION_WHEN_ACCESSIBLE_GUID = {0xf83a5958, 0xe986, 0x4bda, [0xbe, 0xb0, 0x41, 0x1f, 0x6a, 0x7a, 0x1, 0xb7]}; 447 const IID D3D11_AUTHENTICATED_QUERY_CURRENT_ENCRYPTION_WHEN_ACCESSIBLE = {0xec1791c7, 0xdad3, 0x4f15, [0x9e, 0xc3, 0xfa, 0xa9, 0x3d, 0x60, 0xd4, 0xf0]}; 448 const IID D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE = {0x6114bdb, 0x3523, 0x470a, [0x8d, 0xca, 0xfb, 0xc2, 0x84, 0x51, 0x54, 0xf0]}; 449 const IID D3D11_AUTHENTICATED_CONFIGURE_PROTECTION = {0x50455658, 0x3f47, 0x4362, [0xbf, 0x99, 0xbf, 0xdf, 0xcd, 0xe9, 0xed, 0x29]}; 450 const IID D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION = {0x6346cc54, 0x2cfc, 0x4ad4, [0x82, 0x24, 0xd1, 0x58, 0x37, 0xde, 0x77, 0x0]}; 451 const IID D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE = {0x772d047, 0x1b40, 0x48e8, [0x9c, 0xa6, 0xb5, 0xf5, 0x10, 0xde, 0x9f, 0x1]}; 452 const IID D3D11_AUTHENTICATED_CONFIGURE_ENCRYPTION_WHEN_ACCESSIBLE = {0x41fff286, 0x6ae0, 0x4d43, [0x9d, 0x55, 0xa4, 0x6e, 0x9e, 0xfd, 0x15, 0x8a]}; 453 454 /// 455 /// Mixins 456 /// 457 458 ///The following macros have not been converted to mixins yet 459 /* 460 #define D3D11_ENCODE_BASIC_FILTER( min, mag, mip, reduction ) \ 461 ( ( D3D11_FILTER ) ( \ 462 ( ( ( min ) & D3D11_FILTER_TYPE_MASK ) << D3D11_MIN_FILTER_SHIFT ) | \ 463 ( ( ( mag ) & D3D11_FILTER_TYPE_MASK ) << D3D11_MAG_FILTER_SHIFT ) | \ 464 ( ( ( mip ) & D3D11_FILTER_TYPE_MASK ) << D3D11_MIP_FILTER_SHIFT ) | \ 465 ( ( ( reduction ) & D3D11_FILTER_REDUCTION_TYPE_MASK ) << D3D11_FILTER_REDUCTION_TYPE_SHIFT ) ) ) 466 #define D3D11_ENCODE_ANISOTROPIC_FILTER( reduction ) \ 467 ( ( D3D11_FILTER ) ( \ 468 D3D11_ANISOTROPIC_FILTERING_BIT | \ 469 D3D11_ENCODE_BASIC_FILTER( D3D11_FILTER_TYPE_LINEAR, \ 470 D3D11_FILTER_TYPE_LINEAR, \ 471 D3D11_FILTER_TYPE_LINEAR, \ 472 reduction ) ) ) 473 #define D3D11_DECODE_MIN_FILTER( d3d11Filter ) \ 474 ( ( D3D11_FILTER_TYPE ) \ 475 ( ( ( d3d11Filter ) >> D3D11_MIN_FILTER_SHIFT ) & D3D11_FILTER_TYPE_MASK ) ) 476 #define D3D11_DECODE_MAG_FILTER( d3d11Filter ) \ 477 ( ( D3D11_FILTER_TYPE ) \ 478 ( ( ( d3d11Filter ) >> D3D11_MAG_FILTER_SHIFT ) & D3D11_FILTER_TYPE_MASK ) ) 479 #define D3D11_DECODE_MIP_FILTER( d3d11Filter ) \ 480 ( ( D3D11_FILTER_TYPE ) \ 481 ( ( ( d3d11Filter ) >> D3D11_MIP_FILTER_SHIFT ) & D3D11_FILTER_TYPE_MASK ) ) 482 #define D3D11_DECODE_FILTER_REDUCTION( d3d11Filter ) \ 483 ( ( D3D11_FILTER_REDUCTION_TYPE ) \ 484 ( ( ( d3d11Filter ) >> D3D11_FILTER_REDUCTION_TYPE_SHIFT ) & D3D11_FILTER_REDUCTION_TYPE_MASK ) ) 485 #define D3D11_DECODE_IS_COMPARISON_FILTER( d3d11Filter ) \ 486 ( D3D11_DECODE_FILTER_REDUCTION( d3d11Filter ) == D3D11_FILTER_REDUCTION_TYPE_COMPARISON ) 487 #define D3D11_DECODE_IS_ANISOTROPIC_FILTER( d3d11Filter ) \ 488 ( ( ( d3d11Filter ) & D3D11_ANISOTROPIC_FILTERING_BIT ) && \ 489 ( D3D11_FILTER_TYPE_LINEAR == D3D11_DECODE_MIN_FILTER( d3d11Filter ) ) && \ 490 ( D3D11_FILTER_TYPE_LINEAR == D3D11_DECODE_MAG_FILTER( d3d11Filter ) ) && \ 491 ( D3D11_FILTER_TYPE_LINEAR == D3D11_DECODE_MIP_FILTER( d3d11Filter ) ) ) 492 */ 493 494 /// 495 /// Functions 496 /// 497 498 extern (Windows) { 499 HRESULT D3D11CreateDevice(IDXGIAdapter pAdapter, D3D_DRIVER_TYPE DriverType, HMODULE Software, UINT Flags, const D3D_FEATURE_LEVEL *pFeatureLevels, UINT FeatureLevels, UINT SDKVersion, ID3D11Device *ppDevice, D3D_FEATURE_LEVEL *pFeatureLevel, ID3D11DeviceContext *ppImmediateContext); 500 HRESULT D3D11CreateDeviceAndSwapChain(IDXGIAdapter pAdapter, D3D_DRIVER_TYPE DriverType, HMODULE Software, UINT Flags, const D3D_FEATURE_LEVEL *pFeatureLevels, UINT FeatureLevels, UINT SDKVersion, const DXGI_SWAP_CHAIN_DESC *pSwapChainDesc, IDXGISwapChain *ppSwapChain, ID3D11Device *ppDevice, D3D_FEATURE_LEVEL *pFeatureLevel, ID3D11DeviceContext *ppImmediateContext); 501 } 502 uint D3D11CalcSubresource(uint MipSlice, uint ArraySlice, uint MipLevels ) { return MipSlice + ArraySlice * MipLevels; } 503 504 /// 505 /// Enumerations 506 /// 507 508 alias D3D_PRIMITIVE_TOPOLOGY D3D11_PRIMITIVE_TOPOLOGY; 509 alias D3D_PRIMITIVE D3D11_PRIMITIVE; 510 alias D3D_SRV_DIMENSION D3D11_SRV_DIMENSION; 511 512 enum D3D11_INPUT_CLASSIFICATION : uint 513 { 514 VERTEX_DATA = 0, 515 INSTANCE_DATA = 1 516 } 517 518 enum D3D11_FILL_MODE : uint 519 { 520 WIREFRAME = 2, 521 SOLID = 3 522 } 523 524 enum D3D11_CULL_MODE : uint 525 { 526 NONE = 1, 527 FRONT = 2, 528 BACK = 3 529 } 530 531 enum D3D11_RESOURCE_DIMENSION : uint 532 { 533 UNKNOWN = 0, 534 BUFFER = 1, 535 TEXTURE1D = 2, 536 TEXTURE2D = 3, 537 TEXTURE3D = 4 538 } 539 540 enum D3D11_DSV_DIMENSION : uint 541 { 542 UNKNOWN = 0, 543 TEXTURE1D = 1, 544 TEXTURE1DARRAY = 2, 545 TEXTURE2D = 3, 546 TEXTURE2DARRAY = 4, 547 TEXTURE2DMS = 5, 548 TEXTURE2DMSARRAY = 6 549 } 550 551 enum D3D11_RTV_DIMENSION : uint 552 { 553 UNKNOWN = 0, 554 BUFFER = 1, 555 TEXTURE1D = 2, 556 TEXTURE1DARRAY = 3, 557 TEXTURE2D = 4, 558 TEXTURE2DARRAY = 5, 559 TEXTURE2DMS = 6, 560 TEXTURE2DMSARRAY = 7, 561 TEXTURE3D = 8 562 } 563 564 enum D3D11_UAV_DIMENSION : uint 565 { 566 UNKNOWN = 0, 567 BUFFER = 1, 568 TEXTURE1D = 2, 569 TEXTURE1DARRAY = 3, 570 TEXTURE2D = 4, 571 TEXTURE2DARRAY = 5, 572 TEXTURE3D = 8 573 } 574 575 enum D3D11_USAGE : uint 576 { 577 DEFAULT = 0, 578 IMMUTABLE = 1, 579 DYNAMIC = 2, 580 STAGING = 3 581 } 582 583 enum D3D11_BIND_FLAG : uint 584 { 585 VERTEX_BUFFER = 0x1L, 586 INDEX_BUFFER = 0x2L, 587 CONSTANT_BUFFER = 0x4L, 588 SHADER_RESOURCE = 0x8L, 589 STREAM_OUTPUT = 0x10L, 590 RENDER_TARGET = 0x20L, 591 DEPTH_STENCIL = 0x40L, 592 UNORDERED_ACCESS = 0x80L, 593 DECODER = 0x200L, 594 VIDEO_ENCODER = 0x400L 595 } 596 597 enum D3D11_CPU_ACCESS_FLAG : uint 598 { 599 WRITE = 0x10000L, 600 READ = 0x20000L 601 } 602 603 enum D3D11_RESOURCE_MISC_FLAG : uint 604 { 605 GENERATE_MIPS = 0x1L, 606 SHARED = 0x2L, 607 TEXTURECUBE = 0x4L, 608 DRAWINDIRECT_ARGS = 0x10L, 609 BUFFER_ALLOW_RAW_VIEWS = 0x20L, 610 BUFFER_STRUCTURED = 0x40L, 611 RESOURCE_CLAMP = 0x80L, 612 SHARED_KEYEDMUTEX = 0x100L, 613 GDI_COMPATIBLE = 0x200L, 614 SHARED_NTHANDLE = 0x800L, 615 RESTRICTED_CONTENT = 0x1000L, 616 RESTRICT_SHARED_RESOURCE = 0x2000L, 617 RESTRICT_SHARED_RESOURCE_DRIVER = 0x4000L, 618 GUARDED = 0x8000L, 619 TILE_POOL = 0x20000L, 620 TILED = 0x40000L, 621 HW_PROTECTED = 0x80000L 622 } 623 624 enum D3D11_MAP : uint 625 { 626 READ = 1, 627 WRITE = 2, 628 READ_WRITE = 3, 629 WRITE_DISCARD = 4, 630 WRITE_NO_OVERWRITE = 5 631 } 632 633 enum D3D11_MAP_FLAG : uint 634 { 635 DO_NOT_WAIT = 0x100000L 636 } 637 638 enum D3D11_RAISE_FLAG : uint 639 { 640 DRIVER_INTERNAL_ERROR = 0x1L 641 } 642 643 enum D3D11_CLEAR_FLAG : uint 644 { 645 DEPTH = 0x1L, 646 STENCIL = 0x2L 647 } 648 649 enum D3D11_COMPARISON_FUNC : uint 650 { 651 NEVER = 1, 652 LESS = 2, 653 EQUAL = 3, 654 LESS_EQUAL = 4, 655 GREATER = 5, 656 NOT_EQUAL = 6, 657 GREATER_EQUAL = 7, 658 ALWAYS = 8 659 } 660 661 enum D3D11_DEPTH_WRITE_MASK : uint 662 { 663 ZERO = 0, 664 ALL = 1 665 } 666 667 enum D3D11_STENCIL_OP : uint 668 { 669 KEEP = 1, 670 ZERO = 2, 671 REPLACE = 3, 672 INCR_SAT = 4, 673 DECR_SAT = 5, 674 INVERT = 6, 675 INCR = 7, 676 DECR = 8 677 } 678 679 enum D3D11_BLEND : uint 680 { 681 ZERO = 1, 682 ONE = 2, 683 SRC_COLOR = 3, 684 INV_SRC_COLOR = 4, 685 SRC_ALPHA = 5, 686 INV_SRC_ALPHA = 6, 687 DEST_ALPHA = 7, 688 INV_DEST_ALPHA = 8, 689 DEST_COLOR = 9, 690 INV_DEST_COLOR = 10, 691 SRC_ALPHA_SAT = 11, 692 BLEND_FACTOR = 14, 693 INV_BLEND_FACTOR = 15, 694 SRC1_COLOR = 16, 695 INV_SRC1_COLOR = 17, 696 SRC1_ALPHA = 18, 697 INV_SRC1_ALPHA = 19 698 } 699 700 enum D3D11_BLEND_OP : uint 701 { 702 ADD = 1, 703 SUBTRACT = 2, 704 REV_SUBTRACT = 3, 705 MIN = 4, 706 MAX = 5 707 } 708 709 enum D3D11_COLOR_WRITE_ENABLE : uint 710 { 711 RED = 1, 712 GREEN = 2, 713 BLUE = 4, 714 ALPHA = 8, 715 ALL = ( ( ( RED | GREEN ) | BLUE ) | ALPHA ) 716 } 717 718 enum D3D11_TEXTURECUBE_FACE : uint 719 { 720 POSITIVE_X = 0, 721 NEGATIVE_X = 1, 722 POSITIVE_Y = 2, 723 NEGATIVE_Y = 3, 724 POSITIVE_Z = 4, 725 NEGATIVE_Z = 5 726 } 727 728 enum D3D11_BUFFEREX_SRV_FLAG : uint 729 { 730 RAW = 0x1 731 } 732 733 enum D3D11_DSV_FLAG : uint 734 { 735 DEPTH = 0x1L, 736 STENCIL = 0x2L 737 } 738 739 enum D3D11_BUFFER_UAV_FLAG : uint 740 { 741 RAW = 0x1, 742 APPEND = 0x2, 743 COUNTER = 0x4 744 } 745 746 enum D3D11_FILTER : uint 747 { 748 MIN_MAG_MIP_POINT = 0, 749 MIN_MAG_POINT_MIP_LINEAR = 0x1, 750 MIN_POINT_MAG_LINEAR_MIP_POINT = 0x4, 751 MIN_POINT_MAG_MIP_LINEAR = 0x5, 752 MIN_LINEAR_MAG_MIP_POINT = 0x10, 753 MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11, 754 MIN_MAG_LINEAR_MIP_POINT = 0x14, 755 MIN_MAG_MIP_LINEAR = 0x15, 756 ANISOTROPIC = 0x55, 757 COMPARISON_MIN_MAG_MIP_POINT = 0x80, 758 COMPARISON_MIN_MAG_POINT_MIP_LINEAR = 0x81, 759 COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x84, 760 COMPARISON_MIN_POINT_MAG_MIP_LINEAR = 0x85, 761 COMPARISON_MIN_LINEAR_MAG_MIP_POINT = 0x90, 762 COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x91, 763 COMPARISON_MIN_MAG_LINEAR_MIP_POINT = 0x94, 764 COMPARISON_MIN_MAG_MIP_LINEAR = 0x95, 765 COMPARISON_ANISOTROPIC = 0xd5, 766 MINIMUM_MIN_MAG_MIP_POINT = 0x100, 767 MINIMUM_MIN_MAG_POINT_MIP_LINEAR = 0x101, 768 MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x104, 769 MINIMUM_MIN_POINT_MAG_MIP_LINEAR = 0x105, 770 MINIMUM_MIN_LINEAR_MAG_MIP_POINT = 0x110, 771 MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x111, 772 MINIMUM_MIN_MAG_LINEAR_MIP_POINT = 0x114, 773 MINIMUM_MIN_MAG_MIP_LINEAR = 0x115, 774 MINIMUM_ANISOTROPIC = 0x155, 775 MAXIMUM_MIN_MAG_MIP_POINT = 0x180, 776 MAXIMUM_MIN_MAG_POINT_MIP_LINEAR = 0x181, 777 MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x184, 778 MAXIMUM_MIN_POINT_MAG_MIP_LINEAR = 0x185, 779 MAXIMUM_MIN_LINEAR_MAG_MIP_POINT = 0x190, 780 MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x191, 781 MAXIMUM_MIN_MAG_LINEAR_MIP_POINT = 0x194, 782 MAXIMUM_MIN_MAG_MIP_LINEAR = 0x195, 783 MAXIMUM_ANISOTROPIC = 0x1d5 784 } 785 786 enum D3D11_FILTER_TYPE : uint 787 { 788 POINT = 0, 789 LINEAR = 1 790 } 791 792 enum D3D11_FILTER_REDUCTION_TYPE : uint 793 { 794 STANDARD = 0, 795 COMPARISON = 1, 796 MINIMUM = 2, 797 MAXIMUM = 3 798 } 799 800 enum D3D11_TEXTURE_ADDRESS_MODE : uint 801 { 802 WRAP = 1, 803 MIRROR = 2, 804 CLAMP = 3, 805 BORDER = 4, 806 MIRROR_ONCE = 5 807 } 808 809 enum D3D11_FORMAT_SUPPORT : uint 810 { 811 BUFFER = 0x1, 812 IA_VERTEX_BUFFER = 0x2, 813 IA_INDEX_BUFFER = 0x4, 814 SO_BUFFER = 0x8, 815 TEXTURE1D = 0x10, 816 TEXTURE2D = 0x20, 817 TEXTURE3D = 0x40, 818 TEXTURECUBE = 0x80, 819 SHADER_LOAD = 0x100, 820 SHADER_SAMPLE = 0x200, 821 SHADER_SAMPLE_COMPARISON = 0x400, 822 SHADER_SAMPLE_MONO_TEXT = 0x800, 823 MIP = 0x1000, 824 MIP_AUTOGEN = 0x2000, 825 RENDER_TARGET = 0x4000, 826 BLENDABLE = 0x8000, 827 DEPTH_STENCIL = 0x10000, 828 CPU_LOCKABLE = 0x20000, 829 MULTISAMPLE_RESOLVE = 0x40000, 830 DISPLAY = 0x80000, 831 CAST_WITHIN_BIT_LAYOUT = 0x100000, 832 MULTISAMPLE_RENDERTARGET = 0x200000, 833 MULTISAMPLE_LOAD = 0x400000, 834 SHADER_GATHER = 0x800000, 835 BACK_BUFFER_CAST = 0x1000000, 836 TYPED_UNORDERED_ACCESS_VIEW = 0x2000000, 837 SHADER_GATHER_COMPARISON = 0x4000000, 838 DECODER_OUTPUT = 0x8000000, 839 VIDEO_PROCESSOR_OUTPUT = 0x10000000, 840 VIDEO_PROCESSOR_INPUT = 0x20000000, 841 VIDEO_ENCODER = 0x40000000 842 } 843 844 enum D3D11_FORMAT_SUPPORT2 : uint 845 { 846 UAV_ATOMIC_ADD = 0x1, 847 UAV_ATOMIC_BITWISE_OPS = 0x2, 848 UAV_ATOMIC_COMPARE_STORE_OR_COMPARE_EXCHANGE = 0x4, 849 UAV_ATOMIC_EXCHANGE = 0x8, 850 UAV_ATOMIC_SIGNED_MIN_OR_MAX = 0x10, 851 UAV_ATOMIC_UNSIGNED_MIN_OR_MAX = 0x20, 852 UAV_TYPED_LOAD = 0x40, 853 UAV_TYPED_STORE = 0x80, 854 OUTPUT_MERGER_LOGIC_OP = 0x100, 855 TILED = 0x200, 856 SHAREABLE = 0x400, 857 MULTIPLANE_OVERLAY = 0x4000 858 } 859 860 enum D3D11_ASYNC_GETDATA_FLAG : uint 861 { 862 DONOTFLUSH = 0x1 863 } 864 865 enum D3D11_QUERY : uint 866 { 867 EVENT = 0, 868 OCCLUSION = ( EVENT + 1 ) , 869 TIMESTAMP = ( OCCLUSION + 1 ) , 870 TIMESTAMP_DISJOINT = ( TIMESTAMP + 1 ) , 871 PIPELINE_STATISTICS = ( TIMESTAMP_DISJOINT + 1 ) , 872 OCCLUSION_PREDICATE = ( PIPELINE_STATISTICS + 1 ) , 873 SO_STATISTICS = ( OCCLUSION_PREDICATE + 1 ) , 874 SO_OVERFLOW_PREDICATE = ( SO_STATISTICS + 1 ) , 875 SO_STATISTICS_STREAM0 = ( SO_OVERFLOW_PREDICATE + 1 ) , 876 SO_OVERFLOW_PREDICATE_STREAM0 = ( SO_STATISTICS_STREAM0 + 1 ) , 877 SO_STATISTICS_STREAM1 = ( SO_OVERFLOW_PREDICATE_STREAM0 + 1 ) , 878 SO_OVERFLOW_PREDICATE_STREAM1 = ( SO_STATISTICS_STREAM1 + 1 ) , 879 SO_STATISTICS_STREAM2 = ( SO_OVERFLOW_PREDICATE_STREAM1 + 1 ) , 880 SO_OVERFLOW_PREDICATE_STREAM2 = ( SO_STATISTICS_STREAM2 + 1 ) , 881 SO_STATISTICS_STREAM3 = ( SO_OVERFLOW_PREDICATE_STREAM2 + 1 ) , 882 SO_OVERFLOW_PREDICATE_STREAM3 = ( SO_STATISTICS_STREAM3 + 1 ) 883 } 884 885 enum D3D11_QUERY_MISC_FLAG : uint 886 { 887 PREDICATEHINT = 0x1 888 } 889 890 enum D3D11_COUNTER : uint 891 { 892 DEVICE_DEPENDENT_0 = 0x40000000 893 } 894 895 enum D3D11_COUNTER_TYPE : uint 896 { 897 FLOAT32 = 0, 898 UINT16 = ( FLOAT32 + 1 ) , 899 UINT32 = ( UINT16 + 1 ) , 900 UINT64 = ( UINT32 + 1 ) 901 } 902 903 enum D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS : uint 904 { 905 STANDARD_MULTISAMPLE_PATTERN = 0xffffffff, 906 CENTER_MULTISAMPLE_PATTERN = 0xfffffffe 907 } 908 909 enum D3D11_DEVICE_CONTEXT_TYPE : uint 910 { 911 IMMEDIATE = 0, 912 DEFERRED = ( IMMEDIATE + 1 ) 913 } 914 915 enum D3D11_FEATURE : uint 916 { 917 THREADING = 0, 918 DOUBLES = ( THREADING + 1 ) , 919 FORMAT_SUPPORT = ( DOUBLES + 1 ) , 920 FORMAT_SUPPORT2 = ( FORMAT_SUPPORT + 1 ) , 921 D3D10_X_HARDWARE_OPTIONS = ( FORMAT_SUPPORT2 + 1 ) , 922 D3D11_OPTIONS = ( D3D10_X_HARDWARE_OPTIONS + 1 ) , 923 ARCHITECTURE_INFO = ( D3D11_OPTIONS + 1 ) , 924 D3D9_OPTIONS = ( ARCHITECTURE_INFO + 1 ) , 925 SHADER_MIN_PRECISION_SUPPORT = ( D3D9_OPTIONS + 1 ) , 926 D3D9_SHADOW_SUPPORT = ( SHADER_MIN_PRECISION_SUPPORT + 1 ) , 927 D3D11_OPTIONS1 = ( D3D9_SHADOW_SUPPORT + 1 ) , 928 D3D9_SIMPLE_INSTANCING_SUPPORT = ( D3D11_OPTIONS1 + 1 ) , 929 MARKER_SUPPORT = ( D3D9_SIMPLE_INSTANCING_SUPPORT + 1 ) , 930 D3D9_OPTIONS1 = ( MARKER_SUPPORT + 1 ) , 931 D3D11_OPTIONS2 = ( D3D9_OPTIONS1 + 1 ) , 932 D3D11_OPTIONS3 = ( D3D11_OPTIONS2 + 1 ) , 933 GPU_VIRTUAL_ADDRESS_SUPPORT = ( D3D11_OPTIONS3 + 1 ) , 934 D3D11_OPTIONS4 = ( GPU_VIRTUAL_ADDRESS_SUPPORT + 1 ) , 935 SHADER_CACHE = ( D3D11_OPTIONS4 + 1 ) 936 } 937 938 enum D3D11_SHADER_MIN_PRECISION_SUPPORT : uint 939 { 940 PRECISION_10_BIT = 0x1, 941 PRECISION_16_BIT = 0x2 942 } 943 944 enum D3D11_TILED_RESOURCES_TIER : uint 945 { 946 NOT_SUPPORTED = 0, 947 TIER_1 = 1, 948 TIER_2 = 2, 949 TIER_3 = 3 950 } 951 952 enum D3D11_CONSERVATIVE_RASTERIZATION_TIER : uint 953 { 954 NOT_SUPPORTED = 0, 955 TIER_1 = 1, 956 TIER_2 = 2, 957 TIER_3 = 3 958 } 959 960 enum D3D11_SHADER_CACHE_SUPPORT_FLAGS : uint 961 { 962 NONE = 0, 963 AUTOMATIC_INPROC_CACHE = 0x1, 964 AUTOMATIC_DISK_CACHE = 0x2 965 } 966 967 enum D3D11_VIDEO_DECODER_BUFFER_TYPE : uint 968 { 969 PICTURE_PARAMETERS = 0, 970 MACROBLOCK_CONTROL = 1, 971 RESIDUAL_DIFFERENCE = 2, 972 DEBLOCKING_CONTROL = 3, 973 INVERSE_QUANTIZATION_MATRIX = 4, 974 SLICE_CONTROL = 5, 975 BITSTREAM = 6, 976 MOTION_VECTOR = 7, 977 FILM_GRAIN = 8 978 } 979 980 enum D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT : uint 981 { 982 INPUT = 0x1, 983 OUTPUT = 0x2 984 } 985 986 enum D3D11_VIDEO_PROCESSOR_DEVICE_CAPS : uint 987 { 988 LINEAR_SPACE = 0x1, 989 xvYCC = 0x2, 990 RGB_RANGE_CONVERSION = 0x4, 991 YCbCr_MATRIX_CONVERSION = 0x8, 992 NOMINAL_RANGE = 0x10 993 } 994 995 enum D3D11_VIDEO_PROCESSOR_FEATURE_CAPS : uint 996 { 997 ALPHA_FILL = 0x1, 998 CONSTRICTION = 0x2, 999 LUMA_KEY = 0x4, 1000 ALPHA_PALETTE = 0x8, 1001 LEGACY = 0x10, 1002 STEREO = 0x20, 1003 ROTATION = 0x40, 1004 ALPHA_STREAM = 0x80, 1005 PIXEL_ASPECT_RATIO = 0x100, 1006 MIRROR = 0x200, 1007 SHADER_USAGE = 0x400, 1008 METADATA_HDR10 = 0x800 1009 } 1010 1011 enum CAPS : uint 1012 { 1013 BRIGHTNESS = 0x1, 1014 CONTRAST = 0x2, 1015 HUE = 0x4, 1016 SATURATION = 0x8, 1017 NOISE_REDUCTION = 0x10, 1018 EDGE_ENHANCEMENT = 0x20, 1019 ANAMORPHIC_SCALING = 0x40, 1020 STEREO_ADJUSTMENT = 0x80 1021 } 1022 1023 enum D3D11_VIDEO_PROCESSOR_FORMAT_CAPS : uint 1024 { 1025 RGB_INTERLACED = 0x1, 1026 RGB_PROCAMP = 0x2, 1027 RGB_LUMA_KEY = 0x4, 1028 PALETTE_INTERLACED = 0x8 1029 } 1030 1031 enum D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS : uint 1032 { 1033 DENOISE = 0x1, 1034 DERINGING = 0x2, 1035 EDGE_ENHANCEMENT = 0x4, 1036 COLOR_CORRECTION = 0x8, 1037 FLESH_TONE_MAPPING = 0x10, 1038 IMAGE_STABILIZATION = 0x20, 1039 SUPER_RESOLUTION = 0x40, 1040 ANAMORPHIC_SCALING = 0x80 1041 } 1042 1043 enum D3D11_VIDEO_PROCESSOR_STEREO_CAPS : uint 1044 { 1045 MONO_OFFSET = 0x1, 1046 ROW_INTERLEAVED = 0x2, 1047 COLUMN_INTERLEAVED = 0x4, 1048 CHECKERBOARD = 0x8, 1049 FLIP_MODE = 0x10 1050 } 1051 1052 enum D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS : uint 1053 { 1054 DEINTERLACE_BLEND = 0x1, 1055 DEINTERLACE_BOB = 0x2, 1056 DEINTERLACE_ADAPTIVE = 0x4, 1057 DEINTERLACE_MOTION_COMPENSATION = 0x8, 1058 INVERSE_TELECINE = 0x10, 1059 FRAME_RATE_CONVERSION = 0x20 1060 } 1061 1062 enum D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS : uint 1063 { 1064 CAPS_32 = 0x1, 1065 CAPS_22 = 0x2, 1066 CAPS_2224 = 0x4, 1067 CAPS_2332 = 0x8, 1068 CAPS_32322 = 0x10, 1069 CAPS_55 = 0x20, 1070 CAPS_64 = 0x40, 1071 CAPS_87 = 0x80, 1072 CAPS_222222222223 = 0x100, 1073 CAPS_OTHER = 0x80000000 1074 } 1075 1076 enum D3D11_CONTENT_PROTECTION_CAPS : uint 1077 { 1078 SOFTWARE = 0x1, 1079 HARDWARE = 0x2, 1080 PROTECTION_ALWAYS_ON = 0x4, 1081 PARTIAL_DECRYPTION = 0x8, 1082 CONTENT_KEY = 0x10, 1083 FRESHEN_SESSION_KEY = 0x20, 1084 ENCRYPTED_READ_BACK = 0x40, 1085 ENCRYPTED_READ_BACK_KEY = 0x80, 1086 SEQUENTIAL_CTR_IV = 0x100, 1087 ENCRYPT_SLICEDATA_ONLY = 0x200, 1088 DECRYPTION_BLT = 0x400, 1089 HARDWARE_PROTECT_UNCOMPRESSED = 0x800, 1090 HARDWARE_PROTECTED_MEMORY_PAGEABLE = 0x1000, 1091 HARDWARE_TEARDOWN = 0x2000, 1092 HARDWARE_DRM_COMMUNICATION = 0x4000 1093 } 1094 1095 enum D3D11_VIDEO_PROCESSOR_FILTER : uint 1096 { 1097 BRIGHTNESS = 0, 1098 CONTRAST = 1, 1099 HUE = 2, 1100 SATURATION = 3, 1101 NOISE_REDUCTION = 4, 1102 EDGE_ENHANCEMENT = 5, 1103 ANAMORPHIC_SCALING = 6, 1104 STEREO_ADJUSTMENT = 7 1105 } 1106 1107 enum D3D11_VIDEO_FRAME_FORMAT : uint 1108 { 1109 PROGRESSIVE = 0, 1110 INTERLACED_TOP_FIELD_FIRST = 1, 1111 INTERLACED_BOTTOM_FIELD_FIRST = 2 1112 } 1113 1114 enum D3D11_VIDEO_USAGE : uint 1115 { 1116 D3D11_VIDEO_USAGE_PLAYBACK_NORMAL = 0, 1117 D3D11_VIDEO_USAGE_OPTIMAL_SPEED = 1, 1118 D3D11_VIDEO_USAGE_OPTIMAL_QUALITY = 2 1119 } 1120 1121 enum D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE : uint 1122 { 1123 RANGE_UNDEFINED = 0, 1124 RANGE_16_235 = 1, 1125 RANGE_0_255 = 2 1126 } 1127 1128 enum D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE : uint 1129 { 1130 OPAQUE = 0, 1131 BACKGROUND = 1, 1132 DESTINATION = 2, 1133 SOURCE_STREAM = 3 1134 } 1135 1136 enum D3D11_VIDEO_PROCESSOR_OUTPUT_RATE : uint 1137 { 1138 NORMAL = 0, 1139 HALF = 1, 1140 CUSTOM = 2 1141 } 1142 1143 enum D3D11_VIDEO_PROCESSOR_STEREO_FORMAT : uint 1144 { 1145 MONO = 0, 1146 HORIZONTAL = 1, 1147 VERTICAL = 2, 1148 SEPARATE = 3, 1149 MONO_OFFSET = 4, 1150 ROW_INTERLEAVED = 5, 1151 COLUMN_INTERLEAVED = 6, 1152 CHECKERBOARD = 7 1153 } 1154 1155 enum D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE : uint 1156 { 1157 NONE = 0, 1158 FRAME0 = 1, 1159 FRAME1 = 2 1160 } 1161 1162 enum D3D11_VIDEO_PROCESSOR_ROTATION : uint 1163 { 1164 ROTATION_IDENTITY = 0, 1165 ROTATION_90 = 1, 1166 ROTATION_180 = 2, 1167 ROTATION_270 = 3 1168 } 1169 1170 enum D3D11_AUTHENTICATED_CHANNEL_TYPE : uint 1171 { 1172 D3D11 = 1, 1173 DRIVER_SOFTWARE = 2, 1174 DRIVER_HARDWARE = 3 1175 } 1176 1177 enum D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE : uint 1178 { 1179 UNKNOWN = 0, 1180 DWM = 1, 1181 HANDLE = 2 1182 } 1183 1184 enum D3D11_BUS_TYPE : uint 1185 { 1186 TYPE_OTHER = 0, 1187 TYPE_PCI = 0x1, 1188 TYPE_PCIX = 0x2, 1189 TYPE_PCIEXPRESS = 0x3, 1190 TYPE_AGP = 0x4, 1191 IMPL_MODIFIER_INSIDE_OF_CHIPSET = 0x10000, 1192 IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_CHIP = 0x20000, 1193 IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_SOCKET = 0x30000, 1194 IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR = 0x40000, 1195 IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR_INSIDE_OF_NUAE = 0x50000, 1196 IMPL_MODIFIER_NON_STANDARD = 0x80000000 1197 } 1198 1199 enum D3D11_VDOV_DIMENSION : uint 1200 { 1201 UNKNOWN = 0, 1202 TEXTURE2D = 1 1203 } 1204 1205 enum D3D11_VPIV_DIMENSION : uint 1206 { 1207 UNKNOWN = 0, 1208 TEXTURE2D = 1 1209 } 1210 1211 enum D3D11_VPOV_DIMENSION : uint 1212 { 1213 UNKNOWN = 0, 1214 TEXTURE2D = 1, 1215 TEXTURE2DARRAY = 2 1216 } 1217 1218 enum D3D11_CREATE_DEVICE_FLAG : uint 1219 { 1220 SINGLETHREADED = 0x1, 1221 DEBUG = 0x2, 1222 SWITCH_TO_REF = 0x4, 1223 PREVENT_INTERNAL_THREADING_OPTIMIZATIONS = 0x8, 1224 BGRA_SUPPORT = 0x20, 1225 DEBUGGABLE = 0x40, 1226 PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY = 0x80, 1227 DISABLE_GPU_TIMEOUT = 0x100, 1228 VIDEO_SUPPORT = 0x800 1229 } 1230 1231 /// 1232 /// Structures 1233 /// 1234 1235 alias RECT D3D11_RECT; 1236 1237 struct CD3D11_DEFAULT {}; 1238 1239 struct D3D11_BOX { 1240 uint left; 1241 uint top; 1242 uint front; 1243 uint right; 1244 uint bottom; 1245 uint back; 1246 } 1247 1248 struct D3D11_COUNTER_DESC { 1249 D3D11_COUNTER Counter; 1250 uint MiscFlags; 1251 } 1252 1253 struct D3D11_COUNTER_INFO { 1254 D3D11_COUNTER LastDeviceDependentCounter; 1255 uint NumSimultaneousCounters; 1256 ubyte NumDetectableParallelUnits; 1257 } 1258 1259 struct D3D11_DEPTH_STENCIL_DESC { 1260 bool DepthEnable; 1261 D3D11_DEPTH_WRITE_MASK DepthWriteMask; 1262 D3D11_COMPARISON_FUNC DepthFunc; 1263 bool StencilEnable; 1264 ubyte StencilReadMask; 1265 ubyte StencilWriteMask; 1266 D3D11_DEPTH_STENCILOP_DESC FrontFace; 1267 D3D11_DEPTH_STENCILOP_DESC BackFace; 1268 } 1269 1270 struct D3D11_DEPTH_STENCILOP_DESC { 1271 D3D11_STENCIL_OP StencilFailOp; 1272 D3D11_STENCIL_OP StencilDepthFailOp; 1273 D3D11_STENCIL_OP StencilPassOp; 1274 D3D11_COMPARISON_FUNC StencilFunc; 1275 } 1276 1277 struct DATA_D3D10_X_HARDWARE_OPTIONS { 1278 bool ComputeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x; 1279 } 1280 1281 struct DATA_DOUBLES { 1282 bool DoublePrecisionFloatShaderOps; 1283 } 1284 1285 struct DATA_FORMAT_SUPPORT { 1286 DXGI_FORMAT InFormat; 1287 uint OutFormatSupport; 1288 } 1289 1290 struct DATA_FORMAT_SUPPORT2 { 1291 DXGI_FORMAT InFormat; 1292 uint OutFormatSupport2; 1293 } 1294 1295 struct DATA_THREADING { 1296 bool DriverConcurrentCreates; 1297 bool DriverCommandLists; 1298 } 1299 1300 struct D3D11_INPUT_ELEMENT_DESC { 1301 const(char)* SemanticName; 1302 uint SemanticIndex; 1303 DXGI_FORMAT Format; 1304 uint InputSlot; 1305 uint AlignedByteOffset; 1306 D3D11_INPUT_CLASSIFICATION InputSlotClass; 1307 uint InstanceDataStepRate; 1308 } 1309 1310 struct DATA_PIPELINE_STATISTICS { 1311 ulong IAVertices; 1312 ulong IAPrimitives; 1313 ulong VSInvocations; 1314 ulong GSInvocations; 1315 ulong GSPrimitives; 1316 ulong CInvocations; 1317 ulong CPrimitives; 1318 ulong PSInvocations; 1319 ulong HSInvocations; 1320 ulong DSInvocations; 1321 ulong CSInvocations; 1322 } 1323 1324 struct DATA_SO_STATISTICS { 1325 ulong NumPrimitivesWritten; 1326 ulong PrimitivesStorageNeeded; 1327 } 1328 1329 struct DATA_TIMESTAMP_DISJOINT { 1330 ulong Frequency; 1331 bool Disjoint; 1332 } 1333 1334 struct D3D11_QUERY_DESC { 1335 D3D11_QUERY Query; 1336 uint MiscFlags; 1337 } 1338 1339 struct D3D11_RASTERIZER_DESC { 1340 D3D11_FILL_MODE FillMode; 1341 D3D11_CULL_MODE CullMode; 1342 bool FrontCounterClockwise; 1343 int DepthBias; 1344 float DepthBiasClamp; 1345 float SlopeScaledDepthBias; 1346 bool DepthClipEnable; 1347 bool ScissorEnable; 1348 bool MultisampleEnable; 1349 bool AntialiasedLineEnable; 1350 } 1351 1352 struct D3D11_RENDER_TARGET_BLEND_DESC { 1353 bool BlendEnable; 1354 D3D11_BLEND SrcBlend; 1355 D3D11_BLEND DestBlend; 1356 D3D11_BLEND_OP BlendOp; 1357 D3D11_BLEND SrcBlendAlpha; 1358 D3D11_BLEND DestBlendAlpha; 1359 D3D11_BLEND_OP BlendOpAlpha; 1360 ubyte RenderTargetWriteMask; 1361 } 1362 1363 struct D3D11_BLEND_DESC { 1364 bool AlphaToCoverageEnable; 1365 bool IndependentBlendEnable; 1366 D3D11_RENDER_TARGET_BLEND_DESC[8] RenderTarget; 1367 } 1368 1369 struct D3D11_SAMPLER_DESC { 1370 D3D11_FILTER Filter; 1371 D3D11_TEXTURE_ADDRESS_MODE AddressU; 1372 D3D11_TEXTURE_ADDRESS_MODE AddressV; 1373 D3D11_TEXTURE_ADDRESS_MODE AddressW; 1374 float MipLODBias; 1375 uint MaxAnisotropy; 1376 D3D11_COMPARISON_FUNC ComparisonFunc; 1377 float[4] BorderColor; 1378 float MinLOD; 1379 float MaxLOD; 1380 } 1381 1382 struct D3D11_SO_DECLARATION_ENTRY { 1383 uint Stream; 1384 const(char)* SemanticName; 1385 uint SemanticIndex; 1386 ubyte StartComponent; 1387 ubyte ComponentCount; 1388 ubyte OutputSlot; 1389 } 1390 1391 struct D3D11_VIEWPORT { 1392 float TopLeftX; 1393 float TopLeftY; 1394 float Width; 1395 float Height; 1396 float MinDepth; 1397 float MaxDepth; 1398 } 1399 1400 struct DATA_ARCHITECTURE_INFO { 1401 bool TileBasedDeferredRenderer; 1402 } 1403 1404 struct DATA_D3D9_OPTIONS { 1405 bool FullNonPow2TextureSupport; 1406 } 1407 1408 struct DATA_D3D9_SHADOW_SUPPORT { 1409 bool SupportsDepthAsTextureWithLessEqualComparisonFilter; 1410 } 1411 1412 struct DATA_D3D11_OPTIONS { 1413 bool OutputMergerLogicOp; 1414 bool UAVOnlyRenderingForcedSampleCount; 1415 bool DiscardAPIsSeenByDriver; 1416 bool FlagsForUpdateAndCopySeenByDriver; 1417 bool ClearView; 1418 bool CopyWithOverlap; 1419 bool ConstantBufferPartialUpdate; 1420 bool ConstantBufferOffsetting; 1421 bool MapNoOverwriteOnDynamicConstantBuffer; 1422 bool MapNoOverwriteOnDynamicBufferSRV; 1423 bool MultisampleRTVWithForcedSampleCountOne; 1424 bool SAD4ShaderInstructions; 1425 bool ExtendedDoublesShaderInstructions; 1426 bool ExtendedResourceSharing; 1427 } 1428 1429 struct DATA_SHADER_MIN_PRECISION_SUPPORT { 1430 uint PixelShaderMinPrecision; 1431 uint AllOtherShaderStagesMinPrecision; 1432 } 1433 1434 struct DATA_D3D9_SIMPLE_INSTANCING_SUPPORT { 1435 bool SimpleInstancingSupported; 1436 } 1437 1438 struct DATA_D3D11_OPTIONS1 { 1439 D3D11_TILED_RESOURCES_TIER TiledResourcesTier; 1440 bool MinMaxFiltering; 1441 bool ClearViewAlsoSupportsDepthOnlyFormats; 1442 bool MapOnDefaultBuffers; 1443 } 1444 1445 struct DATA_MARKER_SUPPORT { 1446 bool Profile; 1447 } 1448 1449 struct D3D11_BUFFER_DESC { 1450 uint ByteWidth; 1451 D3D11_USAGE Usage; 1452 uint BindFlags; 1453 uint CPUAccessFlags; 1454 uint MiscFlags; 1455 uint StructureByteStride; 1456 } 1457 1458 struct D3D11_BUFFER_RTV { 1459 union { 1460 uint FirstElement; 1461 uint ElementOffset; 1462 }; 1463 union { 1464 uint NumElements; 1465 uint ElementWidth; 1466 }; 1467 } 1468 1469 struct D3D11_BUFFER_SRV { 1470 union { 1471 uint FirstElement; 1472 uint ElementOffset; 1473 }; 1474 union { 1475 uint NumElements; 1476 uint ElementWidth; 1477 }; 1478 } 1479 1480 struct D3D11_BUFFER_UAV { 1481 uint FirstElement; 1482 uint NumElements; 1483 uint Flags; 1484 } 1485 1486 struct D3D11_BUFFEREX_SRV { 1487 uint FirstElement; 1488 uint NumElements; 1489 uint Flags; 1490 } 1491 1492 struct D3D11_DEPTH_STENCIL_VIEW_DESC { 1493 DXGI_FORMAT Format; 1494 D3D11_DSV_DIMENSION ViewDimension; 1495 uint Flags; 1496 union { 1497 D3D11_TEX1D_DSV Texture1D; 1498 D3D11_TEX1D_ARRAY_DSV Texture1DArray; 1499 D3D11_TEX2D_DSV Texture2D; 1500 D3D11_TEX2D_ARRAY_DSV Texture2DArray; 1501 D3D11_TEX2DMS_DSV Texture2DMS; 1502 D3D11_TEX2DMS_ARRAY_DSV Texture2DMSArray; 1503 }; 1504 } 1505 1506 struct D3D11_MAPPED_SUBRESOURCE { 1507 void *pData; 1508 uint RowPitch; 1509 uint DepthPitch; 1510 } 1511 1512 struct D3D11_RENDER_TARGET_VIEW_DESC { 1513 DXGI_FORMAT Format; 1514 D3D11_RTV_DIMENSION ViewDimension; 1515 union { 1516 D3D11_BUFFER_RTV Buffer; 1517 D3D11_TEX1D_RTV Texture1D; 1518 D3D11_TEX1D_ARRAY_RTV Texture1DArray; 1519 D3D11_TEX2D_RTV Texture2D; 1520 D3D11_TEX2D_ARRAY_RTV Texture2DArray; 1521 D3D11_TEX2DMS_RTV Texture2DMS; 1522 D3D11_TEX2DMS_ARRAY_RTV Texture2DMSArray; 1523 D3D11_TEX3D_RTV Texture3D; 1524 }; 1525 } 1526 1527 struct D3D11_SHADER_RESOURCE_VIEW_DESC { 1528 DXGI_FORMAT Format; 1529 D3D11_SRV_DIMENSION ViewDimension; 1530 union { 1531 D3D11_BUFFER_SRV Buffer; 1532 D3D11_TEX1D_SRV Texture1D; 1533 D3D11_TEX1D_ARRAY_SRV Texture1DArray; 1534 D3D11_TEX2D_SRV Texture2D; 1535 D3D11_TEX2D_ARRAY_SRV Texture2DArray; 1536 D3D11_TEX2DMS_SRV Texture2DMS; 1537 D3D11_TEX2DMS_ARRAY_SRV Texture2DMSArray; 1538 D3D11_TEX3D_SRV Texture3D; 1539 D3D11_TEXCUBE_SRV TextureCube; 1540 D3D11_TEXCUBE_ARRAY_SRV TextureCubeArray; 1541 D3D11_BUFFEREX_SRV BufferEx; 1542 }; 1543 } 1544 1545 struct D3D11_SUBRESOURCE_DATA { 1546 const void *pSysMem; 1547 uint SysMemPitch; 1548 uint SysMemSlicePitch; 1549 } 1550 1551 struct D3D11_TEX1D_ARRAY_DSV { 1552 uint MipSlice; 1553 uint FirstArraySlice; 1554 uint ArraySize; 1555 } 1556 1557 struct D3D11_TEX1D_ARRAY_RTV { 1558 uint MipSlice; 1559 uint FirstArraySlice; 1560 uint ArraySize; 1561 } 1562 1563 struct D3D11_TEX1D_ARRAY_SRV { 1564 uint MostDetailedMip; 1565 uint MipLevels; 1566 uint FirstArraySlice; 1567 uint ArraySize; 1568 } 1569 1570 struct D3D11_TEX1D_ARRAY_UAV { 1571 uint MipSlice; 1572 uint FirstArraySlice; 1573 uint ArraySize; 1574 } 1575 1576 struct D3D11_TEX1D_DSV { 1577 uint MipSlice; 1578 } 1579 1580 struct D3D11_TEX1D_RTV { 1581 uint MipSlice; 1582 } 1583 1584 struct D3D11_TEX1D_SRV { 1585 uint MostDetailedMip; 1586 uint MipLevels; 1587 } 1588 1589 struct D3D11_TEX1D_UAV { 1590 uint MipSlice; 1591 } 1592 1593 struct D3D11_TEX2D_ARRAY_DSV { 1594 uint MipSlice; 1595 uint FirstArraySlice; 1596 uint ArraySize; 1597 } 1598 1599 struct D3D11_TEX2D_ARRAY_RTV { 1600 uint MipSlice; 1601 uint FirstArraySlice; 1602 uint ArraySize; 1603 } 1604 1605 struct D3D11_TEX2D_ARRAY_SRV { 1606 uint MostDetailedMip; 1607 uint MipLevels; 1608 uint FirstArraySlice; 1609 uint ArraySize; 1610 } 1611 1612 struct D3D11_TEX2D_ARRAY_UAV { 1613 uint MipSlice; 1614 uint FirstArraySlice; 1615 uint ArraySize; 1616 } 1617 1618 struct D3D11_TEX2D_DSV { 1619 uint MipSlice; 1620 } 1621 1622 struct D3D11_TEX2D_RTV { 1623 uint MipSlice; 1624 } 1625 1626 struct D3D11_TEX2D_SRV { 1627 uint MostDetailedMip; 1628 uint MipLevels; 1629 } 1630 1631 struct D3D11_TEX2D_UAV { 1632 uint MipSlice; 1633 } 1634 1635 struct D3D11_TEX2DMS_ARRAY_DSV { 1636 uint FirstArraySlice; 1637 uint ArraySize; 1638 } 1639 1640 struct D3D11_TEX2DMS_ARRAY_RTV { 1641 uint FirstArraySlice; 1642 uint ArraySize; 1643 } 1644 1645 struct D3D11_TEX2DMS_ARRAY_SRV { 1646 uint FirstArraySlice; 1647 uint ArraySize; 1648 } 1649 1650 struct D3D11_TEX2DMS_DSV { 1651 uint UnusedField_NothingToDefine; 1652 } 1653 1654 struct D3D11_TEX2DMS_RTV { 1655 uint UnusedField_NothingToDefine; 1656 } 1657 1658 struct D3D11_TEX2DMS_SRV { 1659 uint UnusedField_NothingToDefine; 1660 } 1661 1662 struct D3D11_TEX3D_RTV { 1663 uint MipSlice; 1664 uint FirstWSlice; 1665 uint WSize; 1666 } 1667 1668 struct D3D11_TEX3D_SRV { 1669 uint MostDetailedMip; 1670 uint MipLevels; 1671 } 1672 1673 struct D3D11_TEX3D_UAV { 1674 uint MipSlice; 1675 uint FirstWSlice; 1676 uint WSize; 1677 } 1678 1679 struct D3D11_TEXCUBE_ARRAY_SRV { 1680 uint MostDetailedMip; 1681 uint MipLevels; 1682 uint First2DArrayFace; 1683 uint NumCubes; 1684 } 1685 1686 struct D3D11_TEXCUBE_SRV { 1687 uint MostDetailedMip; 1688 uint MipLevels; 1689 } 1690 1691 struct D3D11_TEXTURE1D_DESC { 1692 uint Width; 1693 uint MipLevels; 1694 uint ArraySize; 1695 DXGI_FORMAT Format; 1696 D3D11_USAGE Usage; 1697 uint BindFlags; 1698 uint CPUAccessFlags; 1699 uint MiscFlags; 1700 } 1701 1702 struct D3D11_TEXTURE2D_DESC { 1703 uint Width; 1704 uint Height; 1705 uint MipLevels; 1706 uint ArraySize; 1707 DXGI_FORMAT Format; 1708 DXGI_SAMPLE_DESC SampleDesc; 1709 D3D11_USAGE Usage; 1710 uint BindFlags; 1711 uint CPUAccessFlags; 1712 uint MiscFlags; 1713 } 1714 1715 struct D3D11_TEXTURE3D_DESC { 1716 uint Width; 1717 uint Height; 1718 uint Depth; 1719 uint MipLevels; 1720 DXGI_FORMAT Format; 1721 D3D11_USAGE Usage; 1722 uint BindFlags; 1723 uint CPUAccessFlags; 1724 uint MiscFlags; 1725 } 1726 1727 struct D3D11_UNORDERED_ACCESS_VIEW_DESC { 1728 DXGI_FORMAT Format; 1729 D3D11_UAV_DIMENSION ViewDimension; 1730 union { 1731 D3D11_BUFFER_UAV Buffer; 1732 D3D11_TEX1D_UAV Texture1D; 1733 D3D11_TEX1D_ARRAY_UAV Texture1DArray; 1734 D3D11_TEX2D_UAV Texture2D; 1735 D3D11_TEX2D_ARRAY_UAV Texture2DArray; 1736 D3D11_TEX3D_UAV Texture3D; 1737 }; 1738 } 1739 1740 struct D3D11_CLASS_INSTANCE_DESC { 1741 uint InstanceId; 1742 uint InstanceIndex; 1743 uint TypeId; 1744 uint ConstantBuffer; 1745 uint BaseConstantBufferOffset; 1746 uint BaseTexture; 1747 uint BaseSampler; 1748 bool Created; 1749 } 1750 1751 struct D3D11_VIDEO_DECODER_DESC 1752 { 1753 GUID Guid; 1754 uint SampleWidth; 1755 uint SampleHeight; 1756 DXGI_FORMAT OutputFormat; 1757 } 1758 1759 struct D3D11_VIDEO_DECODER_CONFIG 1760 { 1761 GUID guidConfigBitstreamEncryption; 1762 GUID guidConfigMBcontrolEncryption; 1763 GUID guidConfigResidDiffEncryption; 1764 uint ConfigBitstreamRaw; 1765 uint ConfigMBcontrolRasterOrder; 1766 uint ConfigResidDiffHost; 1767 uint ConfigSpatialResid8; 1768 uint ConfigResid8Subtraction; 1769 uint ConfigSpatialHost8or9Clipping; 1770 uint ConfigSpatialResidInterleaved; 1771 uint ConfigIntraResidUnsigned; 1772 uint ConfigResidDiffAccelerator; 1773 uint ConfigHostInverseScan; 1774 uint ConfigSpecificIDCT; 1775 uint Config4GroupedCoefs; 1776 ushort ConfigMinRenderTargetBuffCount; 1777 ushort ConfigDecoderSpecific; 1778 } 1779 1780 struct D3D11_ENCRYPTED_BLOCK_INFO 1781 { 1782 uint NumEncryptedBytesAtBeginning; 1783 uint NumBytesInSkipPattern; 1784 uint NumBytesInEncryptPattern; 1785 } 1786 1787 struct D3D11_VIDEO_DECODER_BUFFER_DESC 1788 { 1789 D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType; 1790 uint BufferIndex; 1791 uint DataOffset; 1792 uint DataSize; 1793 uint FirstMBaddress; 1794 uint NumMBsInBuffer; 1795 uint Width; 1796 uint Height; 1797 uint Stride; 1798 uint ReservedBits; 1799 void *pIV; 1800 uint IVSize; 1801 bool PartialEncryption; 1802 D3D11_ENCRYPTED_BLOCK_INFO EncryptedBlockInfo; 1803 } 1804 1805 struct D3D11_VIDEO_DECODER_EXTENSION 1806 { 1807 uint Function; 1808 void *pPrivateInputData; 1809 uint PrivateInputDataSize; 1810 void *pPrivateOutputData; 1811 uint PrivateOutputDataSize; 1812 uint ResourceCount; 1813 ID3D11Resource *ppResourceList; 1814 } 1815 1816 struct D3D11_VIDEO_PROCESSOR_CAPS 1817 { 1818 uint DeviceCaps; 1819 uint FeatureCaps; 1820 uint FilterCaps; 1821 uint InputFormatCaps; 1822 uint AutoStreamCaps; 1823 uint StereoCaps; 1824 uint RateConversionCapsCount; 1825 uint MaxInputStreams; 1826 uint MaxStreamStates; 1827 } 1828 1829 struct D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS 1830 { 1831 uint PastFrames; 1832 uint FutureFrames; 1833 uint ProcessorCaps; 1834 uint ITelecineCaps; 1835 uint CustomRateCount; 1836 } 1837 1838 struct D3D11_VIDEO_CONTENT_PROTECTION_CAPS 1839 { 1840 uint Caps; 1841 uint KeyExchangeTypeCount; 1842 uint BlockAlignmentSize; 1843 ulong ProtectedMemorySize; 1844 } 1845 1846 struct D3D11_VIDEO_PROCESSOR_CUSTOM_RATE 1847 { 1848 DXGI_RATIONAL CustomRate; 1849 uint OutputFrames; 1850 bool InputInterlaced; 1851 uint InputFramesOrFields; 1852 } 1853 1854 struct D3D11_VIDEO_PROCESSOR_FILTER_RANGE 1855 { 1856 int Minimum; 1857 int Maximum; 1858 int Default; 1859 float Multiplier; 1860 } 1861 1862 struct D3D11_VIDEO_PROCESSOR_CONTENT_DESC 1863 { 1864 D3D11_VIDEO_FRAME_FORMAT InputFrameFormat; 1865 DXGI_RATIONAL InputFrameRate; 1866 uint InputWidth; 1867 uint InputHeight; 1868 DXGI_RATIONAL OutputFrameRate; 1869 uint OutputWidth; 1870 uint OutputHeight; 1871 D3D11_VIDEO_USAGE Usage; 1872 } 1873 1874 struct D3D11_VIDEO_COLOR_RGBA 1875 { 1876 float R; 1877 float G; 1878 float B; 1879 float A; 1880 } 1881 1882 struct D3D11_VIDEO_COLOR_YCbCrA 1883 { 1884 float Y; 1885 float Cb; 1886 float Cr; 1887 float A; 1888 } 1889 1890 struct D3D11_VIDEO_COLOR 1891 { 1892 union 1893 { 1894 D3D11_VIDEO_COLOR_YCbCrA YCbCr; 1895 D3D11_VIDEO_COLOR_RGBA RGBA; 1896 }; 1897 } 1898 1899 struct D3D11_VIDEO_PROCESSOR_COLOR_SPACE 1900 { 1901 uint Usage = 1; 1902 uint RGB_Range = 1; 1903 uint YCbCr_Matrix = 1; 1904 uint YCbCr_xvYCC = 1; 1905 uint Nominal_Range = 2; 1906 uint Reserved = 26; 1907 } 1908 1909 struct D3D11_VIDEO_PROCESSOR_STREAM 1910 { 1911 bool Enable; 1912 uint OutputIndex; 1913 uint InputFrameOrField; 1914 uint PastFrames; 1915 uint FutureFrames; 1916 ID3D11VideoProcessorInputView *ppPastSurfaces; 1917 ID3D11VideoProcessorInputView pInputSurface; 1918 ID3D11VideoProcessorInputView *ppFutureSurfaces; 1919 ID3D11VideoProcessorInputView *ppPastSurfacesRight; 1920 ID3D11VideoProcessorInputView pInputSurfaceRight; 1921 ID3D11VideoProcessorInputView *ppFutureSurfacesRight; 1922 } 1923 1924 struct D3D11_OMAC 1925 { 1926 ubyte[16] Omac; 1927 } 1928 1929 struct D3D11_AUTHENTICATED_QUERY_INPUT 1930 { 1931 GUID QueryType; 1932 HANDLE hChannel; 1933 uint SequenceNumber; 1934 } 1935 1936 struct D3D11_AUTHENTICATED_QUERY_OUTPUT 1937 { 1938 D3D11_OMAC omac; 1939 GUID QueryType; 1940 HANDLE hChannel; 1941 uint SequenceNumber; 1942 HRESULT ReturnCode; 1943 } 1944 1945 union D3D11_AUTHENTICATED_PROTECTION_FLAGS 1946 { 1947 struct Flags 1948 { 1949 uint ProtectionEnabled = 1; 1950 uint OverlayOrFullscreenRequired = 1; 1951 uint Reserved = 30; 1952 }; 1953 uint Value; 1954 } 1955 1956 struct D3D11_AUTHENTICATED_QUERY_PROTECTION_OUTPUT 1957 { 1958 D3D11_AUTHENTICATED_QUERY_OUTPUT Output; 1959 D3D11_AUTHENTICATED_PROTECTION_FLAGS ProtectionFlags; 1960 } 1961 1962 struct D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE_OUTPUT 1963 { 1964 D3D11_AUTHENTICATED_QUERY_OUTPUT Output; 1965 D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType; 1966 } 1967 1968 struct D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE_OUTPUT 1969 { 1970 D3D11_AUTHENTICATED_QUERY_OUTPUT Output; 1971 HANDLE DeviceHandle; 1972 } 1973 1974 struct D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_INPUT 1975 { 1976 D3D11_AUTHENTICATED_QUERY_INPUT Input; 1977 HANDLE DecoderHandle; 1978 } 1979 1980 struct D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_OUTPUT 1981 { 1982 D3D11_AUTHENTICATED_QUERY_OUTPUT Output; 1983 HANDLE DecoderHandle; 1984 HANDLE CryptoSessionHandle; 1985 HANDLE DeviceHandle; 1986 } 1987 1988 struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT_OUTPUT 1989 { 1990 D3D11_AUTHENTICATED_QUERY_OUTPUT Output; 1991 uint RestrictedSharedResourceProcessCount; 1992 } 1993 1994 struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_INPUT 1995 { 1996 D3D11_AUTHENTICATED_QUERY_INPUT Input; 1997 uint ProcessIndex; 1998 } 1999 2000 struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_OUTPUT 2001 { 2002 D3D11_AUTHENTICATED_QUERY_OUTPUT Output; 2003 uint ProcessIndex; 2004 D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE ProcessIdentifier; 2005 HANDLE ProcessHandle; 2006 } 2007 2008 struct D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT_OUTPUT 2009 { 2010 D3D11_AUTHENTICATED_QUERY_OUTPUT Output; 2011 uint UnrestrictedProtectedSharedResourceCount; 2012 } 2013 2014 struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_INPUT 2015 { 2016 D3D11_AUTHENTICATED_QUERY_INPUT Input; 2017 HANDLE DeviceHandle; 2018 HANDLE CryptoSessionHandle; 2019 } 2020 2021 struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_OUTPUT 2022 { 2023 D3D11_AUTHENTICATED_QUERY_OUTPUT Output; 2024 HANDLE DeviceHandle; 2025 HANDLE CryptoSessionHandle; 2026 uint OutputIDCount; 2027 } 2028 2029 struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_INPUT 2030 { 2031 D3D11_AUTHENTICATED_QUERY_INPUT Input; 2032 HANDLE DeviceHandle; 2033 HANDLE CryptoSessionHandle; 2034 uint OutputIDIndex; 2035 } 2036 2037 struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_OUTPUT 2038 { 2039 D3D11_AUTHENTICATED_QUERY_OUTPUT Output; 2040 HANDLE DeviceHandle; 2041 HANDLE CryptoSessionHandle; 2042 uint OutputIDIndex; 2043 ulong OutputID; 2044 } 2045 2046 struct D3D11_AUTHENTICATED_QUERY_ACESSIBILITY_OUTPUT 2047 { 2048 D3D11_AUTHENTICATED_QUERY_OUTPUT Output; 2049 D3D11_BUS_TYPE BusType; 2050 BOOL AccessibleInContiguousBlocks; 2051 BOOL AccessibleInNonContiguousBlocks; 2052 } 2053 2054 struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_COUNT_OUTPUT 2055 { 2056 D3D11_AUTHENTICATED_QUERY_OUTPUT Output; 2057 uint EncryptionGuidCount; 2058 } 2059 2060 struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_INPUT 2061 { 2062 D3D11_AUTHENTICATED_QUERY_INPUT Input; 2063 uint EncryptionGuidIndex; 2064 } 2065 2066 struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_OUTPUT 2067 { 2068 D3D11_AUTHENTICATED_QUERY_OUTPUT Output; 2069 uint EncryptionGuidIndex; 2070 GUID EncryptionGuid; 2071 } 2072 2073 struct D3D11_AUTHENTICATED_QUERY_CURRENT_ACCESSIBILITY_ENCRYPTION_OUTPUT 2074 { 2075 D3D11_AUTHENTICATED_QUERY_OUTPUT Output; 2076 GUID EncryptionGuid; 2077 } 2078 2079 struct D3D11_AUTHENTICATED_CONFIGURE_INPUT 2080 { 2081 D3D11_OMAC omac; 2082 GUID ConfigureType; 2083 HANDLE hChannel; 2084 uint SequenceNumber; 2085 } 2086 2087 struct D3D11_AUTHENTICATED_CONFIGURE_OUTPUT 2088 { 2089 D3D11_OMAC omac; 2090 GUID ConfigureType; 2091 HANDLE hChannel; 2092 uint SequenceNumber; 2093 HRESULT ReturnCode; 2094 } 2095 2096 struct D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE_INPUT 2097 { 2098 D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters; 2099 uint StartSequenceQuery; 2100 uint StartSequenceConfigure; 2101 } 2102 2103 struct D3D11_AUTHENTICATED_CONFIGURE_PROTECTION_INPUT 2104 { 2105 D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters; 2106 D3D11_AUTHENTICATED_PROTECTION_FLAGS Protections; 2107 } 2108 2109 struct D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_INPUT 2110 { 2111 D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters; 2112 HANDLE DecoderHandle; 2113 HANDLE CryptoSessionHandle; 2114 HANDLE DeviceHandle; 2115 } 2116 2117 struct D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_INPUT 2118 { 2119 D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters; 2120 D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE ProcessType; 2121 HANDLE ProcessHandle; 2122 BOOL AllowAccess; 2123 } 2124 2125 struct D3D11_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION_INPUT 2126 { 2127 D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters; 2128 GUID EncryptionGuid; 2129 } 2130 2131 struct D3D11_TEX2D_VDOV 2132 { 2133 uint ArraySlice; 2134 } 2135 2136 struct D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC 2137 { 2138 GUID DecodeProfile; 2139 D3D11_VDOV_DIMENSION ViewDimension; 2140 union 2141 { 2142 D3D11_TEX2D_VDOV Texture2D; 2143 }; 2144 } 2145 2146 struct D3D11_TEX2D_VPIV 2147 { 2148 uint MipSlice; 2149 uint ArraySlice; 2150 } 2151 2152 struct D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC 2153 { 2154 uint FourCC; 2155 D3D11_VPIV_DIMENSION ViewDimension; 2156 union 2157 { 2158 D3D11_TEX2D_VPIV Texture2D; 2159 }; 2160 } 2161 2162 struct D3D11_TEX2D_VPOV 2163 { 2164 uint MipSlice; 2165 } 2166 2167 struct D3D11_TEX2D_ARRAY_VPOV 2168 { 2169 uint MipSlice; 2170 uint FirstArraySlice; 2171 uint ArraySize; 2172 } 2173 2174 struct D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC 2175 { 2176 D3D11_VPOV_DIMENSION ViewDimension; 2177 union 2178 { 2179 D3D11_TEX2D_VPOV Texture2D; 2180 D3D11_TEX2D_ARRAY_VPOV Texture2DArray; 2181 }; 2182 } 2183 2184 /// 2185 /// Interfaces 2186 /// 2187 2188 mixin(uuid!(ID3D11Asynchronous, "4b35d0cd-1e15-4258-9c98-1b1333f6dd3b")); 2189 public interface ID3D11Asynchronous : ID3D11DeviceChild 2190 { 2191 extern(Windows): 2192 uint GetDataSize(); 2193 } 2194 2195 mixin(uuid!(ID3D11BlendState, "75b68faa-347d-4159-8f45-a0640f01cd9a")); 2196 public interface ID3D11BlendState : ID3D11DeviceChild 2197 { 2198 extern(Windows): 2199 void GetDesc(D3D11_BLEND_DESC *pDesc); 2200 } 2201 2202 mixin(uuid!(ID3D11Counter, "6e8c49fb-a371-4770-b440-29086022b741")); 2203 public interface ID3D11Counter : ID3D11Asynchronous 2204 { 2205 extern(Windows): 2206 void GetDesc(D3D11_COUNTER_DESC *pDesc); 2207 } 2208 2209 mixin(uuid!(ID3D11CommandList, "a24bc4d1-769e-43f7-8013-98ff566c18e2")); 2210 public interface ID3D11CommandList : ID3D11DeviceChild 2211 { 2212 extern(Windows): 2213 uint GetContextFlags(); 2214 } 2215 2216 mixin(uuid!(ID3D11DepthStencilState, "03823efb-8d8f-4e1c-9aa2-f64bb2cbfdf1")); 2217 public interface ID3D11DepthStencilState : ID3D11DeviceChild 2218 { 2219 extern(Windows): 2220 void GetDesc(D3D11_DEPTH_STENCIL_DESC *pDesc); 2221 } 2222 2223 mixin(uuid!(ID3D11Device, "db6f6ddb-ac77-4e88-8253-819df9bbf140")); 2224 public interface ID3D11Device : IUnknown 2225 { 2226 extern(Windows): 2227 void GetDesc(D3D11_DEPTH_STENCIL_DESC *pDesc); 2228 HRESULT CheckCounter(const D3D11_COUNTER_DESC *pDesc, D3D11_COUNTER_TYPE *pType, uint *pActiveCounters, char* szName, uint* pNameLength, char* szUnits, uint* pUnitsLength, char* szDescription, uint* pDescriptionLength); 2229 void CheckCounterInfo(D3D11_COUNTER_INFO *pCounterInfo); 2230 HRESULT CheckFeatureSupport(D3D11_FEATURE Feature, void *pFeatureSupportData, uint FeatureSupportDataSize); 2231 HRESULT CheckFormatSupport(DXGI_FORMAT Format, uint* pFormatSupport); 2232 HRESULT CheckMultisampleQualityLevels(DXGI_FORMAT Format, uint SampleCount, uint *pNumQualityLevels); 2233 HRESULT CreateBlendState(const D3D11_BLEND_DESC *pBlendStateDesc, ID3D11BlendState *ppBlendState); 2234 HRESULT CreateBuffer(const D3D11_BUFFER_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Buffer *ppBuffer); 2235 HRESULT CreateClassLinkage(ID3D11ClassLinkage *ppLinkage); 2236 HRESULT CreateComputeShader(const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage pClassLinkage, ID3D11ComputeShader *ppComputeShader); 2237 HRESULT CreateCounter(const D3D11_COUNTER_DESC *pCounterDesc, ID3D11Counter *ppCounter); 2238 HRESULT CreateDeferredContext(uint ContextFlags, ID3D11DeviceContext *ppDeferredContext); 2239 HRESULT CreateDepthStencilState(const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc, ID3D11DepthStencilState *ppDepthStencilState); 2240 HRESULT CreateDepthStencilView(ID3D11Resource pResource, const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc, ID3D11DepthStencilView *ppDepthStencilView); 2241 HRESULT CreateDomainShader(const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage pClassLinkage, ID3D11DomainShader *ppDomainShader); 2242 HRESULT CreateGeometryShader(const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage pClassLinkage, ID3D11GeometryShader *ppGeometryShader); 2243 HRESULT CreateGeometryShaderWithStreamOutput(const void *pShaderBytecode, SIZE_T BytecodeLength, const D3D11_SO_DECLARATION_ENTRY *pSODeclaration, UINT NumEntries, const UINT *pBufferStrides, UINT NumStrides, UINT RasterizedStream, ID3D11ClassLinkage pClassLinkage, ID3D11GeometryShader *ppGeometryShader); 2244 HRESULT CreateHullShader(const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage pClassLinkage, ID3D11HullShader *ppHullShader); 2245 HRESULT CreateInputLayout(const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs, UINT NumElements, const void *pShaderBytecodeWithInputSignature, SIZE_T BytecodeLength, ID3D11InputLayout *ppInputLayout); 2246 HRESULT CreatePixelShader(const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage pClassLinkage, ID3D11PixelShader *ppPixelShader); 2247 HRESULT CreatePredicate(const D3D11_QUERY_DESC *pPredicateDesc, ID3D11Predicate *ppPredicate); 2248 HRESULT CreateQuery(const D3D11_QUERY_DESC *pQueryDesc, ID3D11Query *ppQuery); 2249 HRESULT CreateRasterizerState(const D3D11_RASTERIZER_DESC *pRasterizerDesc, ID3D11RasterizerState *ppRasterizerState); 2250 HRESULT CreateRenderTargetView(ID3D11Resource pResource, const D3D11_RENDER_TARGET_VIEW_DESC *pDesc, ID3D11RenderTargetView *ppRTView); 2251 HRESULT CreateSamplerState(const D3D11_SAMPLER_DESC *pSamplerDesc, ID3D11SamplerState *ppSamplerState); 2252 HRESULT CreateShaderResourceView(ID3D11Resource pResource, const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc, ID3D11ShaderResourceView **ppSRView); 2253 HRESULT CreateTexture1D(const D3D11_TEXTURE1D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture1D *ppTexture1D); 2254 HRESULT CreateTexture2D(const D3D11_TEXTURE2D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture2D *ppTexture2D); 2255 HRESULT CreateTexture3D(const D3D11_TEXTURE3D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture3D *ppTexture3D); 2256 HRESULT CreateUnorderedAccessView(ID3D11Resource *pResource, const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc, ID3D11UnorderedAccessView **ppUAView); 2257 HRESULT CreateVertexShader(const void *pShaderBytecode, uint BytecodeLength, ID3D11ClassLinkage pClassLinkage, ID3D11VertexShader *ppVertexShader); 2258 uint GetCreationFlags(); 2259 HRESULT GetDeviceRemovedReason(); 2260 uint GetExceptionMode(); 2261 D3D_FEATURE_LEVEL GetFeatureLevel(); 2262 void GetImmediateContext(ID3D11DeviceContext *ppImmediateContext); 2263 HRESULT GetPrivateData(GUID* guid, uint* pDataSize, void* pData); 2264 HRESULT OpenSharedResource(HANDLE hResource, IID* ReturnedInterface, void **ppResource); 2265 HRESULT SetExceptionMode(uint RaiseFlags); 2266 HRESULT SetPrivateData(GUID* guid, uint DataSize, const void *pData); 2267 HRESULT SetPrivateDataInterface(GUID* guid, const IUnknown *pData); 2268 } 2269 2270 mixin(uuid!(ID3D11DeviceChild, "1841e5c8-16b0-489b-bcc8-44cfb0d5deae")); 2271 public interface ID3D11DeviceChild : IUnknown 2272 { 2273 extern(Windows): 2274 void GetDevice(ID3D11Device **ppDevice); 2275 HRESULT GetPrivateData(GUID* guid, uint* pDataSize, void *pData); 2276 HRESULT SetPrivateData(GUID* guid, uint DataSize, const void *pData); 2277 HRESULT SetPrivateDataInterface(GUID* guid, const IUnknown pData); 2278 } 2279 2280 mixin(uuid!(ID3D11DeviceContext, "c0bfa96c-e089-44fb-8eaf-26f8796190da")); 2281 public interface ID3D11DeviceContext : ID3D11DeviceChild 2282 { 2283 extern(Windows): 2284 void Begin(ID3D11Asynchronous *pAsync); 2285 void ClearDepthStencilView(ID3D11DepthStencilView pDepthStencilView, uint ClearFlags, float Depth, ubyte Stencil); 2286 void ClearRenderTargetView(ID3D11RenderTargetView pRenderTargetView, const float[4] ColorRGBA); 2287 void ClearState(); 2288 void ClearUnorderedAccessViewFloat(ID3D11UnorderedAccessView pUnorderedAccessView, const float[4] Values); 2289 void ClearUnorderedAccessViewUint(ID3D11UnorderedAccessView pUnorderedAccessView, const uint[4] Values); 2290 void CopyResource(ID3D11Resource pDstResource, ID3D11Resource pSrcResource); 2291 void CopyStructureCount(ID3D11Buffer pDstBuffer, uint DstAlignedByteOffset, ID3D11UnorderedAccessView pSrcView); 2292 void CopySubresourceRegion(ID3D11Resource pDstResource, uint DstSubresource, uint DstX, uint DstY, uint DstZ, ID3D11Resource pSrcResource, uint SrcSubresource, const D3D11_BOX *pSrcBox); 2293 void CSGetConstantBuffers(uint StartSlot, uint NumBuffers, ID3D11Buffer *ppConstantBuffers); 2294 void CSGetSamplers(uint StartSlot, uint NumSamplers, ID3D11SamplerState *ppSamplers); 2295 void CSGetShader(ID3D11ComputeShader *ppComputeShader, ID3D11ClassInstance *ppClassInstances, uint* pNumClassInstances); 2296 void CSGetShaderResources(uint StartSlot, uint NumViews, ID3D11ShaderResourceView *ppShaderResourceViews); 2297 void CSGetUnorderedAccessViews(uint StartSlot, uint NumUAVs, const(ID3D11UnorderedAccessView) *ppUnorderedAccessViews); 2298 void CSSetConstantBuffers(uint StartSlot, uint NumBuffers, const(ID3D11Buffer) *ppConstantBuffers); 2299 void CSSetSamplers(uint StartSlot, uint NumSamplers, const(ID3D11SamplerState) *ppSamplers); 2300 void CSSetShader(ID3D11ComputeShader pShader, const(ID3D11ClassInstance) *ppClassInstances, uint NumClassInstances); 2301 void CSSetShaderResources(uint StartSlot, uint NumViews, const(ID3D11ShaderResourceView) *ppShaderResourceViews); 2302 void CSSetUnorderedAccessViews(uint StartSlot, uint NumUAVs, const(ID3D11UnorderedAccessView) *ppUnorderedAccessViews, const(uint) *pUAVInitialCounts); 2303 void Dispatch(uint ThreadGroupCountX, uint ThreadGroupCountY, uint ThreadGroupCountZ); 2304 void DispatchIndirect(ID3D11Buffer pBufferForArgs, uint AlignedOffsetForArgs); 2305 void Draw(uint VertexCount, uint StartVertexLocation); 2306 void DrawAuto(); 2307 void DrawIndexed(uint IndexCount, uint StartIndexLocation, int BaseVertexLocation); 2308 void DrawIndexedInstanced(uint IndexCountPerInstance, uint InstanceCount, uint StartIndexLocation, int BaseVertexLocation, uint StartInstanceLocation); 2309 void DrawIndexedInstancedIndirect(ID3D11Buffer pBufferForArgs, uint AlignedByteOffsetForArgs); 2310 void DrawInstanced(uint VertexCountPerInstance, uint InstanceCount, uint StartVertexLocation, uint StartInstanceLocation); 2311 void DrawInstancedIndirect(ID3D11Buffer pBufferForArgs, uint AlignedByteOffsetForArgs); 2312 void DSGetConstantBuffers(uint StartSlot, uint NumBuffers, ID3D11Buffer *ppConstantBuffers); 2313 void DSGetSamplers(uint StartSlot, uint NumSamplers, ID3D11SamplerState *ppSamplers); 2314 void DSGetShader(ID3D11DomainShader *ppDomainShader, ID3D11ClassInstance *ppClassInstances, uint* pNumClassInstances); 2315 void DSGetShaderResources(uint StartSlot, uint NumViews, ID3D11ShaderResourceView *ppShaderResourceViews); 2316 void DSSetConstantBuffers(uint StartSlot, uint NumBuffers, const(ID3D11Buffer) *ppConstantBuffers); 2317 void DSSetSamplers(uint StartSlot, uint NumSamplers, const(ID3D11SamplerState) *ppSamplers); 2318 void DSSetShader(ID3D11DomainShader *pShader, const(ID3D11ClassInstance) *ppClassInstances, uint NumClassInstances); 2319 void DSSetShaderResources(uint StartSlot, uint NumViews, const(ID3D11ShaderResourceView) *ppShaderResourceViews); 2320 void End(ID3D11Asynchronous *pAsync); 2321 void ExecuteCommandList(ID3D11CommandList pCommandList, bool RestoreContextState); 2322 HRESULT FinishCommandList(bool RestoreDeferredContextState, ID3D11CommandList *ppCommandList); 2323 void Flush(); 2324 void GenerateMips(ID3D11ShaderResourceView pShaderResourceView); 2325 uint GetContextFlags(); 2326 HRESULT GetData(ID3D11Asynchronous *pAsync, void *pData, uint DataSize, uint GetDataFlags); 2327 void GetPredication(ID3D11Predicate *ppPredicate, bool* pPredicateValue); 2328 float GetResourceMinLOD(ID3D11Resource pResource); 2329 D3D11_DEVICE_CONTEXT_TYPE GetType(); 2330 void GSGetConstantBuffers(uint StartSlot, uint NumBuffers, ID3D11Buffer *ppConstantBuffers); 2331 void GSGetSamplers(uint StartSlot, uint NumSamplers, ID3D11SamplerState *ppSamplers); 2332 void GSGetShader(ID3D11GeometryShader *ppGeometryShader, ID3D11ClassInstance *ppClassInstances, uint* pNumClassInstances); 2333 void GSGetShaderResources(uint StartSlot, uint NumViews, ID3D11ShaderResourceView *ppShaderResourceViews); 2334 void GSSetConstantBuffers(uint StartSlot, uint NumBuffers, const(ID3D11Buffer) *ppConstantBuffers); 2335 void GSSetSamplers(uint StartSlot, uint NumSamplers, const(ID3D11SamplerState) *ppSamplers); 2336 void GSSetShader(ID3D11GeometryShader *pShader, const(ID3D11ClassInstance) *ppClassInstances, uint NumClassInstances); 2337 void GSSetShaderResources(uint StartSlot, uint NumViews, const(ID3D11ShaderResourceView) *ppShaderResourceViews); 2338 void HSGetConstantBuffers(uint StartSlot, uint NumBuffers, ID3D11Buffer *ppConstantBuffers); 2339 void HSGetSamplers(uint StartSlot, uint NumSamplers, ID3D11SamplerState *ppSamplers); 2340 void HSGetShader(ID3D11HullShader *ppHullShader, ID3D11ClassInstance *ppClassInstances, uint* pNumClassInstances); 2341 void HSGetShaderResources(uint StartSlot, uint NumViews, ID3D11ShaderResourceView *ppShaderResourceViews); 2342 void HSSetConstantBuffers(uint StartSlot, uint NumBuffers, const(ID3D11Buffer) *ppConstantBuffers); 2343 void HSSetSamplers(uint StartSlot, uint NumSamplers, const(ID3D11SamplerState) *ppSamplers); 2344 void HSSetShader(ID3D11HullShader *pShader, const(ID3D11ClassInstance) *ppClassInstances, uint NumClassInstances); 2345 void HSSetShaderResources(uint StartSlot, uint NumViews, const(ID3D11ShaderResourceView) *ppShaderResourceViews); 2346 void IAGetIndexBuffer(ID3D11Buffer *pIndexBuffer, DXGI_FORMAT *Format, uint* Offset); 2347 void IAGetInputLayout(ID3D11InputLayout *ppInputLayout); 2348 void IAGetPrimitiveTopology(D3D11_PRIMITIVE_TOPOLOGY *pTopology); 2349 void IAGetVertexBuffers(uint StartSlot, uint NumBuffers, ID3D11Buffer *ppVertexBuffers, uint *pStrides, uint *pOffsets); 2350 void IASetIndexBuffer(ID3D11Buffer pIndexBuffer, DXGI_FORMAT Format, uint Offset); 2351 void IASetInputLayout(ID3D11InputLayout pInputLayout); 2352 void IASetPrimitiveTopology(D3D11_PRIMITIVE_TOPOLOGY Topology); 2353 void IASetVertexBuffers(uint StartSlot, uint NumBuffers, const(ID3D11Buffer) *ppVertexBuffers, const(uint) *pStrides, const(uint) *pOffsets); 2354 HRESULT Map(ID3D11Resource pResource, uint Subresource, D3D11_MAP MapType, uint MapFlags, D3D11_MAPPED_SUBRESOURCE *pMappedResource); 2355 void OMGetBlendState(ID3D11BlendState *ppBlendState, float[4] BlendFactor, uint* pSampleMask); 2356 void OMGetDepthStencilState(ID3D11DepthStencilState *ppDepthStencilState, uint* pStencilRef); 2357 void OMGetRenderTargets(uint NumViews, ID3D11RenderTargetView *ppRenderTargetViews, ID3D11DepthStencilView *ppDepthStencilView); 2358 void OMGetRenderTargetsAndUnorderedAccessViews(uint NumViews, ID3D11RenderTargetView *ppRenderTargetViews, ID3D11DepthStencilView *ppDepthStencilView, uint UAVStartSlot, uint NumUAVs, ID3D11UnorderedAccessView *ppUnorderedAccessViews); 2359 void OMSetBlendState(ID3D11BlendState pBlendState, const float[4] BlendFactor, uint SampleMask); 2360 void OMSetDepthStencilState(ID3D11DepthStencilState pDepthStencilState, uint StencilRef); 2361 void OMSetRenderTargets(uint NumViews, const(ID3D11RenderTargetView) *ppRenderTargetViews, ID3D11DepthStencilView pDepthStencilView); 2362 void OMSetRenderTargetsAndUnorderedAccessViews(uint NumViews, const(ID3D11RenderTargetView) *ppRenderTargetViews, ID3D11DepthStencilView pDepthStencilView, uint UAVStartSlot, uint NumUAVs, const(ID3D11UnorderedAccessView) *ppUnorderedAccessView, const(uint) *pUAVInitialCounts); 2363 void PSGetConstantBuffers(uint StartSlot, uint NumBuffers, ID3D11Buffer *ppConstantBuffers); 2364 void PSGetSamplers(uint StartSlot, uint NumSamplers, ID3D11SamplerState *ppSamplers); 2365 void PSGetShader(ID3D11PixelShader *ppPixelShader, ID3D11ClassInstance *ppClassInstances, uint* pNumClassInstances); 2366 void PSGetShaderResources(uint StartSlot, uint NumViews, ID3D11ShaderResourceView *ppShaderResourceViews); 2367 void PSSetConstantBuffers(uint StartSlot, uint NumBuffers, const(ID3D11Buffer) *ppConstantBuffers); 2368 void PSSetSamplers(uint StartSlot, uint NumSamplers, const(ID3D11SamplerState) *ppSamplers); 2369 void PSSetShader(ID3D11PixelShader *pShader, const(ID3D11ClassInstance) *ppClassInstances, uint NumClassInstances); 2370 void PSSetShaderResources(uint StartSlot, uint NumViews, const(ID3D11ShaderResourceView) *ppShaderResourceViews); 2371 void ResolveSubresource(ID3D11Resource pDstResource, uint DstSubresource, ID3D11Resource pSrcResource, uint SrcSubresource, DXGI_FORMAT Format); 2372 void RSGetScissorRects(uint* pNumRects, D3D11_RECT *pRects); 2373 void RSGetState(ID3D11RasterizerState *ppRasterizerState); 2374 void RSGetViewports(uint* pNumViewports, D3D11_VIEWPORT *pViewports); 2375 void RSSetScissorRects(uint NumRects, const D3D11_RECT *pRects); 2376 void RSSetState(ID3D11RasterizerState pRasterizerState); 2377 void RSSetViewports(uint NumViewports, const D3D11_VIEWPORT *pViewports); 2378 void SetPredication(ID3D11Predicate pPredicate, bool PredicateValue); 2379 void SetResourceMinLOD(ID3D11Resource pResource, float MinLOD); 2380 void SOGetTargets(uint NumBuffers, ID3D11Buffer *ppSOTargets); 2381 void SOSetTargets(uint NumBuffers, const(ID3D11Buffer) *ppSOTargets, const(uint) *pOffsets); 2382 void Unmap(ID3D11Resource pResource, uint Subresource); 2383 void UpdateSubresource(ID3D11Resource pDstResource, uint DstSubresource, const(D3D11_BOX) *pDstBox, const(void) *pSrcData, uint SrcRowPitch, uint SrcDepthPitch); 2384 void VSGetConstantBuffers(uint StartSlot, uint NumBuffers, ID3D11Buffer *ppConstantBuffers); 2385 void VSGetSamplers(uint StartSlot, uint NumSamplers, ID3D11SamplerState *ppSamplers); 2386 void VSGetShader(ID3D11VertexShader *ppVertexShader, ID3D11ClassInstance *ppClassInstances, uint* pNumClassInstances); 2387 void VSGetShaderResources(uint StartSlot, uint NumViews, ID3D11ShaderResourceView *ppShaderResourceViews); 2388 void VSSetConstantBuffers(uint StartSlot, uint NumBuffers, const(ID3D11Buffer) *ppConstantBuffers); 2389 void VSSetSamplers(uint StartSlot, uint NumSamplers, const(ID3D11SamplerState) *ppSamplers); 2390 void VSSetShader(ID3D11VertexShader *pShader, const(ID3D11ClassInstance) *ppClassInstances, uint NumClassInstances); 2391 void VSSetShaderResources(uint StartSlot, uint NumViews, const(ID3D11ShaderResourceView) *ppShaderResourceViews); 2392 } 2393 2394 mixin(uuid!(ID3D11InputLayout, "e4819ddc-4cf0-4025-bd26-5de82a3e07b7")); 2395 public interface ID3D11InputLayout : ID3D11DeviceChild 2396 { 2397 extern(Windows): 2398 } 2399 2400 mixin(uuid!(ID3D11Predicate, "9eb576dd-9f77-4d86-81aa-8bab5fe490e2")); 2401 public interface ID3D11Predicate : ID3D11Query 2402 { 2403 extern(Windows): 2404 } 2405 2406 mixin(uuid!(ID3D11Query, "d6c00747-87b7-425e-b84d-44d108560afd")); 2407 public interface ID3D11Query : ID3D11Asynchronous 2408 { 2409 extern(Windows): 2410 void GetDesc(D3D11_QUERY_DESC *pDesc); 2411 } 2412 2413 mixin(uuid!(ID3D11RasterizerState, "9bb4ab81-ab1a-4d8f-b506-fc04200b6ee7")); 2414 public interface ID3D11RasterizerState : ID3D11DeviceChild 2415 { 2416 extern(Windows): 2417 void GetDesc(D3D11_RASTERIZER_DESC *pDesc); 2418 } 2419 2420 mixin(uuid!(ID3D11SamplerState, "da6fea51-564c-4487-9810-f0d0f9b4e3a5")); 2421 public interface ID3D11SamplerState : ID3D11DeviceChild 2422 { 2423 extern(Windows): 2424 void GetDesc(D3D11_SAMPLER_DESC *pDesc); 2425 } 2426 2427 mixin(uuid!(ID3D11Buffer, "48570b85-d1ee-4fcd-a250-eb350722b037")); 2428 public interface ID3D11Buffer : ID3D11Resource 2429 { 2430 extern(Windows): 2431 void GetDesc(D3D11_BUFFER_DESC *pDesc); 2432 } 2433 2434 mixin(uuid!(ID3D11Resource, "dc8e63f3-d12b-4952-b47b-5e45026a862d")); 2435 public interface ID3D11Resource : ID3D11DeviceChild 2436 { 2437 extern(Windows): 2438 uint GetEvictionPriority(); 2439 void GetType(D3D11_RESOURCE_DIMENSION *rType); 2440 void SetEvictionPriority(uint EvictionPriority); 2441 } 2442 2443 mixin(uuid!(ID3D11Texture1D, "f8fb5c27-c6b3-4f75-a4c8-439af2ef564c")); 2444 public interface ID3D11Texture1D : ID3D11Resource 2445 { 2446 extern(Windows): 2447 void GetDesc(D3D11_TEXTURE1D_DESC *pDesc); 2448 } 2449 2450 mixin(uuid!(ID3D11Texture2D, "6f15aaf2-d208-4e89-9ab4-489535d34f9c")); 2451 public interface ID3D11Texture2D : ID3D11Resource 2452 { 2453 extern(Windows): 2454 void GetDesc(D3D11_TEXTURE2D_DESC *pDesc); 2455 } 2456 2457 mixin(uuid!(ID3D11Texture3D, "037e866e-f56d-4357-a8af-9dabbe6e250e")); 2458 public interface ID3D11Texture3D : ID3D11Resource 2459 { 2460 extern(Windows): 2461 void GetDesc(D3D11_TEXTURE3D_DESC *pDesc); 2462 } 2463 2464 mixin(uuid!(ID3D11DepthStencilView, "9fdac92a-1876-48c3-afad-25b94f84a9b6")); 2465 public interface ID3D11DepthStencilView : ID3D11View 2466 { 2467 extern(Windows): 2468 void GetDesc(D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc); 2469 } 2470 2471 mixin(uuid!(ID3D11RenderTargetView, "dfdba067-0b8d-4865-875b-d7b4516cc164")); 2472 public interface ID3D11RenderTargetView : ID3D11View 2473 { 2474 extern(Windows): 2475 void GetDesc(D3D11_RENDER_TARGET_VIEW_DESC *pDesc); 2476 } 2477 2478 mixin(uuid!(ID3D11ShaderResourceView, "b0e06fe0-8192-4e1a-b1ca-36d7414710b2")); 2479 public interface ID3D11ShaderResourceView : ID3D11View 2480 { 2481 extern(Windows): 2482 void GetDesc(D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc); 2483 } 2484 2485 mixin(uuid!(ID3D11UnorderedAccessView, "28acf509-7f5c-48f6-8611-f316010a6380")); 2486 public interface ID3D11UnorderedAccessView : ID3D11View 2487 { 2488 extern(Windows): 2489 void GetDesc(D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc); 2490 } 2491 2492 mixin(uuid!(ID3D11View, "839d1216-bb2e-412b-b7f4-a9dbebe08ed1")); 2493 public interface ID3D11View : ID3D11DeviceChild 2494 { 2495 extern(Windows): 2496 void GetResource(ID3D11Resource **ppResource); 2497 } 2498 2499 mixin(uuid!(ID3D11ClassInstance, "a6cd7faa-b0b7-4a2f-9436-8662a65797cb")); 2500 public interface ID3D11ClassInstance : ID3D11DeviceChild 2501 { 2502 extern(Windows): 2503 void GetClassLinkage(ID3D11ClassLinkage *ppLinkage); 2504 void GetDesc(D3D11_CLASS_INSTANCE_DESC *pDesc); 2505 void GetInstanceName(wchar* pInstanceName, uint *pBufferLength); 2506 void GetTypeName(const(char)* pTypeName, uint *pBufferLength); 2507 } 2508 2509 mixin(uuid!(ID3D11ClassLinkage, "ddf57cba-9543-46e4-a12b-f207a0fe7fed")); 2510 public interface ID3D11ClassLinkage : ID3D11DeviceChild 2511 { 2512 extern(Windows): 2513 HRESULT CreateClassInstance(const(char)* pszClassTypeName, uint ConstantBufferOffset, uint ConstantVectorOffset, uint TextureOffset, uint SamplerOffset, ID3D11ClassInstance *ppInstance); 2514 HRESULT GetClassInstance(const(wchar)* pClassInstanceName, uint InstanceIndex, ID3D11ClassInstance *ppInstance); 2515 } 2516 2517 mixin(uuid!(ID3D11ComputeShader, "4f5b196e-c2bd-495e-bd01-1fded38e4969")); 2518 public interface ID3D11ComputeShader : ID3D11DeviceChild 2519 { 2520 extern(Windows): 2521 } 2522 2523 mixin(uuid!(ID3D11DomainShader, "f582c508-0f36-490c-9977-31eece268cfa")); 2524 public interface ID3D11DomainShader : ID3D11DeviceChild 2525 { 2526 extern(Windows): 2527 } 2528 2529 mixin(uuid!(ID3D11GeometryShader, "38325b96-effb-4022-ba02-2e795b70275c")); 2530 public interface ID3D11GeometryShader : ID3D11DeviceChild 2531 { 2532 extern(Windows): 2533 } 2534 2535 mixin(uuid!(ID3D11HullShader, "8e5c6061-628a-4c8e-8264-bbe45cb3d5dd")); 2536 public interface ID3D11HullShader : ID3D11DeviceChild 2537 { 2538 extern(Windows): 2539 } 2540 2541 mixin(uuid!(ID3D11PixelShader, "ea82e40d-51dc-4f33-93d4-db7c9125ae8c")); 2542 public interface ID3D11PixelShader : ID3D11DeviceChild 2543 { 2544 extern(Windows): 2545 } 2546 2547 mixin(uuid!(ID3D11VertexShader, "3b301d64-d678-4289-8897-22f8928b72f3")); 2548 public interface ID3D11VertexShader : ID3D11DeviceChild 2549 { 2550 extern(Windows): 2551 } 2552 2553 mixin(uuid!(ID3D11VideoDecoder, "3C9C5B51-995D-48d1-9B8D-FA5CAEDED65C")); 2554 public interface ID3D11VideoDecoder : ID3D11DeviceChild 2555 { 2556 extern(Windows): 2557 HRESULT GetCreationParameters(D3D11_VIDEO_DECODER_DESC *pVideoDesc, D3D11_VIDEO_DECODER_CONFIG *pConfig); 2558 HRESULT GetDriverHandle(HANDLE *pDriverHandle); 2559 } 2560 2561 mixin(uuid!(ID3D11VideoProcessorEnumerator, "31627037-53AB-4200-9061-05FAA9AB45F9")); 2562 public interface ID3D11VideoProcessorEnumerator : ID3D11DeviceChild 2563 { 2564 extern(Windows): 2565 HRESULT CheckVideoProcessorFormat(DXGI_FORMAT Format, uint *pFlags); 2566 HRESULT GetVideoProcessorCaps(D3D11_VIDEO_PROCESSOR_CAPS *pCaps); 2567 HRESULT GetVideoProcessorContentDesc(D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pContentDesc); 2568 HRESULT GetVideoProcessorCustomRate(uint TypeIndex, uint CustomRateIndex, D3D11_VIDEO_PROCESSOR_CUSTOM_RATE *pRate); 2569 HRESULT GetVideoProcessorFilterRange(D3D11_VIDEO_PROCESSOR_FILTER Filter, D3D11_VIDEO_PROCESSOR_FILTER_RANGE *pRange); 2570 HRESULT GetVideoProcessorRateConversionCaps(uint TypeIndex, D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps); 2571 } 2572 2573 mixin(uuid!(ID3D11VideoProcessor, "1D7B0652-185F-41c6-85CE-0C5BE3D4AE6C")); 2574 public interface ID3D11VideoProcessor : ID3D11DeviceChild 2575 { 2576 extern(Windows): 2577 void GetContentDesc(D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc); 2578 void GetRateConversionCaps(D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps); 2579 } 2580 2581 mixin(uuid!(ID3D11AuthenticatedChannel, "3015A308-DCBD-47aa-A747-192486D14D4A")); 2582 public interface ID3D11AuthenticatedChannel : IUnknown 2583 { 2584 extern(Windows): 2585 HRESULT GetCertificate(uint CertificateSize, ubyte *pCertificate); 2586 HRESULT GetCertificateSize(uint *pCertificateSize); 2587 void GetChannelHandle(HANDLE *pChannelHandle); 2588 } 2589 2590 mixin(uuid!(ID3D11CryptoSession, "9B32F9AD-BDCC-40a6-A39D-D5C865845720")); 2591 public interface ID3D11CryptoSession : ID3D11DeviceChild 2592 { 2593 extern(Windows): 2594 HRESULT GetCertificate(uint CertificateSize, ubyte *pCertificate); 2595 HRESULT GetCertificateSize(uint *pCertificateSize); 2596 void GetCryptoSessionHandle(HANDLE *pCryptoSessionHandle); 2597 void GetCryptoType(GUID *pCryptoType); 2598 void GetDecoderProfile(GUID *pDecoderProfile); 2599 } 2600 2601 mixin(uuid!(ID3D11VideoDecoderOutputView, "C2931AEA-2A85-4f20-860F-FBA1FD256E18")); 2602 public interface ID3D11VideoDecoderOutputView : ID3D11View 2603 { 2604 extern(Windows): 2605 void GetDesc(D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc); 2606 } 2607 2608 mixin(uuid!(ID3D11VideoProcessorInputView, "11EC5A5F-51DC-4945-AB34-6E8C21300EA5")); 2609 public interface ID3D11VideoProcessorInputView : ID3D11View 2610 { 2611 extern(Windows): 2612 void GetDesc(D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc); 2613 } 2614 2615 mixin(uuid!(ID3D11VideoProcessorOutputView, "A048285E-25A9-4527-BD93-D68B68C44254")); 2616 public interface ID3D11VideoProcessorOutputView : ID3D11View 2617 { 2618 extern(Windows): 2619 void GetDesc(D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc); 2620 } 2621 2622 mixin(uuid!(ID3D11VideoContext, "61F21C45-3C0E-4a74-9CEA-67100D9AD5E4")); 2623 public interface ID3D11VideoContext : ID3D11DeviceChild 2624 { 2625 extern(Windows): 2626 HRESULT ConfigureAuthenticatedChannel(ID3D11AuthenticatedChannel pChannel, uint InputSize, const void *pInput, D3D11_AUTHENTICATED_CONFIGURE_OUTPUT *pOutput); 2627 HRESULT DecoderBeginFrame(ID3D11VideoDecoder pDecoder, ID3D11VideoDecoderOutputView pView, uint ContentKeySize, const void*pContentKey); 2628 HRESULT DecoderEndFrame(ID3D11VideoDecoder pDecoder); 2629 HRESULT DecoderExtension(ID3D11VideoDecoder pDecoder, const D3D11_VIDEO_DECODER_EXTENSION *pExtensionData); 2630 HRESULT DecryptionBlt(ID3D11CryptoSession pCryptoSession, ID3D11Texture2D pSrcSurface, ID3D11Texture2D pDstSurface, D3D11_ENCRYPTED_BLOCK_INFO *pEncryptedBlockInfo, const void *pContentKey, uint ContentKeySize, void *pIV, uint IVSize); 2631 HRESULT EncryptionBlt(ID3D11CryptoSession pCryptoSession, ID3D11Texture2D pSrcSurface, ID3D11Texture2D pDstSurface, void *pIV, uint IVSize); 2632 HRESULT FinishSessionKeyRefresh(ID3D11CryptoSession pCryptoSession); 2633 HRESULT GetDecoderBuffer(ID3D11VideoDecoder pDecoder, D3D11_VIDEO_DECODER_BUFFER_TYPE Type, uint *pBufferSize,void **ppBuffer); 2634 HRESULT GetEncryptionBltKey(ID3D11CryptoSession pCryptoSession, uint KeySize, void *pReadbackKey); 2635 HRESULT NegotiateAuthenticatedChannelKeyExchange(ID3D11AuthenticatedChannel pChannel, uint DataSize, void *pData); 2636 HRESULT NegotiateCryptoSessionKeyExchange(ID3D11CryptoSession pCryptoSession, uint *DataSize, void *pData); 2637 HRESULT QueryAuthenticatedChannel(ID3D11AuthenticatedChannel pChannel, uint InputSize, const void *pInput, uint OutputSize, void *pOutput); 2638 HRESULT ReleaseDecoderBuffer(ID3D11VideoDecoder pDecoder, D3D11_VIDEO_DECODER_BUFFER_TYPE Type); 2639 HRESULT StartSessionKeyRefresh(ID3D11CryptoSession pCryptoSession, uint RandomNumberSize, void *pRandomNumber); 2640 HRESULT SubmitDecoderBuffers(ID3D11VideoDecoder pDecoder, uint NumBuffers, const D3D11_VIDEO_DECODER_BUFFER_DESC *pBufferDesc); 2641 HRESULT VideoProcessorBlt(ID3D11VideoProcessor pVideoProcessor, ID3D11VideoProcessorOutputView pView, uint OutputFrame, uint StreamCount, const D3D11_VIDEO_PROCESSOR_STREAM *pStreams); 2642 void VideoProcessorGetOutputAlphaFillMode(ID3D11VideoProcessor pVideoProcessor, D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE *pAlphaFillMode, uint *pStreamIndex); 2643 void VideoProcessorGetOutputBackgroundColor(ID3D11VideoProcessor pVideoProcessor, bool *pYCbCr, D3D11_VIDEO_COLOR *pColor); 2644 void VideoProcessorGetOutputColorSpace(ID3D11VideoProcessor pVideoProcessor, D3D11_VIDEO_PROCESSOR_COLOR_SPACE *pColorSpace); 2645 void VideoProcessorGetOutputConstriction(ID3D11VideoProcessor pVideoProcessor, bool *Enabled, SIZE *pSize); 2646 HRESULT VideoProcessorGetOutputExtension(ID3D11VideoProcessor pVideoProcessor, const GUID *pExtensionGuid, uint DataSize, void *pData); 2647 void VideoProcessorGetOutputStereoMode(ID3D11VideoProcessor pVideoProcessor, bool *pEnabled); 2648 void VideoProcessorGetOutputTargetRect(ID3D11VideoProcessor pVideoProcessor, bool *Enabled, RECT*pRect); 2649 void VideoProcessorGetStreamAlpha(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, bool *pEnabled, float *pAlpha); 2650 void VideoProcessorGetStreamAutoProcessingMode(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, bool *pEnabled); 2651 void VideoProcessorGetStreamColorSpace(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, D3D11_VIDEO_PROCESSOR_COLOR_SPACE *pColorSpace); 2652 void VideoProcessorGetStreamDestRect(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, bool *pEnabled, RECT *pRect); 2653 HRESULT VideoProcessorGetStreamExtension(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, const GUID *pExtensionGuid, uint DataSize, void *pData); 2654 void VideoProcessorGetStreamFilter(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex,D3D11_VIDEO_PROCESSOR_FILTER Filter, bool *pEnabled, int*pLevel); 2655 void VideoProcessorGetStreamFrameFormat(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, D3D11_VIDEO_FRAME_FORMAT *pFrameFormat); 2656 void VideoProcessorGetStreamLumaKey(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, bool *pEnabled, float *pLower, float *pUpper); 2657 void VideoProcessorGetStreamOutputRate(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, D3D11_VIDEO_PROCESSOR_OUTPUT_RATE *pOutputRate, bool *pRepeatFrame, DXGI_RATIONAL *pCustomRate); 2658 void VideoProcessorGetStreamPalette(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, uint Count, uint *pEntries); 2659 void VideoProcessorGetStreamPixelAspectRatio(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, bool *pEnabled, DXGI_RATIONAL *pSourceAspectRatio, DXGI_RATIONAL *pDestinationAspectRatio); 2660 void VideoProcessorGetStreamRotation(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, bool *pEnable, D3D11_VIDEO_PROCESSOR_ROTATION *pRotation); 2661 void VideoProcessorGetStreamSourceRect(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, bool *pEnabled, RECT *pRect); 2662 void VideoProcessorGetStreamStereoFormat(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, bool *pEnabled, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT *pFormat, bool *pLeftViewFrame0, bool *pBaseViewFrame0, D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE *pFlipMode, int *MonoOffset); 2663 void VideoProcessorSetOutputAlphaFillMode(ID3D11VideoProcessor pVideoProcessor, D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE AlphaFillMode, uint StreamIndex); 2664 void VideoProcessorSetOutputBackgroundColor(ID3D11VideoProcessor pVideoProcessor, bool YCbCr, const D3D11_VIDEO_COLOR *pColor); 2665 void VideoProcessorSetOutputColorSpace(ID3D11VideoProcessor pVideoProcessor, const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *pColorSpace); 2666 void VideoProcessorSetOutputConstriction(ID3D11VideoProcessor pVideoProcessor, bool Enable, SIZE Size); 2667 HRESULT VideoProcessorSetOutputExtension(ID3D11VideoProcessor pVideoProcessor, const GUID *pExtensionGuid, uint DataSize, void *pData); 2668 void VideoProcessorSetOutputStereoMode(ID3D11VideoProcessor pVideoProcessor, bool Enable); 2669 void VideoProcessorSetOutputTargetRect(ID3D11VideoProcessor pVideoProcessor, bool Enable, const RECT *pRect); 2670 void VideoProcessorSetStreamAlpha(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, bool Enable, float Alpha); 2671 void VideoProcessorSetStreamAutoProcessingMode(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, bool Enable); 2672 void VideoProcessorSetStreamColorSpace(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *pColorSpace); 2673 void VideoProcessorSetStreamDestRect(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, bool Enable, const RECT *pRect); 2674 HRESULT VideoProcessorSetStreamExtension(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, const GUID *pExtensionGuid, uint DataSize, void *pData); 2675 void VideoProcessorSetStreamFilter(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, D3D11_VIDEO_PROCESSOR_FILTER Filter, bool Enable, int Level); 2676 void VideoProcessorSetStreamFrameFormat(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, D3D11_VIDEO_FRAME_FORMAT FrameFormat); 2677 void VideoProcessorSetStreamLumaKey(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, bool Enable, float Lower, float Upper); 2678 void VideoProcessorSetStreamOutputRate(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, D3D11_VIDEO_PROCESSOR_OUTPUT_RATE OutputRate, bool RepeatFrame, const DXGI_RATIONAL *pCustomRate); 2679 void VideoProcessorSetStreamPalette(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, uint Count, const uint *pEntries); 2680 void VideoProcessorSetStreamPixelAspectRatio(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, bool Enable, const DXGI_RATIONAL *pSourceAspectRatio, const DXGI_RATIONAL *pDestinationAspectRatio); 2681 void VideoProcessorSetStreamRotation(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, bool Enable, D3D11_VIDEO_PROCESSOR_ROTATION Rotation); 2682 void VideoProcessorSetStreamSourceRect(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, bool Enable, const RECT *pRect); 2683 void VideoProcessorSetStreamStereoFormat(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, bool Enable, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT Format, bool LeftViewFrame0, bool BaseViewFrame0, D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE FlipMode, int MonoOffset); 2684 } 2685 2686 mixin(uuid!(ID3D11VideoDevice, "10EC4D5B-975A-4689-B9E4-D0AAC30FE333")); 2687 public interface ID3D11VideoDevice : IUnknown 2688 { 2689 extern(Windows): 2690 HRESULT CheckCryptoKeyExchange(const GUID *pCryptoType, const GUID *pDecoderProfile, uint Index, GUID *pKeyExchangeType); 2691 HRESULT CheckVideoDecoderFormat(GUID pDecoderProfile, DXGI_FORMAT Format, bool *pSupported); 2692 HRESULT CreateAuthenticatedChannel(D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType, ID3D11AuthenticatedChannel *ppAuthenticatedChannel); 2693 HRESULT CreateCryptoSession(const GUID *pCryptoType, const GUID *pDecoderProfile, const GUID *pKeyExchangeType, ID3D11CryptoSession *ppCryptoSession); 2694 HRESULT CreateVideoDecoder(const D3D11_VIDEO_DECODER_DESC *pVideoDesc, const D3D11_VIDEO_DECODER_CONFIG *pConfig, ID3D11VideoDecoder **ppDecoder); 2695 HRESULT CreateVideoDecoderOutputView(ID3D11Resource pResource, const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc, ID3D11VideoDecoderOutputView *ppVDOVView); 2696 HRESULT CreateVideoProcessor(ID3D11VideoProcessorEnumerator pEnum, uint RateConversionIndex, ID3D11VideoProcessor *ppVideoProcessor); 2697 HRESULT CreateVideoProcessorEnumerator(const D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc, ID3D11VideoProcessorEnumerator *ppEnum); 2698 HRESULT CreateVideoProcessorInputView(ID3D11Resource pResource, ID3D11VideoProcessorEnumerator pEnum, const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc, ID3D11VideoProcessorInputView *ppVPIView); 2699 HRESULT CreateVideoProcessorOutputView(ID3D11Resource pResource, ID3D11VideoProcessorEnumerator pEnum, const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc, ID3D11VideoProcessorOutputView *ppVPOView); 2700 HRESULT GetContentProtectionCaps(const GUID *pCryptoType, const GUID *pDecoderProfile, D3D11_VIDEO_CONTENT_PROTECTION_CAPS *pCaps); 2701 HRESULT GetVideoDecoderConfig(const D3D11_VIDEO_DECODER_DESC *pDesc, uint Index, D3D11_VIDEO_DECODER_CONFIG *pConfig); 2702 HRESULT GetVideoDecoderConfigCount(const D3D11_VIDEO_DECODER_DESC *pDesc, uint *pCount); 2703 HRESULT GetVideoDecoderProfile(uint Index, GUID *pDecoderProfile); 2704 uint GetVideoDecoderProfileCount(); 2705 HRESULT SetPrivateData(REFGUID guid, uint DataSize, const void *pData); 2706 HRESULT SetPrivateDataInterface(REFGUID guid, const IUnknown *pData); 2707 }