Class DXGISwapChainState

Nested Relationships

Nested Types

Inheritance Relationships

Base Type

Class Documentation

class DXGISwapChainState : public gpa::d3d12_state_tracker::ObjectState<IDXGIObject>

Public Types

enum SwapChainType

Values:

enumerator kInvalid
enumerator kDefault
enumerator kSwapChainForComposition
enumerator kSwapChainForCoreWindow
enumerator kSwapChainForHwnd
enumerator kMaxTypes

Public Functions

DXGISwapChainState(IDXGISwapChain*, IUnknown *pDevice, const DXGI_SWAP_CHAIN_DESC *pDesc)
DXGISwapChainState(IDXGISwapChain1*, IUnknown *pDevice, const DXGI_SWAP_CHAIN_DESC1 *pDesc, IDXGIOutput *pRestrictToOutput)
DXGISwapChainState(IDXGISwapChain1*, IUnknown *pDevice, IUnknown *pWindow, const DXGI_SWAP_CHAIN_DESC1 *pDesc, IDXGIOutput *pRestrictToOutput)
DXGISwapChainState(IDXGISwapChain1*, IUnknown *pDevice, HWND hWnd, const DXGI_SWAP_CHAIN_DESC1 *pDesc, const DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pFullscreenDesc, IDXGIOutput *pRestrictToOutput)
virtual ~DXGISwapChainState()
virtual GUID GetGUID() override
SwapChainType GetType() const
BackBufferEntry const *GetBackBufferState(uint32_t bufferIndex) const
std::vector<IUnknown*> const &GetPresentQueues() const
void OnGetBuffer(uint32_t bufferIndex, void **ppBuffer)
void OnResizeBuffers(uint32_t BufferCount, uint32_t Width, uint32_t Height, DXGI_FORMAT NewFormat, uint32_t SwapChainFlags)
void OnResizeBuffers1(uint32_t BufferCount, uint32_t Width, uint32_t Height, DXGI_FORMAT Format, uint32_t SwapChainFlags, const uint32_t *pCreationNodeMask, IUnknown *const *ppPresentQueue)

Public Static Attributes

static constexpr GUID sGUID = {0x17e90e57, 0x3481, 0x4b6d, {0x83, 0x79, 0x81, 0xe1, 0x5f, 0xf9, 0x48, 0xc2}}
struct BackBufferEntry

Public Members

WeakPtr<ID3D12Resource> backBuffer
bool obtained = false