d3dcommon.idl 24 KB

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