d3d10_1.h 69 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793
  1. /*-------------------------------------------------------------------------------------
  2. *
  3. * Copyright (c) Microsoft Corporation
  4. *
  5. *-------------------------------------------------------------------------------------*/
  6. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  7. /* File created by MIDL compiler version 8.01.0622 */
  8. /* @@MIDL_FILE_HEADING( ) */
  9. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  10. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  11. #define __REQUIRED_RPCNDR_H_VERSION__ 500
  12. #endif
  13. /* verify that the <rpcsal.h> version is high enough to compile this file*/
  14. #ifndef __REQUIRED_RPCSAL_H_VERSION__
  15. #define __REQUIRED_RPCSAL_H_VERSION__ 100
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __RPCNDR_H_VERSION__
  20. #error this stub requires an updated version of <rpcndr.h>
  21. #endif /* __RPCNDR_H_VERSION__ */
  22. #ifndef COM_NO_WINDOWS_H
  23. #include "windows.h"
  24. #include "ole2.h"
  25. #endif /*COM_NO_WINDOWS_H*/
  26. #ifndef __d3d10_1_h__
  27. #define __d3d10_1_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __ID3D10BlendState1_FWD_DEFINED__
  33. #define __ID3D10BlendState1_FWD_DEFINED__
  34. typedef interface ID3D10BlendState1 ID3D10BlendState1;
  35. #endif /* __ID3D10BlendState1_FWD_DEFINED__ */
  36. #ifndef __ID3D10ShaderResourceView1_FWD_DEFINED__
  37. #define __ID3D10ShaderResourceView1_FWD_DEFINED__
  38. typedef interface ID3D10ShaderResourceView1 ID3D10ShaderResourceView1;
  39. #endif /* __ID3D10ShaderResourceView1_FWD_DEFINED__ */
  40. #ifndef __ID3D10Device1_FWD_DEFINED__
  41. #define __ID3D10Device1_FWD_DEFINED__
  42. typedef interface ID3D10Device1 ID3D10Device1;
  43. #endif /* __ID3D10Device1_FWD_DEFINED__ */
  44. /* header files for imported files */
  45. #include "oaidl.h"
  46. #include "ocidl.h"
  47. #ifdef __cplusplus
  48. extern "C"{
  49. #endif
  50. /* interface __MIDL_itf_d3d10_1_0000_0000 */
  51. /* [local] */
  52. #if defined( __d3d10_h__ ) && !defined( D3D10_ARBITRARY_HEADER_ORDERING )
  53. #error d3d10.h is included before d3d10_1.h, and it will confuse tools that honor SAL annotations. \
  54. If possibly targeting d3d10.1, include d3d10_1.h instead of d3d10.h, or ensure d3d10_1.h is included before d3d10.h
  55. #endif
  56. #ifndef _D3D10_1_CONSTANTS
  57. #define _D3D10_1_CONSTANTS
  58. #define D3D10_1_DEFAULT_SAMPLE_MASK ( 0xffffffff )
  59. #define D3D10_1_FLOAT16_FUSED_TOLERANCE_IN_ULP ( 0.6 )
  60. #define D3D10_1_FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP ( 0.6f )
  61. #define D3D10_1_GS_INPUT_REGISTER_COUNT ( 32 )
  62. #define D3D10_1_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT ( 32 )
  63. #define D3D10_1_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS ( 128 )
  64. #define D3D10_1_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT ( 32 )
  65. #define D3D10_1_PS_OUTPUT_MASK_REGISTER_COMPONENTS ( 1 )
  66. #define D3D10_1_PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT ( 32 )
  67. #define D3D10_1_PS_OUTPUT_MASK_REGISTER_COUNT ( 1 )
  68. #define D3D10_1_SHADER_MAJOR_VERSION ( 4 )
  69. #define D3D10_1_SHADER_MINOR_VERSION ( 1 )
  70. #define D3D10_1_SO_BUFFER_MAX_STRIDE_IN_BYTES ( 2048 )
  71. #define D3D10_1_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES ( 256 )
  72. #define D3D10_1_SO_BUFFER_SLOT_COUNT ( 4 )
  73. #define D3D10_1_SO_MULTIPLE_BUFFER_ELEMENTS_PER_BUFFER ( 1 )
  74. #define D3D10_1_SO_SINGLE_BUFFER_COMPONENT_LIMIT ( 64 )
  75. #define D3D10_1_STANDARD_VERTEX_ELEMENT_COUNT ( 32 )
  76. #define D3D10_1_SUBPIXEL_FRACTIONAL_BIT_COUNT ( 8 )
  77. #define D3D10_1_VS_INPUT_REGISTER_COUNT ( 32 )
  78. #define D3D10_1_VS_OUTPUT_REGISTER_COUNT ( 32 )
  79. #endif
  80. #include <winapifamily.h>
  81. #include "d3d10.h" //
  82. #pragma region Desktop Family
  83. #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
  84. typedef
  85. enum D3D10_FEATURE_LEVEL1
  86. {
  87. D3D10_FEATURE_LEVEL_10_0 = 0xa000,
  88. D3D10_FEATURE_LEVEL_10_1 = 0xa100,
  89. D3D10_FEATURE_LEVEL_9_1 = 0x9100,
  90. D3D10_FEATURE_LEVEL_9_2 = 0x9200,
  91. D3D10_FEATURE_LEVEL_9_3 = 0x9300
  92. } D3D10_FEATURE_LEVEL1;
  93. typedef struct D3D10_RENDER_TARGET_BLEND_DESC1
  94. {
  95. BOOL BlendEnable;
  96. D3D10_BLEND SrcBlend;
  97. D3D10_BLEND DestBlend;
  98. D3D10_BLEND_OP BlendOp;
  99. D3D10_BLEND SrcBlendAlpha;
  100. D3D10_BLEND DestBlendAlpha;
  101. D3D10_BLEND_OP BlendOpAlpha;
  102. UINT8 RenderTargetWriteMask;
  103. } D3D10_RENDER_TARGET_BLEND_DESC1;
  104. typedef struct D3D10_BLEND_DESC1
  105. {
  106. BOOL AlphaToCoverageEnable;
  107. BOOL IndependentBlendEnable;
  108. D3D10_RENDER_TARGET_BLEND_DESC1 RenderTarget[ 8 ];
  109. } D3D10_BLEND_DESC1;
  110. extern RPC_IF_HANDLE __MIDL_itf_d3d10_1_0000_0000_v0_0_c_ifspec;
  111. extern RPC_IF_HANDLE __MIDL_itf_d3d10_1_0000_0000_v0_0_s_ifspec;
  112. #ifndef __ID3D10BlendState1_INTERFACE_DEFINED__
  113. #define __ID3D10BlendState1_INTERFACE_DEFINED__
  114. /* interface ID3D10BlendState1 */
  115. /* [unique][local][object][uuid] */
  116. EXTERN_C const IID IID_ID3D10BlendState1;
  117. #if defined(__cplusplus) && !defined(CINTERFACE)
  118. MIDL_INTERFACE("EDAD8D99-8A35-4d6d-8566-2EA276CDE161")
  119. ID3D10BlendState1 : public ID3D10BlendState
  120. {
  121. public:
  122. virtual void STDMETHODCALLTYPE GetDesc1(
  123. /* [annotation] */
  124. _Out_ D3D10_BLEND_DESC1 *pDesc) = 0;
  125. };
  126. #else /* C style interface */
  127. typedef struct ID3D10BlendState1Vtbl
  128. {
  129. BEGIN_INTERFACE
  130. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  131. ID3D10BlendState1 * This,
  132. /* [in] */ REFIID riid,
  133. /* [annotation][iid_is][out] */
  134. _COM_Outptr_ void **ppvObject);
  135. ULONG ( STDMETHODCALLTYPE *AddRef )(
  136. ID3D10BlendState1 * This);
  137. ULONG ( STDMETHODCALLTYPE *Release )(
  138. ID3D10BlendState1 * This);
  139. void ( STDMETHODCALLTYPE *GetDevice )(
  140. ID3D10BlendState1 * This,
  141. /* [annotation] */
  142. _Out_ ID3D10Device **ppDevice);
  143. HRESULT ( STDMETHODCALLTYPE *GetPrivateData )(
  144. ID3D10BlendState1 * This,
  145. /* [annotation] */
  146. _In_ REFGUID guid,
  147. /* [annotation] */
  148. _Inout_ UINT *pDataSize,
  149. /* [annotation] */
  150. _Out_writes_bytes_opt_(*pDataSize) void *pData);
  151. HRESULT ( STDMETHODCALLTYPE *SetPrivateData )(
  152. ID3D10BlendState1 * This,
  153. /* [annotation] */
  154. _In_ REFGUID guid,
  155. /* [annotation] */
  156. _In_ UINT DataSize,
  157. /* [annotation] */
  158. _In_reads_bytes_opt_(DataSize) const void *pData);
  159. HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )(
  160. ID3D10BlendState1 * This,
  161. /* [annotation] */
  162. _In_ REFGUID guid,
  163. /* [annotation] */
  164. _In_opt_ const IUnknown *pData);
  165. void ( STDMETHODCALLTYPE *GetDesc )(
  166. ID3D10BlendState1 * This,
  167. /* [annotation] */
  168. _Out_ D3D10_BLEND_DESC *pDesc);
  169. void ( STDMETHODCALLTYPE *GetDesc1 )(
  170. ID3D10BlendState1 * This,
  171. /* [annotation] */
  172. _Out_ D3D10_BLEND_DESC1 *pDesc);
  173. END_INTERFACE
  174. } ID3D10BlendState1Vtbl;
  175. interface ID3D10BlendState1
  176. {
  177. CONST_VTBL struct ID3D10BlendState1Vtbl *lpVtbl;
  178. };
  179. #ifdef COBJMACROS
  180. #define ID3D10BlendState1_QueryInterface(This,riid,ppvObject) \
  181. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  182. #define ID3D10BlendState1_AddRef(This) \
  183. ( (This)->lpVtbl -> AddRef(This) )
  184. #define ID3D10BlendState1_Release(This) \
  185. ( (This)->lpVtbl -> Release(This) )
  186. #define ID3D10BlendState1_GetDevice(This,ppDevice) \
  187. ( (This)->lpVtbl -> GetDevice(This,ppDevice) )
  188. #define ID3D10BlendState1_GetPrivateData(This,guid,pDataSize,pData) \
  189. ( (This)->lpVtbl -> GetPrivateData(This,guid,pDataSize,pData) )
  190. #define ID3D10BlendState1_SetPrivateData(This,guid,DataSize,pData) \
  191. ( (This)->lpVtbl -> SetPrivateData(This,guid,DataSize,pData) )
  192. #define ID3D10BlendState1_SetPrivateDataInterface(This,guid,pData) \
  193. ( (This)->lpVtbl -> SetPrivateDataInterface(This,guid,pData) )
  194. #define ID3D10BlendState1_GetDesc(This,pDesc) \
  195. ( (This)->lpVtbl -> GetDesc(This,pDesc) )
  196. #define ID3D10BlendState1_GetDesc1(This,pDesc) \
  197. ( (This)->lpVtbl -> GetDesc1(This,pDesc) )
  198. #endif /* COBJMACROS */
  199. #endif /* C style interface */
  200. #endif /* __ID3D10BlendState1_INTERFACE_DEFINED__ */
  201. /* interface __MIDL_itf_d3d10_1_0000_0001 */
  202. /* [local] */
  203. typedef struct D3D10_TEXCUBE_ARRAY_SRV1
  204. {
  205. UINT MostDetailedMip;
  206. UINT MipLevels;
  207. UINT First2DArrayFace;
  208. UINT NumCubes;
  209. } D3D10_TEXCUBE_ARRAY_SRV1;
  210. typedef D3D_SRV_DIMENSION D3D10_SRV_DIMENSION1;
  211. typedef struct D3D10_SHADER_RESOURCE_VIEW_DESC1
  212. {
  213. DXGI_FORMAT Format;
  214. D3D10_SRV_DIMENSION1 ViewDimension;
  215. union
  216. {
  217. D3D10_BUFFER_SRV Buffer;
  218. D3D10_TEX1D_SRV Texture1D;
  219. D3D10_TEX1D_ARRAY_SRV Texture1DArray;
  220. D3D10_TEX2D_SRV Texture2D;
  221. D3D10_TEX2D_ARRAY_SRV Texture2DArray;
  222. D3D10_TEX2DMS_SRV Texture2DMS;
  223. D3D10_TEX2DMS_ARRAY_SRV Texture2DMSArray;
  224. D3D10_TEX3D_SRV Texture3D;
  225. D3D10_TEXCUBE_SRV TextureCube;
  226. D3D10_TEXCUBE_ARRAY_SRV1 TextureCubeArray;
  227. } ;
  228. } D3D10_SHADER_RESOURCE_VIEW_DESC1;
  229. extern RPC_IF_HANDLE __MIDL_itf_d3d10_1_0000_0001_v0_0_c_ifspec;
  230. extern RPC_IF_HANDLE __MIDL_itf_d3d10_1_0000_0001_v0_0_s_ifspec;
  231. #ifndef __ID3D10ShaderResourceView1_INTERFACE_DEFINED__
  232. #define __ID3D10ShaderResourceView1_INTERFACE_DEFINED__
  233. /* interface ID3D10ShaderResourceView1 */
  234. /* [unique][local][object][uuid] */
  235. EXTERN_C const IID IID_ID3D10ShaderResourceView1;
  236. #if defined(__cplusplus) && !defined(CINTERFACE)
  237. MIDL_INTERFACE("9B7E4C87-342C-4106-A19F-4F2704F689F0")
  238. ID3D10ShaderResourceView1 : public ID3D10ShaderResourceView
  239. {
  240. public:
  241. virtual void STDMETHODCALLTYPE GetDesc1(
  242. /* [annotation] */
  243. _Out_ D3D10_SHADER_RESOURCE_VIEW_DESC1 *pDesc) = 0;
  244. };
  245. #else /* C style interface */
  246. typedef struct ID3D10ShaderResourceView1Vtbl
  247. {
  248. BEGIN_INTERFACE
  249. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  250. ID3D10ShaderResourceView1 * This,
  251. /* [in] */ REFIID riid,
  252. /* [annotation][iid_is][out] */
  253. _COM_Outptr_ void **ppvObject);
  254. ULONG ( STDMETHODCALLTYPE *AddRef )(
  255. ID3D10ShaderResourceView1 * This);
  256. ULONG ( STDMETHODCALLTYPE *Release )(
  257. ID3D10ShaderResourceView1 * This);
  258. void ( STDMETHODCALLTYPE *GetDevice )(
  259. ID3D10ShaderResourceView1 * This,
  260. /* [annotation] */
  261. _Out_ ID3D10Device **ppDevice);
  262. HRESULT ( STDMETHODCALLTYPE *GetPrivateData )(
  263. ID3D10ShaderResourceView1 * This,
  264. /* [annotation] */
  265. _In_ REFGUID guid,
  266. /* [annotation] */
  267. _Inout_ UINT *pDataSize,
  268. /* [annotation] */
  269. _Out_writes_bytes_opt_(*pDataSize) void *pData);
  270. HRESULT ( STDMETHODCALLTYPE *SetPrivateData )(
  271. ID3D10ShaderResourceView1 * This,
  272. /* [annotation] */
  273. _In_ REFGUID guid,
  274. /* [annotation] */
  275. _In_ UINT DataSize,
  276. /* [annotation] */
  277. _In_reads_bytes_opt_(DataSize) const void *pData);
  278. HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )(
  279. ID3D10ShaderResourceView1 * This,
  280. /* [annotation] */
  281. _In_ REFGUID guid,
  282. /* [annotation] */
  283. _In_opt_ const IUnknown *pData);
  284. void ( STDMETHODCALLTYPE *GetResource )(
  285. ID3D10ShaderResourceView1 * This,
  286. /* [annotation] */
  287. _Out_ ID3D10Resource **ppResource);
  288. void ( STDMETHODCALLTYPE *GetDesc )(
  289. ID3D10ShaderResourceView1 * This,
  290. /* [annotation] */
  291. _Out_ D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc);
  292. void ( STDMETHODCALLTYPE *GetDesc1 )(
  293. ID3D10ShaderResourceView1 * This,
  294. /* [annotation] */
  295. _Out_ D3D10_SHADER_RESOURCE_VIEW_DESC1 *pDesc);
  296. END_INTERFACE
  297. } ID3D10ShaderResourceView1Vtbl;
  298. interface ID3D10ShaderResourceView1
  299. {
  300. CONST_VTBL struct ID3D10ShaderResourceView1Vtbl *lpVtbl;
  301. };
  302. #ifdef COBJMACROS
  303. #define ID3D10ShaderResourceView1_QueryInterface(This,riid,ppvObject) \
  304. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  305. #define ID3D10ShaderResourceView1_AddRef(This) \
  306. ( (This)->lpVtbl -> AddRef(This) )
  307. #define ID3D10ShaderResourceView1_Release(This) \
  308. ( (This)->lpVtbl -> Release(This) )
  309. #define ID3D10ShaderResourceView1_GetDevice(This,ppDevice) \
  310. ( (This)->lpVtbl -> GetDevice(This,ppDevice) )
  311. #define ID3D10ShaderResourceView1_GetPrivateData(This,guid,pDataSize,pData) \
  312. ( (This)->lpVtbl -> GetPrivateData(This,guid,pDataSize,pData) )
  313. #define ID3D10ShaderResourceView1_SetPrivateData(This,guid,DataSize,pData) \
  314. ( (This)->lpVtbl -> SetPrivateData(This,guid,DataSize,pData) )
  315. #define ID3D10ShaderResourceView1_SetPrivateDataInterface(This,guid,pData) \
  316. ( (This)->lpVtbl -> SetPrivateDataInterface(This,guid,pData) )
  317. #define ID3D10ShaderResourceView1_GetResource(This,ppResource) \
  318. ( (This)->lpVtbl -> GetResource(This,ppResource) )
  319. #define ID3D10ShaderResourceView1_GetDesc(This,pDesc) \
  320. ( (This)->lpVtbl -> GetDesc(This,pDesc) )
  321. #define ID3D10ShaderResourceView1_GetDesc1(This,pDesc) \
  322. ( (This)->lpVtbl -> GetDesc1(This,pDesc) )
  323. #endif /* COBJMACROS */
  324. #endif /* C style interface */
  325. #endif /* __ID3D10ShaderResourceView1_INTERFACE_DEFINED__ */
  326. /* interface __MIDL_itf_d3d10_1_0000_0002 */
  327. /* [local] */
  328. typedef
  329. enum D3D10_STANDARD_MULTISAMPLE_QUALITY_LEVELS
  330. {
  331. D3D10_STANDARD_MULTISAMPLE_PATTERN = 0xffffffff,
  332. D3D10_CENTER_MULTISAMPLE_PATTERN = 0xfffffffe
  333. } D3D10_STANDARD_MULTISAMPLE_QUALITY_LEVELS;
  334. extern RPC_IF_HANDLE __MIDL_itf_d3d10_1_0000_0002_v0_0_c_ifspec;
  335. extern RPC_IF_HANDLE __MIDL_itf_d3d10_1_0000_0002_v0_0_s_ifspec;
  336. #ifndef __ID3D10Device1_INTERFACE_DEFINED__
  337. #define __ID3D10Device1_INTERFACE_DEFINED__
  338. /* interface ID3D10Device1 */
  339. /* [unique][local][object][uuid] */
  340. EXTERN_C const IID IID_ID3D10Device1;
  341. #if defined(__cplusplus) && !defined(CINTERFACE)
  342. MIDL_INTERFACE("9B7E4C8F-342C-4106-A19F-4F2704F689F0")
  343. ID3D10Device1 : public ID3D10Device
  344. {
  345. public:
  346. virtual HRESULT STDMETHODCALLTYPE CreateShaderResourceView1(
  347. /* [annotation] */
  348. _In_ ID3D10Resource *pResource,
  349. /* [annotation] */
  350. _In_opt_ const D3D10_SHADER_RESOURCE_VIEW_DESC1 *pDesc,
  351. /* [annotation] */
  352. _Out_opt_ ID3D10ShaderResourceView1 **ppSRView) = 0;
  353. virtual HRESULT STDMETHODCALLTYPE CreateBlendState1(
  354. /* [annotation] */
  355. _In_ const D3D10_BLEND_DESC1 *pBlendStateDesc,
  356. /* [annotation] */
  357. _Out_opt_ ID3D10BlendState1 **ppBlendState) = 0;
  358. virtual D3D10_FEATURE_LEVEL1 STDMETHODCALLTYPE GetFeatureLevel( void) = 0;
  359. };
  360. #else /* C style interface */
  361. typedef struct ID3D10Device1Vtbl
  362. {
  363. BEGIN_INTERFACE
  364. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  365. ID3D10Device1 * This,
  366. /* [in] */ REFIID riid,
  367. /* [annotation][iid_is][out] */
  368. _COM_Outptr_ void **ppvObject);
  369. ULONG ( STDMETHODCALLTYPE *AddRef )(
  370. ID3D10Device1 * This);
  371. ULONG ( STDMETHODCALLTYPE *Release )(
  372. ID3D10Device1 * This);
  373. void ( STDMETHODCALLTYPE *VSSetConstantBuffers )(
  374. ID3D10Device1 * This,
  375. /* [annotation] */
  376. _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 ) UINT StartSlot,
  377. /* [annotation] */
  378. _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot ) UINT NumBuffers,
  379. /* [annotation] */
  380. _In_reads_opt_(NumBuffers) ID3D10Buffer *const *ppConstantBuffers);
  381. void ( STDMETHODCALLTYPE *PSSetShaderResources )(
  382. ID3D10Device1 * This,
  383. /* [annotation] */
  384. _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1 ) UINT StartSlot,
  385. /* [annotation] */
  386. _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot ) UINT NumViews,
  387. /* [annotation] */
  388. _In_reads_opt_(NumViews) ID3D10ShaderResourceView *const *ppShaderResourceViews);
  389. void ( STDMETHODCALLTYPE *PSSetShader )(
  390. ID3D10Device1 * This,
  391. /* [annotation] */
  392. _In_opt_ ID3D10PixelShader *pPixelShader);
  393. void ( STDMETHODCALLTYPE *PSSetSamplers )(
  394. ID3D10Device1 * This,
  395. /* [annotation] */
  396. _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - 1 ) UINT StartSlot,
  397. /* [annotation] */
  398. _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - StartSlot ) UINT NumSamplers,
  399. /* [annotation] */
  400. _In_reads_opt_(NumSamplers) ID3D10SamplerState *const *ppSamplers);
  401. void ( STDMETHODCALLTYPE *VSSetShader )(
  402. ID3D10Device1 * This,
  403. /* [annotation] */
  404. _In_opt_ ID3D10VertexShader *pVertexShader);
  405. void ( STDMETHODCALLTYPE *DrawIndexed )(
  406. ID3D10Device1 * This,
  407. /* [annotation] */
  408. _In_ UINT IndexCount,
  409. /* [annotation] */
  410. _In_ UINT StartIndexLocation,
  411. /* [annotation] */
  412. _In_ INT BaseVertexLocation);
  413. void ( STDMETHODCALLTYPE *Draw )(
  414. ID3D10Device1 * This,
  415. /* [annotation] */
  416. _In_ UINT VertexCount,
  417. /* [annotation] */
  418. _In_ UINT StartVertexLocation);
  419. void ( STDMETHODCALLTYPE *PSSetConstantBuffers )(
  420. ID3D10Device1 * This,
  421. /* [annotation] */
  422. _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 ) UINT StartSlot,
  423. /* [annotation] */
  424. _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot ) UINT NumBuffers,
  425. /* [annotation] */
  426. _In_reads_opt_(NumBuffers) ID3D10Buffer *const *ppConstantBuffers);
  427. void ( STDMETHODCALLTYPE *IASetInputLayout )(
  428. ID3D10Device1 * This,
  429. /* [annotation] */
  430. _In_opt_ ID3D10InputLayout *pInputLayout);
  431. void ( STDMETHODCALLTYPE *IASetVertexBuffers )(
  432. ID3D10Device1 * This,
  433. /* [annotation] */
  434. _In_range_( 0, D3D10_1_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT - 1 ) UINT StartSlot,
  435. /* [annotation] */
  436. _In_range_( 0, D3D10_1_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT - StartSlot ) UINT NumBuffers,
  437. /* [annotation] */
  438. _In_reads_opt_(NumBuffers) ID3D10Buffer *const *ppVertexBuffers,
  439. /* [annotation] */
  440. _In_reads_opt_(NumBuffers) const UINT *pStrides,
  441. /* [annotation] */
  442. _In_reads_opt_(NumBuffers) const UINT *pOffsets);
  443. void ( STDMETHODCALLTYPE *IASetIndexBuffer )(
  444. ID3D10Device1 * This,
  445. /* [annotation] */
  446. _In_opt_ ID3D10Buffer *pIndexBuffer,
  447. /* [annotation] */
  448. _In_ DXGI_FORMAT Format,
  449. /* [annotation] */
  450. _In_ UINT Offset);
  451. void ( STDMETHODCALLTYPE *DrawIndexedInstanced )(
  452. ID3D10Device1 * This,
  453. /* [annotation] */
  454. _In_ UINT IndexCountPerInstance,
  455. /* [annotation] */
  456. _In_ UINT InstanceCount,
  457. /* [annotation] */
  458. _In_ UINT StartIndexLocation,
  459. /* [annotation] */
  460. _In_ INT BaseVertexLocation,
  461. /* [annotation] */
  462. _In_ UINT StartInstanceLocation);
  463. void ( STDMETHODCALLTYPE *DrawInstanced )(
  464. ID3D10Device1 * This,
  465. /* [annotation] */
  466. _In_ UINT VertexCountPerInstance,
  467. /* [annotation] */
  468. _In_ UINT InstanceCount,
  469. /* [annotation] */
  470. _In_ UINT StartVertexLocation,
  471. /* [annotation] */
  472. _In_ UINT StartInstanceLocation);
  473. void ( STDMETHODCALLTYPE *GSSetConstantBuffers )(
  474. ID3D10Device1 * This,
  475. /* [annotation] */
  476. _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 ) UINT StartSlot,
  477. /* [annotation] */
  478. _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot ) UINT NumBuffers,
  479. /* [annotation] */
  480. _In_reads_opt_(NumBuffers) ID3D10Buffer *const *ppConstantBuffers);
  481. void ( STDMETHODCALLTYPE *GSSetShader )(
  482. ID3D10Device1 * This,
  483. /* [annotation] */
  484. _In_opt_ ID3D10GeometryShader *pShader);
  485. void ( STDMETHODCALLTYPE *IASetPrimitiveTopology )(
  486. ID3D10Device1 * This,
  487. /* [annotation] */
  488. _In_ D3D10_PRIMITIVE_TOPOLOGY Topology);
  489. void ( STDMETHODCALLTYPE *VSSetShaderResources )(
  490. ID3D10Device1 * This,
  491. /* [annotation] */
  492. _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1 ) UINT StartSlot,
  493. /* [annotation] */
  494. _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot ) UINT NumViews,
  495. /* [annotation] */
  496. _In_reads_opt_(NumViews) ID3D10ShaderResourceView *const *ppShaderResourceViews);
  497. void ( STDMETHODCALLTYPE *VSSetSamplers )(
  498. ID3D10Device1 * This,
  499. /* [annotation] */
  500. _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - 1 ) UINT StartSlot,
  501. /* [annotation] */
  502. _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - StartSlot ) UINT NumSamplers,
  503. /* [annotation] */
  504. _In_reads_opt_(NumSamplers) ID3D10SamplerState *const *ppSamplers);
  505. void ( STDMETHODCALLTYPE *SetPredication )(
  506. ID3D10Device1 * This,
  507. /* [annotation] */
  508. _In_opt_ ID3D10Predicate *pPredicate,
  509. /* [annotation] */
  510. _In_ BOOL PredicateValue);
  511. void ( STDMETHODCALLTYPE *GSSetShaderResources )(
  512. ID3D10Device1 * This,
  513. /* [annotation] */
  514. _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1 ) UINT StartSlot,
  515. /* [annotation] */
  516. _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot ) UINT NumViews,
  517. /* [annotation] */
  518. _In_reads_opt_(NumViews) ID3D10ShaderResourceView *const *ppShaderResourceViews);
  519. void ( STDMETHODCALLTYPE *GSSetSamplers )(
  520. ID3D10Device1 * This,
  521. /* [annotation] */
  522. _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - 1 ) UINT StartSlot,
  523. /* [annotation] */
  524. _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - StartSlot ) UINT NumSamplers,
  525. /* [annotation] */
  526. _In_reads_opt_(NumSamplers) ID3D10SamplerState *const *ppSamplers);
  527. void ( STDMETHODCALLTYPE *OMSetRenderTargets )(
  528. ID3D10Device1 * This,
  529. /* [annotation] */
  530. _In_range_( 0, D3D10_SIMULTANEOUS_RENDER_TARGET_COUNT ) UINT NumViews,
  531. /* [annotation] */
  532. _In_reads_opt_(NumViews) ID3D10RenderTargetView *const *ppRenderTargetViews,
  533. /* [annotation] */
  534. _In_opt_ ID3D10DepthStencilView *pDepthStencilView);
  535. void ( STDMETHODCALLTYPE *OMSetBlendState )(
  536. ID3D10Device1 * This,
  537. /* [annotation] */
  538. _In_opt_ ID3D10BlendState *pBlendState,
  539. /* [annotation] */
  540. _In_ const FLOAT BlendFactor[ 4 ],
  541. /* [annotation] */
  542. _In_ UINT SampleMask);
  543. void ( STDMETHODCALLTYPE *OMSetDepthStencilState )(
  544. ID3D10Device1 * This,
  545. /* [annotation] */
  546. _In_opt_ ID3D10DepthStencilState *pDepthStencilState,
  547. /* [annotation] */
  548. _In_ UINT StencilRef);
  549. void ( STDMETHODCALLTYPE *SOSetTargets )(
  550. ID3D10Device1 * This,
  551. /* [annotation] */
  552. _In_range_( 0, D3D10_SO_BUFFER_SLOT_COUNT) UINT NumBuffers,
  553. /* [annotation] */
  554. _In_reads_opt_(NumBuffers) ID3D10Buffer *const *ppSOTargets,
  555. /* [annotation] */
  556. _In_reads_opt_(NumBuffers) const UINT *pOffsets);
  557. void ( STDMETHODCALLTYPE *DrawAuto )(
  558. ID3D10Device1 * This);
  559. void ( STDMETHODCALLTYPE *RSSetState )(
  560. ID3D10Device1 * This,
  561. /* [annotation] */
  562. _In_opt_ ID3D10RasterizerState *pRasterizerState);
  563. void ( STDMETHODCALLTYPE *RSSetViewports )(
  564. ID3D10Device1 * This,
  565. /* [annotation] */
  566. _In_range_(0, D3D10_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumViewports,
  567. /* [annotation] */
  568. _In_reads_opt_(NumViewports) const D3D10_VIEWPORT *pViewports);
  569. void ( STDMETHODCALLTYPE *RSSetScissorRects )(
  570. ID3D10Device1 * This,
  571. /* [annotation] */
  572. _In_range_(0, D3D10_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) UINT NumRects,
  573. /* [annotation] */
  574. _In_reads_opt_(NumRects) const D3D10_RECT *pRects);
  575. void ( STDMETHODCALLTYPE *CopySubresourceRegion )(
  576. ID3D10Device1 * This,
  577. /* [annotation] */
  578. _In_ ID3D10Resource *pDstResource,
  579. /* [annotation] */
  580. _In_ UINT DstSubresource,
  581. /* [annotation] */
  582. _In_ UINT DstX,
  583. /* [annotation] */
  584. _In_ UINT DstY,
  585. /* [annotation] */
  586. _In_ UINT DstZ,
  587. /* [annotation] */
  588. _In_ ID3D10Resource *pSrcResource,
  589. /* [annotation] */
  590. _In_ UINT SrcSubresource,
  591. /* [annotation] */
  592. _In_opt_ const D3D10_BOX *pSrcBox);
  593. void ( STDMETHODCALLTYPE *CopyResource )(
  594. ID3D10Device1 * This,
  595. /* [annotation] */
  596. _In_ ID3D10Resource *pDstResource,
  597. /* [annotation] */
  598. _In_ ID3D10Resource *pSrcResource);
  599. void ( STDMETHODCALLTYPE *UpdateSubresource )(
  600. ID3D10Device1 * This,
  601. /* [annotation] */
  602. _In_ ID3D10Resource *pDstResource,
  603. /* [annotation] */
  604. _In_ UINT DstSubresource,
  605. /* [annotation] */
  606. _In_opt_ const D3D10_BOX *pDstBox,
  607. /* [annotation] */
  608. _In_ const void *pSrcData,
  609. /* [annotation] */
  610. _In_ UINT SrcRowPitch,
  611. /* [annotation] */
  612. _In_ UINT SrcDepthPitch);
  613. void ( STDMETHODCALLTYPE *ClearRenderTargetView )(
  614. ID3D10Device1 * This,
  615. /* [annotation] */
  616. _In_ ID3D10RenderTargetView *pRenderTargetView,
  617. /* [annotation] */
  618. _In_ const FLOAT ColorRGBA[ 4 ]);
  619. void ( STDMETHODCALLTYPE *ClearDepthStencilView )(
  620. ID3D10Device1 * This,
  621. /* [annotation] */
  622. _In_ ID3D10DepthStencilView *pDepthStencilView,
  623. /* [annotation] */
  624. _In_ UINT ClearFlags,
  625. /* [annotation] */
  626. _In_ FLOAT Depth,
  627. /* [annotation] */
  628. _In_ UINT8 Stencil);
  629. void ( STDMETHODCALLTYPE *GenerateMips )(
  630. ID3D10Device1 * This,
  631. /* [annotation] */
  632. _In_ ID3D10ShaderResourceView *pShaderResourceView);
  633. void ( STDMETHODCALLTYPE *ResolveSubresource )(
  634. ID3D10Device1 * This,
  635. /* [annotation] */
  636. _In_ ID3D10Resource *pDstResource,
  637. /* [annotation] */
  638. _In_ UINT DstSubresource,
  639. /* [annotation] */
  640. _In_ ID3D10Resource *pSrcResource,
  641. /* [annotation] */
  642. _In_ UINT SrcSubresource,
  643. /* [annotation] */
  644. _In_ DXGI_FORMAT Format);
  645. void ( STDMETHODCALLTYPE *VSGetConstantBuffers )(
  646. ID3D10Device1 * This,
  647. /* [annotation] */
  648. _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 ) UINT StartSlot,
  649. /* [annotation] */
  650. _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot ) UINT NumBuffers,
  651. /* [annotation] */
  652. _Out_writes_opt_(NumBuffers) ID3D10Buffer **ppConstantBuffers);
  653. void ( STDMETHODCALLTYPE *PSGetShaderResources )(
  654. ID3D10Device1 * This,
  655. /* [annotation] */
  656. _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1 ) UINT StartSlot,
  657. /* [annotation] */
  658. _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot ) UINT NumViews,
  659. /* [annotation] */
  660. _Out_writes_opt_(NumViews) ID3D10ShaderResourceView **ppShaderResourceViews);
  661. void ( STDMETHODCALLTYPE *PSGetShader )(
  662. ID3D10Device1 * This,
  663. /* [annotation] */
  664. _Out_ ID3D10PixelShader **ppPixelShader);
  665. void ( STDMETHODCALLTYPE *PSGetSamplers )(
  666. ID3D10Device1 * This,
  667. /* [annotation] */
  668. _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - 1 ) UINT StartSlot,
  669. /* [annotation] */
  670. _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - StartSlot ) UINT NumSamplers,
  671. /* [annotation] */
  672. _Out_writes_opt_(NumSamplers) ID3D10SamplerState **ppSamplers);
  673. void ( STDMETHODCALLTYPE *VSGetShader )(
  674. ID3D10Device1 * This,
  675. /* [annotation] */
  676. _Out_ ID3D10VertexShader **ppVertexShader);
  677. void ( STDMETHODCALLTYPE *PSGetConstantBuffers )(
  678. ID3D10Device1 * This,
  679. /* [annotation] */
  680. _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 ) UINT StartSlot,
  681. /* [annotation] */
  682. _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot ) UINT NumBuffers,
  683. /* [annotation] */
  684. _Out_writes_opt_(NumBuffers) ID3D10Buffer **ppConstantBuffers);
  685. void ( STDMETHODCALLTYPE *IAGetInputLayout )(
  686. ID3D10Device1 * This,
  687. /* [annotation] */
  688. _Out_ ID3D10InputLayout **ppInputLayout);
  689. void ( STDMETHODCALLTYPE *IAGetVertexBuffers )(
  690. ID3D10Device1 * This,
  691. /* [annotation] */
  692. _In_range_( 0, D3D10_1_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT - 1 ) UINT StartSlot,
  693. /* [annotation] */
  694. _In_range_( 0, D3D10_1_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT - StartSlot ) UINT NumBuffers,
  695. /* [annotation] */
  696. _Out_writes_opt_(NumBuffers) ID3D10Buffer **ppVertexBuffers,
  697. /* [annotation] */
  698. _Out_writes_opt_(NumBuffers) UINT *pStrides,
  699. /* [annotation] */
  700. _Out_writes_opt_(NumBuffers) UINT *pOffsets);
  701. void ( STDMETHODCALLTYPE *IAGetIndexBuffer )(
  702. ID3D10Device1 * This,
  703. /* [annotation] */
  704. _Out_opt_ ID3D10Buffer **pIndexBuffer,
  705. /* [annotation] */
  706. _Out_opt_ DXGI_FORMAT *Format,
  707. /* [annotation] */
  708. _Out_opt_ UINT *Offset);
  709. void ( STDMETHODCALLTYPE *GSGetConstantBuffers )(
  710. ID3D10Device1 * This,
  711. /* [annotation] */
  712. _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 ) UINT StartSlot,
  713. /* [annotation] */
  714. _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot ) UINT NumBuffers,
  715. /* [annotation] */
  716. _Out_writes_opt_(NumBuffers) ID3D10Buffer **ppConstantBuffers);
  717. void ( STDMETHODCALLTYPE *GSGetShader )(
  718. ID3D10Device1 * This,
  719. /* [annotation] */
  720. _Out_ ID3D10GeometryShader **ppGeometryShader);
  721. void ( STDMETHODCALLTYPE *IAGetPrimitiveTopology )(
  722. ID3D10Device1 * This,
  723. /* [annotation] */
  724. _Out_ D3D10_PRIMITIVE_TOPOLOGY *pTopology);
  725. void ( STDMETHODCALLTYPE *VSGetShaderResources )(
  726. ID3D10Device1 * This,
  727. /* [annotation] */
  728. _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1 ) UINT StartSlot,
  729. /* [annotation] */
  730. _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot ) UINT NumViews,
  731. /* [annotation] */
  732. _Out_writes_opt_(NumViews) ID3D10ShaderResourceView **ppShaderResourceViews);
  733. void ( STDMETHODCALLTYPE *VSGetSamplers )(
  734. ID3D10Device1 * This,
  735. /* [annotation] */
  736. _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - 1 ) UINT StartSlot,
  737. /* [annotation] */
  738. _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - StartSlot ) UINT NumSamplers,
  739. /* [annotation] */
  740. _Out_writes_opt_(NumSamplers) ID3D10SamplerState **ppSamplers);
  741. void ( STDMETHODCALLTYPE *GetPredication )(
  742. ID3D10Device1 * This,
  743. /* [annotation] */
  744. _Out_opt_ ID3D10Predicate **ppPredicate,
  745. /* [annotation] */
  746. _Out_opt_ BOOL *pPredicateValue);
  747. void ( STDMETHODCALLTYPE *GSGetShaderResources )(
  748. ID3D10Device1 * This,
  749. /* [annotation] */
  750. _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1 ) UINT StartSlot,
  751. /* [annotation] */
  752. _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot ) UINT NumViews,
  753. /* [annotation] */
  754. _Out_writes_opt_(NumViews) ID3D10ShaderResourceView **ppShaderResourceViews);
  755. void ( STDMETHODCALLTYPE *GSGetSamplers )(
  756. ID3D10Device1 * This,
  757. /* [annotation] */
  758. _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - 1 ) UINT StartSlot,
  759. /* [annotation] */
  760. _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - StartSlot ) UINT NumSamplers,
  761. /* [annotation] */
  762. _Out_writes_opt_(NumSamplers) ID3D10SamplerState **ppSamplers);
  763. void ( STDMETHODCALLTYPE *OMGetRenderTargets )(
  764. ID3D10Device1 * This,
  765. /* [annotation] */
  766. _In_range_( 0, D3D10_SIMULTANEOUS_RENDER_TARGET_COUNT ) UINT NumViews,
  767. /* [annotation] */
  768. _Out_writes_opt_(NumViews) ID3D10RenderTargetView **ppRenderTargetViews,
  769. /* [annotation] */
  770. _Out_opt_ ID3D10DepthStencilView **ppDepthStencilView);
  771. void ( STDMETHODCALLTYPE *OMGetBlendState )(
  772. ID3D10Device1 * This,
  773. /* [annotation] */
  774. _Out_opt_ ID3D10BlendState **ppBlendState,
  775. /* [annotation] */
  776. _Out_opt_ FLOAT BlendFactor[ 4 ],
  777. /* [annotation] */
  778. _Out_opt_ UINT *pSampleMask);
  779. void ( STDMETHODCALLTYPE *OMGetDepthStencilState )(
  780. ID3D10Device1 * This,
  781. /* [annotation] */
  782. _Out_opt_ ID3D10DepthStencilState **ppDepthStencilState,
  783. /* [annotation] */
  784. _Out_opt_ UINT *pStencilRef);
  785. void ( STDMETHODCALLTYPE *SOGetTargets )(
  786. ID3D10Device1 * This,
  787. /* [annotation] */
  788. _In_range_( 0, D3D10_SO_BUFFER_SLOT_COUNT ) UINT NumBuffers,
  789. /* [annotation] */
  790. _Out_writes_opt_(NumBuffers) ID3D10Buffer **ppSOTargets,
  791. /* [annotation] */
  792. _Out_writes_opt_(NumBuffers) UINT *pOffsets);
  793. void ( STDMETHODCALLTYPE *RSGetState )(
  794. ID3D10Device1 * This,
  795. /* [annotation] */
  796. _Out_ ID3D10RasterizerState **ppRasterizerState);
  797. void ( STDMETHODCALLTYPE *RSGetViewports )(
  798. ID3D10Device1 * This,
  799. /* [annotation] */
  800. _Inout_ /*_range(0, D3D10_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE )*/ UINT *NumViewports,
  801. /* [annotation] */
  802. _Out_writes_opt_(*NumViewports) D3D10_VIEWPORT *pViewports);
  803. void ( STDMETHODCALLTYPE *RSGetScissorRects )(
  804. ID3D10Device1 * This,
  805. /* [annotation] */
  806. _Inout_ /*_range(0, D3D10_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE )*/ UINT *NumRects,
  807. /* [annotation] */
  808. _Out_writes_opt_(*NumRects) D3D10_RECT *pRects);
  809. HRESULT ( STDMETHODCALLTYPE *GetDeviceRemovedReason )(
  810. ID3D10Device1 * This);
  811. HRESULT ( STDMETHODCALLTYPE *SetExceptionMode )(
  812. ID3D10Device1 * This,
  813. UINT RaiseFlags);
  814. UINT ( STDMETHODCALLTYPE *GetExceptionMode )(
  815. ID3D10Device1 * This);
  816. HRESULT ( STDMETHODCALLTYPE *GetPrivateData )(
  817. ID3D10Device1 * This,
  818. /* [annotation] */
  819. _In_ REFGUID guid,
  820. /* [annotation] */
  821. _Inout_ UINT *pDataSize,
  822. /* [annotation] */
  823. _Out_writes_bytes_opt_(*pDataSize) void *pData);
  824. HRESULT ( STDMETHODCALLTYPE *SetPrivateData )(
  825. ID3D10Device1 * This,
  826. /* [annotation] */
  827. _In_ REFGUID guid,
  828. /* [annotation] */
  829. _In_ UINT DataSize,
  830. /* [annotation] */
  831. _In_reads_bytes_opt_(DataSize) const void *pData);
  832. HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )(
  833. ID3D10Device1 * This,
  834. /* [annotation] */
  835. _In_ REFGUID guid,
  836. /* [annotation] */
  837. _In_opt_ const IUnknown *pData);
  838. void ( STDMETHODCALLTYPE *ClearState )(
  839. ID3D10Device1 * This);
  840. void ( STDMETHODCALLTYPE *Flush )(
  841. ID3D10Device1 * This);
  842. HRESULT ( STDMETHODCALLTYPE *CreateBuffer )(
  843. ID3D10Device1 * This,
  844. /* [annotation] */
  845. _In_ const D3D10_BUFFER_DESC *pDesc,
  846. /* [annotation] */
  847. _In_opt_ const D3D10_SUBRESOURCE_DATA *pInitialData,
  848. /* [annotation] */
  849. _Out_opt_ ID3D10Buffer **ppBuffer);
  850. HRESULT ( STDMETHODCALLTYPE *CreateTexture1D )(
  851. ID3D10Device1 * This,
  852. /* [annotation] */
  853. _In_ const D3D10_TEXTURE1D_DESC *pDesc,
  854. /* [annotation] */
  855. _In_reads_opt_(_Inexpressible_(pDesc->MipLevels * pDesc->ArraySize)) const D3D10_SUBRESOURCE_DATA *pInitialData,
  856. /* [annotation] */
  857. _Out_ ID3D10Texture1D **ppTexture1D);
  858. HRESULT ( STDMETHODCALLTYPE *CreateTexture2D )(
  859. ID3D10Device1 * This,
  860. /* [annotation] */
  861. _In_ const D3D10_TEXTURE2D_DESC *pDesc,
  862. /* [annotation] */
  863. _In_reads_opt_(_Inexpressible_(pDesc->MipLevels * pDesc->ArraySize)) const D3D10_SUBRESOURCE_DATA *pInitialData,
  864. /* [annotation] */
  865. _Out_ ID3D10Texture2D **ppTexture2D);
  866. HRESULT ( STDMETHODCALLTYPE *CreateTexture3D )(
  867. ID3D10Device1 * This,
  868. /* [annotation] */
  869. _In_ const D3D10_TEXTURE3D_DESC *pDesc,
  870. /* [annotation] */
  871. _In_reads_opt_(_Inexpressible_(pDesc->MipLevels)) const D3D10_SUBRESOURCE_DATA *pInitialData,
  872. /* [annotation] */
  873. _Out_ ID3D10Texture3D **ppTexture3D);
  874. HRESULT ( STDMETHODCALLTYPE *CreateShaderResourceView )(
  875. ID3D10Device1 * This,
  876. /* [annotation] */
  877. _In_ ID3D10Resource *pResource,
  878. /* [annotation] */
  879. _In_opt_ const D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc,
  880. /* [annotation] */
  881. _Out_opt_ ID3D10ShaderResourceView **ppSRView);
  882. HRESULT ( STDMETHODCALLTYPE *CreateRenderTargetView )(
  883. ID3D10Device1 * This,
  884. /* [annotation] */
  885. _In_ ID3D10Resource *pResource,
  886. /* [annotation] */
  887. _In_opt_ const D3D10_RENDER_TARGET_VIEW_DESC *pDesc,
  888. /* [annotation] */
  889. _Out_opt_ ID3D10RenderTargetView **ppRTView);
  890. HRESULT ( STDMETHODCALLTYPE *CreateDepthStencilView )(
  891. ID3D10Device1 * This,
  892. /* [annotation] */
  893. _In_ ID3D10Resource *pResource,
  894. /* [annotation] */
  895. _In_opt_ const D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc,
  896. /* [annotation] */
  897. _Out_opt_ ID3D10DepthStencilView **ppDepthStencilView);
  898. HRESULT ( STDMETHODCALLTYPE *CreateInputLayout )(
  899. ID3D10Device1 * This,
  900. /* [annotation] */
  901. _In_reads_(NumElements) const D3D10_INPUT_ELEMENT_DESC *pInputElementDescs,
  902. /* [annotation] */
  903. _In_range_( 0, D3D10_1_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT ) UINT NumElements,
  904. /* [annotation] */
  905. _In_reads_(BytecodeLength) const void *pShaderBytecodeWithInputSignature,
  906. /* [annotation] */
  907. _In_ SIZE_T BytecodeLength,
  908. /* [annotation] */
  909. _Out_opt_ ID3D10InputLayout **ppInputLayout);
  910. HRESULT ( STDMETHODCALLTYPE *CreateVertexShader )(
  911. ID3D10Device1 * This,
  912. /* [annotation] */
  913. _In_reads_(BytecodeLength) const void *pShaderBytecode,
  914. /* [annotation] */
  915. _In_ SIZE_T BytecodeLength,
  916. /* [annotation] */
  917. _Out_opt_ ID3D10VertexShader **ppVertexShader);
  918. HRESULT ( STDMETHODCALLTYPE *CreateGeometryShader )(
  919. ID3D10Device1 * This,
  920. /* [annotation] */
  921. _In_reads_(BytecodeLength) const void *pShaderBytecode,
  922. /* [annotation] */
  923. _In_ SIZE_T BytecodeLength,
  924. /* [annotation] */
  925. _Out_opt_ ID3D10GeometryShader **ppGeometryShader);
  926. HRESULT ( STDMETHODCALLTYPE *CreateGeometryShaderWithStreamOutput )(
  927. ID3D10Device1 * This,
  928. /* [annotation] */
  929. _In_reads_(BytecodeLength) const void *pShaderBytecode,
  930. /* [annotation] */
  931. _In_ SIZE_T BytecodeLength,
  932. /* [annotation] */
  933. _In_reads_opt_(NumEntries) const D3D10_SO_DECLARATION_ENTRY *pSODeclaration,
  934. /* [annotation] */
  935. _In_range_( 0, D3D10_SO_SINGLE_BUFFER_COMPONENT_LIMIT ) UINT NumEntries,
  936. /* [annotation] */
  937. _In_ UINT OutputStreamStride,
  938. /* [annotation] */
  939. _Out_opt_ ID3D10GeometryShader **ppGeometryShader);
  940. HRESULT ( STDMETHODCALLTYPE *CreatePixelShader )(
  941. ID3D10Device1 * This,
  942. /* [annotation] */
  943. _In_reads_(BytecodeLength) const void *pShaderBytecode,
  944. /* [annotation] */
  945. _In_ SIZE_T BytecodeLength,
  946. /* [annotation] */
  947. _Out_opt_ ID3D10PixelShader **ppPixelShader);
  948. HRESULT ( STDMETHODCALLTYPE *CreateBlendState )(
  949. ID3D10Device1 * This,
  950. /* [annotation] */
  951. _In_ const D3D10_BLEND_DESC *pBlendStateDesc,
  952. /* [annotation] */
  953. _Out_opt_ ID3D10BlendState **ppBlendState);
  954. HRESULT ( STDMETHODCALLTYPE *CreateDepthStencilState )(
  955. ID3D10Device1 * This,
  956. /* [annotation] */
  957. _In_ const D3D10_DEPTH_STENCIL_DESC *pDepthStencilDesc,
  958. /* [annotation] */
  959. _Out_opt_ ID3D10DepthStencilState **ppDepthStencilState);
  960. HRESULT ( STDMETHODCALLTYPE *CreateRasterizerState )(
  961. ID3D10Device1 * This,
  962. /* [annotation] */
  963. _In_ const D3D10_RASTERIZER_DESC *pRasterizerDesc,
  964. /* [annotation] */
  965. _Out_opt_ ID3D10RasterizerState **ppRasterizerState);
  966. HRESULT ( STDMETHODCALLTYPE *CreateSamplerState )(
  967. ID3D10Device1 * This,
  968. /* [annotation] */
  969. _In_ const D3D10_SAMPLER_DESC *pSamplerDesc,
  970. /* [annotation] */
  971. _Out_opt_ ID3D10SamplerState **ppSamplerState);
  972. HRESULT ( STDMETHODCALLTYPE *CreateQuery )(
  973. ID3D10Device1 * This,
  974. /* [annotation] */
  975. _In_ const D3D10_QUERY_DESC *pQueryDesc,
  976. /* [annotation] */
  977. _Out_opt_ ID3D10Query **ppQuery);
  978. HRESULT ( STDMETHODCALLTYPE *CreatePredicate )(
  979. ID3D10Device1 * This,
  980. /* [annotation] */
  981. _In_ const D3D10_QUERY_DESC *pPredicateDesc,
  982. /* [annotation] */
  983. _Out_opt_ ID3D10Predicate **ppPredicate);
  984. HRESULT ( STDMETHODCALLTYPE *CreateCounter )(
  985. ID3D10Device1 * This,
  986. /* [annotation] */
  987. _In_ const D3D10_COUNTER_DESC *pCounterDesc,
  988. /* [annotation] */
  989. _Out_opt_ ID3D10Counter **ppCounter);
  990. HRESULT ( STDMETHODCALLTYPE *CheckFormatSupport )(
  991. ID3D10Device1 * This,
  992. /* [annotation] */
  993. _In_ DXGI_FORMAT Format,
  994. /* [annotation] */
  995. _Out_ UINT *pFormatSupport);
  996. HRESULT ( STDMETHODCALLTYPE *CheckMultisampleQualityLevels )(
  997. ID3D10Device1 * This,
  998. /* [annotation] */
  999. _In_ DXGI_FORMAT Format,
  1000. /* [annotation] */
  1001. _In_ UINT SampleCount,
  1002. /* [annotation] */
  1003. _Out_ UINT *pNumQualityLevels);
  1004. void ( STDMETHODCALLTYPE *CheckCounterInfo )(
  1005. ID3D10Device1 * This,
  1006. /* [annotation] */
  1007. _Out_ D3D10_COUNTER_INFO *pCounterInfo);
  1008. HRESULT ( STDMETHODCALLTYPE *CheckCounter )(
  1009. ID3D10Device1 * This,
  1010. /* [annotation] */
  1011. _In_ const D3D10_COUNTER_DESC *pDesc,
  1012. /* [annotation] */
  1013. _Out_ D3D10_COUNTER_TYPE *pType,
  1014. /* [annotation] */
  1015. _Out_ UINT *pActiveCounters,
  1016. /* [annotation] */
  1017. _Out_writes_opt_(*pNameLength) LPSTR szName,
  1018. /* [annotation] */
  1019. _Inout_opt_ UINT *pNameLength,
  1020. /* [annotation] */
  1021. _Out_writes_opt_(*pUnitsLength) LPSTR szUnits,
  1022. /* [annotation] */
  1023. _Inout_opt_ UINT *pUnitsLength,
  1024. /* [annotation] */
  1025. _Out_writes_opt_(*pDescriptionLength) LPSTR szDescription,
  1026. /* [annotation] */
  1027. _Inout_opt_ UINT *pDescriptionLength);
  1028. UINT ( STDMETHODCALLTYPE *GetCreationFlags )(
  1029. ID3D10Device1 * This);
  1030. HRESULT ( STDMETHODCALLTYPE *OpenSharedResource )(
  1031. ID3D10Device1 * This,
  1032. /* [annotation] */
  1033. _In_ HANDLE hResource,
  1034. /* [annotation] */
  1035. _In_ REFIID ReturnedInterface,
  1036. /* [annotation] */
  1037. _Out_opt_ void **ppResource);
  1038. void ( STDMETHODCALLTYPE *SetTextFilterSize )(
  1039. ID3D10Device1 * This,
  1040. /* [annotation] */
  1041. _In_ UINT Width,
  1042. /* [annotation] */
  1043. _In_ UINT Height);
  1044. void ( STDMETHODCALLTYPE *GetTextFilterSize )(
  1045. ID3D10Device1 * This,
  1046. /* [annotation] */
  1047. _Out_opt_ UINT *pWidth,
  1048. /* [annotation] */
  1049. _Out_opt_ UINT *pHeight);
  1050. HRESULT ( STDMETHODCALLTYPE *CreateShaderResourceView1 )(
  1051. ID3D10Device1 * This,
  1052. /* [annotation] */
  1053. _In_ ID3D10Resource *pResource,
  1054. /* [annotation] */
  1055. _In_opt_ const D3D10_SHADER_RESOURCE_VIEW_DESC1 *pDesc,
  1056. /* [annotation] */
  1057. _Out_opt_ ID3D10ShaderResourceView1 **ppSRView);
  1058. HRESULT ( STDMETHODCALLTYPE *CreateBlendState1 )(
  1059. ID3D10Device1 * This,
  1060. /* [annotation] */
  1061. _In_ const D3D10_BLEND_DESC1 *pBlendStateDesc,
  1062. /* [annotation] */
  1063. _Out_opt_ ID3D10BlendState1 **ppBlendState);
  1064. D3D10_FEATURE_LEVEL1 ( STDMETHODCALLTYPE *GetFeatureLevel )(
  1065. ID3D10Device1 * This);
  1066. END_INTERFACE
  1067. } ID3D10Device1Vtbl;
  1068. interface ID3D10Device1
  1069. {
  1070. CONST_VTBL struct ID3D10Device1Vtbl *lpVtbl;
  1071. };
  1072. #ifdef COBJMACROS
  1073. #define ID3D10Device1_QueryInterface(This,riid,ppvObject) \
  1074. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  1075. #define ID3D10Device1_AddRef(This) \
  1076. ( (This)->lpVtbl -> AddRef(This) )
  1077. #define ID3D10Device1_Release(This) \
  1078. ( (This)->lpVtbl -> Release(This) )
  1079. #define ID3D10Device1_VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) \
  1080. ( (This)->lpVtbl -> VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) )
  1081. #define ID3D10Device1_PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) \
  1082. ( (This)->lpVtbl -> PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) )
  1083. #define ID3D10Device1_PSSetShader(This,pPixelShader) \
  1084. ( (This)->lpVtbl -> PSSetShader(This,pPixelShader) )
  1085. #define ID3D10Device1_PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) \
  1086. ( (This)->lpVtbl -> PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) )
  1087. #define ID3D10Device1_VSSetShader(This,pVertexShader) \
  1088. ( (This)->lpVtbl -> VSSetShader(This,pVertexShader) )
  1089. #define ID3D10Device1_DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) \
  1090. ( (This)->lpVtbl -> DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) )
  1091. #define ID3D10Device1_Draw(This,VertexCount,StartVertexLocation) \
  1092. ( (This)->lpVtbl -> Draw(This,VertexCount,StartVertexLocation) )
  1093. #define ID3D10Device1_PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) \
  1094. ( (This)->lpVtbl -> PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) )
  1095. #define ID3D10Device1_IASetInputLayout(This,pInputLayout) \
  1096. ( (This)->lpVtbl -> IASetInputLayout(This,pInputLayout) )
  1097. #define ID3D10Device1_IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) \
  1098. ( (This)->lpVtbl -> IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) )
  1099. #define ID3D10Device1_IASetIndexBuffer(This,pIndexBuffer,Format,Offset) \
  1100. ( (This)->lpVtbl -> IASetIndexBuffer(This,pIndexBuffer,Format,Offset) )
  1101. #define ID3D10Device1_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) \
  1102. ( (This)->lpVtbl -> DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) )
  1103. #define ID3D10Device1_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) \
  1104. ( (This)->lpVtbl -> DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) )
  1105. #define ID3D10Device1_GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) \
  1106. ( (This)->lpVtbl -> GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) )
  1107. #define ID3D10Device1_GSSetShader(This,pShader) \
  1108. ( (This)->lpVtbl -> GSSetShader(This,pShader) )
  1109. #define ID3D10Device1_IASetPrimitiveTopology(This,Topology) \
  1110. ( (This)->lpVtbl -> IASetPrimitiveTopology(This,Topology) )
  1111. #define ID3D10Device1_VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) \
  1112. ( (This)->lpVtbl -> VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) )
  1113. #define ID3D10Device1_VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) \
  1114. ( (This)->lpVtbl -> VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) )
  1115. #define ID3D10Device1_SetPredication(This,pPredicate,PredicateValue) \
  1116. ( (This)->lpVtbl -> SetPredication(This,pPredicate,PredicateValue) )
  1117. #define ID3D10Device1_GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) \
  1118. ( (This)->lpVtbl -> GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) )
  1119. #define ID3D10Device1_GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) \
  1120. ( (This)->lpVtbl -> GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) )
  1121. #define ID3D10Device1_OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) \
  1122. ( (This)->lpVtbl -> OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) )
  1123. #define ID3D10Device1_OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) \
  1124. ( (This)->lpVtbl -> OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) )
  1125. #define ID3D10Device1_OMSetDepthStencilState(This,pDepthStencilState,StencilRef) \
  1126. ( (This)->lpVtbl -> OMSetDepthStencilState(This,pDepthStencilState,StencilRef) )
  1127. #define ID3D10Device1_SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) \
  1128. ( (This)->lpVtbl -> SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) )
  1129. #define ID3D10Device1_DrawAuto(This) \
  1130. ( (This)->lpVtbl -> DrawAuto(This) )
  1131. #define ID3D10Device1_RSSetState(This,pRasterizerState) \
  1132. ( (This)->lpVtbl -> RSSetState(This,pRasterizerState) )
  1133. #define ID3D10Device1_RSSetViewports(This,NumViewports,pViewports) \
  1134. ( (This)->lpVtbl -> RSSetViewports(This,NumViewports,pViewports) )
  1135. #define ID3D10Device1_RSSetScissorRects(This,NumRects,pRects) \
  1136. ( (This)->lpVtbl -> RSSetScissorRects(This,NumRects,pRects) )
  1137. #define ID3D10Device1_CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) \
  1138. ( (This)->lpVtbl -> CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) )
  1139. #define ID3D10Device1_CopyResource(This,pDstResource,pSrcResource) \
  1140. ( (This)->lpVtbl -> CopyResource(This,pDstResource,pSrcResource) )
  1141. #define ID3D10Device1_UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) \
  1142. ( (This)->lpVtbl -> UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) )
  1143. #define ID3D10Device1_ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) \
  1144. ( (This)->lpVtbl -> ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) )
  1145. #define ID3D10Device1_ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) \
  1146. ( (This)->lpVtbl -> ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) )
  1147. #define ID3D10Device1_GenerateMips(This,pShaderResourceView) \
  1148. ( (This)->lpVtbl -> GenerateMips(This,pShaderResourceView) )
  1149. #define ID3D10Device1_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) \
  1150. ( (This)->lpVtbl -> ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) )
  1151. #define ID3D10Device1_VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) \
  1152. ( (This)->lpVtbl -> VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) )
  1153. #define ID3D10Device1_PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) \
  1154. ( (This)->lpVtbl -> PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) )
  1155. #define ID3D10Device1_PSGetShader(This,ppPixelShader) \
  1156. ( (This)->lpVtbl -> PSGetShader(This,ppPixelShader) )
  1157. #define ID3D10Device1_PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) \
  1158. ( (This)->lpVtbl -> PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) )
  1159. #define ID3D10Device1_VSGetShader(This,ppVertexShader) \
  1160. ( (This)->lpVtbl -> VSGetShader(This,ppVertexShader) )
  1161. #define ID3D10Device1_PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) \
  1162. ( (This)->lpVtbl -> PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) )
  1163. #define ID3D10Device1_IAGetInputLayout(This,ppInputLayout) \
  1164. ( (This)->lpVtbl -> IAGetInputLayout(This,ppInputLayout) )
  1165. #define ID3D10Device1_IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) \
  1166. ( (This)->lpVtbl -> IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) )
  1167. #define ID3D10Device1_IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) \
  1168. ( (This)->lpVtbl -> IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) )
  1169. #define ID3D10Device1_GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) \
  1170. ( (This)->lpVtbl -> GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) )
  1171. #define ID3D10Device1_GSGetShader(This,ppGeometryShader) \
  1172. ( (This)->lpVtbl -> GSGetShader(This,ppGeometryShader) )
  1173. #define ID3D10Device1_IAGetPrimitiveTopology(This,pTopology) \
  1174. ( (This)->lpVtbl -> IAGetPrimitiveTopology(This,pTopology) )
  1175. #define ID3D10Device1_VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) \
  1176. ( (This)->lpVtbl -> VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) )
  1177. #define ID3D10Device1_VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) \
  1178. ( (This)->lpVtbl -> VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) )
  1179. #define ID3D10Device1_GetPredication(This,ppPredicate,pPredicateValue) \
  1180. ( (This)->lpVtbl -> GetPredication(This,ppPredicate,pPredicateValue) )
  1181. #define ID3D10Device1_GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) \
  1182. ( (This)->lpVtbl -> GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) )
  1183. #define ID3D10Device1_GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) \
  1184. ( (This)->lpVtbl -> GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) )
  1185. #define ID3D10Device1_OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) \
  1186. ( (This)->lpVtbl -> OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) )
  1187. #define ID3D10Device1_OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) \
  1188. ( (This)->lpVtbl -> OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) )
  1189. #define ID3D10Device1_OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) \
  1190. ( (This)->lpVtbl -> OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) )
  1191. #define ID3D10Device1_SOGetTargets(This,NumBuffers,ppSOTargets,pOffsets) \
  1192. ( (This)->lpVtbl -> SOGetTargets(This,NumBuffers,ppSOTargets,pOffsets) )
  1193. #define ID3D10Device1_RSGetState(This,ppRasterizerState) \
  1194. ( (This)->lpVtbl -> RSGetState(This,ppRasterizerState) )
  1195. #define ID3D10Device1_RSGetViewports(This,NumViewports,pViewports) \
  1196. ( (This)->lpVtbl -> RSGetViewports(This,NumViewports,pViewports) )
  1197. #define ID3D10Device1_RSGetScissorRects(This,NumRects,pRects) \
  1198. ( (This)->lpVtbl -> RSGetScissorRects(This,NumRects,pRects) )
  1199. #define ID3D10Device1_GetDeviceRemovedReason(This) \
  1200. ( (This)->lpVtbl -> GetDeviceRemovedReason(This) )
  1201. #define ID3D10Device1_SetExceptionMode(This,RaiseFlags) \
  1202. ( (This)->lpVtbl -> SetExceptionMode(This,RaiseFlags) )
  1203. #define ID3D10Device1_GetExceptionMode(This) \
  1204. ( (This)->lpVtbl -> GetExceptionMode(This) )
  1205. #define ID3D10Device1_GetPrivateData(This,guid,pDataSize,pData) \
  1206. ( (This)->lpVtbl -> GetPrivateData(This,guid,pDataSize,pData) )
  1207. #define ID3D10Device1_SetPrivateData(This,guid,DataSize,pData) \
  1208. ( (This)->lpVtbl -> SetPrivateData(This,guid,DataSize,pData) )
  1209. #define ID3D10Device1_SetPrivateDataInterface(This,guid,pData) \
  1210. ( (This)->lpVtbl -> SetPrivateDataInterface(This,guid,pData) )
  1211. #define ID3D10Device1_ClearState(This) \
  1212. ( (This)->lpVtbl -> ClearState(This) )
  1213. #define ID3D10Device1_Flush(This) \
  1214. ( (This)->lpVtbl -> Flush(This) )
  1215. #define ID3D10Device1_CreateBuffer(This,pDesc,pInitialData,ppBuffer) \
  1216. ( (This)->lpVtbl -> CreateBuffer(This,pDesc,pInitialData,ppBuffer) )
  1217. #define ID3D10Device1_CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) \
  1218. ( (This)->lpVtbl -> CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) )
  1219. #define ID3D10Device1_CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) \
  1220. ( (This)->lpVtbl -> CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) )
  1221. #define ID3D10Device1_CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) \
  1222. ( (This)->lpVtbl -> CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) )
  1223. #define ID3D10Device1_CreateShaderResourceView(This,pResource,pDesc,ppSRView) \
  1224. ( (This)->lpVtbl -> CreateShaderResourceView(This,pResource,pDesc,ppSRView) )
  1225. #define ID3D10Device1_CreateRenderTargetView(This,pResource,pDesc,ppRTView) \
  1226. ( (This)->lpVtbl -> CreateRenderTargetView(This,pResource,pDesc,ppRTView) )
  1227. #define ID3D10Device1_CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) \
  1228. ( (This)->lpVtbl -> CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) )
  1229. #define ID3D10Device1_CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) \
  1230. ( (This)->lpVtbl -> CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) )
  1231. #define ID3D10Device1_CreateVertexShader(This,pShaderBytecode,BytecodeLength,ppVertexShader) \
  1232. ( (This)->lpVtbl -> CreateVertexShader(This,pShaderBytecode,BytecodeLength,ppVertexShader) )
  1233. #define ID3D10Device1_CreateGeometryShader(This,pShaderBytecode,BytecodeLength,ppGeometryShader) \
  1234. ( (This)->lpVtbl -> CreateGeometryShader(This,pShaderBytecode,BytecodeLength,ppGeometryShader) )
  1235. #define ID3D10Device1_CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,OutputStreamStride,ppGeometryShader) \
  1236. ( (This)->lpVtbl -> CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,OutputStreamStride,ppGeometryShader) )
  1237. #define ID3D10Device1_CreatePixelShader(This,pShaderBytecode,BytecodeLength,ppPixelShader) \
  1238. ( (This)->lpVtbl -> CreatePixelShader(This,pShaderBytecode,BytecodeLength,ppPixelShader) )
  1239. #define ID3D10Device1_CreateBlendState(This,pBlendStateDesc,ppBlendState) \
  1240. ( (This)->lpVtbl -> CreateBlendState(This,pBlendStateDesc,ppBlendState) )
  1241. #define ID3D10Device1_CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) \
  1242. ( (This)->lpVtbl -> CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) )
  1243. #define ID3D10Device1_CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) \
  1244. ( (This)->lpVtbl -> CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) )
  1245. #define ID3D10Device1_CreateSamplerState(This,pSamplerDesc,ppSamplerState) \
  1246. ( (This)->lpVtbl -> CreateSamplerState(This,pSamplerDesc,ppSamplerState) )
  1247. #define ID3D10Device1_CreateQuery(This,pQueryDesc,ppQuery) \
  1248. ( (This)->lpVtbl -> CreateQuery(This,pQueryDesc,ppQuery) )
  1249. #define ID3D10Device1_CreatePredicate(This,pPredicateDesc,ppPredicate) \
  1250. ( (This)->lpVtbl -> CreatePredicate(This,pPredicateDesc,ppPredicate) )
  1251. #define ID3D10Device1_CreateCounter(This,pCounterDesc,ppCounter) \
  1252. ( (This)->lpVtbl -> CreateCounter(This,pCounterDesc,ppCounter) )
  1253. #define ID3D10Device1_CheckFormatSupport(This,Format,pFormatSupport) \
  1254. ( (This)->lpVtbl -> CheckFormatSupport(This,Format,pFormatSupport) )
  1255. #define ID3D10Device1_CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) \
  1256. ( (This)->lpVtbl -> CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) )
  1257. #define ID3D10Device1_CheckCounterInfo(This,pCounterInfo) \
  1258. ( (This)->lpVtbl -> CheckCounterInfo(This,pCounterInfo) )
  1259. #define ID3D10Device1_CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) \
  1260. ( (This)->lpVtbl -> CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) )
  1261. #define ID3D10Device1_GetCreationFlags(This) \
  1262. ( (This)->lpVtbl -> GetCreationFlags(This) )
  1263. #define ID3D10Device1_OpenSharedResource(This,hResource,ReturnedInterface,ppResource) \
  1264. ( (This)->lpVtbl -> OpenSharedResource(This,hResource,ReturnedInterface,ppResource) )
  1265. #define ID3D10Device1_SetTextFilterSize(This,Width,Height) \
  1266. ( (This)->lpVtbl -> SetTextFilterSize(This,Width,Height) )
  1267. #define ID3D10Device1_GetTextFilterSize(This,pWidth,pHeight) \
  1268. ( (This)->lpVtbl -> GetTextFilterSize(This,pWidth,pHeight) )
  1269. #define ID3D10Device1_CreateShaderResourceView1(This,pResource,pDesc,ppSRView) \
  1270. ( (This)->lpVtbl -> CreateShaderResourceView1(This,pResource,pDesc,ppSRView) )
  1271. #define ID3D10Device1_CreateBlendState1(This,pBlendStateDesc,ppBlendState) \
  1272. ( (This)->lpVtbl -> CreateBlendState1(This,pBlendStateDesc,ppBlendState) )
  1273. #define ID3D10Device1_GetFeatureLevel(This) \
  1274. ( (This)->lpVtbl -> GetFeatureLevel(This) )
  1275. #endif /* COBJMACROS */
  1276. #endif /* C style interface */
  1277. #endif /* __ID3D10Device1_INTERFACE_DEFINED__ */
  1278. /* interface __MIDL_itf_d3d10_1_0000_0003 */
  1279. /* [local] */
  1280. #define D3D10_1_SDK_VERSION ( ( 0 + 0x20 ) )
  1281. #include "d3d10_1shader.h"
  1282. ///////////////////////////////////////////////////////////////////////////
  1283. // D3D10CreateDevice1
  1284. // ------------------
  1285. //
  1286. // pAdapter
  1287. // If NULL, D3D10CreateDevice1 will choose the primary adapter and
  1288. // create a new instance from a temporarily created IDXGIFactory.
  1289. // If non-NULL, D3D10CreateDevice1 will register the appropriate
  1290. // device, if necessary (via IDXGIAdapter::RegisterDrver), before
  1291. // creating the device.
  1292. // DriverType
  1293. // Specifies the driver type to be created: hardware, reference or
  1294. // null.
  1295. // Software
  1296. // HMODULE of a DLL implementing a software rasterizer. Must be NULL for
  1297. // non-Software driver types.
  1298. // Flags
  1299. // Any of those documented for D3D10CreateDeviceAndSwapChain1.
  1300. // HardwareLevel
  1301. // Any of those documented for D3D10CreateDeviceAndSwapChain1.
  1302. // SDKVersion
  1303. // SDK version. Use the D3D10_1_SDK_VERSION macro.
  1304. // ppDevice
  1305. // Pointer to returned interface.
  1306. //
  1307. // Return Values
  1308. // Any of those documented for
  1309. // CreateDXGIFactory
  1310. // IDXGIFactory::EnumAdapters
  1311. // IDXGIAdapter::RegisterDriver
  1312. // D3D10CreateDevice1
  1313. //
  1314. ///////////////////////////////////////////////////////////////////////////
  1315. typedef HRESULT (WINAPI* PFN_D3D10_CREATE_DEVICE1)(IDXGIAdapter *,
  1316. D3D10_DRIVER_TYPE, HMODULE, UINT, D3D10_FEATURE_LEVEL1, UINT, ID3D10Device1**);
  1317. HRESULT WINAPI D3D10CreateDevice1(
  1318. _In_opt_ IDXGIAdapter *pAdapter,
  1319. D3D10_DRIVER_TYPE DriverType,
  1320. HMODULE Software,
  1321. UINT Flags,
  1322. D3D10_FEATURE_LEVEL1 HardwareLevel,
  1323. UINT SDKVersion,
  1324. _Out_opt_ ID3D10Device1 **ppDevice);
  1325. ///////////////////////////////////////////////////////////////////////////
  1326. // D3D10CreateDeviceAndSwapChain1
  1327. // ------------------------------
  1328. //
  1329. // ppAdapter
  1330. // If NULL, D3D10CreateDevice1 will choose the primary adapter and
  1331. // create a new instance from a temporarily created IDXGIFactory.
  1332. // If non-NULL, D3D10CreateDevice1 will register the appropriate
  1333. // device, if necessary (via IDXGIAdapter::RegisterDrver), before
  1334. // creating the device.
  1335. // DriverType
  1336. // Specifies the driver type to be created: hardware, reference or
  1337. // null.
  1338. // Software
  1339. // HMODULE of a DLL implementing a software rasterizer. Must be NULL for
  1340. // non-Software driver types.
  1341. // Flags
  1342. // Any of those documented for D3D10CreateDevice1.
  1343. // HardwareLevel
  1344. // Any of:
  1345. // D3D10_CREATE_LEVEL_10_0
  1346. // D3D10_CREATE_LEVEL_10_1
  1347. // SDKVersion
  1348. // SDK version. Use the D3D10_1_SDK_VERSION macro.
  1349. // pSwapChainDesc
  1350. // Swap chain description, may be NULL.
  1351. // ppSwapChain
  1352. // Pointer to returned interface. May be NULL.
  1353. // ppDevice
  1354. // Pointer to returned interface.
  1355. //
  1356. // Return Values
  1357. // Any of those documented for
  1358. // CreateDXGIFactory
  1359. // IDXGIFactory::EnumAdapters
  1360. // IDXGIAdapter::RegisterDriver
  1361. // D3D10CreateDevice1
  1362. // IDXGIFactory::CreateSwapChain
  1363. //
  1364. ///////////////////////////////////////////////////////////////////////////
  1365. typedef HRESULT (WINAPI* PFN_D3D10_CREATE_DEVICE_AND_SWAP_CHAIN1)(IDXGIAdapter *,
  1366. D3D10_DRIVER_TYPE, HMODULE, UINT, D3D10_FEATURE_LEVEL1, UINT, DXGI_SWAP_CHAIN_DESC *, IDXGISwapChain **, ID3D10Device1 **);
  1367. HRESULT WINAPI D3D10CreateDeviceAndSwapChain1(
  1368. _In_opt_ IDXGIAdapter *pAdapter,
  1369. D3D10_DRIVER_TYPE DriverType,
  1370. HMODULE Software,
  1371. UINT Flags,
  1372. D3D10_FEATURE_LEVEL1 HardwareLevel,
  1373. UINT SDKVersion,
  1374. _In_opt_ DXGI_SWAP_CHAIN_DESC *pSwapChainDesc,
  1375. _Out_opt_ IDXGISwapChain **ppSwapChain,
  1376. _Out_opt_ ID3D10Device1 **ppDevice);
  1377. #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
  1378. #pragma endregion
  1379. DEFINE_GUID(IID_ID3D10BlendState1,0xEDAD8D99,0x8A35,0x4d6d,0x85,0x66,0x2E,0xA2,0x76,0xCD,0xE1,0x61);
  1380. DEFINE_GUID(IID_ID3D10ShaderResourceView1,0x9B7E4C87,0x342C,0x4106,0xA1,0x9F,0x4F,0x27,0x04,0xF6,0x89,0xF0);
  1381. DEFINE_GUID(IID_ID3D10Device1,0x9B7E4C8F,0x342C,0x4106,0xA1,0x9F,0x4F,0x27,0x04,0xF6,0x89,0xF0);
  1382. extern RPC_IF_HANDLE __MIDL_itf_d3d10_1_0000_0003_v0_0_c_ifspec;
  1383. extern RPC_IF_HANDLE __MIDL_itf_d3d10_1_0000_0003_v0_0_s_ifspec;
  1384. /* Additional Prototypes for ALL interfaces */
  1385. /* end of Additional Prototypes */
  1386. #ifdef __cplusplus
  1387. }
  1388. #endif
  1389. #endif