You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

92 lines
3.4 KiB

#pragma once
#include <d3d12.h>
#include <dxgi1_5.h>
class SwapChainTrampoline : public IDXGISwapChain4
{
public:
SwapChainTrampoline(IDXGISwapChain4* swapChain);
HRESULT __stdcall QueryInterface(REFIID riid, void** ppvObject) override;
ULONG __stdcall AddRef(void) override;
ULONG __stdcall Release(void) override;
HRESULT __stdcall SetPrivateData(REFGUID Name, UINT DataSize, const void* pData) override;
HRESULT __stdcall SetPrivateDataInterface(REFGUID Name, const IUnknown* pUnknown) override;
HRESULT __stdcall GetPrivateData(REFGUID Name, UINT* pDataSize, void* pData) override;
HRESULT __stdcall GetParent(REFIID riid, void** ppParent) override;
HRESULT __stdcall GetDevice(REFIID riid, void** ppDevice) override;
HRESULT __stdcall Present(UINT SyncInterval, UINT Flags) override;
HRESULT __stdcall GetBuffer(UINT Buffer, REFIID riid, void** ppSurface) override;
HRESULT __stdcall SetFullscreenState(BOOL Fullscreen, IDXGIOutput* pTarget) override;
HRESULT __stdcall GetFullscreenState(BOOL* pFullscreen, IDXGIOutput** ppTarget) override;
HRESULT __stdcall GetDesc(DXGI_SWAP_CHAIN_DESC* pDesc) override;
HRESULT __stdcall ResizeBuffers(UINT BufferCount, UINT Width, UINT Height, DXGI_FORMAT NewFormat, UINT SwapChainFlags) override;
HRESULT __stdcall ResizeTarget(const DXGI_MODE_DESC* pNewTargetParameters) override;
HRESULT __stdcall GetContainingOutput(IDXGIOutput** ppOutput) override;
HRESULT __stdcall GetFrameStatistics(DXGI_FRAME_STATISTICS* pStats) override;
HRESULT __stdcall GetLastPresentCount(UINT* pLastPresentCount) override;
HRESULT __stdcall GetDesc1(DXGI_SWAP_CHAIN_DESC1* pDesc) override;
HRESULT __stdcall GetFullscreenDesc(DXGI_SWAP_CHAIN_FULLSCREEN_DESC* pDesc) override;
HRESULT __stdcall GetHwnd(HWND* pHwnd) override;
HRESULT __stdcall GetCoreWindow(REFIID refiid, void** ppUnk) override;
HRESULT __stdcall Present1(UINT SyncInterval, UINT PresentFlags, const DXGI_PRESENT_PARAMETERS* pPresentParameters) override;
BOOL __stdcall IsTemporaryMonoSupported(void) override;
HRESULT __stdcall GetRestrictToOutput(IDXGIOutput** ppRestrictToOutput) override;
HRESULT __stdcall SetBackgroundColor(const DXGI_RGBA* pColor) override;
HRESULT __stdcall GetBackgroundColor(DXGI_RGBA* pColor) override;
HRESULT __stdcall SetRotation(DXGI_MODE_ROTATION Rotation) override;
HRESULT __stdcall GetRotation(DXGI_MODE_ROTATION* pRotation) override;
HRESULT __stdcall SetSourceSize(UINT Width, UINT Height) override;
HRESULT __stdcall GetSourceSize(UINT* pWidth, UINT* pHeight) override;
HRESULT __stdcall SetMaximumFrameLatency(UINT MaxLatency) override;
HRESULT __stdcall GetMaximumFrameLatency(UINT* pMaxLatency) override;
HANDLE __stdcall GetFrameLatencyWaitableObject(void) override;
HRESULT __stdcall SetMatrixTransform(const DXGI_MATRIX_3X2_F* pMatrix) override;
HRESULT __stdcall GetMatrixTransform(DXGI_MATRIX_3X2_F* pMatrix) override;
UINT __stdcall GetCurrentBackBufferIndex(void) override;
HRESULT __stdcall CheckColorSpaceSupport(DXGI_COLOR_SPACE_TYPE ColorSpace, UINT* pColorSpaceSupport) override;
HRESULT __stdcall SetColorSpace1(DXGI_COLOR_SPACE_TYPE ColorSpace) override;
HRESULT __stdcall ResizeBuffers1(UINT BufferCount, UINT Width, UINT Height, DXGI_FORMAT Format, UINT SwapChainFlags, const UINT* pCreationNodeMask, IUnknown* const* ppPresentQueue) override;
HRESULT __stdcall SetHDRMetaData(DXGI_HDR_METADATA_TYPE Type, UINT Size, void* pMetaData) override;
};