Home | History | Annotate | Download | only in include
      1 /*** Autogenerated by WIDL 1.5.29 from /tmp/build-mingw64-toolchain-digit/src/mingw-w64-svn-r5861/mingw-w64-headers/direct-x/include/d3dcommon.idl - Do not edit ***/
      2 
      3 #ifndef __REQUIRED_RPCNDR_H_VERSION__
      4 #define __REQUIRED_RPCNDR_H_VERSION__ 475
      5 #endif
      6 
      7 #include <rpc.h>
      8 #include <rpcndr.h>
      9 
     10 #ifndef COM_NO_WINDOWS_H
     11 #include <windows.h>
     12 #include <ole2.h>
     13 #endif
     14 
     15 #ifndef __d3dcommon_h__
     16 #define __d3dcommon_h__
     17 
     18 /* Forward declarations */
     19 
     20 #ifndef __ID3D10Blob_FWD_DEFINED__
     21 #define __ID3D10Blob_FWD_DEFINED__
     22 typedef interface ID3D10Blob ID3D10Blob;
     23 #endif
     24 
     25 #ifndef __ID3DInclude_FWD_DEFINED__
     26 #define __ID3DInclude_FWD_DEFINED__
     27 typedef interface ID3DInclude ID3DInclude;
     28 #endif
     29 
     30 /* Headers for imported files */
     31 
     32 #include <oaidl.h>
     33 #include <ocidl.h>
     34 
     35 #ifdef __cplusplus
     36 extern "C" {
     37 #endif
     38 
     39 typedef struct _D3D_SHADER_MACRO {
     40     LPCSTR Name;
     41     LPCSTR Definition;
     42 } D3D_SHADER_MACRO;
     43 typedef struct _D3D_SHADER_MACRO *LPD3D_SHADER_MACRO;
     44 /*****************************************************************************
     45  * ID3D10Blob interface
     46  */
     47 #ifndef __ID3D10Blob_INTERFACE_DEFINED__
     48 #define __ID3D10Blob_INTERFACE_DEFINED__
     49 
     50 DEFINE_GUID(IID_ID3D10Blob, 0x8ba5fb08, 0x5195, 0x40e2, 0xac,0x58, 0x0d,0x98,0x9c,0x3a,0x01,0x02);
     51 #if defined(__cplusplus) && !defined(CINTERFACE)
     52 MIDL_INTERFACE("8ba5fb08-5195-40e2-ac58-0d989c3a0102")
     53 ID3D10Blob : public IUnknown
     54 {
     55     virtual void * STDMETHODCALLTYPE GetBufferPointer(
     56         ) = 0;
     57 
     58     virtual SIZE_T STDMETHODCALLTYPE GetBufferSize(
     59         ) = 0;
     60 
     61 };
     62 #ifdef __CRT_UUID_DECL
     63 __CRT_UUID_DECL(ID3D10Blob, 0x8ba5fb08, 0x5195, 0x40e2, 0xac,0x58, 0x0d,0x98,0x9c,0x3a,0x01,0x02)
     64 #endif
     65 #else
     66 typedef struct ID3D10BlobVtbl {
     67     BEGIN_INTERFACE
     68 
     69     /*** IUnknown methods ***/
     70     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
     71         ID3D10Blob* This,
     72         REFIID riid,
     73         void **ppvObject);
     74 
     75     ULONG (STDMETHODCALLTYPE *AddRef)(
     76         ID3D10Blob* This);
     77 
     78     ULONG (STDMETHODCALLTYPE *Release)(
     79         ID3D10Blob* This);
     80 
     81     /*** ID3D10Blob methods ***/
     82     void * (STDMETHODCALLTYPE *GetBufferPointer)(
     83         ID3D10Blob* This);
     84 
     85     SIZE_T (STDMETHODCALLTYPE *GetBufferSize)(
     86         ID3D10Blob* This);
     87 
     88     END_INTERFACE
     89 } ID3D10BlobVtbl;
     90 interface ID3D10Blob {
     91     CONST_VTBL ID3D10BlobVtbl* lpVtbl;
     92 };
     93 
     94 #ifdef COBJMACROS
     95 #ifndef WIDL_C_INLINE_WRAPPERS
     96 /*** IUnknown methods ***/
     97 #define ID3D10Blob_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
     98 #define ID3D10Blob_AddRef(This) (This)->lpVtbl->AddRef(This)
     99 #define ID3D10Blob_Release(This) (This)->lpVtbl->Release(This)
    100 /*** ID3D10Blob methods ***/
    101 #define ID3D10Blob_GetBufferPointer(This) (This)->lpVtbl->GetBufferPointer(This)
    102 #define ID3D10Blob_GetBufferSize(This) (This)->lpVtbl->GetBufferSize(This)
    103 #else
    104 /*** IUnknown methods ***/
    105 static FORCEINLINE HRESULT ID3D10Blob_QueryInterface(ID3D10Blob* This,REFIID riid,void **ppvObject) {
    106     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    107 }
    108 static FORCEINLINE ULONG ID3D10Blob_AddRef(ID3D10Blob* This) {
    109     return This->lpVtbl->AddRef(This);
    110 }
    111 static FORCEINLINE ULONG ID3D10Blob_Release(ID3D10Blob* This) {
    112     return This->lpVtbl->Release(This);
    113 }
    114 /*** ID3D10Blob methods ***/
    115 static FORCEINLINE void * ID3D10Blob_GetBufferPointer(ID3D10Blob* This) {
    116     return This->lpVtbl->GetBufferPointer(This);
    117 }
    118 static FORCEINLINE SIZE_T ID3D10Blob_GetBufferSize(ID3D10Blob* This) {
    119     return This->lpVtbl->GetBufferSize(This);
    120 }
    121 #endif
    122 #endif
    123 
    124 #endif
    125 
    126 void * STDMETHODCALLTYPE ID3D10Blob_GetBufferPointer_Proxy(
    127     ID3D10Blob* This);
    128 void __RPC_STUB ID3D10Blob_GetBufferPointer_Stub(
    129     IRpcStubBuffer* This,
    130     IRpcChannelBuffer* pRpcChannelBuffer,
    131     PRPC_MESSAGE pRpcMessage,
    132     DWORD* pdwStubPhase);
    133 SIZE_T STDMETHODCALLTYPE ID3D10Blob_GetBufferSize_Proxy(
    134     ID3D10Blob* This);
    135 void __RPC_STUB ID3D10Blob_GetBufferSize_Stub(
    136     IRpcStubBuffer* This,
    137     IRpcChannelBuffer* pRpcChannelBuffer,
    138     PRPC_MESSAGE pRpcMessage,
    139     DWORD* pdwStubPhase);
    140 
    141 #endif  /* __ID3D10Blob_INTERFACE_DEFINED__ */
    142 
    143 typedef ID3D10Blob *LPD3D10BLOB;
    144 typedef ID3D10Blob ID3DBlob;
    145 typedef ID3DBlob *LPD3DBLOB;
    146 #define IID_ID3DBlob IID_ID3D10Blob
    147 typedef enum _D3D_INCLUDE_TYPE {
    148     D3D_INCLUDE_LOCAL = 0,
    149     D3D_INCLUDE_SYSTEM = 1,
    150     D3D10_INCLUDE_LOCAL = D3D_INCLUDE_LOCAL,
    151     D3D10_INCLUDE_SYSTEM = D3D_INCLUDE_SYSTEM,
    152     D3D_INCLUDE_FORCE_DWORD = 0x7fffffff
    153 } D3D_INCLUDE_TYPE;
    154 /*****************************************************************************
    155  * ID3DInclude interface
    156  */
    157 #ifndef __ID3DInclude_INTERFACE_DEFINED__
    158 #define __ID3DInclude_INTERFACE_DEFINED__
    159 
    160 #if defined(__cplusplus) && !defined(CINTERFACE)
    161 interface ID3DInclude
    162 {
    163     BEGIN_INTERFACE
    164 
    165     virtual HRESULT STDMETHODCALLTYPE Open(
    166         D3D_INCLUDE_TYPE include_type,
    167         const char *filename,
    168         const void *parent_data,
    169         const void **data,
    170         UINT *bytes) = 0;
    171 
    172     virtual HRESULT STDMETHODCALLTYPE Close(
    173         const void *data) = 0;
    174 
    175     END_INTERFACE
    176 };
    177 #else
    178 typedef struct ID3DIncludeVtbl {
    179     BEGIN_INTERFACE
    180 
    181     /*** ID3DInclude methods ***/
    182     HRESULT (STDMETHODCALLTYPE *Open)(
    183         ID3DInclude* This,
    184         D3D_INCLUDE_TYPE include_type,
    185         const char *filename,
    186         const void *parent_data,
    187         const void **data,
    188         UINT *bytes);
    189 
    190     HRESULT (STDMETHODCALLTYPE *Close)(
    191         ID3DInclude* This,
    192         const void *data);
    193 
    194     END_INTERFACE
    195 } ID3DIncludeVtbl;
    196 interface ID3DInclude {
    197     CONST_VTBL ID3DIncludeVtbl* lpVtbl;
    198 };
    199 
    200 #ifdef COBJMACROS
    201 #ifndef WIDL_C_INLINE_WRAPPERS
    202 /*** ID3DInclude methods ***/
    203 #define ID3DInclude_Open(This,include_type,filename,parent_data,data,bytes) (This)->lpVtbl->Open(This,include_type,filename,parent_data,data,bytes)
    204 #define ID3DInclude_Close(This,data) (This)->lpVtbl->Close(This,data)
    205 #else
    206 /*** ID3DInclude methods ***/
    207 static FORCEINLINE HRESULT ID3DInclude_Open(ID3DInclude* This,D3D_INCLUDE_TYPE include_type,const char *filename,const void *parent_data,const void **data,UINT *bytes) {
    208     return This->lpVtbl->Open(This,include_type,filename,parent_data,data,bytes);
    209 }
    210 static FORCEINLINE HRESULT ID3DInclude_Close(ID3DInclude* This,const void *data) {
    211     return This->lpVtbl->Close(This,data);
    212 }
    213 #endif
    214 #endif
    215 
    216 #endif
    217 
    218 HRESULT STDMETHODCALLTYPE ID3DInclude_Open_Proxy(
    219     ID3DInclude* This,
    220     D3D_INCLUDE_TYPE include_type,
    221     const char *filename,
    222     const void *parent_data,
    223     const void **data,
    224     UINT *bytes);
    225 void __RPC_STUB ID3DInclude_Open_Stub(
    226     IRpcStubBuffer* This,
    227     IRpcChannelBuffer* pRpcChannelBuffer,
    228     PRPC_MESSAGE pRpcMessage,
    229     DWORD* pdwStubPhase);
    230 HRESULT STDMETHODCALLTYPE ID3DInclude_Close_Proxy(
    231     ID3DInclude* This,
    232     const void *data);
    233 void __RPC_STUB ID3DInclude_Close_Stub(
    234     IRpcStubBuffer* This,
    235     IRpcChannelBuffer* pRpcChannelBuffer,
    236     PRPC_MESSAGE pRpcMessage,
    237     DWORD* pdwStubPhase);
    238 
    239 #endif  /* __ID3DInclude_INTERFACE_DEFINED__ */
    240 
    241 typedef ID3DInclude *LPD3DINCLUDE;
    242 typedef enum D3D_DRIVER_TYPE {
    243     D3D_DRIVER_TYPE_UNKNOWN = 0,
    244     D3D_DRIVER_TYPE_HARDWARE = 1,
    245     D3D_DRIVER_TYPE_REFERENCE = 2,
    246     D3D_DRIVER_TYPE_NULL = 3,
    247     D3D_DRIVER_TYPE_SOFTWARE = 4,
    248     D3D_DRIVER_TYPE_WARP = 5
    249 } D3D_DRIVER_TYPE;
    250 typedef enum D3D_FEATURE_LEVEL {
    251     D3D_FEATURE_LEVEL_9_1 = 0x9100,
    252     D3D_FEATURE_LEVEL_9_2 = 0x9200,
    253     D3D_FEATURE_LEVEL_9_3 = 0x9300,
    254     D3D_FEATURE_LEVEL_10_0 = 0xa000,
    255     D3D_FEATURE_LEVEL_10_1 = 0xa100,
    256     D3D_FEATURE_LEVEL_11_0 = 0xb000,
    257     D3D_FEATURE_LEVEL_11_1 = 0xb100
    258 } D3D_FEATURE_LEVEL;
    259 #define D3D_FL9_1_REQ_TEXTURE1D_U_DIMENSION          2048
    260 #define D3D_FL9_3_REQ_TEXTURE1D_U_DIMENSION          4096
    261 #define D3D_FL9_1_REQ_TEXTURE2D_U_OR_V_DIMENSION     2048
    262 #define D3D_FL9_3_REQ_TEXTURE2D_U_OR_V_DIMENSION     4096
    263 #define D3D_FL9_1_REQ_TEXTURECUBE_DIMENSION          512
    264 #define D3D_FL9_3_REQ_TEXTURECUBE_DIMENSION          4096
    265 #define D3D_FL9_1_REQ_TEXTURE3D_U_V_OR_W_DIMENSION   256
    266 #define D3D_FL9_1_DEFAULT_MAX_ANISOTROPY             2
    267 #define D3D_FL9_1_IA_PRIMITIVE_MAX_COUNT             65535
    268 #define D3D_FL9_2_IA_PRIMITIVE_MAX_COUNT             1048575
    269 #define D3D_FL9_1_SIMULTANEOUS_RENDER_TARGET_COUNT   1
    270 #define D3D_FL9_3_SIMULTANEOUS_RENDER_TARGET_COUNT   4
    271 #define D3D_FL9_1_MAX_TEXTURE_REPEAT                 128
    272 #define D3D_FL9_2_MAX_TEXTURE_REPEAT                 2048
    273 #define D3D_FL9_3_MAX_TEXTURE_REPEAT                 8192
    274 typedef enum _D3D_SHADER_VARIABLE_CLASS {
    275     D3D_SVC_SCALAR = 0,
    276     D3D_SVC_VECTOR = 1,
    277     D3D_SVC_MATRIX_ROWS = 2,
    278     D3D_SVC_MATRIX_COLUMNS = 3,
    279     D3D_SVC_OBJECT = 4,
    280     D3D_SVC_STRUCT = 5,
    281     D3D_SVC_INTERFACE_CLASS = 6,
    282     D3D_SVC_INTERFACE_POINTER = 7,
    283     D3D10_SVC_SCALAR = 0,
    284     D3D10_SVC_VECTOR = 1,
    285     D3D10_SVC_MATRIX_ROWS = 2,
    286     D3D10_SVC_MATRIX_COLUMNS = 3,
    287     D3D10_SVC_OBJECT = 4,
    288     D3D10_SVC_STRUCT = 5,
    289     D3D11_SVC_INTERFACE_CLASS = 6,
    290     D3D11_SVC_INTERFACE_POINTER = 7,
    291     D3D_SVC_FORCE_DWORD = 0x7fffffff
    292 } D3D_SHADER_VARIABLE_CLASS;
    293 typedef enum _D3D_SHADER_VARIABLE_TYPE {
    294     D3D_SVT_VOID = 0,
    295     D3D_SVT_BOOL = 1,
    296     D3D_SVT_INT = 2,
    297     D3D_SVT_FLOAT = 3,
    298     D3D_SVT_STRING = 4,
    299     D3D_SVT_TEXTURE = 5,
    300     D3D_SVT_TEXTURE1D = 6,
    301     D3D_SVT_TEXTURE2D = 7,
    302     D3D_SVT_TEXTURE3D = 8,
    303     D3D_SVT_TEXTURECUBE = 9,
    304     D3D_SVT_SAMPLER = 10,
    305     D3D_SVT_SAMPLER1D = 11,
    306     D3D_SVT_SAMPLER2D = 12,
    307     D3D_SVT_SAMPLER3D = 13,
    308     D3D_SVT_SAMPLERCUBE = 14,
    309     D3D_SVT_PIXELSHADER = 15,
    310     D3D_SVT_VERTEXSHADER = 16,
    311     D3D_SVT_PIXELFRAGMENT = 17,
    312     D3D_SVT_VERTEXFRAGMENT = 18,
    313     D3D_SVT_UINT = 19,
    314     D3D_SVT_UINT8 = 20,
    315     D3D_SVT_GEOMETRYSHADER = 21,
    316     D3D_SVT_RASTERIZER = 22,
    317     D3D_SVT_DEPTHSTENCIL = 23,
    318     D3D_SVT_BLEND = 24,
    319     D3D_SVT_BUFFER = 25,
    320     D3D_SVT_CBUFFER = 26,
    321     D3D_SVT_TBUFFER = 27,
    322     D3D_SVT_TEXTURE1DARRAY = 28,
    323     D3D_SVT_TEXTURE2DARRAY = 29,
    324     D3D_SVT_RENDERTARGETVIEW = 30,
    325     D3D_SVT_DEPTHSTENCILVIEW = 31,
    326     D3D_SVT_TEXTURE2DMS = 32,
    327     D3D_SVT_TEXTURE2DMSARRAY = 33,
    328     D3D_SVT_TEXTURECUBEARRAY = 34,
    329     D3D_SVT_HULLSHADER = 35,
    330     D3D_SVT_DOMAINSHADER = 36,
    331     D3D_SVT_INTERFACE_POINTER = 37,
    332     D3D_SVT_COMPUTESHADER = 38,
    333     D3D_SVT_DOUBLE = 39,
    334     D3D_SVT_RWTEXTURE1D = 40,
    335     D3D_SVT_RWTEXTURE1DARRAY = 41,
    336     D3D_SVT_RWTEXTURE2D = 42,
    337     D3D_SVT_RWTEXTURE2DARRAY = 43,
    338     D3D_SVT_RWTEXTURE3D = 44,
    339     D3D_SVT_RWBUFFER = 45,
    340     D3D_SVT_BYTEADDRESS_BUFFER = 46,
    341     D3D_SVT_RWBYTEADDRESS_BUFFER = 47,
    342     D3D_SVT_STRUCTURED_BUFFER = 48,
    343     D3D_SVT_RWSTRUCTURED_BUFFER = 49,
    344     D3D_SVT_APPEND_STRUCTURED_BUFFER = 50,
    345     D3D_SVT_CONSUME_STRUCTURED_BUFFER = 51,
    346     D3D10_SVT_VOID = 0,
    347     D3D10_SVT_BOOL = 1,
    348     D3D10_SVT_INT = 2,
    349     D3D10_SVT_FLOAT = 3,
    350     D3D10_SVT_STRING = 4,
    351     D3D10_SVT_TEXTURE = 5,
    352     D3D10_SVT_TEXTURE1D = 6,
    353     D3D10_SVT_TEXTURE2D = 7,
    354     D3D10_SVT_TEXTURE3D = 8,
    355     D3D10_SVT_TEXTURECUBE = 9,
    356     D3D10_SVT_SAMPLER = 10,
    357     D3D10_SVT_SAMPLER1D = 11,
    358     D3D10_SVT_SAMPLER2D = 12,
    359     D3D10_SVT_SAMPLER3D = 13,
    360     D3D10_SVT_SAMPLERCUBE = 14,
    361     D3D10_SVT_PIXELSHADER = 15,
    362     D3D10_SVT_VERTEXSHADER = 16,
    363     D3D10_SVT_PIXELFRAGMENT = 17,
    364     D3D10_SVT_VERTEXFRAGMENT = 18,
    365     D3D10_SVT_UINT = 19,
    366     D3D10_SVT_UINT8 = 20,
    367     D3D10_SVT_GEOMETRYSHADER = 21,
    368     D3D10_SVT_RASTERIZER = 22,
    369     D3D10_SVT_DEPTHSTENCIL = 23,
    370     D3D10_SVT_BLEND = 24,
    371     D3D10_SVT_BUFFER = 25,
    372     D3D10_SVT_CBUFFER = 26,
    373     D3D10_SVT_TBUFFER = 27,
    374     D3D10_SVT_TEXTURE1DARRAY = 28,
    375     D3D10_SVT_TEXTURE2DARRAY = 29,
    376     D3D10_SVT_RENDERTARGETVIEW = 30,
    377     D3D10_SVT_DEPTHSTENCILVIEW = 31,
    378     D3D10_SVT_TEXTURE2DMS = 32,
    379     D3D10_SVT_TEXTURE2DMSARRAY = 33,
    380     D3D10_SVT_TEXTURECUBEARRAY = 34,
    381     D3D11_SVT_HULLSHADER = 35,
    382     D3D11_SVT_DOMAINSHADER = 36,
    383     D3D11_SVT_INTERFACE_POINTER = 37,
    384     D3D11_SVT_COMPUTESHADER = 38,
    385     D3D11_SVT_DOUBLE = 39,
    386     D3D11_SVT_RWTEXTURE1D = 40,
    387     D3D11_SVT_RWTEXTURE1DARRAY = 41,
    388     D3D11_SVT_RWTEXTURE2D = 42,
    389     D3D11_SVT_RWTEXTURE2DARRAY = 43,
    390     D3D11_SVT_RWTEXTURE3D = 44,
    391     D3D11_SVT_RWBUFFER = 45,
    392     D3D11_SVT_BYTEADDRESS_BUFFER = 46,
    393     D3D11_SVT_RWBYTEADDRESS_BUFFER = 47,
    394     D3D11_SVT_STRUCTURED_BUFFER = 48,
    395     D3D11_SVT_RWSTRUCTURED_BUFFER = 49,
    396     D3D11_SVT_APPEND_STRUCTURED_BUFFER = 50,
    397     D3D11_SVT_CONSUME_STRUCTURED_BUFFER = 51,
    398     D3D_SVT_FORCE_DWORD = 0x7fffffff
    399 } D3D_SHADER_VARIABLE_TYPE;
    400 typedef enum D3D_PRIMITIVE {
    401     D3D_PRIMITIVE_UNDEFINED = 0,
    402     D3D_PRIMITIVE_POINT = 1,
    403     D3D_PRIMITIVE_LINE = 2,
    404     D3D_PRIMITIVE_TRIANGLE = 3,
    405     D3D_PRIMITIVE_LINE_ADJ = 6,
    406     D3D_PRIMITIVE_TRIANGLE_ADJ = 7,
    407     D3D_PRIMITIVE_1_CONTROL_POINT_PATCH = 8,
    408     D3D_PRIMITIVE_2_CONTROL_POINT_PATCH = 9,
    409     D3D_PRIMITIVE_3_CONTROL_POINT_PATCH = 10,
    410     D3D_PRIMITIVE_4_CONTROL_POINT_PATCH = 11,
    411     D3D_PRIMITIVE_5_CONTROL_POINT_PATCH = 12,
    412     D3D_PRIMITIVE_6_CONTROL_POINT_PATCH = 13,
    413     D3D_PRIMITIVE_7_CONTROL_POINT_PATCH = 14,
    414     D3D_PRIMITIVE_8_CONTROL_POINT_PATCH = 15,
    415     D3D_PRIMITIVE_9_CONTROL_POINT_PATCH = 16,
    416     D3D_PRIMITIVE_10_CONTROL_POINT_PATCH = 17,
    417     D3D_PRIMITIVE_11_CONTROL_POINT_PATCH = 18,
    418     D3D_PRIMITIVE_12_CONTROL_POINT_PATCH = 19,
    419     D3D_PRIMITIVE_13_CONTROL_POINT_PATCH = 20,
    420     D3D_PRIMITIVE_14_CONTROL_POINT_PATCH = 21,
    421     D3D_PRIMITIVE_15_CONTROL_POINT_PATCH = 22,
    422     D3D_PRIMITIVE_16_CONTROL_POINT_PATCH = 23,
    423     D3D_PRIMITIVE_17_CONTROL_POINT_PATCH = 24,
    424     D3D_PRIMITIVE_18_CONTROL_POINT_PATCH = 25,
    425     D3D_PRIMITIVE_19_CONTROL_POINT_PATCH = 26,
    426     D3D_PRIMITIVE_20_CONTROL_POINT_PATCH = 28,
    427     D3D_PRIMITIVE_21_CONTROL_POINT_PATCH = 29,
    428     D3D_PRIMITIVE_22_CONTROL_POINT_PATCH = 30,
    429     D3D_PRIMITIVE_23_CONTROL_POINT_PATCH = 31,
    430     D3D_PRIMITIVE_24_CONTROL_POINT_PATCH = 32,
    431     D3D_PRIMITIVE_25_CONTROL_POINT_PATCH = 33,
    432     D3D_PRIMITIVE_26_CONTROL_POINT_PATCH = 34,
    433     D3D_PRIMITIVE_27_CONTROL_POINT_PATCH = 35,
    434     D3D_PRIMITIVE_28_CONTROL_POINT_PATCH = 36,
    435     D3D_PRIMITIVE_29_CONTROL_POINT_PATCH = 37,
    436     D3D_PRIMITIVE_30_CONTROL_POINT_PATCH = 38,
    437     D3D_PRIMITIVE_31_CONTROL_POINT_PATCH = 39,
    438     D3D_PRIMITIVE_32_CONTROL_POINT_PATCH = 40,
    439     D3D10_PRIMITIVE_UNDEFINED = 0,
    440     D3D10_PRIMITIVE_POINT = 1,
    441     D3D10_PRIMITIVE_LINE = 2,
    442     D3D10_PRIMITIVE_TRIANGLE = 3,
    443     D3D10_PRIMITIVE_LINE_ADJ = 6,
    444     D3D10_PRIMITIVE_TRIANGLE_ADJ = 7,
    445     D3D11_PRIMITIVE_UNDEFINED = 0,
    446     D3D11_PRIMITIVE_POINT = 1,
    447     D3D11_PRIMITIVE_LINE = 2,
    448     D3D11_PRIMITIVE_TRIANGLE = 3,
    449     D3D11_PRIMITIVE_LINE_ADJ = 6,
    450     D3D11_PRIMITIVE_TRIANGLE_ADJ = 7,
    451     D3D11_PRIMITIVE_1_CONTROL_POINT_PATCH = 8,
    452     D3D11_PRIMITIVE_2_CONTROL_POINT_PATCH = 9,
    453     D3D11_PRIMITIVE_3_CONTROL_POINT_PATCH = 10,
    454     D3D11_PRIMITIVE_4_CONTROL_POINT_PATCH = 11,
    455     D3D11_PRIMITIVE_5_CONTROL_POINT_PATCH = 12,
    456     D3D11_PRIMITIVE_6_CONTROL_POINT_PATCH = 13,
    457     D3D11_PRIMITIVE_7_CONTROL_POINT_PATCH = 14,
    458     D3D11_PRIMITIVE_8_CONTROL_POINT_PATCH = 15,
    459     D3D11_PRIMITIVE_9_CONTROL_POINT_PATCH = 16,
    460     D3D11_PRIMITIVE_10_CONTROL_POINT_PATCH = 17,
    461     D3D11_PRIMITIVE_11_CONTROL_POINT_PATCH = 18,
    462     D3D11_PRIMITIVE_12_CONTROL_POINT_PATCH = 19,
    463     D3D11_PRIMITIVE_13_CONTROL_POINT_PATCH = 20,
    464     D3D11_PRIMITIVE_14_CONTROL_POINT_PATCH = 21,
    465     D3D11_PRIMITIVE_15_CONTROL_POINT_PATCH = 22,
    466     D3D11_PRIMITIVE_16_CONTROL_POINT_PATCH = 23,
    467     D3D11_PRIMITIVE_17_CONTROL_POINT_PATCH = 24,
    468     D3D11_PRIMITIVE_18_CONTROL_POINT_PATCH = 25,
    469     D3D11_PRIMITIVE_19_CONTROL_POINT_PATCH = 26,
    470     D3D11_PRIMITIVE_20_CONTROL_POINT_PATCH = 28,
    471     D3D11_PRIMITIVE_21_CONTROL_POINT_PATCH = 29,
    472     D3D11_PRIMITIVE_22_CONTROL_POINT_PATCH = 30,
    473     D3D11_PRIMITIVE_23_CONTROL_POINT_PATCH = 31,
    474     D3D11_PRIMITIVE_24_CONTROL_POINT_PATCH = 32,
    475     D3D11_PRIMITIVE_25_CONTROL_POINT_PATCH = 33,
    476     D3D11_PRIMITIVE_26_CONTROL_POINT_PATCH = 34,
    477     D3D11_PRIMITIVE_27_CONTROL_POINT_PATCH = 35,
    478     D3D11_PRIMITIVE_28_CONTROL_POINT_PATCH = 36,
    479     D3D11_PRIMITIVE_29_CONTROL_POINT_PATCH = 37,
    480     D3D11_PRIMITIVE_30_CONTROL_POINT_PATCH = 38,
    481     D3D11_PRIMITIVE_31_CONTROL_POINT_PATCH = 39,
    482     D3D11_PRIMITIVE_32_CONTROL_POINT_PATCH = 40
    483 } D3D_PRIMITIVE;
    484 typedef enum D3D_PRIMITIVE_TOPOLOGY {
    485     D3D_PRIMITIVE_TOPOLOGY_UNDEFINED = 0,
    486     D3D_PRIMITIVE_TOPOLOGY_POINTLIST = 1,
    487     D3D_PRIMITIVE_TOPOLOGY_LINELIST = 2,
    488     D3D_PRIMITIVE_TOPOLOGY_LINESTRIP = 3,
    489     D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST = 4,
    490     D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP = 5,
    491     D3D_PRIMITIVE_TOPOLOGY_LINELIST_ADJ = 10,
    492     D3D_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ = 11,
    493     D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ = 12,
    494     D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ = 13,
    495     D3D_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST = 33,
    496     D3D_PRIMITIVE_TOPOLOGY_2_CONTROL_POINT_PATCHLIST = 34,
    497     D3D_PRIMITIVE_TOPOLOGY_3_CONTROL_POINT_PATCHLIST = 35,
    498     D3D_PRIMITIVE_TOPOLOGY_4_CONTROL_POINT_PATCHLIST = 36,
    499     D3D_PRIMITIVE_TOPOLOGY_5_CONTROL_POINT_PATCHLIST = 37,
    500     D3D_PRIMITIVE_TOPOLOGY_6_CONTROL_POINT_PATCHLIST = 38,
    501     D3D_PRIMITIVE_TOPOLOGY_7_CONTROL_POINT_PATCHLIST = 39,
    502     D3D_PRIMITIVE_TOPOLOGY_8_CONTROL_POINT_PATCHLIST = 40,
    503     D3D_PRIMITIVE_TOPOLOGY_9_CONTROL_POINT_PATCHLIST = 41,
    504     D3D_PRIMITIVE_TOPOLOGY_10_CONTROL_POINT_PATCHLIST = 42,
    505     D3D_PRIMITIVE_TOPOLOGY_11_CONTROL_POINT_PATCHLIST = 43,
    506     D3D_PRIMITIVE_TOPOLOGY_12_CONTROL_POINT_PATCHLIST = 44,
    507     D3D_PRIMITIVE_TOPOLOGY_13_CONTROL_POINT_PATCHLIST = 45,
    508     D3D_PRIMITIVE_TOPOLOGY_14_CONTROL_POINT_PATCHLIST = 46,
    509     D3D_PRIMITIVE_TOPOLOGY_15_CONTROL_POINT_PATCHLIST = 47,
    510     D3D_PRIMITIVE_TOPOLOGY_16_CONTROL_POINT_PATCHLIST = 48,
    511     D3D_PRIMITIVE_TOPOLOGY_17_CONTROL_POINT_PATCHLIST = 49,
    512     D3D_PRIMITIVE_TOPOLOGY_18_CONTROL_POINT_PATCHLIST = 50,
    513     D3D_PRIMITIVE_TOPOLOGY_19_CONTROL_POINT_PATCHLIST = 51,
    514     D3D_PRIMITIVE_TOPOLOGY_20_CONTROL_POINT_PATCHLIST = 52,
    515     D3D_PRIMITIVE_TOPOLOGY_21_CONTROL_POINT_PATCHLIST = 53,
    516     D3D_PRIMITIVE_TOPOLOGY_22_CONTROL_POINT_PATCHLIST = 54,
    517     D3D_PRIMITIVE_TOPOLOGY_23_CONTROL_POINT_PATCHLIST = 55,
    518     D3D_PRIMITIVE_TOPOLOGY_24_CONTROL_POINT_PATCHLIST = 56,
    519     D3D_PRIMITIVE_TOPOLOGY_25_CONTROL_POINT_PATCHLIST = 57,
    520     D3D_PRIMITIVE_TOPOLOGY_26_CONTROL_POINT_PATCHLIST = 58,
    521     D3D_PRIMITIVE_TOPOLOGY_27_CONTROL_POINT_PATCHLIST = 59,
    522     D3D_PRIMITIVE_TOPOLOGY_28_CONTROL_POINT_PATCHLIST = 60,
    523     D3D_PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST = 61,
    524     D3D_PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST = 62,
    525     D3D_PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST = 63,
    526     D3D_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST = 64,
    527     D3D10_PRIMITIVE_TOPOLOGY_UNDEFINED = 0,
    528     D3D10_PRIMITIVE_TOPOLOGY_POINTLIST = 1,
    529     D3D10_PRIMITIVE_TOPOLOGY_LINELIST = 2,
    530     D3D10_PRIMITIVE_TOPOLOGY_LINESTRIP = 3,
    531     D3D10_PRIMITIVE_TOPOLOGY_TRIANGLELIST = 4,
    532     D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP = 5,
    533     D3D10_PRIMITIVE_TOPOLOGY_LINELIST_ADJ = 10,
    534     D3D10_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ = 11,
    535     D3D10_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ = 12,
    536     D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ = 13,
    537     D3D11_PRIMITIVE_TOPOLOGY_UNDEFINED = 0,
    538     D3D11_PRIMITIVE_TOPOLOGY_POINTLIST = 1,
    539     D3D11_PRIMITIVE_TOPOLOGY_LINELIST = 2,
    540     D3D11_PRIMITIVE_TOPOLOGY_LINESTRIP = 3,
    541     D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST = 4,
    542     D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP = 5,
    543     D3D11_PRIMITIVE_TOPOLOGY_LINELIST_ADJ = 10,
    544     D3D11_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ = 11,
    545     D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ = 12,
    546     D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ = 13,
    547     D3D11_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST = 33,
    548     D3D11_PRIMITIVE_TOPOLOGY_2_CONTROL_POINT_PATCHLIST = 34,
    549     D3D11_PRIMITIVE_TOPOLOGY_3_CONTROL_POINT_PATCHLIST = 35,
    550     D3D11_PRIMITIVE_TOPOLOGY_4_CONTROL_POINT_PATCHLIST = 36,
    551     D3D11_PRIMITIVE_TOPOLOGY_5_CONTROL_POINT_PATCHLIST = 37,
    552     D3D11_PRIMITIVE_TOPOLOGY_6_CONTROL_POINT_PATCHLIST = 38,
    553     D3D11_PRIMITIVE_TOPOLOGY_7_CONTROL_POINT_PATCHLIST = 39,
    554     D3D11_PRIMITIVE_TOPOLOGY_8_CONTROL_POINT_PATCHLIST = 40,
    555     D3D11_PRIMITIVE_TOPOLOGY_9_CONTROL_POINT_PATCHLIST = 41,
    556     D3D11_PRIMITIVE_TOPOLOGY_10_CONTROL_POINT_PATCHLIST = 42,
    557     D3D11_PRIMITIVE_TOPOLOGY_11_CONTROL_POINT_PATCHLIST = 43,
    558     D3D11_PRIMITIVE_TOPOLOGY_12_CONTROL_POINT_PATCHLIST = 44,
    559     D3D11_PRIMITIVE_TOPOLOGY_13_CONTROL_POINT_PATCHLIST = 45,
    560     D3D11_PRIMITIVE_TOPOLOGY_14_CONTROL_POINT_PATCHLIST = 46,
    561     D3D11_PRIMITIVE_TOPOLOGY_15_CONTROL_POINT_PATCHLIST = 47,
    562     D3D11_PRIMITIVE_TOPOLOGY_16_CONTROL_POINT_PATCHLIST = 48,
    563     D3D11_PRIMITIVE_TOPOLOGY_17_CONTROL_POINT_PATCHLIST = 49,
    564     D3D11_PRIMITIVE_TOPOLOGY_18_CONTROL_POINT_PATCHLIST = 50,
    565     D3D11_PRIMITIVE_TOPOLOGY_19_CONTROL_POINT_PATCHLIST = 51,
    566     D3D11_PRIMITIVE_TOPOLOGY_20_CONTROL_POINT_PATCHLIST = 52,
    567     D3D11_PRIMITIVE_TOPOLOGY_21_CONTROL_POINT_PATCHLIST = 53,
    568     D3D11_PRIMITIVE_TOPOLOGY_22_CONTROL_POINT_PATCHLIST = 54,
    569     D3D11_PRIMITIVE_TOPOLOGY_23_CONTROL_POINT_PATCHLIST = 55,
    570     D3D11_PRIMITIVE_TOPOLOGY_24_CONTROL_POINT_PATCHLIST = 56,
    571     D3D11_PRIMITIVE_TOPOLOGY_25_CONTROL_POINT_PATCHLIST = 57,
    572     D3D11_PRIMITIVE_TOPOLOGY_26_CONTROL_POINT_PATCHLIST = 58,
    573     D3D11_PRIMITIVE_TOPOLOGY_27_CONTROL_POINT_PATCHLIST = 59,
    574     D3D11_PRIMITIVE_TOPOLOGY_28_CONTROL_POINT_PATCHLIST = 60,
    575     D3D11_PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST = 61,
    576     D3D11_PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST = 62,
    577     D3D11_PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST = 63,
    578     D3D11_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST = 64
    579 } D3D_PRIMITIVE_TOPOLOGY;
    580 typedef enum D3D_TESSELLATOR_DOMAIN {
    581     D3D_TESSELLATOR_DOMAIN_UNDEFINED = 0,
    582     D3D_TESSELLATOR_DOMAIN_ISOLINE = 1,
    583     D3D_TESSELLATOR_DOMAIN_TRI = 2,
    584     D3D_TESSELLATOR_DOMAIN_QUAD = 3,
    585     D3D11_TESSELLATOR_DOMAIN_UNDEFINED = 0,
    586     D3D11_TESSELLATOR_DOMAIN_ISOLINE = 1,
    587     D3D11_TESSELLATOR_DOMAIN_TRI = 2,
    588     D3D11_TESSELLATOR_DOMAIN_QUAD = 3
    589 } D3D_TESSELLATOR_DOMAIN;
    590 typedef enum D3D_TESSELLATOR_PARTITIONING {
    591     D3D_TESSELLATOR_PARTITIONING_UNDEFINED = 0,
    592     D3D_TESSELLATOR_PARTITIONING_INTEGER = 1,
    593     D3D_TESSELLATOR_PARTITIONING_POW2 = 2,
    594     D3D_TESSELLATOR_PARTITIONING_FRACTIONAL_ODD = 3,
    595     D3D_TESSELLATOR_PARTITIONING_FRACTIONAL_EVEN = 4,
    596     D3D11_TESSELLATOR_PARTITIONING_UNDEFINED = 0,
    597     D3D11_TESSELLATOR_PARTITIONING_INTEGER = 1,
    598     D3D11_TESSELLATOR_PARTITIONING_POW2 = 2,
    599     D3D11_TESSELLATOR_PARTITIONING_FRACTIONAL_ODD = 3,
    600     D3D11_TESSELLATOR_PARTITIONING_FRACTIONAL_EVEN = 4
    601 } D3D_TESSELLATOR_PARTITIONING;
    602 typedef enum D3D_TESSELLATOR_OUTPUT_PRIMITIVE {
    603     D3D_TESSELLATOR_OUTPUT_UNDEFINED = 0,
    604     D3D_TESSELLATOR_OUTPUT_POINT = 1,
    605     D3D_TESSELLATOR_OUTPUT_LINE = 2,
    606     D3D_TESSELLATOR_OUTPUT_TRIANGLE_CW = 3,
    607     D3D_TESSELLATOR_OUTPUT_TRIANGLE_CCW = 4,
    608     D3D11_TESSELLATOR_OUTPUT_UNDEFINED = 0,
    609     D3D11_TESSELLATOR_OUTPUT_POINT = 1,
    610     D3D11_TESSELLATOR_OUTPUT_LINE = 2,
    611     D3D11_TESSELLATOR_OUTPUT_TRIANGLE_CW = 3,
    612     D3D11_TESSELLATOR_OUTPUT_TRIANGLE_CCW = 4
    613 } D3D_TESSELLATOR_OUTPUT_PRIMITIVE;
    614 typedef enum D3D_CBUFFER_TYPE {
    615     D3D_CT_CBUFFER = 0,
    616     D3D_CT_TBUFFER = 1,
    617     D3D_CT_INTERFACE_POINTERS = 2,
    618     D3D_CT_RESOURCE_BIND_INFO = 3,
    619     D3D10_CT_CBUFFER = 0,
    620     D3D10_CT_TBUFFER = 1,
    621     D3D11_CT_CBUFFER = 0,
    622     D3D11_CT_TBUFFER = 1,
    623     D3D11_CT_INTERFACE_POINTERS = 2,
    624     D3D11_CT_RESOURCE_BIND_INFO = 3
    625 } D3D_CBUFFER_TYPE;
    626 typedef enum D3D_SRV_DIMENSION {
    627     D3D_SRV_DIMENSION_UNKNOWN = 0,
    628     D3D_SRV_DIMENSION_BUFFER = 1,
    629     D3D_SRV_DIMENSION_TEXTURE1D = 2,
    630     D3D_SRV_DIMENSION_TEXTURE1DARRAY = 3,
    631     D3D_SRV_DIMENSION_TEXTURE2D = 4,
    632     D3D_SRV_DIMENSION_TEXTURE2DARRAY = 5,
    633     D3D_SRV_DIMENSION_TEXTURE2DMS = 6,
    634     D3D_SRV_DIMENSION_TEXTURE2DMSARRAY = 7,
    635     D3D_SRV_DIMENSION_TEXTURE3D = 8,
    636     D3D_SRV_DIMENSION_TEXTURECUBE = 9,
    637     D3D_SRV_DIMENSION_TEXTURECUBEARRAY = 10,
    638     D3D_SRV_DIMENSION_BUFFEREX = 11,
    639     D3D10_SRV_DIMENSION_UNKNOWN = 0,
    640     D3D10_SRV_DIMENSION_BUFFER = 1,
    641     D3D10_SRV_DIMENSION_TEXTURE1D = 2,
    642     D3D10_SRV_DIMENSION_TEXTURE1DARRAY = 3,
    643     D3D10_SRV_DIMENSION_TEXTURE2D = 4,
    644     D3D10_SRV_DIMENSION_TEXTURE2DARRAY = 5,
    645     D3D10_SRV_DIMENSION_TEXTURE2DMS = 6,
    646     D3D10_SRV_DIMENSION_TEXTURE2DMSARRAY = 7,
    647     D3D10_SRV_DIMENSION_TEXTURE3D = 8,
    648     D3D10_SRV_DIMENSION_TEXTURECUBE = 9,
    649     D3D10_1_SRV_DIMENSION_UNKNOWN = 0,
    650     D3D10_1_SRV_DIMENSION_BUFFER = 1,
    651     D3D10_1_SRV_DIMENSION_TEXTURE1D = 2,
    652     D3D10_1_SRV_DIMENSION_TEXTURE1DARRAY = 3,
    653     D3D10_1_SRV_DIMENSION_TEXTURE2D = 4,
    654     D3D10_1_SRV_DIMENSION_TEXTURE2DARRAY = 5,
    655     D3D10_1_SRV_DIMENSION_TEXTURE2DMS = 6,
    656     D3D10_1_SRV_DIMENSION_TEXTURE2DMSARRAY = 7,
    657     D3D10_1_SRV_DIMENSION_TEXTURE3D = 8,
    658     D3D10_1_SRV_DIMENSION_TEXTURECUBE = 9,
    659     D3D10_1_SRV_DIMENSION_TEXTURECUBEARRAY = 10,
    660     D3D11_SRV_DIMENSION_UNKNOWN = 0,
    661     D3D11_SRV_DIMENSION_BUFFER = 1,
    662     D3D11_SRV_DIMENSION_TEXTURE1D = 2,
    663     D3D11_SRV_DIMENSION_TEXTURE1DARRAY = 3,
    664     D3D11_SRV_DIMENSION_TEXTURE2D = 4,
    665     D3D11_SRV_DIMENSION_TEXTURE2DARRAY = 5,
    666     D3D11_SRV_DIMENSION_TEXTURE2DMS = 6,
    667     D3D11_SRV_DIMENSION_TEXTURE2DMSARRAY = 7,
    668     D3D11_SRV_DIMENSION_TEXTURE3D = 8,
    669     D3D11_SRV_DIMENSION_TEXTURECUBE = 9,
    670     D3D11_SRV_DIMENSION_TEXTURECUBEARRAY = 10,
    671     D3D11_SRV_DIMENSION_BUFFEREX = 11
    672 } D3D_SRV_DIMENSION;
    673 typedef enum D3D_REGISTER_COMPONENT_TYPE {
    674     D3D_REGISTER_COMPONENT_UNKNOWN = 0,
    675     D3D_REGISTER_COMPONENT_UINT32 = 1,
    676     D3D_REGISTER_COMPONENT_SINT32 = 2,
    677     D3D_REGISTER_COMPONENT_FLOAT32 = 3,
    678     D3D10_REGISTER_COMPONENT_UNKNOWN = 0,
    679     D3D10_REGISTER_COMPONENT_UINT32 = 1,
    680     D3D10_REGISTER_COMPONENT_SINT32 = 2,
    681     D3D10_REGISTER_COMPONENT_FLOAT32 = 3
    682 } D3D_REGISTER_COMPONENT_TYPE;
    683 typedef enum D3D_RESOURCE_RETURN_TYPE {
    684     D3D_RETURN_TYPE_UNORM = 1,
    685     D3D_RETURN_TYPE_SNORM = 2,
    686     D3D_RETURN_TYPE_SINT = 3,
    687     D3D_RETURN_TYPE_UINT = 4,
    688     D3D_RETURN_TYPE_FLOAT = 5,
    689     D3D_RETURN_TYPE_MIXED = 6,
    690     D3D_RETURN_TYPE_DOUBLE = 7,
    691     D3D_RETURN_TYPE_CONTINUED = 8,
    692     D3D10_RETURN_TYPE_UNORM = 1,
    693     D3D10_RETURN_TYPE_SNORM = 2,
    694     D3D10_RETURN_TYPE_SINT = 3,
    695     D3D10_RETURN_TYPE_UINT = 4,
    696     D3D10_RETURN_TYPE_FLOAT = 5,
    697     D3D10_RETURN_TYPE_MIXED = 6,
    698     D3D11_RETURN_TYPE_UNORM = 1,
    699     D3D11_RETURN_TYPE_SNORM = 2,
    700     D3D11_RETURN_TYPE_SINT = 3,
    701     D3D11_RETURN_TYPE_UINT = 4,
    702     D3D11_RETURN_TYPE_FLOAT = 5,
    703     D3D11_RETURN_TYPE_MIXED = 6,
    704     D3D11_RETURN_TYPE_DOUBLE = 7,
    705     D3D11_RETURN_TYPE_CONTINUED = 8
    706 } D3D_RESOURCE_RETURN_TYPE;
    707 typedef enum D3D_NAME {
    708     D3D_NAME_UNDEFINED = 0,
    709     D3D_NAME_POSITION = 1,
    710     D3D_NAME_CLIP_DISTANCE = 2,
    711     D3D_NAME_CULL_DISTANCE = 3,
    712     D3D_NAME_RENDER_TARGET_ARRAY_INDEX = 4,
    713     D3D_NAME_VIEWPORT_ARRAY_INDEX = 5,
    714     D3D_NAME_VERTEX_ID = 6,
    715     D3D_NAME_PRIMITIVE_ID = 7,
    716     D3D_NAME_INSTANCE_ID = 8,
    717     D3D_NAME_IS_FRONT_FACE = 9,
    718     D3D_NAME_SAMPLE_INDEX = 10,
    719     D3D_NAME_FINAL_QUAD_EDGE_TESSFACTOR = 11,
    720     D3D_NAME_FINAL_QUAD_INSIDE_TESSFACTOR = 12,
    721     D3D_NAME_FINAL_TRI_EDGE_TESSFACTOR = 13,
    722     D3D_NAME_FINAL_TRI_INSIDE_TESSFACTOR = 14,
    723     D3D_NAME_FINAL_LINE_DETAIL_TESSFACTOR = 15,
    724     D3D_NAME_FINAL_LINE_DENSITY_TESSFACTOR = 16,
    725     D3D_NAME_TARGET = 64,
    726     D3D_NAME_DEPTH = 65,
    727     D3D_NAME_COVERAGE = 66,
    728     D3D_NAME_DEPTH_GREATER_EQUAL = 67,
    729     D3D_NAME_DEPTH_LESS_EQUAL = 68,
    730     D3D10_NAME_UNDEFINED = 0,
    731     D3D10_NAME_POSITION = 1,
    732     D3D10_NAME_CLIP_DISTANCE = 2,
    733     D3D10_NAME_CULL_DISTANCE = 3,
    734     D3D10_NAME_RENDER_TARGET_ARRAY_INDEX = 4,
    735     D3D10_NAME_VIEWPORT_ARRAY_INDEX = 5,
    736     D3D10_NAME_VERTEX_ID = 6,
    737     D3D10_NAME_PRIMITIVE_ID = 7,
    738     D3D10_NAME_INSTANCE_ID = 8,
    739     D3D10_NAME_IS_FRONT_FACE = 9,
    740     D3D10_NAME_SAMPLE_INDEX = 10,
    741     D3D11_NAME_FINAL_QUAD_EDGE_TESSFACTOR = 11,
    742     D3D11_NAME_FINAL_QUAD_INSIDE_TESSFACTOR = 12,
    743     D3D11_NAME_FINAL_TRI_EDGE_TESSFACTOR = 13,
    744     D3D11_NAME_FINAL_TRI_INSIDE_TESSFACTOR = 14,
    745     D3D11_NAME_FINAL_LINE_DETAIL_TESSFACTOR = 15,
    746     D3D11_NAME_FINAL_LINE_DENSITY_TESSFACTOR = 16,
    747     D3D10_NAME_TARGET = 64,
    748     D3D10_NAME_DEPTH = 65,
    749     D3D10_NAME_COVERAGE = 66,
    750     D3D11_NAME_DEPTH_GREATER_EQUAL = 67,
    751     D3D11_NAME_DEPTH_LESS_EQUAL = 68
    752 } D3D_NAME;
    753 typedef enum _D3D_SHADER_INPUT_TYPE {
    754     D3D_SIT_CBUFFER = 0,
    755     D3D_SIT_TBUFFER = 1,
    756     D3D_SIT_TEXTURE = 2,
    757     D3D_SIT_SAMPLER = 3,
    758     D3D_SIT_UAV_RWTYPED = 4,
    759     D3D_SIT_STRUCTURED = 5,
    760     D3D_SIT_UAV_RWSTRUCTURED = 6,
    761     D3D_SIT_BYTEADDRESS = 7,
    762     D3D_SIT_UAV_RWBYTEADDRESS = 8,
    763     D3D_SIT_UAV_APPEND_STRUCTURED = 9,
    764     D3D_SIT_UAV_CONSUME_STRUCTURED = 10,
    765     D3D_SIT_UAV_RWSTRUCTURED_WITH_COUNTER = 11,
    766     D3D10_SIT_CBUFFER = 0,
    767     D3D10_SIT_TBUFFER = 1,
    768     D3D10_SIT_TEXTURE = 2,
    769     D3D10_SIT_SAMPLER = 3,
    770     D3D11_SIT_UAV_RWTYPED = 4,
    771     D3D11_SIT_STRUCTURED = 5,
    772     D3D11_SIT_UAV_RWSTRUCTURED = 6,
    773     D3D11_SIT_BYTEADDRESS = 7,
    774     D3D11_SIT_UAV_RWBYTEADDRESS = 8,
    775     D3D11_SIT_UAV_APPEND_STRUCTURED = 9,
    776     D3D11_SIT_UAV_CONSUME_STRUCTURED = 10,
    777     D3D11_SIT_UAV_RWSTRUCTURED_WITH_COUNTER = 11
    778 } D3D_SHADER_INPUT_TYPE;
    779 /* Begin additional prototypes for all interfaces */
    780 
    781 
    782 /* End additional prototypes */
    783 
    784 #ifdef __cplusplus
    785 }
    786 #endif
    787 
    788 #endif /* __d3dcommon_h__ */
    789