1 /* -*- Mode: C++; tab-width: 20; indent-tabs-mode: nil; c-basic-offset: 4 -*- 2 * This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this 4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 5 6 #ifndef mozilla_gfx_thebes_D3D11Checks_h 7 #define mozilla_gfx_thebes_D3D11Checks_h 8 9 struct ID3D11Device; 10 struct IDXGIAdapter; 11 struct DXGI_ADAPTER_DESC; 12 13 namespace mozilla { 14 namespace gfx { 15 16 struct D3D11Checks 17 { 18 static bool DoesRenderTargetViewNeedRecreating(ID3D11Device* aDevice); 19 static bool DoesDeviceWork(); 20 static bool DoesTextureSharingWork(ID3D11Device *device); 21 static bool DoesAlphaTextureSharingWork(ID3D11Device *device); 22 static void WarnOnAdapterMismatch(ID3D11Device* device); 23 static bool GetDxgiDesc(ID3D11Device* device, DXGI_ADAPTER_DESC* out); 24 static bool DoesRemotePresentWork(IDXGIAdapter* adapter); 25 }; 26 27 } // namespace gfx 28 } // namespace mozilla 29 30 #endif // mozilla_gfx_thebes_D3D11Checks_h 31