1 module aurora.directx.d3d11.d3d11_4; 2 3 public import aurora.directx.d3d11.d3d11_3; 4 5 public: 6 7 /// 8 /// Constants 9 /// 10 11 /// 12 /// Functions 13 /// 14 15 /// 16 /// Enumerations 17 /// 18 19 /// 20 /// Structures 21 /// 22 23 struct D3D11_FEATURE_DATA_D3D11_OPTIONS4 24 { 25 bool ExtendedNV12SharedTextureSupported; 26 } 27 28 /// 29 /// Interfaces 30 /// 31 32 mixin(uuid!(ID3D11Device4, "8992ab71-02e6-4b8d-ba48-b056dcda42c4")); 33 public interface ID3D11Device4 : ID3D11Device3 34 { 35 extern(Windows): 36 HRESULT RegisterDeviceRemovedEvent(HANDLE hEvent, uint *pdwCookie); 37 void UnregisterDeviceRemoved(uint dwCookie); 38 } 39 40 mixin(uuid!(ID3D11Device5, "8ffde202-a0e7-45df-9e01-e837801b5ea0")); 41 public interface ID3D11Device5 : ID3D11Device4 42 { 43 extern(Windows): 44 HRESULT CreateFence(ulong InitialValue, D3D11_FENCE_FLAG Flags, REFIID riid, void **ppFence); 45 HRESULT OpenSharedFence(HANDLE hFence, REFIID ReturnedInterface, void **ppFence); 46 } 47 48 mixin(uuid!(ID3D11Multithread, "9B7E4E00-342C-4106-A19F-4F2704F689F0")); 49 public interface ID3D11Multithread : IUnknown 50 { 51 extern(Windows): 52 void Enter(); 53 bool GetMultithreadProtected(); 54 void Leave(); 55 bool SetMultithreadProtected(bool bMTProtect); 56 } 57 58 mixin(uuid!(ID3D11VideoContext2, "C4E7374C-6243-4D1B-AE87-52B4F740E261")); 59 public interface ID3D11VideoContext2 : ID3D11VideoContext1 60 { 61 extern(Windows): 62 HRESULT VideoProcessorGetOutputHDRMetaData(ID3D11VideoProcessor pVideoProcessor, DXGI_HDR_METADATA_TYPE Type, uint Size, const void *pHDRMetaData); 63 HRESULT VideoProcessorSetOutputHDRMetaData(ID3D11VideoProcessor pVideoProcessor, DXGI_HDR_METADATA_TYPE Type, uint Size, const void *pHDRMetaData); 64 HRESULT VideoProcessorGetStreamHDRMetaData(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, DXGI_HDR_METADATA_TYPE pType, uint Size, const void *pHDRMetaData); 65 HRESULT VideoProcessorSetStreamHDRMetaData(ID3D11VideoProcessor pVideoProcessor, uint StreamIndex, DXGI_HDR_METADATA_TYPE Type, uint Size, const void *pHDRMetaData); 66 }