D3D10_1.h 68 KB

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