d3dcommon.h 29 KB

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