d3d11_2.h 125 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249
  1. /*** Autogenerated by WIDL 7.7 from include/d3d11_2.idl - Do not edit ***/
  2. #ifdef _WIN32
  3. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  4. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  5. #endif
  6. #include <rpc.h>
  7. #include <rpcndr.h>
  8. #endif
  9. #ifndef COM_NO_WINDOWS_H
  10. #include <windows.h>
  11. #include <ole2.h>
  12. #endif
  13. #ifndef __d3d11_2_h__
  14. #define __d3d11_2_h__
  15. /* Forward declarations */
  16. #ifndef __ID3D11DeviceContext2_FWD_DEFINED__
  17. #define __ID3D11DeviceContext2_FWD_DEFINED__
  18. typedef interface ID3D11DeviceContext2 ID3D11DeviceContext2;
  19. #ifdef __cplusplus
  20. interface ID3D11DeviceContext2;
  21. #endif /* __cplusplus */
  22. #endif
  23. #ifndef __ID3D11Device2_FWD_DEFINED__
  24. #define __ID3D11Device2_FWD_DEFINED__
  25. typedef interface ID3D11Device2 ID3D11Device2;
  26. #ifdef __cplusplus
  27. interface ID3D11Device2;
  28. #endif /* __cplusplus */
  29. #endif
  30. /* Headers for imported files */
  31. #include <oaidl.h>
  32. #include <ocidl.h>
  33. #include <dxgi1_3.h>
  34. #include <d3dcommon.h>
  35. #include <d3d11_1.h>
  36. #ifdef __cplusplus
  37. extern "C" {
  38. #endif
  39. #define D3D11_PACKED_TILE (0xffffffff)
  40. typedef enum D3D11_TILE_MAPPING_FLAG {
  41. D3D11_TILE_MAPPING_NO_OVERWRITE = 0x1
  42. } D3D11_TILE_MAPPING_FLAG;
  43. typedef enum D3D11_TILE_RANGE_FLAG {
  44. D3D11_TILE_RANGE_NULL = 0x1,
  45. D3D11_TILE_RANGE_SKIP = 0x2,
  46. D3D11_TILE_RANGE_REUSE_SINGLE_TILE = 0x4
  47. } D3D11_TILE_RANGE_FLAG;
  48. typedef enum D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_FLAG {
  49. D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_TILED_RESOURCE = 0x1
  50. } D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_FLAG;
  51. typedef enum D3D11_TILE_COPY_FLAG {
  52. D3D11_TILE_COPY_NO_OVERWRITE = 0x1,
  53. D3D11_TILE_COPY_LINEAR_BUFFER_TO_SWIZZLED_TILED_RESOURCE = 0x2,
  54. D3D11_TILE_COPY_SWIZZLED_TILED_RESOURCE_TO_LINEAR_BUFFER = 0x4
  55. } D3D11_TILE_COPY_FLAG;
  56. typedef struct D3D11_TILED_RESOURCE_COORDINATE {
  57. UINT X;
  58. UINT Y;
  59. UINT Z;
  60. UINT Subresource;
  61. } D3D11_TILED_RESOURCE_COORDINATE;
  62. typedef struct D3D11_TILE_REGION_SIZE {
  63. UINT NumTiles;
  64. WINBOOL bUseBox;
  65. UINT Width;
  66. UINT16 Height;
  67. UINT16 Depth;
  68. } D3D11_TILE_REGION_SIZE;
  69. typedef struct D3D11_SUBRESOURCE_TILING {
  70. UINT WidthInTiles;
  71. UINT16 HeightInTiles;
  72. UINT16 DepthInTiles;
  73. UINT StartTileIndexInOverallResource;
  74. } D3D11_SUBRESOURCE_TILING;
  75. typedef struct D3D11_TILE_SHAPE {
  76. UINT WidthInTexels;
  77. UINT HeightInTexels;
  78. UINT DepthInTexels;
  79. } D3D11_TILE_SHAPE;
  80. typedef struct D3D11_PACKED_MIP_DESC {
  81. UINT8 NumStandardMips;
  82. UINT8 NumPackedMips;
  83. UINT NumTilesForPackedMips;
  84. UINT StartTileIndexInOverallResource;
  85. } D3D11_PACKED_MIP_DESC;
  86. /*****************************************************************************
  87. * ID3D11DeviceContext2 interface
  88. */
  89. #ifndef __ID3D11DeviceContext2_INTERFACE_DEFINED__
  90. #define __ID3D11DeviceContext2_INTERFACE_DEFINED__
  91. DEFINE_GUID(IID_ID3D11DeviceContext2, 0x420d5b32, 0xb90c, 0x4da4, 0xbe,0xf0, 0x35,0x9f,0x6a,0x24,0xa8,0x3a);
  92. #if defined(__cplusplus) && !defined(CINTERFACE)
  93. MIDL_INTERFACE("420d5b32-b90c-4da4-bef0-359f6a24a83a")
  94. ID3D11DeviceContext2 : public ID3D11DeviceContext1
  95. {
  96. virtual HRESULT STDMETHODCALLTYPE UpdateTileMappings(
  97. ID3D11Resource *resource,
  98. UINT region_count,
  99. const D3D11_TILED_RESOURCE_COORDINATE *region_start_coordinates,
  100. const D3D11_TILE_REGION_SIZE *region_sizes,
  101. ID3D11Buffer *pool,
  102. UINT range_count,
  103. const UINT *range_flags,
  104. const UINT *pool_start_offsets,
  105. const UINT *range_tile_counts,
  106. UINT flags) = 0;
  107. virtual HRESULT STDMETHODCALLTYPE CopyTileMappings(
  108. ID3D11Resource *dst_resource,
  109. const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,
  110. ID3D11Resource *src_resource,
  111. const D3D11_TILED_RESOURCE_COORDINATE *src_start_coordinate,
  112. const D3D11_TILE_REGION_SIZE *region_size,
  113. UINT flags) = 0;
  114. virtual void STDMETHODCALLTYPE CopyTiles(
  115. ID3D11Resource *resource,
  116. const D3D11_TILED_RESOURCE_COORDINATE *start_coordinate,
  117. const D3D11_TILE_REGION_SIZE *size,
  118. ID3D11Buffer *buffer,
  119. UINT64 start_offset,
  120. UINT flags) = 0;
  121. virtual void STDMETHODCALLTYPE UpdateTiles(
  122. ID3D11Resource *dst_resource,
  123. const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,
  124. const D3D11_TILE_REGION_SIZE *dst_region_size,
  125. const void *src_data,
  126. UINT flags) = 0;
  127. virtual HRESULT STDMETHODCALLTYPE ResizeTilePool(
  128. ID3D11Buffer *pool,
  129. UINT64 size) = 0;
  130. virtual void STDMETHODCALLTYPE TiledResourceBarrier(
  131. ID3D11DeviceChild *before_barrier,
  132. ID3D11DeviceChild *after_barrier) = 0;
  133. virtual WINBOOL STDMETHODCALLTYPE IsAnnotationEnabled(
  134. ) = 0;
  135. virtual void STDMETHODCALLTYPE SetMarkerInt(
  136. const WCHAR *label,
  137. int data) = 0;
  138. virtual void STDMETHODCALLTYPE BeginEventInt(
  139. const WCHAR *label,
  140. int data) = 0;
  141. virtual void STDMETHODCALLTYPE EndEvent(
  142. ) = 0;
  143. };
  144. #ifdef __CRT_UUID_DECL
  145. __CRT_UUID_DECL(ID3D11DeviceContext2, 0x420d5b32, 0xb90c, 0x4da4, 0xbe,0xf0, 0x35,0x9f,0x6a,0x24,0xa8,0x3a)
  146. #endif
  147. #else
  148. typedef struct ID3D11DeviceContext2Vtbl {
  149. BEGIN_INTERFACE
  150. /*** IUnknown methods ***/
  151. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  152. ID3D11DeviceContext2 *This,
  153. REFIID riid,
  154. void **ppvObject);
  155. ULONG (STDMETHODCALLTYPE *AddRef)(
  156. ID3D11DeviceContext2 *This);
  157. ULONG (STDMETHODCALLTYPE *Release)(
  158. ID3D11DeviceContext2 *This);
  159. /*** ID3D11DeviceChild methods ***/
  160. void (STDMETHODCALLTYPE *GetDevice)(
  161. ID3D11DeviceContext2 *This,
  162. ID3D11Device **ppDevice);
  163. HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
  164. ID3D11DeviceContext2 *This,
  165. REFGUID guid,
  166. UINT *pDataSize,
  167. void *pData);
  168. HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
  169. ID3D11DeviceContext2 *This,
  170. REFGUID guid,
  171. UINT DataSize,
  172. const void *pData);
  173. HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
  174. ID3D11DeviceContext2 *This,
  175. REFGUID guid,
  176. const IUnknown *pData);
  177. /*** ID3D11DeviceContext methods ***/
  178. void (STDMETHODCALLTYPE *VSSetConstantBuffers)(
  179. ID3D11DeviceContext2 *This,
  180. UINT StartSlot,
  181. UINT NumBuffers,
  182. ID3D11Buffer *const *ppConstantBuffers);
  183. void (STDMETHODCALLTYPE *PSSetShaderResources)(
  184. ID3D11DeviceContext2 *This,
  185. UINT StartSlot,
  186. UINT NumViews,
  187. ID3D11ShaderResourceView *const *ppShaderResourceViews);
  188. void (STDMETHODCALLTYPE *PSSetShader)(
  189. ID3D11DeviceContext2 *This,
  190. ID3D11PixelShader *pPixelShader,
  191. ID3D11ClassInstance *const *ppClassInstances,
  192. UINT NumClassInstances);
  193. void (STDMETHODCALLTYPE *PSSetSamplers)(
  194. ID3D11DeviceContext2 *This,
  195. UINT StartSlot,
  196. UINT NumSamplers,
  197. ID3D11SamplerState *const *ppSamplers);
  198. void (STDMETHODCALLTYPE *VSSetShader)(
  199. ID3D11DeviceContext2 *This,
  200. ID3D11VertexShader *pVertexShader,
  201. ID3D11ClassInstance *const *ppClassInstances,
  202. UINT NumClassInstances);
  203. void (STDMETHODCALLTYPE *DrawIndexed)(
  204. ID3D11DeviceContext2 *This,
  205. UINT IndexCount,
  206. UINT StartIndexLocation,
  207. INT BaseVertexLocation);
  208. void (STDMETHODCALLTYPE *Draw)(
  209. ID3D11DeviceContext2 *This,
  210. UINT VertexCount,
  211. UINT StartVertexLocation);
  212. HRESULT (STDMETHODCALLTYPE *Map)(
  213. ID3D11DeviceContext2 *This,
  214. ID3D11Resource *pResource,
  215. UINT Subresource,
  216. D3D11_MAP MapType,
  217. UINT MapFlags,
  218. D3D11_MAPPED_SUBRESOURCE *pMappedResource);
  219. void (STDMETHODCALLTYPE *Unmap)(
  220. ID3D11DeviceContext2 *This,
  221. ID3D11Resource *pResource,
  222. UINT Subresource);
  223. void (STDMETHODCALLTYPE *PSSetConstantBuffers)(
  224. ID3D11DeviceContext2 *This,
  225. UINT StartSlot,
  226. UINT NumBuffers,
  227. ID3D11Buffer *const *ppConstantBuffers);
  228. void (STDMETHODCALLTYPE *IASetInputLayout)(
  229. ID3D11DeviceContext2 *This,
  230. ID3D11InputLayout *pInputLayout);
  231. void (STDMETHODCALLTYPE *IASetVertexBuffers)(
  232. ID3D11DeviceContext2 *This,
  233. UINT StartSlot,
  234. UINT NumBuffers,
  235. ID3D11Buffer *const *ppVertexBuffers,
  236. const UINT *pStrides,
  237. const UINT *pOffsets);
  238. void (STDMETHODCALLTYPE *IASetIndexBuffer)(
  239. ID3D11DeviceContext2 *This,
  240. ID3D11Buffer *pIndexBuffer,
  241. DXGI_FORMAT Format,
  242. UINT Offset);
  243. void (STDMETHODCALLTYPE *DrawIndexedInstanced)(
  244. ID3D11DeviceContext2 *This,
  245. UINT IndexCountPerInstance,
  246. UINT InstanceCount,
  247. UINT StartIndexLocation,
  248. INT BaseVertexLocation,
  249. UINT StartInstanceLocation);
  250. void (STDMETHODCALLTYPE *DrawInstanced)(
  251. ID3D11DeviceContext2 *This,
  252. UINT VertexCountPerInstance,
  253. UINT InstanceCount,
  254. UINT StartVertexLocation,
  255. UINT StartInstanceLocation);
  256. void (STDMETHODCALLTYPE *GSSetConstantBuffers)(
  257. ID3D11DeviceContext2 *This,
  258. UINT StartSlot,
  259. UINT NumBuffers,
  260. ID3D11Buffer *const *ppConstantBuffers);
  261. void (STDMETHODCALLTYPE *GSSetShader)(
  262. ID3D11DeviceContext2 *This,
  263. ID3D11GeometryShader *pShader,
  264. ID3D11ClassInstance *const *ppClassInstances,
  265. UINT NumClassInstances);
  266. void (STDMETHODCALLTYPE *IASetPrimitiveTopology)(
  267. ID3D11DeviceContext2 *This,
  268. D3D11_PRIMITIVE_TOPOLOGY Topology);
  269. void (STDMETHODCALLTYPE *VSSetShaderResources)(
  270. ID3D11DeviceContext2 *This,
  271. UINT StartSlot,
  272. UINT NumViews,
  273. ID3D11ShaderResourceView *const *ppShaderResourceViews);
  274. void (STDMETHODCALLTYPE *VSSetSamplers)(
  275. ID3D11DeviceContext2 *This,
  276. UINT StartSlot,
  277. UINT NumSamplers,
  278. ID3D11SamplerState *const *ppSamplers);
  279. void (STDMETHODCALLTYPE *Begin)(
  280. ID3D11DeviceContext2 *This,
  281. ID3D11Asynchronous *pAsync);
  282. void (STDMETHODCALLTYPE *End)(
  283. ID3D11DeviceContext2 *This,
  284. ID3D11Asynchronous *pAsync);
  285. HRESULT (STDMETHODCALLTYPE *GetData)(
  286. ID3D11DeviceContext2 *This,
  287. ID3D11Asynchronous *pAsync,
  288. void *pData,
  289. UINT DataSize,
  290. UINT GetDataFlags);
  291. void (STDMETHODCALLTYPE *SetPredication)(
  292. ID3D11DeviceContext2 *This,
  293. ID3D11Predicate *pPredicate,
  294. WINBOOL PredicateValue);
  295. void (STDMETHODCALLTYPE *GSSetShaderResources)(
  296. ID3D11DeviceContext2 *This,
  297. UINT StartSlot,
  298. UINT NumViews,
  299. ID3D11ShaderResourceView *const *ppShaderResourceViews);
  300. void (STDMETHODCALLTYPE *GSSetSamplers)(
  301. ID3D11DeviceContext2 *This,
  302. UINT StartSlot,
  303. UINT NumSamplers,
  304. ID3D11SamplerState *const *ppSamplers);
  305. void (STDMETHODCALLTYPE *OMSetRenderTargets)(
  306. ID3D11DeviceContext2 *This,
  307. UINT NumViews,
  308. ID3D11RenderTargetView *const *ppRenderTargetViews,
  309. ID3D11DepthStencilView *pDepthStencilView);
  310. void (STDMETHODCALLTYPE *OMSetRenderTargetsAndUnorderedAccessViews)(
  311. ID3D11DeviceContext2 *This,
  312. UINT NumRTVs,
  313. ID3D11RenderTargetView *const *ppRenderTargetViews,
  314. ID3D11DepthStencilView *pDepthStencilView,
  315. UINT UAVStartSlot,
  316. UINT NumUAVs,
  317. ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,
  318. const UINT *pUAVInitialCounts);
  319. void (STDMETHODCALLTYPE *OMSetBlendState)(
  320. ID3D11DeviceContext2 *This,
  321. ID3D11BlendState *pBlendState,
  322. const FLOAT BlendFactor[4],
  323. UINT SampleMask);
  324. void (STDMETHODCALLTYPE *OMSetDepthStencilState)(
  325. ID3D11DeviceContext2 *This,
  326. ID3D11DepthStencilState *pDepthStencilState,
  327. UINT StencilRef);
  328. void (STDMETHODCALLTYPE *SOSetTargets)(
  329. ID3D11DeviceContext2 *This,
  330. UINT NumBuffers,
  331. ID3D11Buffer *const *ppSOTargets,
  332. const UINT *pOffsets);
  333. void (STDMETHODCALLTYPE *DrawAuto)(
  334. ID3D11DeviceContext2 *This);
  335. void (STDMETHODCALLTYPE *DrawIndexedInstancedIndirect)(
  336. ID3D11DeviceContext2 *This,
  337. ID3D11Buffer *pBufferForArgs,
  338. UINT AlignedByteOffsetForArgs);
  339. void (STDMETHODCALLTYPE *DrawInstancedIndirect)(
  340. ID3D11DeviceContext2 *This,
  341. ID3D11Buffer *pBufferForArgs,
  342. UINT AlignedByteOffsetForArgs);
  343. void (STDMETHODCALLTYPE *Dispatch)(
  344. ID3D11DeviceContext2 *This,
  345. UINT ThreadGroupCountX,
  346. UINT ThreadGroupCountY,
  347. UINT ThreadGroupCountZ);
  348. void (STDMETHODCALLTYPE *DispatchIndirect)(
  349. ID3D11DeviceContext2 *This,
  350. ID3D11Buffer *pBufferForArgs,
  351. UINT AlignedByteOffsetForArgs);
  352. void (STDMETHODCALLTYPE *RSSetState)(
  353. ID3D11DeviceContext2 *This,
  354. ID3D11RasterizerState *pRasterizerState);
  355. void (STDMETHODCALLTYPE *RSSetViewports)(
  356. ID3D11DeviceContext2 *This,
  357. UINT NumViewports,
  358. const D3D11_VIEWPORT *pViewports);
  359. void (STDMETHODCALLTYPE *RSSetScissorRects)(
  360. ID3D11DeviceContext2 *This,
  361. UINT NumRects,
  362. const D3D11_RECT *pRects);
  363. void (STDMETHODCALLTYPE *CopySubresourceRegion)(
  364. ID3D11DeviceContext2 *This,
  365. ID3D11Resource *pDstResource,
  366. UINT DstSubresource,
  367. UINT DstX,
  368. UINT DstY,
  369. UINT DstZ,
  370. ID3D11Resource *pSrcResource,
  371. UINT SrcSubresource,
  372. const D3D11_BOX *pSrcBox);
  373. void (STDMETHODCALLTYPE *CopyResource)(
  374. ID3D11DeviceContext2 *This,
  375. ID3D11Resource *pDstResource,
  376. ID3D11Resource *pSrcResource);
  377. void (STDMETHODCALLTYPE *UpdateSubresource)(
  378. ID3D11DeviceContext2 *This,
  379. ID3D11Resource *pDstResource,
  380. UINT DstSubresource,
  381. const D3D11_BOX *pDstBox,
  382. const void *pSrcData,
  383. UINT SrcRowPitch,
  384. UINT SrcDepthPitch);
  385. void (STDMETHODCALLTYPE *CopyStructureCount)(
  386. ID3D11DeviceContext2 *This,
  387. ID3D11Buffer *pDstBuffer,
  388. UINT DstAlignedByteOffset,
  389. ID3D11UnorderedAccessView *pSrcView);
  390. void (STDMETHODCALLTYPE *ClearRenderTargetView)(
  391. ID3D11DeviceContext2 *This,
  392. ID3D11RenderTargetView *pRenderTargetView,
  393. const FLOAT ColorRGBA[4]);
  394. void (STDMETHODCALLTYPE *ClearUnorderedAccessViewUint)(
  395. ID3D11DeviceContext2 *This,
  396. ID3D11UnorderedAccessView *pUnorderedAccessView,
  397. const UINT Values[4]);
  398. void (STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat)(
  399. ID3D11DeviceContext2 *This,
  400. ID3D11UnorderedAccessView *pUnorderedAccessView,
  401. const FLOAT Values[4]);
  402. void (STDMETHODCALLTYPE *ClearDepthStencilView)(
  403. ID3D11DeviceContext2 *This,
  404. ID3D11DepthStencilView *pDepthStencilView,
  405. UINT ClearFlags,
  406. FLOAT Depth,
  407. UINT8 Stencil);
  408. void (STDMETHODCALLTYPE *GenerateMips)(
  409. ID3D11DeviceContext2 *This,
  410. ID3D11ShaderResourceView *pShaderResourceView);
  411. void (STDMETHODCALLTYPE *SetResourceMinLOD)(
  412. ID3D11DeviceContext2 *This,
  413. ID3D11Resource *pResource,
  414. FLOAT MinLOD);
  415. FLOAT (STDMETHODCALLTYPE *GetResourceMinLOD)(
  416. ID3D11DeviceContext2 *This,
  417. ID3D11Resource *pResource);
  418. void (STDMETHODCALLTYPE *ResolveSubresource)(
  419. ID3D11DeviceContext2 *This,
  420. ID3D11Resource *pDstResource,
  421. UINT DstSubresource,
  422. ID3D11Resource *pSrcResource,
  423. UINT SrcSubresource,
  424. DXGI_FORMAT Format);
  425. void (STDMETHODCALLTYPE *ExecuteCommandList)(
  426. ID3D11DeviceContext2 *This,
  427. ID3D11CommandList *pCommandList,
  428. WINBOOL RestoreContextState);
  429. void (STDMETHODCALLTYPE *HSSetShaderResources)(
  430. ID3D11DeviceContext2 *This,
  431. UINT StartSlot,
  432. UINT NumViews,
  433. ID3D11ShaderResourceView *const *ppShaderResourceViews);
  434. void (STDMETHODCALLTYPE *HSSetShader)(
  435. ID3D11DeviceContext2 *This,
  436. ID3D11HullShader *pHullShader,
  437. ID3D11ClassInstance *const *ppClassInstances,
  438. UINT NumClassInstances);
  439. void (STDMETHODCALLTYPE *HSSetSamplers)(
  440. ID3D11DeviceContext2 *This,
  441. UINT StartSlot,
  442. UINT NumSamplers,
  443. ID3D11SamplerState *const *ppSamplers);
  444. void (STDMETHODCALLTYPE *HSSetConstantBuffers)(
  445. ID3D11DeviceContext2 *This,
  446. UINT StartSlot,
  447. UINT NumBuffers,
  448. ID3D11Buffer *const *ppConstantBuffers);
  449. void (STDMETHODCALLTYPE *DSSetShaderResources)(
  450. ID3D11DeviceContext2 *This,
  451. UINT StartSlot,
  452. UINT NumViews,
  453. ID3D11ShaderResourceView *const *ppShaderResourceViews);
  454. void (STDMETHODCALLTYPE *DSSetShader)(
  455. ID3D11DeviceContext2 *This,
  456. ID3D11DomainShader *pDomainShader,
  457. ID3D11ClassInstance *const *ppClassInstances,
  458. UINT NumClassInstances);
  459. void (STDMETHODCALLTYPE *DSSetSamplers)(
  460. ID3D11DeviceContext2 *This,
  461. UINT StartSlot,
  462. UINT NumSamplers,
  463. ID3D11SamplerState *const *ppSamplers);
  464. void (STDMETHODCALLTYPE *DSSetConstantBuffers)(
  465. ID3D11DeviceContext2 *This,
  466. UINT StartSlot,
  467. UINT NumBuffers,
  468. ID3D11Buffer *const *ppConstantBuffers);
  469. void (STDMETHODCALLTYPE *CSSetShaderResources)(
  470. ID3D11DeviceContext2 *This,
  471. UINT StartSlot,
  472. UINT NumViews,
  473. ID3D11ShaderResourceView *const *ppShaderResourceViews);
  474. void (STDMETHODCALLTYPE *CSSetUnorderedAccessViews)(
  475. ID3D11DeviceContext2 *This,
  476. UINT StartSlot,
  477. UINT NumUAVs,
  478. ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,
  479. const UINT *pUAVInitialCounts);
  480. void (STDMETHODCALLTYPE *CSSetShader)(
  481. ID3D11DeviceContext2 *This,
  482. ID3D11ComputeShader *pComputeShader,
  483. ID3D11ClassInstance *const *ppClassInstances,
  484. UINT NumClassInstances);
  485. void (STDMETHODCALLTYPE *CSSetSamplers)(
  486. ID3D11DeviceContext2 *This,
  487. UINT StartSlot,
  488. UINT NumSamplers,
  489. ID3D11SamplerState *const *ppSamplers);
  490. void (STDMETHODCALLTYPE *CSSetConstantBuffers)(
  491. ID3D11DeviceContext2 *This,
  492. UINT StartSlot,
  493. UINT NumBuffers,
  494. ID3D11Buffer *const *ppConstantBuffers);
  495. void (STDMETHODCALLTYPE *VSGetConstantBuffers)(
  496. ID3D11DeviceContext2 *This,
  497. UINT StartSlot,
  498. UINT NumBuffers,
  499. ID3D11Buffer **ppConstantBuffers);
  500. void (STDMETHODCALLTYPE *PSGetShaderResources)(
  501. ID3D11DeviceContext2 *This,
  502. UINT StartSlot,
  503. UINT NumViews,
  504. ID3D11ShaderResourceView **ppShaderResourceViews);
  505. void (STDMETHODCALLTYPE *PSGetShader)(
  506. ID3D11DeviceContext2 *This,
  507. ID3D11PixelShader **ppPixelShader,
  508. ID3D11ClassInstance **ppClassInstances,
  509. UINT *pNumClassInstances);
  510. void (STDMETHODCALLTYPE *PSGetSamplers)(
  511. ID3D11DeviceContext2 *This,
  512. UINT StartSlot,
  513. UINT NumSamplers,
  514. ID3D11SamplerState **ppSamplers);
  515. void (STDMETHODCALLTYPE *VSGetShader)(
  516. ID3D11DeviceContext2 *This,
  517. ID3D11VertexShader **ppVertexShader,
  518. ID3D11ClassInstance **ppClassInstances,
  519. UINT *pNumClassInstances);
  520. void (STDMETHODCALLTYPE *PSGetConstantBuffers)(
  521. ID3D11DeviceContext2 *This,
  522. UINT StartSlot,
  523. UINT NumBuffers,
  524. ID3D11Buffer **ppConstantBuffers);
  525. void (STDMETHODCALLTYPE *IAGetInputLayout)(
  526. ID3D11DeviceContext2 *This,
  527. ID3D11InputLayout **ppInputLayout);
  528. void (STDMETHODCALLTYPE *IAGetVertexBuffers)(
  529. ID3D11DeviceContext2 *This,
  530. UINT StartSlot,
  531. UINT NumBuffers,
  532. ID3D11Buffer **ppVertexBuffers,
  533. UINT *pStrides,
  534. UINT *pOffsets);
  535. void (STDMETHODCALLTYPE *IAGetIndexBuffer)(
  536. ID3D11DeviceContext2 *This,
  537. ID3D11Buffer **pIndexBuffer,
  538. DXGI_FORMAT *Format,
  539. UINT *Offset);
  540. void (STDMETHODCALLTYPE *GSGetConstantBuffers)(
  541. ID3D11DeviceContext2 *This,
  542. UINT StartSlot,
  543. UINT NumBuffers,
  544. ID3D11Buffer **ppConstantBuffers);
  545. void (STDMETHODCALLTYPE *GSGetShader)(
  546. ID3D11DeviceContext2 *This,
  547. ID3D11GeometryShader **ppGeometryShader,
  548. ID3D11ClassInstance **ppClassInstances,
  549. UINT *pNumClassInstances);
  550. void (STDMETHODCALLTYPE *IAGetPrimitiveTopology)(
  551. ID3D11DeviceContext2 *This,
  552. D3D11_PRIMITIVE_TOPOLOGY *pTopology);
  553. void (STDMETHODCALLTYPE *VSGetShaderResources)(
  554. ID3D11DeviceContext2 *This,
  555. UINT StartSlot,
  556. UINT NumViews,
  557. ID3D11ShaderResourceView **ppShaderResourceViews);
  558. void (STDMETHODCALLTYPE *VSGetSamplers)(
  559. ID3D11DeviceContext2 *This,
  560. UINT StartSlot,
  561. UINT NumSamplers,
  562. ID3D11SamplerState **ppSamplers);
  563. void (STDMETHODCALLTYPE *GetPredication)(
  564. ID3D11DeviceContext2 *This,
  565. ID3D11Predicate **ppPredicate,
  566. WINBOOL *pPredicateValue);
  567. void (STDMETHODCALLTYPE *GSGetShaderResources)(
  568. ID3D11DeviceContext2 *This,
  569. UINT StartSlot,
  570. UINT NumViews,
  571. ID3D11ShaderResourceView **ppShaderResourceViews);
  572. void (STDMETHODCALLTYPE *GSGetSamplers)(
  573. ID3D11DeviceContext2 *This,
  574. UINT StartSlot,
  575. UINT NumSamplers,
  576. ID3D11SamplerState **ppSamplers);
  577. void (STDMETHODCALLTYPE *OMGetRenderTargets)(
  578. ID3D11DeviceContext2 *This,
  579. UINT NumViews,
  580. ID3D11RenderTargetView **ppRenderTargetViews,
  581. ID3D11DepthStencilView **ppDepthStencilView);
  582. void (STDMETHODCALLTYPE *OMGetRenderTargetsAndUnorderedAccessViews)(
  583. ID3D11DeviceContext2 *This,
  584. UINT NumRTVs,
  585. ID3D11RenderTargetView **ppRenderTargetViews,
  586. ID3D11DepthStencilView **ppDepthStencilView,
  587. UINT UAVStartSlot,
  588. UINT NumUAVs,
  589. ID3D11UnorderedAccessView **ppUnorderedAccessViews);
  590. void (STDMETHODCALLTYPE *OMGetBlendState)(
  591. ID3D11DeviceContext2 *This,
  592. ID3D11BlendState **ppBlendState,
  593. FLOAT BlendFactor[4],
  594. UINT *pSampleMask);
  595. void (STDMETHODCALLTYPE *OMGetDepthStencilState)(
  596. ID3D11DeviceContext2 *This,
  597. ID3D11DepthStencilState **ppDepthStencilState,
  598. UINT *pStencilRef);
  599. void (STDMETHODCALLTYPE *SOGetTargets)(
  600. ID3D11DeviceContext2 *This,
  601. UINT NumBuffers,
  602. ID3D11Buffer **ppSOTargets);
  603. void (STDMETHODCALLTYPE *RSGetState)(
  604. ID3D11DeviceContext2 *This,
  605. ID3D11RasterizerState **ppRasterizerState);
  606. void (STDMETHODCALLTYPE *RSGetViewports)(
  607. ID3D11DeviceContext2 *This,
  608. UINT *pNumViewports,
  609. D3D11_VIEWPORT *pViewports);
  610. void (STDMETHODCALLTYPE *RSGetScissorRects)(
  611. ID3D11DeviceContext2 *This,
  612. UINT *pNumRects,
  613. D3D11_RECT *pRects);
  614. void (STDMETHODCALLTYPE *HSGetShaderResources)(
  615. ID3D11DeviceContext2 *This,
  616. UINT StartSlot,
  617. UINT NumViews,
  618. ID3D11ShaderResourceView **ppShaderResourceViews);
  619. void (STDMETHODCALLTYPE *HSGetShader)(
  620. ID3D11DeviceContext2 *This,
  621. ID3D11HullShader **ppHullShader,
  622. ID3D11ClassInstance **ppClassInstances,
  623. UINT *pNumClassInstances);
  624. void (STDMETHODCALLTYPE *HSGetSamplers)(
  625. ID3D11DeviceContext2 *This,
  626. UINT StartSlot,
  627. UINT NumSamplers,
  628. ID3D11SamplerState **ppSamplers);
  629. void (STDMETHODCALLTYPE *HSGetConstantBuffers)(
  630. ID3D11DeviceContext2 *This,
  631. UINT StartSlot,
  632. UINT NumBuffers,
  633. ID3D11Buffer **ppConstantBuffers);
  634. void (STDMETHODCALLTYPE *DSGetShaderResources)(
  635. ID3D11DeviceContext2 *This,
  636. UINT StartSlot,
  637. UINT NumViews,
  638. ID3D11ShaderResourceView **ppShaderResourceViews);
  639. void (STDMETHODCALLTYPE *DSGetShader)(
  640. ID3D11DeviceContext2 *This,
  641. ID3D11DomainShader **ppDomainShader,
  642. ID3D11ClassInstance **ppClassInstances,
  643. UINT *pNumClassInstances);
  644. void (STDMETHODCALLTYPE *DSGetSamplers)(
  645. ID3D11DeviceContext2 *This,
  646. UINT StartSlot,
  647. UINT NumSamplers,
  648. ID3D11SamplerState **ppSamplers);
  649. void (STDMETHODCALLTYPE *DSGetConstantBuffers)(
  650. ID3D11DeviceContext2 *This,
  651. UINT StartSlot,
  652. UINT NumBuffers,
  653. ID3D11Buffer **ppConstantBuffers);
  654. void (STDMETHODCALLTYPE *CSGetShaderResources)(
  655. ID3D11DeviceContext2 *This,
  656. UINT StartSlot,
  657. UINT NumViews,
  658. ID3D11ShaderResourceView **ppShaderResourceViews);
  659. void (STDMETHODCALLTYPE *CSGetUnorderedAccessViews)(
  660. ID3D11DeviceContext2 *This,
  661. UINT StartSlot,
  662. UINT NumUAVs,
  663. ID3D11UnorderedAccessView **ppUnorderedAccessViews);
  664. void (STDMETHODCALLTYPE *CSGetShader)(
  665. ID3D11DeviceContext2 *This,
  666. ID3D11ComputeShader **ppComputeShader,
  667. ID3D11ClassInstance **ppClassInstances,
  668. UINT *pNumClassInstances);
  669. void (STDMETHODCALLTYPE *CSGetSamplers)(
  670. ID3D11DeviceContext2 *This,
  671. UINT StartSlot,
  672. UINT NumSamplers,
  673. ID3D11SamplerState **ppSamplers);
  674. void (STDMETHODCALLTYPE *CSGetConstantBuffers)(
  675. ID3D11DeviceContext2 *This,
  676. UINT StartSlot,
  677. UINT NumBuffers,
  678. ID3D11Buffer **ppConstantBuffers);
  679. void (STDMETHODCALLTYPE *ClearState)(
  680. ID3D11DeviceContext2 *This);
  681. void (STDMETHODCALLTYPE *Flush)(
  682. ID3D11DeviceContext2 *This);
  683. D3D11_DEVICE_CONTEXT_TYPE (STDMETHODCALLTYPE *GetType)(
  684. ID3D11DeviceContext2 *This);
  685. UINT (STDMETHODCALLTYPE *GetContextFlags)(
  686. ID3D11DeviceContext2 *This);
  687. HRESULT (STDMETHODCALLTYPE *FinishCommandList)(
  688. ID3D11DeviceContext2 *This,
  689. WINBOOL RestoreDeferredContextState,
  690. ID3D11CommandList **ppCommandList);
  691. /*** ID3D11DeviceContext1 methods ***/
  692. void (STDMETHODCALLTYPE *CopySubresourceRegion1)(
  693. ID3D11DeviceContext2 *This,
  694. ID3D11Resource *pDstResource,
  695. UINT DstSubresource,
  696. UINT DstX,
  697. UINT DstY,
  698. UINT DstZ,
  699. ID3D11Resource *pSrcResource,
  700. UINT SrcSubresource,
  701. const D3D11_BOX *pSrcBox,
  702. UINT CopyFlags);
  703. void (STDMETHODCALLTYPE *UpdateSubresource1)(
  704. ID3D11DeviceContext2 *This,
  705. ID3D11Resource *pDstResource,
  706. UINT DstSubresource,
  707. const D3D11_BOX *pDstBox,
  708. const void *pSrcData,
  709. UINT SrcRowPitch,
  710. UINT SrcDepthPitch,
  711. UINT CopyFlags);
  712. void (STDMETHODCALLTYPE *DiscardResource)(
  713. ID3D11DeviceContext2 *This,
  714. ID3D11Resource *pResource);
  715. void (STDMETHODCALLTYPE *DiscardView)(
  716. ID3D11DeviceContext2 *This,
  717. ID3D11View *pResourceView);
  718. void (STDMETHODCALLTYPE *VSSetConstantBuffers1)(
  719. ID3D11DeviceContext2 *This,
  720. UINT StartSlot,
  721. UINT NumBuffers,
  722. ID3D11Buffer *const *ppConstantBuffers,
  723. const UINT *pFirstConstant,
  724. const UINT *pNumConstants);
  725. void (STDMETHODCALLTYPE *HSSetConstantBuffers1)(
  726. ID3D11DeviceContext2 *This,
  727. UINT StartSlot,
  728. UINT NumBuffers,
  729. ID3D11Buffer *const *ppConstantBuffers,
  730. const UINT *pFirstConstant,
  731. const UINT *pNumConstants);
  732. void (STDMETHODCALLTYPE *DSSetConstantBuffers1)(
  733. ID3D11DeviceContext2 *This,
  734. UINT StartSlot,
  735. UINT NumBuffers,
  736. ID3D11Buffer *const *ppConstantBuffers,
  737. const UINT *pFirstConstant,
  738. const UINT *pNumConstants);
  739. void (STDMETHODCALLTYPE *GSSetConstantBuffers1)(
  740. ID3D11DeviceContext2 *This,
  741. UINT StartSlot,
  742. UINT NumBuffers,
  743. ID3D11Buffer *const *ppConstantBuffers,
  744. const UINT *pFirstConstant,
  745. const UINT *pNumConstants);
  746. void (STDMETHODCALLTYPE *PSSetConstantBuffers1)(
  747. ID3D11DeviceContext2 *This,
  748. UINT StartSlot,
  749. UINT NumBuffers,
  750. ID3D11Buffer *const *ppConstantBuffers,
  751. const UINT *pFirstConstant,
  752. const UINT *pNumConstants);
  753. void (STDMETHODCALLTYPE *CSSetConstantBuffers1)(
  754. ID3D11DeviceContext2 *This,
  755. UINT StartSlot,
  756. UINT NumBuffers,
  757. ID3D11Buffer *const *ppConstantBuffers,
  758. const UINT *pFirstConstant,
  759. const UINT *pNumConstants);
  760. void (STDMETHODCALLTYPE *VSGetConstantBuffers1)(
  761. ID3D11DeviceContext2 *This,
  762. UINT StartSlot,
  763. UINT NumBuffers,
  764. ID3D11Buffer **ppConstantBuffers,
  765. UINT *pFirstConstant,
  766. UINT *pNumConstants);
  767. void (STDMETHODCALLTYPE *HSGetConstantBuffers1)(
  768. ID3D11DeviceContext2 *This,
  769. UINT StartSlot,
  770. UINT NumBuffers,
  771. ID3D11Buffer **ppConstantBuffers,
  772. UINT *pFirstConstant,
  773. UINT *pNumConstants);
  774. void (STDMETHODCALLTYPE *DSGetConstantBuffers1)(
  775. ID3D11DeviceContext2 *This,
  776. UINT StartSlot,
  777. UINT NumBuffers,
  778. ID3D11Buffer **ppConstantBuffers,
  779. UINT *pFirstConstant,
  780. UINT *pNumConstants);
  781. void (STDMETHODCALLTYPE *GSGetConstantBuffers1)(
  782. ID3D11DeviceContext2 *This,
  783. UINT StartSlot,
  784. UINT NumBuffers,
  785. ID3D11Buffer **ppConstantBuffers,
  786. UINT *pFirstConstant,
  787. UINT *pNumConstants);
  788. void (STDMETHODCALLTYPE *PSGetConstantBuffers1)(
  789. ID3D11DeviceContext2 *This,
  790. UINT StartSlot,
  791. UINT NumBuffers,
  792. ID3D11Buffer **ppConstantBuffers,
  793. UINT *pFirstConstant,
  794. UINT *pNumConstants);
  795. void (STDMETHODCALLTYPE *CSGetConstantBuffers1)(
  796. ID3D11DeviceContext2 *This,
  797. UINT StartSlot,
  798. UINT NumBuffers,
  799. ID3D11Buffer **ppConstantBuffers,
  800. UINT *pFirstConstant,
  801. UINT *pNumConstants);
  802. void (STDMETHODCALLTYPE *SwapDeviceContextState)(
  803. ID3D11DeviceContext2 *This,
  804. ID3DDeviceContextState *pState,
  805. ID3DDeviceContextState **ppPreviousState);
  806. void (STDMETHODCALLTYPE *ClearView)(
  807. ID3D11DeviceContext2 *This,
  808. ID3D11View *pView,
  809. const FLOAT Color[4],
  810. const D3D11_RECT *pRect,
  811. UINT NumRects);
  812. void (STDMETHODCALLTYPE *DiscardView1)(
  813. ID3D11DeviceContext2 *This,
  814. ID3D11View *pResourceView,
  815. const D3D11_RECT *pRects,
  816. UINT NumRects);
  817. /*** ID3D11DeviceContext2 methods ***/
  818. HRESULT (STDMETHODCALLTYPE *UpdateTileMappings)(
  819. ID3D11DeviceContext2 *This,
  820. ID3D11Resource *resource,
  821. UINT region_count,
  822. const D3D11_TILED_RESOURCE_COORDINATE *region_start_coordinates,
  823. const D3D11_TILE_REGION_SIZE *region_sizes,
  824. ID3D11Buffer *pool,
  825. UINT range_count,
  826. const UINT *range_flags,
  827. const UINT *pool_start_offsets,
  828. const UINT *range_tile_counts,
  829. UINT flags);
  830. HRESULT (STDMETHODCALLTYPE *CopyTileMappings)(
  831. ID3D11DeviceContext2 *This,
  832. ID3D11Resource *dst_resource,
  833. const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,
  834. ID3D11Resource *src_resource,
  835. const D3D11_TILED_RESOURCE_COORDINATE *src_start_coordinate,
  836. const D3D11_TILE_REGION_SIZE *region_size,
  837. UINT flags);
  838. void (STDMETHODCALLTYPE *CopyTiles)(
  839. ID3D11DeviceContext2 *This,
  840. ID3D11Resource *resource,
  841. const D3D11_TILED_RESOURCE_COORDINATE *start_coordinate,
  842. const D3D11_TILE_REGION_SIZE *size,
  843. ID3D11Buffer *buffer,
  844. UINT64 start_offset,
  845. UINT flags);
  846. void (STDMETHODCALLTYPE *UpdateTiles)(
  847. ID3D11DeviceContext2 *This,
  848. ID3D11Resource *dst_resource,
  849. const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,
  850. const D3D11_TILE_REGION_SIZE *dst_region_size,
  851. const void *src_data,
  852. UINT flags);
  853. HRESULT (STDMETHODCALLTYPE *ResizeTilePool)(
  854. ID3D11DeviceContext2 *This,
  855. ID3D11Buffer *pool,
  856. UINT64 size);
  857. void (STDMETHODCALLTYPE *TiledResourceBarrier)(
  858. ID3D11DeviceContext2 *This,
  859. ID3D11DeviceChild *before_barrier,
  860. ID3D11DeviceChild *after_barrier);
  861. WINBOOL (STDMETHODCALLTYPE *IsAnnotationEnabled)(
  862. ID3D11DeviceContext2 *This);
  863. void (STDMETHODCALLTYPE *SetMarkerInt)(
  864. ID3D11DeviceContext2 *This,
  865. const WCHAR *label,
  866. int data);
  867. void (STDMETHODCALLTYPE *BeginEventInt)(
  868. ID3D11DeviceContext2 *This,
  869. const WCHAR *label,
  870. int data);
  871. void (STDMETHODCALLTYPE *EndEvent)(
  872. ID3D11DeviceContext2 *This);
  873. END_INTERFACE
  874. } ID3D11DeviceContext2Vtbl;
  875. interface ID3D11DeviceContext2 {
  876. CONST_VTBL ID3D11DeviceContext2Vtbl* lpVtbl;
  877. };
  878. #ifdef COBJMACROS
  879. #ifndef WIDL_C_INLINE_WRAPPERS
  880. /*** IUnknown methods ***/
  881. #define ID3D11DeviceContext2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  882. #define ID3D11DeviceContext2_AddRef(This) (This)->lpVtbl->AddRef(This)
  883. #define ID3D11DeviceContext2_Release(This) (This)->lpVtbl->Release(This)
  884. /*** ID3D11DeviceChild methods ***/
  885. #define ID3D11DeviceContext2_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice)
  886. #define ID3D11DeviceContext2_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
  887. #define ID3D11DeviceContext2_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
  888. #define ID3D11DeviceContext2_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
  889. /*** ID3D11DeviceContext methods ***/
  890. #define ID3D11DeviceContext2_VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
  891. #define ID3D11DeviceContext2_PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
  892. #define ID3D11DeviceContext2_PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances)
  893. #define ID3D11DeviceContext2_PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
  894. #define ID3D11DeviceContext2_VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances)
  895. #define ID3D11DeviceContext2_DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) (This)->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation)
  896. #define ID3D11DeviceContext2_Draw(This,VertexCount,StartVertexLocation) (This)->lpVtbl->Draw(This,VertexCount,StartVertexLocation)
  897. #define ID3D11DeviceContext2_Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource) (This)->lpVtbl->Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource)
  898. #define ID3D11DeviceContext2_Unmap(This,pResource,Subresource) (This)->lpVtbl->Unmap(This,pResource,Subresource)
  899. #define ID3D11DeviceContext2_PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
  900. #define ID3D11DeviceContext2_IASetInputLayout(This,pInputLayout) (This)->lpVtbl->IASetInputLayout(This,pInputLayout)
  901. #define ID3D11DeviceContext2_IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets)
  902. #define ID3D11DeviceContext2_IASetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset)
  903. #define ID3D11DeviceContext2_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation)
  904. #define ID3D11DeviceContext2_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation)
  905. #define ID3D11DeviceContext2_GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
  906. #define ID3D11DeviceContext2_GSSetShader(This,pShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->GSSetShader(This,pShader,ppClassInstances,NumClassInstances)
  907. #define ID3D11DeviceContext2_IASetPrimitiveTopology(This,Topology) (This)->lpVtbl->IASetPrimitiveTopology(This,Topology)
  908. #define ID3D11DeviceContext2_VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
  909. #define ID3D11DeviceContext2_VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
  910. #define ID3D11DeviceContext2_Begin(This,pAsync) (This)->lpVtbl->Begin(This,pAsync)
  911. #define ID3D11DeviceContext2_End(This,pAsync) (This)->lpVtbl->End(This,pAsync)
  912. #define ID3D11DeviceContext2_GetData(This,pAsync,pData,DataSize,GetDataFlags) (This)->lpVtbl->GetData(This,pAsync,pData,DataSize,GetDataFlags)
  913. #define ID3D11DeviceContext2_SetPredication(This,pPredicate,PredicateValue) (This)->lpVtbl->SetPredication(This,pPredicate,PredicateValue)
  914. #define ID3D11DeviceContext2_GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
  915. #define ID3D11DeviceContext2_GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
  916. #define ID3D11DeviceContext2_OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) (This)->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView)
  917. #define ID3D11DeviceContext2_OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) (This)->lpVtbl->OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts)
  918. #define ID3D11DeviceContext2_OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) (This)->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask)
  919. #define ID3D11DeviceContext2_OMSetDepthStencilState(This,pDepthStencilState,StencilRef) (This)->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef)
  920. #define ID3D11DeviceContext2_SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) (This)->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets)
  921. #define ID3D11DeviceContext2_DrawAuto(This) (This)->lpVtbl->DrawAuto(This)
  922. #define ID3D11DeviceContext2_DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs)
  923. #define ID3D11DeviceContext2_DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs)
  924. #define ID3D11DeviceContext2_Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) (This)->lpVtbl->Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ)
  925. #define ID3D11DeviceContext2_DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs)
  926. #define ID3D11DeviceContext2_RSSetState(This,pRasterizerState) (This)->lpVtbl->RSSetState(This,pRasterizerState)
  927. #define ID3D11DeviceContext2_RSSetViewports(This,NumViewports,pViewports) (This)->lpVtbl->RSSetViewports(This,NumViewports,pViewports)
  928. #define ID3D11DeviceContext2_RSSetScissorRects(This,NumRects,pRects) (This)->lpVtbl->RSSetScissorRects(This,NumRects,pRects)
  929. #define ID3D11DeviceContext2_CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) (This)->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox)
  930. #define ID3D11DeviceContext2_CopyResource(This,pDstResource,pSrcResource) (This)->lpVtbl->CopyResource(This,pDstResource,pSrcResource)
  931. #define ID3D11DeviceContext2_UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) (This)->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch)
  932. #define ID3D11DeviceContext2_CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView) (This)->lpVtbl->CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView)
  933. #define ID3D11DeviceContext2_ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) (This)->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA)
  934. #define ID3D11DeviceContext2_ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values) (This)->lpVtbl->ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values)
  935. #define ID3D11DeviceContext2_ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values) (This)->lpVtbl->ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values)
  936. #define ID3D11DeviceContext2_ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) (This)->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil)
  937. #define ID3D11DeviceContext2_GenerateMips(This,pShaderResourceView) (This)->lpVtbl->GenerateMips(This,pShaderResourceView)
  938. #define ID3D11DeviceContext2_SetResourceMinLOD(This,pResource,MinLOD) (This)->lpVtbl->SetResourceMinLOD(This,pResource,MinLOD)
  939. #define ID3D11DeviceContext2_GetResourceMinLOD(This,pResource) (This)->lpVtbl->GetResourceMinLOD(This,pResource)
  940. #define ID3D11DeviceContext2_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) (This)->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format)
  941. #define ID3D11DeviceContext2_ExecuteCommandList(This,pCommandList,RestoreContextState) (This)->lpVtbl->ExecuteCommandList(This,pCommandList,RestoreContextState)
  942. #define ID3D11DeviceContext2_HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
  943. #define ID3D11DeviceContext2_HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances)
  944. #define ID3D11DeviceContext2_HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
  945. #define ID3D11DeviceContext2_HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
  946. #define ID3D11DeviceContext2_DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
  947. #define ID3D11DeviceContext2_DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances)
  948. #define ID3D11DeviceContext2_DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
  949. #define ID3D11DeviceContext2_DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
  950. #define ID3D11DeviceContext2_CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
  951. #define ID3D11DeviceContext2_CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) (This)->lpVtbl->CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts)
  952. #define ID3D11DeviceContext2_CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances)
  953. #define ID3D11DeviceContext2_CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)
  954. #define ID3D11DeviceContext2_CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
  955. #define ID3D11DeviceContext2_VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
  956. #define ID3D11DeviceContext2_PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
  957. #define ID3D11DeviceContext2_PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances)
  958. #define ID3D11DeviceContext2_PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
  959. #define ID3D11DeviceContext2_VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances)
  960. #define ID3D11DeviceContext2_PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
  961. #define ID3D11DeviceContext2_IAGetInputLayout(This,ppInputLayout) (This)->lpVtbl->IAGetInputLayout(This,ppInputLayout)
  962. #define ID3D11DeviceContext2_IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets)
  963. #define ID3D11DeviceContext2_IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset)
  964. #define ID3D11DeviceContext2_GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
  965. #define ID3D11DeviceContext2_GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances)
  966. #define ID3D11DeviceContext2_IAGetPrimitiveTopology(This,pTopology) (This)->lpVtbl->IAGetPrimitiveTopology(This,pTopology)
  967. #define ID3D11DeviceContext2_VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
  968. #define ID3D11DeviceContext2_VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
  969. #define ID3D11DeviceContext2_GetPredication(This,ppPredicate,pPredicateValue) (This)->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue)
  970. #define ID3D11DeviceContext2_GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
  971. #define ID3D11DeviceContext2_GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
  972. #define ID3D11DeviceContext2_OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) (This)->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView)
  973. #define ID3D11DeviceContext2_OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews) (This)->lpVtbl->OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews)
  974. #define ID3D11DeviceContext2_OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) (This)->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask)
  975. #define ID3D11DeviceContext2_OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) (This)->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef)
  976. #define ID3D11DeviceContext2_SOGetTargets(This,NumBuffers,ppSOTargets) (This)->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets)
  977. #define ID3D11DeviceContext2_RSGetState(This,ppRasterizerState) (This)->lpVtbl->RSGetState(This,ppRasterizerState)
  978. #define ID3D11DeviceContext2_RSGetViewports(This,pNumViewports,pViewports) (This)->lpVtbl->RSGetViewports(This,pNumViewports,pViewports)
  979. #define ID3D11DeviceContext2_RSGetScissorRects(This,pNumRects,pRects) (This)->lpVtbl->RSGetScissorRects(This,pNumRects,pRects)
  980. #define ID3D11DeviceContext2_HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
  981. #define ID3D11DeviceContext2_HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances)
  982. #define ID3D11DeviceContext2_HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
  983. #define ID3D11DeviceContext2_HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
  984. #define ID3D11DeviceContext2_DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
  985. #define ID3D11DeviceContext2_DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances)
  986. #define ID3D11DeviceContext2_DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
  987. #define ID3D11DeviceContext2_DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
  988. #define ID3D11DeviceContext2_CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)
  989. #define ID3D11DeviceContext2_CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews) (This)->lpVtbl->CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews)
  990. #define ID3D11DeviceContext2_CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances)
  991. #define ID3D11DeviceContext2_CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)
  992. #define ID3D11DeviceContext2_CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)
  993. #define ID3D11DeviceContext2_ClearState(This) (This)->lpVtbl->ClearState(This)
  994. #define ID3D11DeviceContext2_Flush(This) (This)->lpVtbl->Flush(This)
  995. #define ID3D11DeviceContext2_GetType(This) (This)->lpVtbl->GetType(This)
  996. #define ID3D11DeviceContext2_GetContextFlags(This) (This)->lpVtbl->GetContextFlags(This)
  997. #define ID3D11DeviceContext2_FinishCommandList(This,RestoreDeferredContextState,ppCommandList) (This)->lpVtbl->FinishCommandList(This,RestoreDeferredContextState,ppCommandList)
  998. /*** ID3D11DeviceContext1 methods ***/
  999. #define ID3D11DeviceContext2_CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags) (This)->lpVtbl->CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags)
  1000. #define ID3D11DeviceContext2_UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags) (This)->lpVtbl->UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags)
  1001. #define ID3D11DeviceContext2_DiscardResource(This,pResource) (This)->lpVtbl->DiscardResource(This,pResource)
  1002. #define ID3D11DeviceContext2_DiscardView(This,pResourceView) (This)->lpVtbl->DiscardView(This,pResourceView)
  1003. #define ID3D11DeviceContext2_VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
  1004. #define ID3D11DeviceContext2_HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
  1005. #define ID3D11DeviceContext2_DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
  1006. #define ID3D11DeviceContext2_GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
  1007. #define ID3D11DeviceContext2_PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
  1008. #define ID3D11DeviceContext2_CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
  1009. #define ID3D11DeviceContext2_VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
  1010. #define ID3D11DeviceContext2_HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
  1011. #define ID3D11DeviceContext2_DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
  1012. #define ID3D11DeviceContext2_GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
  1013. #define ID3D11DeviceContext2_PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
  1014. #define ID3D11DeviceContext2_CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants)
  1015. #define ID3D11DeviceContext2_SwapDeviceContextState(This,pState,ppPreviousState) (This)->lpVtbl->SwapDeviceContextState(This,pState,ppPreviousState)
  1016. #define ID3D11DeviceContext2_ClearView(This,pView,Color,pRect,NumRects) (This)->lpVtbl->ClearView(This,pView,Color,pRect,NumRects)
  1017. #define ID3D11DeviceContext2_DiscardView1(This,pResourceView,pRects,NumRects) (This)->lpVtbl->DiscardView1(This,pResourceView,pRects,NumRects)
  1018. /*** ID3D11DeviceContext2 methods ***/
  1019. #define ID3D11DeviceContext2_UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,pool,range_count,range_flags,pool_start_offsets,range_tile_counts,flags) (This)->lpVtbl->UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,pool,range_count,range_flags,pool_start_offsets,range_tile_counts,flags)
  1020. #define ID3D11DeviceContext2_CopyTileMappings(This,dst_resource,dst_start_coordinate,src_resource,src_start_coordinate,region_size,flags) (This)->lpVtbl->CopyTileMappings(This,dst_resource,dst_start_coordinate,src_resource,src_start_coordinate,region_size,flags)
  1021. #define ID3D11DeviceContext2_CopyTiles(This,resource,start_coordinate,size,buffer,start_offset,flags) (This)->lpVtbl->CopyTiles(This,resource,start_coordinate,size,buffer,start_offset,flags)
  1022. #define ID3D11DeviceContext2_UpdateTiles(This,dst_resource,dst_start_coordinate,dst_region_size,src_data,flags) (This)->lpVtbl->UpdateTiles(This,dst_resource,dst_start_coordinate,dst_region_size,src_data,flags)
  1023. #define ID3D11DeviceContext2_ResizeTilePool(This,pool,size) (This)->lpVtbl->ResizeTilePool(This,pool,size)
  1024. #define ID3D11DeviceContext2_TiledResourceBarrier(This,before_barrier,after_barrier) (This)->lpVtbl->TiledResourceBarrier(This,before_barrier,after_barrier)
  1025. #define ID3D11DeviceContext2_IsAnnotationEnabled(This) (This)->lpVtbl->IsAnnotationEnabled(This)
  1026. #define ID3D11DeviceContext2_SetMarkerInt(This,label,data) (This)->lpVtbl->SetMarkerInt(This,label,data)
  1027. #define ID3D11DeviceContext2_BeginEventInt(This,label,data) (This)->lpVtbl->BeginEventInt(This,label,data)
  1028. #define ID3D11DeviceContext2_EndEvent(This) (This)->lpVtbl->EndEvent(This)
  1029. #else
  1030. /*** IUnknown methods ***/
  1031. static FORCEINLINE HRESULT ID3D11DeviceContext2_QueryInterface(ID3D11DeviceContext2* This,REFIID riid,void **ppvObject) {
  1032. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  1033. }
  1034. static FORCEINLINE ULONG ID3D11DeviceContext2_AddRef(ID3D11DeviceContext2* This) {
  1035. return This->lpVtbl->AddRef(This);
  1036. }
  1037. static FORCEINLINE ULONG ID3D11DeviceContext2_Release(ID3D11DeviceContext2* This) {
  1038. return This->lpVtbl->Release(This);
  1039. }
  1040. /*** ID3D11DeviceChild methods ***/
  1041. static FORCEINLINE void ID3D11DeviceContext2_GetDevice(ID3D11DeviceContext2* This,ID3D11Device **ppDevice) {
  1042. This->lpVtbl->GetDevice(This,ppDevice);
  1043. }
  1044. static FORCEINLINE HRESULT ID3D11DeviceContext2_GetPrivateData(ID3D11DeviceContext2* This,REFGUID guid,UINT *pDataSize,void *pData) {
  1045. return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
  1046. }
  1047. static FORCEINLINE HRESULT ID3D11DeviceContext2_SetPrivateData(ID3D11DeviceContext2* This,REFGUID guid,UINT DataSize,const void *pData) {
  1048. return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
  1049. }
  1050. static FORCEINLINE HRESULT ID3D11DeviceContext2_SetPrivateDataInterface(ID3D11DeviceContext2* This,REFGUID guid,const IUnknown *pData) {
  1051. return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
  1052. }
  1053. /*** ID3D11DeviceContext methods ***/
  1054. static FORCEINLINE void ID3D11DeviceContext2_VSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
  1055. This->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
  1056. }
  1057. static FORCEINLINE void ID3D11DeviceContext2_PSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
  1058. This->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
  1059. }
  1060. static FORCEINLINE void ID3D11DeviceContext2_PSSetShader(ID3D11DeviceContext2* This,ID3D11PixelShader *pPixelShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
  1061. This->lpVtbl->PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances);
  1062. }
  1063. static FORCEINLINE void ID3D11DeviceContext2_PSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
  1064. This->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
  1065. }
  1066. static FORCEINLINE void ID3D11DeviceContext2_VSSetShader(ID3D11DeviceContext2* This,ID3D11VertexShader *pVertexShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
  1067. This->lpVtbl->VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances);
  1068. }
  1069. static FORCEINLINE void ID3D11DeviceContext2_DrawIndexed(ID3D11DeviceContext2* This,UINT IndexCount,UINT StartIndexLocation,INT BaseVertexLocation) {
  1070. This->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation);
  1071. }
  1072. static FORCEINLINE void ID3D11DeviceContext2_Draw(ID3D11DeviceContext2* This,UINT VertexCount,UINT StartVertexLocation) {
  1073. This->lpVtbl->Draw(This,VertexCount,StartVertexLocation);
  1074. }
  1075. static FORCEINLINE HRESULT ID3D11DeviceContext2_Map(ID3D11DeviceContext2* This,ID3D11Resource *pResource,UINT Subresource,D3D11_MAP MapType,UINT MapFlags,D3D11_MAPPED_SUBRESOURCE *pMappedResource) {
  1076. return This->lpVtbl->Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource);
  1077. }
  1078. static FORCEINLINE void ID3D11DeviceContext2_Unmap(ID3D11DeviceContext2* This,ID3D11Resource *pResource,UINT Subresource) {
  1079. This->lpVtbl->Unmap(This,pResource,Subresource);
  1080. }
  1081. static FORCEINLINE void ID3D11DeviceContext2_PSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
  1082. This->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
  1083. }
  1084. static FORCEINLINE void ID3D11DeviceContext2_IASetInputLayout(ID3D11DeviceContext2* This,ID3D11InputLayout *pInputLayout) {
  1085. This->lpVtbl->IASetInputLayout(This,pInputLayout);
  1086. }
  1087. static FORCEINLINE void ID3D11DeviceContext2_IASetVertexBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppVertexBuffers,const UINT *pStrides,const UINT *pOffsets) {
  1088. This->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets);
  1089. }
  1090. static FORCEINLINE void ID3D11DeviceContext2_IASetIndexBuffer(ID3D11DeviceContext2* This,ID3D11Buffer *pIndexBuffer,DXGI_FORMAT Format,UINT Offset) {
  1091. This->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset);
  1092. }
  1093. static FORCEINLINE void ID3D11DeviceContext2_DrawIndexedInstanced(ID3D11DeviceContext2* This,UINT IndexCountPerInstance,UINT InstanceCount,UINT StartIndexLocation,INT BaseVertexLocation,UINT StartInstanceLocation) {
  1094. This->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation);
  1095. }
  1096. static FORCEINLINE void ID3D11DeviceContext2_DrawInstanced(ID3D11DeviceContext2* This,UINT VertexCountPerInstance,UINT InstanceCount,UINT StartVertexLocation,UINT StartInstanceLocation) {
  1097. This->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation);
  1098. }
  1099. static FORCEINLINE void ID3D11DeviceContext2_GSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
  1100. This->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
  1101. }
  1102. static FORCEINLINE void ID3D11DeviceContext2_GSSetShader(ID3D11DeviceContext2* This,ID3D11GeometryShader *pShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
  1103. This->lpVtbl->GSSetShader(This,pShader,ppClassInstances,NumClassInstances);
  1104. }
  1105. static FORCEINLINE void ID3D11DeviceContext2_IASetPrimitiveTopology(ID3D11DeviceContext2* This,D3D11_PRIMITIVE_TOPOLOGY Topology) {
  1106. This->lpVtbl->IASetPrimitiveTopology(This,Topology);
  1107. }
  1108. static FORCEINLINE void ID3D11DeviceContext2_VSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
  1109. This->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
  1110. }
  1111. static FORCEINLINE void ID3D11DeviceContext2_VSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
  1112. This->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
  1113. }
  1114. static FORCEINLINE void ID3D11DeviceContext2_Begin(ID3D11DeviceContext2* This,ID3D11Asynchronous *pAsync) {
  1115. This->lpVtbl->Begin(This,pAsync);
  1116. }
  1117. static FORCEINLINE void ID3D11DeviceContext2_End(ID3D11DeviceContext2* This,ID3D11Asynchronous *pAsync) {
  1118. This->lpVtbl->End(This,pAsync);
  1119. }
  1120. static FORCEINLINE HRESULT ID3D11DeviceContext2_GetData(ID3D11DeviceContext2* This,ID3D11Asynchronous *pAsync,void *pData,UINT DataSize,UINT GetDataFlags) {
  1121. return This->lpVtbl->GetData(This,pAsync,pData,DataSize,GetDataFlags);
  1122. }
  1123. static FORCEINLINE void ID3D11DeviceContext2_SetPredication(ID3D11DeviceContext2* This,ID3D11Predicate *pPredicate,WINBOOL PredicateValue) {
  1124. This->lpVtbl->SetPredication(This,pPredicate,PredicateValue);
  1125. }
  1126. static FORCEINLINE void ID3D11DeviceContext2_GSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
  1127. This->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
  1128. }
  1129. static FORCEINLINE void ID3D11DeviceContext2_GSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
  1130. This->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
  1131. }
  1132. static FORCEINLINE void ID3D11DeviceContext2_OMSetRenderTargets(ID3D11DeviceContext2* This,UINT NumViews,ID3D11RenderTargetView *const *ppRenderTargetViews,ID3D11DepthStencilView *pDepthStencilView) {
  1133. This->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView);
  1134. }
  1135. static FORCEINLINE void ID3D11DeviceContext2_OMSetRenderTargetsAndUnorderedAccessViews(ID3D11DeviceContext2* This,UINT NumRTVs,ID3D11RenderTargetView *const *ppRenderTargetViews,ID3D11DepthStencilView *pDepthStencilView,UINT UAVStartSlot,UINT NumUAVs,ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,const UINT *pUAVInitialCounts) {
  1136. This->lpVtbl->OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts);
  1137. }
  1138. static FORCEINLINE void ID3D11DeviceContext2_OMSetBlendState(ID3D11DeviceContext2* This,ID3D11BlendState *pBlendState,const FLOAT BlendFactor[4],UINT SampleMask) {
  1139. This->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask);
  1140. }
  1141. static FORCEINLINE void ID3D11DeviceContext2_OMSetDepthStencilState(ID3D11DeviceContext2* This,ID3D11DepthStencilState *pDepthStencilState,UINT StencilRef) {
  1142. This->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef);
  1143. }
  1144. static FORCEINLINE void ID3D11DeviceContext2_SOSetTargets(ID3D11DeviceContext2* This,UINT NumBuffers,ID3D11Buffer *const *ppSOTargets,const UINT *pOffsets) {
  1145. This->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets);
  1146. }
  1147. static FORCEINLINE void ID3D11DeviceContext2_DrawAuto(ID3D11DeviceContext2* This) {
  1148. This->lpVtbl->DrawAuto(This);
  1149. }
  1150. static FORCEINLINE void ID3D11DeviceContext2_DrawIndexedInstancedIndirect(ID3D11DeviceContext2* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) {
  1151. This->lpVtbl->DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs);
  1152. }
  1153. static FORCEINLINE void ID3D11DeviceContext2_DrawInstancedIndirect(ID3D11DeviceContext2* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) {
  1154. This->lpVtbl->DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs);
  1155. }
  1156. static FORCEINLINE void ID3D11DeviceContext2_Dispatch(ID3D11DeviceContext2* This,UINT ThreadGroupCountX,UINT ThreadGroupCountY,UINT ThreadGroupCountZ) {
  1157. This->lpVtbl->Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ);
  1158. }
  1159. static FORCEINLINE void ID3D11DeviceContext2_DispatchIndirect(ID3D11DeviceContext2* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) {
  1160. This->lpVtbl->DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs);
  1161. }
  1162. static FORCEINLINE void ID3D11DeviceContext2_RSSetState(ID3D11DeviceContext2* This,ID3D11RasterizerState *pRasterizerState) {
  1163. This->lpVtbl->RSSetState(This,pRasterizerState);
  1164. }
  1165. static FORCEINLINE void ID3D11DeviceContext2_RSSetViewports(ID3D11DeviceContext2* This,UINT NumViewports,const D3D11_VIEWPORT *pViewports) {
  1166. This->lpVtbl->RSSetViewports(This,NumViewports,pViewports);
  1167. }
  1168. static FORCEINLINE void ID3D11DeviceContext2_RSSetScissorRects(ID3D11DeviceContext2* This,UINT NumRects,const D3D11_RECT *pRects) {
  1169. This->lpVtbl->RSSetScissorRects(This,NumRects,pRects);
  1170. }
  1171. static FORCEINLINE void ID3D11DeviceContext2_CopySubresourceRegion(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D11Resource *pSrcResource,UINT SrcSubresource,const D3D11_BOX *pSrcBox) {
  1172. This->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox);
  1173. }
  1174. static FORCEINLINE void ID3D11DeviceContext2_CopyResource(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,ID3D11Resource *pSrcResource) {
  1175. This->lpVtbl->CopyResource(This,pDstResource,pSrcResource);
  1176. }
  1177. static FORCEINLINE void ID3D11DeviceContext2_UpdateSubresource(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,UINT DstSubresource,const D3D11_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch) {
  1178. This->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch);
  1179. }
  1180. static FORCEINLINE void ID3D11DeviceContext2_CopyStructureCount(ID3D11DeviceContext2* This,ID3D11Buffer *pDstBuffer,UINT DstAlignedByteOffset,ID3D11UnorderedAccessView *pSrcView) {
  1181. This->lpVtbl->CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView);
  1182. }
  1183. static FORCEINLINE void ID3D11DeviceContext2_ClearRenderTargetView(ID3D11DeviceContext2* This,ID3D11RenderTargetView *pRenderTargetView,const FLOAT ColorRGBA[4]) {
  1184. This->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA);
  1185. }
  1186. static FORCEINLINE void ID3D11DeviceContext2_ClearUnorderedAccessViewUint(ID3D11DeviceContext2* This,ID3D11UnorderedAccessView *pUnorderedAccessView,const UINT Values[4]) {
  1187. This->lpVtbl->ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values);
  1188. }
  1189. static FORCEINLINE void ID3D11DeviceContext2_ClearUnorderedAccessViewFloat(ID3D11DeviceContext2* This,ID3D11UnorderedAccessView *pUnorderedAccessView,const FLOAT Values[4]) {
  1190. This->lpVtbl->ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values);
  1191. }
  1192. static FORCEINLINE void ID3D11DeviceContext2_ClearDepthStencilView(ID3D11DeviceContext2* This,ID3D11DepthStencilView *pDepthStencilView,UINT ClearFlags,FLOAT Depth,UINT8 Stencil) {
  1193. This->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil);
  1194. }
  1195. static FORCEINLINE void ID3D11DeviceContext2_GenerateMips(ID3D11DeviceContext2* This,ID3D11ShaderResourceView *pShaderResourceView) {
  1196. This->lpVtbl->GenerateMips(This,pShaderResourceView);
  1197. }
  1198. static FORCEINLINE void ID3D11DeviceContext2_SetResourceMinLOD(ID3D11DeviceContext2* This,ID3D11Resource *pResource,FLOAT MinLOD) {
  1199. This->lpVtbl->SetResourceMinLOD(This,pResource,MinLOD);
  1200. }
  1201. static FORCEINLINE FLOAT ID3D11DeviceContext2_GetResourceMinLOD(ID3D11DeviceContext2* This,ID3D11Resource *pResource) {
  1202. return This->lpVtbl->GetResourceMinLOD(This,pResource);
  1203. }
  1204. static FORCEINLINE void ID3D11DeviceContext2_ResolveSubresource(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,UINT DstSubresource,ID3D11Resource *pSrcResource,UINT SrcSubresource,DXGI_FORMAT Format) {
  1205. This->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format);
  1206. }
  1207. static FORCEINLINE void ID3D11DeviceContext2_ExecuteCommandList(ID3D11DeviceContext2* This,ID3D11CommandList *pCommandList,WINBOOL RestoreContextState) {
  1208. This->lpVtbl->ExecuteCommandList(This,pCommandList,RestoreContextState);
  1209. }
  1210. static FORCEINLINE void ID3D11DeviceContext2_HSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
  1211. This->lpVtbl->HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
  1212. }
  1213. static FORCEINLINE void ID3D11DeviceContext2_HSSetShader(ID3D11DeviceContext2* This,ID3D11HullShader *pHullShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
  1214. This->lpVtbl->HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances);
  1215. }
  1216. static FORCEINLINE void ID3D11DeviceContext2_HSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
  1217. This->lpVtbl->HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
  1218. }
  1219. static FORCEINLINE void ID3D11DeviceContext2_HSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
  1220. This->lpVtbl->HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
  1221. }
  1222. static FORCEINLINE void ID3D11DeviceContext2_DSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
  1223. This->lpVtbl->DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
  1224. }
  1225. static FORCEINLINE void ID3D11DeviceContext2_DSSetShader(ID3D11DeviceContext2* This,ID3D11DomainShader *pDomainShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
  1226. This->lpVtbl->DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances);
  1227. }
  1228. static FORCEINLINE void ID3D11DeviceContext2_DSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
  1229. This->lpVtbl->DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
  1230. }
  1231. static FORCEINLINE void ID3D11DeviceContext2_DSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
  1232. This->lpVtbl->DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
  1233. }
  1234. static FORCEINLINE void ID3D11DeviceContext2_CSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) {
  1235. This->lpVtbl->CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
  1236. }
  1237. static FORCEINLINE void ID3D11DeviceContext2_CSSetUnorderedAccessViews(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumUAVs,ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,const UINT *pUAVInitialCounts) {
  1238. This->lpVtbl->CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts);
  1239. }
  1240. static FORCEINLINE void ID3D11DeviceContext2_CSSetShader(ID3D11DeviceContext2* This,ID3D11ComputeShader *pComputeShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) {
  1241. This->lpVtbl->CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances);
  1242. }
  1243. static FORCEINLINE void ID3D11DeviceContext2_CSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) {
  1244. This->lpVtbl->CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers);
  1245. }
  1246. static FORCEINLINE void ID3D11DeviceContext2_CSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) {
  1247. This->lpVtbl->CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
  1248. }
  1249. static FORCEINLINE void ID3D11DeviceContext2_VSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
  1250. This->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
  1251. }
  1252. static FORCEINLINE void ID3D11DeviceContext2_PSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
  1253. This->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
  1254. }
  1255. static FORCEINLINE void ID3D11DeviceContext2_PSGetShader(ID3D11DeviceContext2* This,ID3D11PixelShader **ppPixelShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
  1256. This->lpVtbl->PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances);
  1257. }
  1258. static FORCEINLINE void ID3D11DeviceContext2_PSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
  1259. This->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
  1260. }
  1261. static FORCEINLINE void ID3D11DeviceContext2_VSGetShader(ID3D11DeviceContext2* This,ID3D11VertexShader **ppVertexShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
  1262. This->lpVtbl->VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances);
  1263. }
  1264. static FORCEINLINE void ID3D11DeviceContext2_PSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
  1265. This->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
  1266. }
  1267. static FORCEINLINE void ID3D11DeviceContext2_IAGetInputLayout(ID3D11DeviceContext2* This,ID3D11InputLayout **ppInputLayout) {
  1268. This->lpVtbl->IAGetInputLayout(This,ppInputLayout);
  1269. }
  1270. static FORCEINLINE void ID3D11DeviceContext2_IAGetVertexBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppVertexBuffers,UINT *pStrides,UINT *pOffsets) {
  1271. This->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets);
  1272. }
  1273. static FORCEINLINE void ID3D11DeviceContext2_IAGetIndexBuffer(ID3D11DeviceContext2* This,ID3D11Buffer **pIndexBuffer,DXGI_FORMAT *Format,UINT *Offset) {
  1274. This->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset);
  1275. }
  1276. static FORCEINLINE void ID3D11DeviceContext2_GSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
  1277. This->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
  1278. }
  1279. static FORCEINLINE void ID3D11DeviceContext2_GSGetShader(ID3D11DeviceContext2* This,ID3D11GeometryShader **ppGeometryShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
  1280. This->lpVtbl->GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances);
  1281. }
  1282. static FORCEINLINE void ID3D11DeviceContext2_IAGetPrimitiveTopology(ID3D11DeviceContext2* This,D3D11_PRIMITIVE_TOPOLOGY *pTopology) {
  1283. This->lpVtbl->IAGetPrimitiveTopology(This,pTopology);
  1284. }
  1285. static FORCEINLINE void ID3D11DeviceContext2_VSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
  1286. This->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
  1287. }
  1288. static FORCEINLINE void ID3D11DeviceContext2_VSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
  1289. This->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
  1290. }
  1291. static FORCEINLINE void ID3D11DeviceContext2_GetPredication(ID3D11DeviceContext2* This,ID3D11Predicate **ppPredicate,WINBOOL *pPredicateValue) {
  1292. This->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue);
  1293. }
  1294. static FORCEINLINE void ID3D11DeviceContext2_GSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
  1295. This->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
  1296. }
  1297. static FORCEINLINE void ID3D11DeviceContext2_GSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
  1298. This->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
  1299. }
  1300. static FORCEINLINE void ID3D11DeviceContext2_OMGetRenderTargets(ID3D11DeviceContext2* This,UINT NumViews,ID3D11RenderTargetView **ppRenderTargetViews,ID3D11DepthStencilView **ppDepthStencilView) {
  1301. This->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView);
  1302. }
  1303. static FORCEINLINE void ID3D11DeviceContext2_OMGetRenderTargetsAndUnorderedAccessViews(ID3D11DeviceContext2* This,UINT NumRTVs,ID3D11RenderTargetView **ppRenderTargetViews,ID3D11DepthStencilView **ppDepthStencilView,UINT UAVStartSlot,UINT NumUAVs,ID3D11UnorderedAccessView **ppUnorderedAccessViews) {
  1304. This->lpVtbl->OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews);
  1305. }
  1306. static FORCEINLINE void ID3D11DeviceContext2_OMGetBlendState(ID3D11DeviceContext2* This,ID3D11BlendState **ppBlendState,FLOAT BlendFactor[4],UINT *pSampleMask) {
  1307. This->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask);
  1308. }
  1309. static FORCEINLINE void ID3D11DeviceContext2_OMGetDepthStencilState(ID3D11DeviceContext2* This,ID3D11DepthStencilState **ppDepthStencilState,UINT *pStencilRef) {
  1310. This->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef);
  1311. }
  1312. static FORCEINLINE void ID3D11DeviceContext2_SOGetTargets(ID3D11DeviceContext2* This,UINT NumBuffers,ID3D11Buffer **ppSOTargets) {
  1313. This->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets);
  1314. }
  1315. static FORCEINLINE void ID3D11DeviceContext2_RSGetState(ID3D11DeviceContext2* This,ID3D11RasterizerState **ppRasterizerState) {
  1316. This->lpVtbl->RSGetState(This,ppRasterizerState);
  1317. }
  1318. static FORCEINLINE void ID3D11DeviceContext2_RSGetViewports(ID3D11DeviceContext2* This,UINT *pNumViewports,D3D11_VIEWPORT *pViewports) {
  1319. This->lpVtbl->RSGetViewports(This,pNumViewports,pViewports);
  1320. }
  1321. static FORCEINLINE void ID3D11DeviceContext2_RSGetScissorRects(ID3D11DeviceContext2* This,UINT *pNumRects,D3D11_RECT *pRects) {
  1322. This->lpVtbl->RSGetScissorRects(This,pNumRects,pRects);
  1323. }
  1324. static FORCEINLINE void ID3D11DeviceContext2_HSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
  1325. This->lpVtbl->HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
  1326. }
  1327. static FORCEINLINE void ID3D11DeviceContext2_HSGetShader(ID3D11DeviceContext2* This,ID3D11HullShader **ppHullShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
  1328. This->lpVtbl->HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances);
  1329. }
  1330. static FORCEINLINE void ID3D11DeviceContext2_HSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
  1331. This->lpVtbl->HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
  1332. }
  1333. static FORCEINLINE void ID3D11DeviceContext2_HSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
  1334. This->lpVtbl->HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
  1335. }
  1336. static FORCEINLINE void ID3D11DeviceContext2_DSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
  1337. This->lpVtbl->DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
  1338. }
  1339. static FORCEINLINE void ID3D11DeviceContext2_DSGetShader(ID3D11DeviceContext2* This,ID3D11DomainShader **ppDomainShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
  1340. This->lpVtbl->DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances);
  1341. }
  1342. static FORCEINLINE void ID3D11DeviceContext2_DSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
  1343. This->lpVtbl->DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
  1344. }
  1345. static FORCEINLINE void ID3D11DeviceContext2_DSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
  1346. This->lpVtbl->DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
  1347. }
  1348. static FORCEINLINE void ID3D11DeviceContext2_CSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) {
  1349. This->lpVtbl->CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews);
  1350. }
  1351. static FORCEINLINE void ID3D11DeviceContext2_CSGetUnorderedAccessViews(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumUAVs,ID3D11UnorderedAccessView **ppUnorderedAccessViews) {
  1352. This->lpVtbl->CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews);
  1353. }
  1354. static FORCEINLINE void ID3D11DeviceContext2_CSGetShader(ID3D11DeviceContext2* This,ID3D11ComputeShader **ppComputeShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) {
  1355. This->lpVtbl->CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances);
  1356. }
  1357. static FORCEINLINE void ID3D11DeviceContext2_CSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) {
  1358. This->lpVtbl->CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers);
  1359. }
  1360. static FORCEINLINE void ID3D11DeviceContext2_CSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) {
  1361. This->lpVtbl->CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers);
  1362. }
  1363. static FORCEINLINE void ID3D11DeviceContext2_ClearState(ID3D11DeviceContext2* This) {
  1364. This->lpVtbl->ClearState(This);
  1365. }
  1366. static FORCEINLINE void ID3D11DeviceContext2_Flush(ID3D11DeviceContext2* This) {
  1367. This->lpVtbl->Flush(This);
  1368. }
  1369. static FORCEINLINE D3D11_DEVICE_CONTEXT_TYPE ID3D11DeviceContext2_GetType(ID3D11DeviceContext2* This) {
  1370. return This->lpVtbl->GetType(This);
  1371. }
  1372. static FORCEINLINE UINT ID3D11DeviceContext2_GetContextFlags(ID3D11DeviceContext2* This) {
  1373. return This->lpVtbl->GetContextFlags(This);
  1374. }
  1375. static FORCEINLINE HRESULT ID3D11DeviceContext2_FinishCommandList(ID3D11DeviceContext2* This,WINBOOL RestoreDeferredContextState,ID3D11CommandList **ppCommandList) {
  1376. return This->lpVtbl->FinishCommandList(This,RestoreDeferredContextState,ppCommandList);
  1377. }
  1378. /*** ID3D11DeviceContext1 methods ***/
  1379. static FORCEINLINE void ID3D11DeviceContext2_CopySubresourceRegion1(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D11Resource *pSrcResource,UINT SrcSubresource,const D3D11_BOX *pSrcBox,UINT CopyFlags) {
  1380. This->lpVtbl->CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags);
  1381. }
  1382. static FORCEINLINE void ID3D11DeviceContext2_UpdateSubresource1(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,UINT DstSubresource,const D3D11_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch,UINT CopyFlags) {
  1383. This->lpVtbl->UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags);
  1384. }
  1385. static FORCEINLINE void ID3D11DeviceContext2_DiscardResource(ID3D11DeviceContext2* This,ID3D11Resource *pResource) {
  1386. This->lpVtbl->DiscardResource(This,pResource);
  1387. }
  1388. static FORCEINLINE void ID3D11DeviceContext2_DiscardView(ID3D11DeviceContext2* This,ID3D11View *pResourceView) {
  1389. This->lpVtbl->DiscardView(This,pResourceView);
  1390. }
  1391. static FORCEINLINE void ID3D11DeviceContext2_VSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) {
  1392. This->lpVtbl->VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
  1393. }
  1394. static FORCEINLINE void ID3D11DeviceContext2_HSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) {
  1395. This->lpVtbl->HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
  1396. }
  1397. static FORCEINLINE void ID3D11DeviceContext2_DSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) {
  1398. This->lpVtbl->DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
  1399. }
  1400. static FORCEINLINE void ID3D11DeviceContext2_GSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) {
  1401. This->lpVtbl->GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
  1402. }
  1403. static FORCEINLINE void ID3D11DeviceContext2_PSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) {
  1404. This->lpVtbl->PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
  1405. }
  1406. static FORCEINLINE void ID3D11DeviceContext2_CSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) {
  1407. This->lpVtbl->CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
  1408. }
  1409. static FORCEINLINE void ID3D11DeviceContext2_VSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) {
  1410. This->lpVtbl->VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
  1411. }
  1412. static FORCEINLINE void ID3D11DeviceContext2_HSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) {
  1413. This->lpVtbl->HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
  1414. }
  1415. static FORCEINLINE void ID3D11DeviceContext2_DSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) {
  1416. This->lpVtbl->DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
  1417. }
  1418. static FORCEINLINE void ID3D11DeviceContext2_GSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) {
  1419. This->lpVtbl->GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
  1420. }
  1421. static FORCEINLINE void ID3D11DeviceContext2_PSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) {
  1422. This->lpVtbl->PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
  1423. }
  1424. static FORCEINLINE void ID3D11DeviceContext2_CSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) {
  1425. This->lpVtbl->CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants);
  1426. }
  1427. static FORCEINLINE void ID3D11DeviceContext2_SwapDeviceContextState(ID3D11DeviceContext2* This,ID3DDeviceContextState *pState,ID3DDeviceContextState **ppPreviousState) {
  1428. This->lpVtbl->SwapDeviceContextState(This,pState,ppPreviousState);
  1429. }
  1430. static FORCEINLINE void ID3D11DeviceContext2_ClearView(ID3D11DeviceContext2* This,ID3D11View *pView,const FLOAT Color[4],const D3D11_RECT *pRect,UINT NumRects) {
  1431. This->lpVtbl->ClearView(This,pView,Color,pRect,NumRects);
  1432. }
  1433. static FORCEINLINE void ID3D11DeviceContext2_DiscardView1(ID3D11DeviceContext2* This,ID3D11View *pResourceView,const D3D11_RECT *pRects,UINT NumRects) {
  1434. This->lpVtbl->DiscardView1(This,pResourceView,pRects,NumRects);
  1435. }
  1436. /*** ID3D11DeviceContext2 methods ***/
  1437. static FORCEINLINE HRESULT ID3D11DeviceContext2_UpdateTileMappings(ID3D11DeviceContext2* This,ID3D11Resource *resource,UINT region_count,const D3D11_TILED_RESOURCE_COORDINATE *region_start_coordinates,const D3D11_TILE_REGION_SIZE *region_sizes,ID3D11Buffer *pool,UINT range_count,const UINT *range_flags,const UINT *pool_start_offsets,const UINT *range_tile_counts,UINT flags) {
  1438. return This->lpVtbl->UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,pool,range_count,range_flags,pool_start_offsets,range_tile_counts,flags);
  1439. }
  1440. static FORCEINLINE HRESULT ID3D11DeviceContext2_CopyTileMappings(ID3D11DeviceContext2* This,ID3D11Resource *dst_resource,const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,ID3D11Resource *src_resource,const D3D11_TILED_RESOURCE_COORDINATE *src_start_coordinate,const D3D11_TILE_REGION_SIZE *region_size,UINT flags) {
  1441. return This->lpVtbl->CopyTileMappings(This,dst_resource,dst_start_coordinate,src_resource,src_start_coordinate,region_size,flags);
  1442. }
  1443. static FORCEINLINE void ID3D11DeviceContext2_CopyTiles(ID3D11DeviceContext2* This,ID3D11Resource *resource,const D3D11_TILED_RESOURCE_COORDINATE *start_coordinate,const D3D11_TILE_REGION_SIZE *size,ID3D11Buffer *buffer,UINT64 start_offset,UINT flags) {
  1444. This->lpVtbl->CopyTiles(This,resource,start_coordinate,size,buffer,start_offset,flags);
  1445. }
  1446. static FORCEINLINE void ID3D11DeviceContext2_UpdateTiles(ID3D11DeviceContext2* This,ID3D11Resource *dst_resource,const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,const D3D11_TILE_REGION_SIZE *dst_region_size,const void *src_data,UINT flags) {
  1447. This->lpVtbl->UpdateTiles(This,dst_resource,dst_start_coordinate,dst_region_size,src_data,flags);
  1448. }
  1449. static FORCEINLINE HRESULT ID3D11DeviceContext2_ResizeTilePool(ID3D11DeviceContext2* This,ID3D11Buffer *pool,UINT64 size) {
  1450. return This->lpVtbl->ResizeTilePool(This,pool,size);
  1451. }
  1452. static FORCEINLINE void ID3D11DeviceContext2_TiledResourceBarrier(ID3D11DeviceContext2* This,ID3D11DeviceChild *before_barrier,ID3D11DeviceChild *after_barrier) {
  1453. This->lpVtbl->TiledResourceBarrier(This,before_barrier,after_barrier);
  1454. }
  1455. static FORCEINLINE WINBOOL ID3D11DeviceContext2_IsAnnotationEnabled(ID3D11DeviceContext2* This) {
  1456. return This->lpVtbl->IsAnnotationEnabled(This);
  1457. }
  1458. static FORCEINLINE void ID3D11DeviceContext2_SetMarkerInt(ID3D11DeviceContext2* This,const WCHAR *label,int data) {
  1459. This->lpVtbl->SetMarkerInt(This,label,data);
  1460. }
  1461. static FORCEINLINE void ID3D11DeviceContext2_BeginEventInt(ID3D11DeviceContext2* This,const WCHAR *label,int data) {
  1462. This->lpVtbl->BeginEventInt(This,label,data);
  1463. }
  1464. static FORCEINLINE void ID3D11DeviceContext2_EndEvent(ID3D11DeviceContext2* This) {
  1465. This->lpVtbl->EndEvent(This);
  1466. }
  1467. #endif
  1468. #endif
  1469. #endif
  1470. #endif /* __ID3D11DeviceContext2_INTERFACE_DEFINED__ */
  1471. /*****************************************************************************
  1472. * ID3D11Device2 interface
  1473. */
  1474. #ifndef __ID3D11Device2_INTERFACE_DEFINED__
  1475. #define __ID3D11Device2_INTERFACE_DEFINED__
  1476. DEFINE_GUID(IID_ID3D11Device2, 0x9d06dffa, 0xd1e5, 0x4d07, 0x83,0xa8, 0x1b,0xb1,0x23,0xf2,0xf8,0x41);
  1477. #if defined(__cplusplus) && !defined(CINTERFACE)
  1478. MIDL_INTERFACE("9d06dffa-d1e5-4d07-83a8-1bb123f2f841")
  1479. ID3D11Device2 : public ID3D11Device1
  1480. {
  1481. virtual void STDMETHODCALLTYPE GetImmediateContext2(
  1482. ID3D11DeviceContext2 **context) = 0;
  1483. virtual HRESULT STDMETHODCALLTYPE CreateDeferredContext2(
  1484. UINT flags,
  1485. ID3D11DeviceContext2 **context) = 0;
  1486. virtual void STDMETHODCALLTYPE GetResourceTiling(
  1487. ID3D11Resource *resource,
  1488. UINT *tile_count,
  1489. D3D11_PACKED_MIP_DESC *mip_desc,
  1490. D3D11_TILE_SHAPE *tile_shape,
  1491. UINT *subresource_tiling_count,
  1492. UINT first_subresource_tiling,
  1493. D3D11_SUBRESOURCE_TILING *subresource_tiling) = 0;
  1494. virtual HRESULT STDMETHODCALLTYPE CheckMultisampleQualityLevels1(
  1495. DXGI_FORMAT format,
  1496. UINT sample_count,
  1497. UINT flags,
  1498. UINT *quality_level_count) = 0;
  1499. };
  1500. #ifdef __CRT_UUID_DECL
  1501. __CRT_UUID_DECL(ID3D11Device2, 0x9d06dffa, 0xd1e5, 0x4d07, 0x83,0xa8, 0x1b,0xb1,0x23,0xf2,0xf8,0x41)
  1502. #endif
  1503. #else
  1504. typedef struct ID3D11Device2Vtbl {
  1505. BEGIN_INTERFACE
  1506. /*** IUnknown methods ***/
  1507. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  1508. ID3D11Device2 *This,
  1509. REFIID riid,
  1510. void **ppvObject);
  1511. ULONG (STDMETHODCALLTYPE *AddRef)(
  1512. ID3D11Device2 *This);
  1513. ULONG (STDMETHODCALLTYPE *Release)(
  1514. ID3D11Device2 *This);
  1515. /*** ID3D11Device methods ***/
  1516. HRESULT (STDMETHODCALLTYPE *CreateBuffer)(
  1517. ID3D11Device2 *This,
  1518. const D3D11_BUFFER_DESC *pDesc,
  1519. const D3D11_SUBRESOURCE_DATA *pInitialData,
  1520. ID3D11Buffer **ppBuffer);
  1521. HRESULT (STDMETHODCALLTYPE *CreateTexture1D)(
  1522. ID3D11Device2 *This,
  1523. const D3D11_TEXTURE1D_DESC *pDesc,
  1524. const D3D11_SUBRESOURCE_DATA *pInitialData,
  1525. ID3D11Texture1D **ppTexture1D);
  1526. HRESULT (STDMETHODCALLTYPE *CreateTexture2D)(
  1527. ID3D11Device2 *This,
  1528. const D3D11_TEXTURE2D_DESC *pDesc,
  1529. const D3D11_SUBRESOURCE_DATA *pInitialData,
  1530. ID3D11Texture2D **ppTexture2D);
  1531. HRESULT (STDMETHODCALLTYPE *CreateTexture3D)(
  1532. ID3D11Device2 *This,
  1533. const D3D11_TEXTURE3D_DESC *pDesc,
  1534. const D3D11_SUBRESOURCE_DATA *pInitialData,
  1535. ID3D11Texture3D **ppTexture3D);
  1536. HRESULT (STDMETHODCALLTYPE *CreateShaderResourceView)(
  1537. ID3D11Device2 *This,
  1538. ID3D11Resource *pResource,
  1539. const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc,
  1540. ID3D11ShaderResourceView **ppSRView);
  1541. HRESULT (STDMETHODCALLTYPE *CreateUnorderedAccessView)(
  1542. ID3D11Device2 *This,
  1543. ID3D11Resource *pResource,
  1544. const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc,
  1545. ID3D11UnorderedAccessView **ppUAView);
  1546. HRESULT (STDMETHODCALLTYPE *CreateRenderTargetView)(
  1547. ID3D11Device2 *This,
  1548. ID3D11Resource *pResource,
  1549. const D3D11_RENDER_TARGET_VIEW_DESC *pDesc,
  1550. ID3D11RenderTargetView **ppRTView);
  1551. HRESULT (STDMETHODCALLTYPE *CreateDepthStencilView)(
  1552. ID3D11Device2 *This,
  1553. ID3D11Resource *pResource,
  1554. const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc,
  1555. ID3D11DepthStencilView **ppDepthStencilView);
  1556. HRESULT (STDMETHODCALLTYPE *CreateInputLayout)(
  1557. ID3D11Device2 *This,
  1558. const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,
  1559. UINT NumElements,
  1560. const void *pShaderBytecodeWithInputSignature,
  1561. SIZE_T BytecodeLength,
  1562. ID3D11InputLayout **ppInputLayout);
  1563. HRESULT (STDMETHODCALLTYPE *CreateVertexShader)(
  1564. ID3D11Device2 *This,
  1565. const void *pShaderBytecode,
  1566. SIZE_T BytecodeLength,
  1567. ID3D11ClassLinkage *pClassLinkage,
  1568. ID3D11VertexShader **ppVertexShader);
  1569. HRESULT (STDMETHODCALLTYPE *CreateGeometryShader)(
  1570. ID3D11Device2 *This,
  1571. const void *pShaderBytecode,
  1572. SIZE_T BytecodeLength,
  1573. ID3D11ClassLinkage *pClassLinkage,
  1574. ID3D11GeometryShader **ppGeometryShader);
  1575. HRESULT (STDMETHODCALLTYPE *CreateGeometryShaderWithStreamOutput)(
  1576. ID3D11Device2 *This,
  1577. const void *pShaderBytecode,
  1578. SIZE_T BytecodeLength,
  1579. const D3D11_SO_DECLARATION_ENTRY *pSODeclaration,
  1580. UINT NumEntries,
  1581. const UINT *pBufferStrides,
  1582. UINT NumStrides,
  1583. UINT RasterizedStream,
  1584. ID3D11ClassLinkage *pClassLinkage,
  1585. ID3D11GeometryShader **ppGeometryShader);
  1586. HRESULT (STDMETHODCALLTYPE *CreatePixelShader)(
  1587. ID3D11Device2 *This,
  1588. const void *pShaderBytecode,
  1589. SIZE_T BytecodeLength,
  1590. ID3D11ClassLinkage *pClassLinkage,
  1591. ID3D11PixelShader **ppPixelShader);
  1592. HRESULT (STDMETHODCALLTYPE *CreateHullShader)(
  1593. ID3D11Device2 *This,
  1594. const void *pShaderBytecode,
  1595. SIZE_T BytecodeLength,
  1596. ID3D11ClassLinkage *pClassLinkage,
  1597. ID3D11HullShader **ppHullShader);
  1598. HRESULT (STDMETHODCALLTYPE *CreateDomainShader)(
  1599. ID3D11Device2 *This,
  1600. const void *pShaderBytecode,
  1601. SIZE_T BytecodeLength,
  1602. ID3D11ClassLinkage *pClassLinkage,
  1603. ID3D11DomainShader **ppDomainShader);
  1604. HRESULT (STDMETHODCALLTYPE *CreateComputeShader)(
  1605. ID3D11Device2 *This,
  1606. const void *pShaderBytecode,
  1607. SIZE_T BytecodeLength,
  1608. ID3D11ClassLinkage *pClassLinkage,
  1609. ID3D11ComputeShader **ppComputeShader);
  1610. HRESULT (STDMETHODCALLTYPE *CreateClassLinkage)(
  1611. ID3D11Device2 *This,
  1612. ID3D11ClassLinkage **ppLinkage);
  1613. HRESULT (STDMETHODCALLTYPE *CreateBlendState)(
  1614. ID3D11Device2 *This,
  1615. const D3D11_BLEND_DESC *pBlendStateDesc,
  1616. ID3D11BlendState **ppBlendState);
  1617. HRESULT (STDMETHODCALLTYPE *CreateDepthStencilState)(
  1618. ID3D11Device2 *This,
  1619. const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc,
  1620. ID3D11DepthStencilState **ppDepthStencilState);
  1621. HRESULT (STDMETHODCALLTYPE *CreateRasterizerState)(
  1622. ID3D11Device2 *This,
  1623. const D3D11_RASTERIZER_DESC *pRasterizerDesc,
  1624. ID3D11RasterizerState **ppRasterizerState);
  1625. HRESULT (STDMETHODCALLTYPE *CreateSamplerState)(
  1626. ID3D11Device2 *This,
  1627. const D3D11_SAMPLER_DESC *pSamplerDesc,
  1628. ID3D11SamplerState **ppSamplerState);
  1629. HRESULT (STDMETHODCALLTYPE *CreateQuery)(
  1630. ID3D11Device2 *This,
  1631. const D3D11_QUERY_DESC *pQueryDesc,
  1632. ID3D11Query **ppQuery);
  1633. HRESULT (STDMETHODCALLTYPE *CreatePredicate)(
  1634. ID3D11Device2 *This,
  1635. const D3D11_QUERY_DESC *pPredicateDesc,
  1636. ID3D11Predicate **ppPredicate);
  1637. HRESULT (STDMETHODCALLTYPE *CreateCounter)(
  1638. ID3D11Device2 *This,
  1639. const D3D11_COUNTER_DESC *pCounterDesc,
  1640. ID3D11Counter **ppCounter);
  1641. HRESULT (STDMETHODCALLTYPE *CreateDeferredContext)(
  1642. ID3D11Device2 *This,
  1643. UINT ContextFlags,
  1644. ID3D11DeviceContext **ppDeferredContext);
  1645. HRESULT (STDMETHODCALLTYPE *OpenSharedResource)(
  1646. ID3D11Device2 *This,
  1647. HANDLE hResource,
  1648. REFIID ReturnedInterface,
  1649. void **ppResource);
  1650. HRESULT (STDMETHODCALLTYPE *CheckFormatSupport)(
  1651. ID3D11Device2 *This,
  1652. DXGI_FORMAT Format,
  1653. UINT *pFormatSupport);
  1654. HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels)(
  1655. ID3D11Device2 *This,
  1656. DXGI_FORMAT Format,
  1657. UINT SampleCount,
  1658. UINT *pNumQualityLevels);
  1659. void (STDMETHODCALLTYPE *CheckCounterInfo)(
  1660. ID3D11Device2 *This,
  1661. D3D11_COUNTER_INFO *pCounterInfo);
  1662. HRESULT (STDMETHODCALLTYPE *CheckCounter)(
  1663. ID3D11Device2 *This,
  1664. const D3D11_COUNTER_DESC *pDesc,
  1665. D3D11_COUNTER_TYPE *pType,
  1666. UINT *pActiveCounters,
  1667. LPSTR szName,
  1668. UINT *pNameLength,
  1669. LPSTR szUnits,
  1670. UINT *pUnitsLength,
  1671. LPSTR szDescription,
  1672. UINT *pDescriptionLength);
  1673. HRESULT (STDMETHODCALLTYPE *CheckFeatureSupport)(
  1674. ID3D11Device2 *This,
  1675. D3D11_FEATURE Feature,
  1676. void *pFeatureSupportData,
  1677. UINT FeatureSupportDataSize);
  1678. HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
  1679. ID3D11Device2 *This,
  1680. REFGUID guid,
  1681. UINT *pDataSize,
  1682. void *pData);
  1683. HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
  1684. ID3D11Device2 *This,
  1685. REFGUID guid,
  1686. UINT DataSize,
  1687. const void *pData);
  1688. HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
  1689. ID3D11Device2 *This,
  1690. REFGUID guid,
  1691. const IUnknown *pData);
  1692. D3D_FEATURE_LEVEL (STDMETHODCALLTYPE *GetFeatureLevel)(
  1693. ID3D11Device2 *This);
  1694. UINT (STDMETHODCALLTYPE *GetCreationFlags)(
  1695. ID3D11Device2 *This);
  1696. HRESULT (STDMETHODCALLTYPE *GetDeviceRemovedReason)(
  1697. ID3D11Device2 *This);
  1698. void (STDMETHODCALLTYPE *GetImmediateContext)(
  1699. ID3D11Device2 *This,
  1700. ID3D11DeviceContext **ppImmediateContext);
  1701. HRESULT (STDMETHODCALLTYPE *SetExceptionMode)(
  1702. ID3D11Device2 *This,
  1703. UINT RaiseFlags);
  1704. UINT (STDMETHODCALLTYPE *GetExceptionMode)(
  1705. ID3D11Device2 *This);
  1706. /*** ID3D11Device1 methods ***/
  1707. void (STDMETHODCALLTYPE *GetImmediateContext1)(
  1708. ID3D11Device2 *This,
  1709. ID3D11DeviceContext1 **ppImmediateContext);
  1710. HRESULT (STDMETHODCALLTYPE *CreateDeferredContext1)(
  1711. ID3D11Device2 *This,
  1712. UINT ContextFlags,
  1713. ID3D11DeviceContext1 **ppDeferredContext);
  1714. HRESULT (STDMETHODCALLTYPE *CreateBlendState1)(
  1715. ID3D11Device2 *This,
  1716. const D3D11_BLEND_DESC1 *pBlendStateDesc,
  1717. ID3D11BlendState1 **ppBlendState);
  1718. HRESULT (STDMETHODCALLTYPE *CreateRasterizerState1)(
  1719. ID3D11Device2 *This,
  1720. const D3D11_RASTERIZER_DESC1 *pRasterizerDesc,
  1721. ID3D11RasterizerState1 **ppRasterizerState);
  1722. HRESULT (STDMETHODCALLTYPE *CreateDeviceContextState)(
  1723. ID3D11Device2 *This,
  1724. UINT Flags,
  1725. const D3D_FEATURE_LEVEL *pFeatureLevels,
  1726. UINT FeatureLevels,
  1727. UINT SDKVersion,
  1728. REFIID EmulatedInterface,
  1729. D3D_FEATURE_LEVEL *pChosenFeatureLevel,
  1730. ID3DDeviceContextState **ppContextState);
  1731. HRESULT (STDMETHODCALLTYPE *OpenSharedResource1)(
  1732. ID3D11Device2 *This,
  1733. HANDLE hResource,
  1734. REFIID returnedInterface,
  1735. void **ppResource);
  1736. HRESULT (STDMETHODCALLTYPE *OpenSharedResourceByName)(
  1737. ID3D11Device2 *This,
  1738. LPCWSTR lpName,
  1739. DWORD dwDesiredAccess,
  1740. REFIID returnedInterface,
  1741. void **ppResource);
  1742. /*** ID3D11Device2 methods ***/
  1743. void (STDMETHODCALLTYPE *GetImmediateContext2)(
  1744. ID3D11Device2 *This,
  1745. ID3D11DeviceContext2 **context);
  1746. HRESULT (STDMETHODCALLTYPE *CreateDeferredContext2)(
  1747. ID3D11Device2 *This,
  1748. UINT flags,
  1749. ID3D11DeviceContext2 **context);
  1750. void (STDMETHODCALLTYPE *GetResourceTiling)(
  1751. ID3D11Device2 *This,
  1752. ID3D11Resource *resource,
  1753. UINT *tile_count,
  1754. D3D11_PACKED_MIP_DESC *mip_desc,
  1755. D3D11_TILE_SHAPE *tile_shape,
  1756. UINT *subresource_tiling_count,
  1757. UINT first_subresource_tiling,
  1758. D3D11_SUBRESOURCE_TILING *subresource_tiling);
  1759. HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels1)(
  1760. ID3D11Device2 *This,
  1761. DXGI_FORMAT format,
  1762. UINT sample_count,
  1763. UINT flags,
  1764. UINT *quality_level_count);
  1765. END_INTERFACE
  1766. } ID3D11Device2Vtbl;
  1767. interface ID3D11Device2 {
  1768. CONST_VTBL ID3D11Device2Vtbl* lpVtbl;
  1769. };
  1770. #ifdef COBJMACROS
  1771. #ifndef WIDL_C_INLINE_WRAPPERS
  1772. /*** IUnknown methods ***/
  1773. #define ID3D11Device2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  1774. #define ID3D11Device2_AddRef(This) (This)->lpVtbl->AddRef(This)
  1775. #define ID3D11Device2_Release(This) (This)->lpVtbl->Release(This)
  1776. /*** ID3D11Device methods ***/
  1777. #define ID3D11Device2_CreateBuffer(This,pDesc,pInitialData,ppBuffer) (This)->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer)
  1778. #define ID3D11Device2_CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) (This)->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D)
  1779. #define ID3D11Device2_CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) (This)->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D)
  1780. #define ID3D11Device2_CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) (This)->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D)
  1781. #define ID3D11Device2_CreateShaderResourceView(This,pResource,pDesc,ppSRView) (This)->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView)
  1782. #define ID3D11Device2_CreateUnorderedAccessView(This,pResource,pDesc,ppUAView) (This)->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView)
  1783. #define ID3D11Device2_CreateRenderTargetView(This,pResource,pDesc,ppRTView) (This)->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView)
  1784. #define ID3D11Device2_CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) (This)->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView)
  1785. #define ID3D11Device2_CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) (This)->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout)
  1786. #define ID3D11Device2_CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader) (This)->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader)
  1787. #define ID3D11Device2_CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader)
  1788. #define ID3D11Device2_CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader)
  1789. #define ID3D11Device2_CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader) (This)->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader)
  1790. #define ID3D11Device2_CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader) (This)->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader)
  1791. #define ID3D11Device2_CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader) (This)->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader)
  1792. #define ID3D11Device2_CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader) (This)->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader)
  1793. #define ID3D11Device2_CreateClassLinkage(This,ppLinkage) (This)->lpVtbl->CreateClassLinkage(This,ppLinkage)
  1794. #define ID3D11Device2_CreateBlendState(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState)
  1795. #define ID3D11Device2_CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) (This)->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState)
  1796. #define ID3D11Device2_CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState)
  1797. #define ID3D11Device2_CreateSamplerState(This,pSamplerDesc,ppSamplerState) (This)->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState)
  1798. #define ID3D11Device2_CreateQuery(This,pQueryDesc,ppQuery) (This)->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery)
  1799. #define ID3D11Device2_CreatePredicate(This,pPredicateDesc,ppPredicate) (This)->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate)
  1800. #define ID3D11Device2_CreateCounter(This,pCounterDesc,ppCounter) (This)->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter)
  1801. #define ID3D11Device2_CreateDeferredContext(This,ContextFlags,ppDeferredContext) (This)->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext)
  1802. #define ID3D11Device2_OpenSharedResource(This,hResource,ReturnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource)
  1803. #define ID3D11Device2_CheckFormatSupport(This,Format,pFormatSupport) (This)->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport)
  1804. #define ID3D11Device2_CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) (This)->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels)
  1805. #define ID3D11Device2_CheckCounterInfo(This,pCounterInfo) (This)->lpVtbl->CheckCounterInfo(This,pCounterInfo)
  1806. #define ID3D11Device2_CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) (This)->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength)
  1807. #define ID3D11Device2_CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) (This)->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize)
  1808. #define ID3D11Device2_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
  1809. #define ID3D11Device2_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
  1810. #define ID3D11Device2_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
  1811. #define ID3D11Device2_GetFeatureLevel(This) (This)->lpVtbl->GetFeatureLevel(This)
  1812. #define ID3D11Device2_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This)
  1813. #define ID3D11Device2_GetDeviceRemovedReason(This) (This)->lpVtbl->GetDeviceRemovedReason(This)
  1814. #define ID3D11Device2_GetImmediateContext(This,ppImmediateContext) (This)->lpVtbl->GetImmediateContext(This,ppImmediateContext)
  1815. #define ID3D11Device2_SetExceptionMode(This,RaiseFlags) (This)->lpVtbl->SetExceptionMode(This,RaiseFlags)
  1816. #define ID3D11Device2_GetExceptionMode(This) (This)->lpVtbl->GetExceptionMode(This)
  1817. /*** ID3D11Device1 methods ***/
  1818. #define ID3D11Device2_GetImmediateContext1(This,ppImmediateContext) (This)->lpVtbl->GetImmediateContext1(This,ppImmediateContext)
  1819. #define ID3D11Device2_CreateDeferredContext1(This,ContextFlags,ppDeferredContext) (This)->lpVtbl->CreateDeferredContext1(This,ContextFlags,ppDeferredContext)
  1820. #define ID3D11Device2_CreateBlendState1(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState1(This,pBlendStateDesc,ppBlendState)
  1821. #define ID3D11Device2_CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState)
  1822. #define ID3D11Device2_CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState) (This)->lpVtbl->CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState)
  1823. #define ID3D11Device2_OpenSharedResource1(This,hResource,returnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource1(This,hResource,returnedInterface,ppResource)
  1824. #define ID3D11Device2_OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource) (This)->lpVtbl->OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource)
  1825. /*** ID3D11Device2 methods ***/
  1826. #define ID3D11Device2_GetImmediateContext2(This,context) (This)->lpVtbl->GetImmediateContext2(This,context)
  1827. #define ID3D11Device2_CreateDeferredContext2(This,flags,context) (This)->lpVtbl->CreateDeferredContext2(This,flags,context)
  1828. #define ID3D11Device2_GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling) (This)->lpVtbl->GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling)
  1829. #define ID3D11Device2_CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count) (This)->lpVtbl->CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count)
  1830. #else
  1831. /*** IUnknown methods ***/
  1832. static FORCEINLINE HRESULT ID3D11Device2_QueryInterface(ID3D11Device2* This,REFIID riid,void **ppvObject) {
  1833. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  1834. }
  1835. static FORCEINLINE ULONG ID3D11Device2_AddRef(ID3D11Device2* This) {
  1836. return This->lpVtbl->AddRef(This);
  1837. }
  1838. static FORCEINLINE ULONG ID3D11Device2_Release(ID3D11Device2* This) {
  1839. return This->lpVtbl->Release(This);
  1840. }
  1841. /*** ID3D11Device methods ***/
  1842. static FORCEINLINE HRESULT ID3D11Device2_CreateBuffer(ID3D11Device2* This,const D3D11_BUFFER_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Buffer **ppBuffer) {
  1843. return This->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer);
  1844. }
  1845. static FORCEINLINE HRESULT ID3D11Device2_CreateTexture1D(ID3D11Device2* This,const D3D11_TEXTURE1D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture1D **ppTexture1D) {
  1846. return This->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D);
  1847. }
  1848. static FORCEINLINE HRESULT ID3D11Device2_CreateTexture2D(ID3D11Device2* This,const D3D11_TEXTURE2D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture2D **ppTexture2D) {
  1849. return This->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D);
  1850. }
  1851. static FORCEINLINE HRESULT ID3D11Device2_CreateTexture3D(ID3D11Device2* This,const D3D11_TEXTURE3D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture3D **ppTexture3D) {
  1852. return This->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D);
  1853. }
  1854. static FORCEINLINE HRESULT ID3D11Device2_CreateShaderResourceView(ID3D11Device2* This,ID3D11Resource *pResource,const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc,ID3D11ShaderResourceView **ppSRView) {
  1855. return This->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView);
  1856. }
  1857. static FORCEINLINE HRESULT ID3D11Device2_CreateUnorderedAccessView(ID3D11Device2* This,ID3D11Resource *pResource,const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc,ID3D11UnorderedAccessView **ppUAView) {
  1858. return This->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView);
  1859. }
  1860. static FORCEINLINE HRESULT ID3D11Device2_CreateRenderTargetView(ID3D11Device2* This,ID3D11Resource *pResource,const D3D11_RENDER_TARGET_VIEW_DESC *pDesc,ID3D11RenderTargetView **ppRTView) {
  1861. return This->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView);
  1862. }
  1863. static FORCEINLINE HRESULT ID3D11Device2_CreateDepthStencilView(ID3D11Device2* This,ID3D11Resource *pResource,const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc,ID3D11DepthStencilView **ppDepthStencilView) {
  1864. return This->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView);
  1865. }
  1866. static FORCEINLINE HRESULT ID3D11Device2_CreateInputLayout(ID3D11Device2* This,const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,UINT NumElements,const void *pShaderBytecodeWithInputSignature,SIZE_T BytecodeLength,ID3D11InputLayout **ppInputLayout) {
  1867. return This->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout);
  1868. }
  1869. static FORCEINLINE HRESULT ID3D11Device2_CreateVertexShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11VertexShader **ppVertexShader) {
  1870. return This->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader);
  1871. }
  1872. static FORCEINLINE HRESULT ID3D11Device2_CreateGeometryShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) {
  1873. return This->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader);
  1874. }
  1875. static FORCEINLINE HRESULT ID3D11Device2_CreateGeometryShaderWithStreamOutput(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,const D3D11_SO_DECLARATION_ENTRY *pSODeclaration,UINT NumEntries,const UINT *pBufferStrides,UINT NumStrides,UINT RasterizedStream,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) {
  1876. return This->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader);
  1877. }
  1878. static FORCEINLINE HRESULT ID3D11Device2_CreatePixelShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11PixelShader **ppPixelShader) {
  1879. return This->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader);
  1880. }
  1881. static FORCEINLINE HRESULT ID3D11Device2_CreateHullShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11HullShader **ppHullShader) {
  1882. return This->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader);
  1883. }
  1884. static FORCEINLINE HRESULT ID3D11Device2_CreateDomainShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11DomainShader **ppDomainShader) {
  1885. return This->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader);
  1886. }
  1887. static FORCEINLINE HRESULT ID3D11Device2_CreateComputeShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11ComputeShader **ppComputeShader) {
  1888. return This->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader);
  1889. }
  1890. static FORCEINLINE HRESULT ID3D11Device2_CreateClassLinkage(ID3D11Device2* This,ID3D11ClassLinkage **ppLinkage) {
  1891. return This->lpVtbl->CreateClassLinkage(This,ppLinkage);
  1892. }
  1893. static FORCEINLINE HRESULT ID3D11Device2_CreateBlendState(ID3D11Device2* This,const D3D11_BLEND_DESC *pBlendStateDesc,ID3D11BlendState **ppBlendState) {
  1894. return This->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState);
  1895. }
  1896. static FORCEINLINE HRESULT ID3D11Device2_CreateDepthStencilState(ID3D11Device2* This,const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc,ID3D11DepthStencilState **ppDepthStencilState) {
  1897. return This->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState);
  1898. }
  1899. static FORCEINLINE HRESULT ID3D11Device2_CreateRasterizerState(ID3D11Device2* This,const D3D11_RASTERIZER_DESC *pRasterizerDesc,ID3D11RasterizerState **ppRasterizerState) {
  1900. return This->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState);
  1901. }
  1902. static FORCEINLINE HRESULT ID3D11Device2_CreateSamplerState(ID3D11Device2* This,const D3D11_SAMPLER_DESC *pSamplerDesc,ID3D11SamplerState **ppSamplerState) {
  1903. return This->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState);
  1904. }
  1905. static FORCEINLINE HRESULT ID3D11Device2_CreateQuery(ID3D11Device2* This,const D3D11_QUERY_DESC *pQueryDesc,ID3D11Query **ppQuery) {
  1906. return This->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery);
  1907. }
  1908. static FORCEINLINE HRESULT ID3D11Device2_CreatePredicate(ID3D11Device2* This,const D3D11_QUERY_DESC *pPredicateDesc,ID3D11Predicate **ppPredicate) {
  1909. return This->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate);
  1910. }
  1911. static FORCEINLINE HRESULT ID3D11Device2_CreateCounter(ID3D11Device2* This,const D3D11_COUNTER_DESC *pCounterDesc,ID3D11Counter **ppCounter) {
  1912. return This->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter);
  1913. }
  1914. static FORCEINLINE HRESULT ID3D11Device2_CreateDeferredContext(ID3D11Device2* This,UINT ContextFlags,ID3D11DeviceContext **ppDeferredContext) {
  1915. return This->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext);
  1916. }
  1917. static FORCEINLINE HRESULT ID3D11Device2_OpenSharedResource(ID3D11Device2* This,HANDLE hResource,REFIID ReturnedInterface,void **ppResource) {
  1918. return This->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource);
  1919. }
  1920. static FORCEINLINE HRESULT ID3D11Device2_CheckFormatSupport(ID3D11Device2* This,DXGI_FORMAT Format,UINT *pFormatSupport) {
  1921. return This->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport);
  1922. }
  1923. static FORCEINLINE HRESULT ID3D11Device2_CheckMultisampleQualityLevels(ID3D11Device2* This,DXGI_FORMAT Format,UINT SampleCount,UINT *pNumQualityLevels) {
  1924. return This->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels);
  1925. }
  1926. static FORCEINLINE void ID3D11Device2_CheckCounterInfo(ID3D11Device2* This,D3D11_COUNTER_INFO *pCounterInfo) {
  1927. This->lpVtbl->CheckCounterInfo(This,pCounterInfo);
  1928. }
  1929. static FORCEINLINE HRESULT ID3D11Device2_CheckCounter(ID3D11Device2* This,const D3D11_COUNTER_DESC *pDesc,D3D11_COUNTER_TYPE *pType,UINT *pActiveCounters,LPSTR szName,UINT *pNameLength,LPSTR szUnits,UINT *pUnitsLength,LPSTR szDescription,UINT *pDescriptionLength) {
  1930. return This->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength);
  1931. }
  1932. static FORCEINLINE HRESULT ID3D11Device2_CheckFeatureSupport(ID3D11Device2* This,D3D11_FEATURE Feature,void *pFeatureSupportData,UINT FeatureSupportDataSize) {
  1933. return This->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize);
  1934. }
  1935. static FORCEINLINE HRESULT ID3D11Device2_GetPrivateData(ID3D11Device2* This,REFGUID guid,UINT *pDataSize,void *pData) {
  1936. return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
  1937. }
  1938. static FORCEINLINE HRESULT ID3D11Device2_SetPrivateData(ID3D11Device2* This,REFGUID guid,UINT DataSize,const void *pData) {
  1939. return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
  1940. }
  1941. static FORCEINLINE HRESULT ID3D11Device2_SetPrivateDataInterface(ID3D11Device2* This,REFGUID guid,const IUnknown *pData) {
  1942. return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
  1943. }
  1944. static FORCEINLINE D3D_FEATURE_LEVEL ID3D11Device2_GetFeatureLevel(ID3D11Device2* This) {
  1945. return This->lpVtbl->GetFeatureLevel(This);
  1946. }
  1947. static FORCEINLINE UINT ID3D11Device2_GetCreationFlags(ID3D11Device2* This) {
  1948. return This->lpVtbl->GetCreationFlags(This);
  1949. }
  1950. static FORCEINLINE HRESULT ID3D11Device2_GetDeviceRemovedReason(ID3D11Device2* This) {
  1951. return This->lpVtbl->GetDeviceRemovedReason(This);
  1952. }
  1953. static FORCEINLINE void ID3D11Device2_GetImmediateContext(ID3D11Device2* This,ID3D11DeviceContext **ppImmediateContext) {
  1954. This->lpVtbl->GetImmediateContext(This,ppImmediateContext);
  1955. }
  1956. static FORCEINLINE HRESULT ID3D11Device2_SetExceptionMode(ID3D11Device2* This,UINT RaiseFlags) {
  1957. return This->lpVtbl->SetExceptionMode(This,RaiseFlags);
  1958. }
  1959. static FORCEINLINE UINT ID3D11Device2_GetExceptionMode(ID3D11Device2* This) {
  1960. return This->lpVtbl->GetExceptionMode(This);
  1961. }
  1962. /*** ID3D11Device1 methods ***/
  1963. static FORCEINLINE void ID3D11Device2_GetImmediateContext1(ID3D11Device2* This,ID3D11DeviceContext1 **ppImmediateContext) {
  1964. This->lpVtbl->GetImmediateContext1(This,ppImmediateContext);
  1965. }
  1966. static FORCEINLINE HRESULT ID3D11Device2_CreateDeferredContext1(ID3D11Device2* This,UINT ContextFlags,ID3D11DeviceContext1 **ppDeferredContext) {
  1967. return This->lpVtbl->CreateDeferredContext1(This,ContextFlags,ppDeferredContext);
  1968. }
  1969. static FORCEINLINE HRESULT ID3D11Device2_CreateBlendState1(ID3D11Device2* This,const D3D11_BLEND_DESC1 *pBlendStateDesc,ID3D11BlendState1 **ppBlendState) {
  1970. return This->lpVtbl->CreateBlendState1(This,pBlendStateDesc,ppBlendState);
  1971. }
  1972. static FORCEINLINE HRESULT ID3D11Device2_CreateRasterizerState1(ID3D11Device2* This,const D3D11_RASTERIZER_DESC1 *pRasterizerDesc,ID3D11RasterizerState1 **ppRasterizerState) {
  1973. return This->lpVtbl->CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState);
  1974. }
  1975. static FORCEINLINE HRESULT ID3D11Device2_CreateDeviceContextState(ID3D11Device2* This,UINT Flags,const D3D_FEATURE_LEVEL *pFeatureLevels,UINT FeatureLevels,UINT SDKVersion,REFIID EmulatedInterface,D3D_FEATURE_LEVEL *pChosenFeatureLevel,ID3DDeviceContextState **ppContextState) {
  1976. return This->lpVtbl->CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState);
  1977. }
  1978. static FORCEINLINE HRESULT ID3D11Device2_OpenSharedResource1(ID3D11Device2* This,HANDLE hResource,REFIID returnedInterface,void **ppResource) {
  1979. return This->lpVtbl->OpenSharedResource1(This,hResource,returnedInterface,ppResource);
  1980. }
  1981. static FORCEINLINE HRESULT ID3D11Device2_OpenSharedResourceByName(ID3D11Device2* This,LPCWSTR lpName,DWORD dwDesiredAccess,REFIID returnedInterface,void **ppResource) {
  1982. return This->lpVtbl->OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource);
  1983. }
  1984. /*** ID3D11Device2 methods ***/
  1985. static FORCEINLINE void ID3D11Device2_GetImmediateContext2(ID3D11Device2* This,ID3D11DeviceContext2 **context) {
  1986. This->lpVtbl->GetImmediateContext2(This,context);
  1987. }
  1988. static FORCEINLINE HRESULT ID3D11Device2_CreateDeferredContext2(ID3D11Device2* This,UINT flags,ID3D11DeviceContext2 **context) {
  1989. return This->lpVtbl->CreateDeferredContext2(This,flags,context);
  1990. }
  1991. static FORCEINLINE void ID3D11Device2_GetResourceTiling(ID3D11Device2* This,ID3D11Resource *resource,UINT *tile_count,D3D11_PACKED_MIP_DESC *mip_desc,D3D11_TILE_SHAPE *tile_shape,UINT *subresource_tiling_count,UINT first_subresource_tiling,D3D11_SUBRESOURCE_TILING *subresource_tiling) {
  1992. This->lpVtbl->GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling);
  1993. }
  1994. static FORCEINLINE HRESULT ID3D11Device2_CheckMultisampleQualityLevels1(ID3D11Device2* This,DXGI_FORMAT format,UINT sample_count,UINT flags,UINT *quality_level_count) {
  1995. return This->lpVtbl->CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count);
  1996. }
  1997. #endif
  1998. #endif
  1999. #endif
  2000. #endif /* __ID3D11Device2_INTERFACE_DEFINED__ */
  2001. /* Begin additional prototypes for all interfaces */
  2002. /* End additional prototypes */
  2003. #ifdef __cplusplus
  2004. }
  2005. #endif
  2006. #endif /* __d3d11_2_h__ */