d3d11on12.h 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. /*** Autogenerated by WIDL 7.7 from include/d3d11on12.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 __d3d11on12_h__
  14. #define __d3d11on12_h__
  15. /* Forward declarations */
  16. #ifndef __ID3D11On12Device_FWD_DEFINED__
  17. #define __ID3D11On12Device_FWD_DEFINED__
  18. typedef interface ID3D11On12Device ID3D11On12Device;
  19. #ifdef __cplusplus
  20. interface ID3D11On12Device;
  21. #endif /* __cplusplus */
  22. #endif
  23. /* Headers for imported files */
  24. #include <oaidl.h>
  25. #include <ocidl.h>
  26. #include <d3d11.h>
  27. #include <d3d12.h>
  28. #ifdef __cplusplus
  29. extern "C" {
  30. #endif
  31. typedef struct D3D11_RESOURCE_FLAGS {
  32. UINT BindFlags;
  33. UINT MiscFlags;
  34. UINT CPUAccessFlags;
  35. UINT StructureByteStride;
  36. } D3D11_RESOURCE_FLAGS;
  37. /*****************************************************************************
  38. * ID3D11On12Device interface
  39. */
  40. #ifndef __ID3D11On12Device_INTERFACE_DEFINED__
  41. #define __ID3D11On12Device_INTERFACE_DEFINED__
  42. DEFINE_GUID(IID_ID3D11On12Device, 0x85611e73, 0x70a9, 0x490e, 0x96,0x14, 0xa9,0xe3,0x02,0x77,0x79,0x04);
  43. #if defined(__cplusplus) && !defined(CINTERFACE)
  44. MIDL_INTERFACE("85611e73-70a9-490e-9614-a9e302777904")
  45. ID3D11On12Device : public IUnknown
  46. {
  47. virtual HRESULT STDMETHODCALLTYPE CreateWrappedResource(
  48. IUnknown *d3d12_resource,
  49. const D3D11_RESOURCE_FLAGS *flags,
  50. D3D12_RESOURCE_STATES input_state,
  51. D3D12_RESOURCE_STATES output_state,
  52. REFIID iid,
  53. void **d3d11_resource) = 0;
  54. virtual void STDMETHODCALLTYPE ReleaseWrappedResources(
  55. ID3D11Resource *const *resources,
  56. UINT count) = 0;
  57. virtual void STDMETHODCALLTYPE AcquireWrappedResources(
  58. ID3D11Resource *const *resources,
  59. UINT count) = 0;
  60. };
  61. #ifdef __CRT_UUID_DECL
  62. __CRT_UUID_DECL(ID3D11On12Device, 0x85611e73, 0x70a9, 0x490e, 0x96,0x14, 0xa9,0xe3,0x02,0x77,0x79,0x04)
  63. #endif
  64. #else
  65. typedef struct ID3D11On12DeviceVtbl {
  66. BEGIN_INTERFACE
  67. /*** IUnknown methods ***/
  68. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  69. ID3D11On12Device *This,
  70. REFIID riid,
  71. void **ppvObject);
  72. ULONG (STDMETHODCALLTYPE *AddRef)(
  73. ID3D11On12Device *This);
  74. ULONG (STDMETHODCALLTYPE *Release)(
  75. ID3D11On12Device *This);
  76. /*** ID3D11On12Device methods ***/
  77. HRESULT (STDMETHODCALLTYPE *CreateWrappedResource)(
  78. ID3D11On12Device *This,
  79. IUnknown *d3d12_resource,
  80. const D3D11_RESOURCE_FLAGS *flags,
  81. D3D12_RESOURCE_STATES input_state,
  82. D3D12_RESOURCE_STATES output_state,
  83. REFIID iid,
  84. void **d3d11_resource);
  85. void (STDMETHODCALLTYPE *ReleaseWrappedResources)(
  86. ID3D11On12Device *This,
  87. ID3D11Resource *const *resources,
  88. UINT count);
  89. void (STDMETHODCALLTYPE *AcquireWrappedResources)(
  90. ID3D11On12Device *This,
  91. ID3D11Resource *const *resources,
  92. UINT count);
  93. END_INTERFACE
  94. } ID3D11On12DeviceVtbl;
  95. interface ID3D11On12Device {
  96. CONST_VTBL ID3D11On12DeviceVtbl* lpVtbl;
  97. };
  98. #ifdef COBJMACROS
  99. #ifndef WIDL_C_INLINE_WRAPPERS
  100. /*** IUnknown methods ***/
  101. #define ID3D11On12Device_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  102. #define ID3D11On12Device_AddRef(This) (This)->lpVtbl->AddRef(This)
  103. #define ID3D11On12Device_Release(This) (This)->lpVtbl->Release(This)
  104. /*** ID3D11On12Device methods ***/
  105. #define ID3D11On12Device_CreateWrappedResource(This,d3d12_resource,flags,input_state,output_state,iid,d3d11_resource) (This)->lpVtbl->CreateWrappedResource(This,d3d12_resource,flags,input_state,output_state,iid,d3d11_resource)
  106. #define ID3D11On12Device_ReleaseWrappedResources(This,resources,count) (This)->lpVtbl->ReleaseWrappedResources(This,resources,count)
  107. #define ID3D11On12Device_AcquireWrappedResources(This,resources,count) (This)->lpVtbl->AcquireWrappedResources(This,resources,count)
  108. #else
  109. /*** IUnknown methods ***/
  110. static FORCEINLINE HRESULT ID3D11On12Device_QueryInterface(ID3D11On12Device* This,REFIID riid,void **ppvObject) {
  111. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  112. }
  113. static FORCEINLINE ULONG ID3D11On12Device_AddRef(ID3D11On12Device* This) {
  114. return This->lpVtbl->AddRef(This);
  115. }
  116. static FORCEINLINE ULONG ID3D11On12Device_Release(ID3D11On12Device* This) {
  117. return This->lpVtbl->Release(This);
  118. }
  119. /*** ID3D11On12Device methods ***/
  120. static FORCEINLINE HRESULT ID3D11On12Device_CreateWrappedResource(ID3D11On12Device* This,IUnknown *d3d12_resource,const D3D11_RESOURCE_FLAGS *flags,D3D12_RESOURCE_STATES input_state,D3D12_RESOURCE_STATES output_state,REFIID iid,void **d3d11_resource) {
  121. return This->lpVtbl->CreateWrappedResource(This,d3d12_resource,flags,input_state,output_state,iid,d3d11_resource);
  122. }
  123. static FORCEINLINE void ID3D11On12Device_ReleaseWrappedResources(ID3D11On12Device* This,ID3D11Resource *const *resources,UINT count) {
  124. This->lpVtbl->ReleaseWrappedResources(This,resources,count);
  125. }
  126. static FORCEINLINE void ID3D11On12Device_AcquireWrappedResources(ID3D11On12Device* This,ID3D11Resource *const *resources,UINT count) {
  127. This->lpVtbl->AcquireWrappedResources(This,resources,count);
  128. }
  129. #endif
  130. #endif
  131. #endif
  132. #endif /* __ID3D11On12Device_INTERFACE_DEFINED__ */
  133. HRESULT __stdcall D3D11On12CreateDevice(IUnknown *device,UINT flags,const D3D_FEATURE_LEVEL *feature_levels,UINT feature_level_count,IUnknown *const *queues,UINT queue_count,UINT node_mask,ID3D11Device **d3d11_device,ID3D11DeviceContext **d3d11_immediate_context,D3D_FEATURE_LEVEL *obtained_feature_level);
  134. typedef HRESULT (__stdcall *PFN_D3D11ON12_CREATE_DEVICE)(IUnknown *device,UINT flags,const D3D_FEATURE_LEVEL *feature_levels,UINT feature_level_count,IUnknown *const *queues,UINT queue_count,UINT node_mask,ID3D11Device **d3d11_device,ID3D11DeviceContext **d3d11_immediate_context,D3D_FEATURE_LEVEL *obtained_feature_level);
  135. /* Begin additional prototypes for all interfaces */
  136. /* End additional prototypes */
  137. #ifdef __cplusplus
  138. }
  139. #endif
  140. #endif /* __d3d11on12_h__ */