From 3407d4744e0595f9dea952a75c32ea9edafbdbb3 Mon Sep 17 00:00:00 2001 From: baldurk Date: Tue, 5 Jul 2016 15:52:51 +0300 Subject: [PATCH] Rename two D3D11 classes to avoid link collisions with D3D12 classes --- renderdoc/driver/d3d11/d3d11_renderstate.cpp | 4 +- renderdoc/driver/d3d11/d3d11_resources.cpp | 1211 ------------------ renderdoc/driver/d3d11/d3d11_resources.h | 90 +- 3 files changed, 47 insertions(+), 1258 deletions(-) diff --git a/renderdoc/driver/d3d11/d3d11_renderstate.cpp b/renderdoc/driver/d3d11/d3d11_renderstate.cpp index 00c359d24..ac3195389 100644 --- a/renderdoc/driver/d3d11/d3d11_renderstate.cpp +++ b/renderdoc/driver/d3d11/d3d11_renderstate.cpp @@ -942,7 +942,7 @@ void D3D11RenderState::TakeRef(ID3D11DeviceChild *p) // we can use any specialisation of device child here, as all that is templated // is the nested pointer type. Saves having another class in the inheritance // heirarchy :( - ((WrappedDeviceChild *)p)->PipelineAddRef(); + ((WrappedDeviceChild11 *)p)->PipelineAddRef(); } } } @@ -961,7 +961,7 @@ void D3D11RenderState::ReleaseRef(ID3D11DeviceChild *p) m_pDevice->InternalRelease(); // see above - ((WrappedDeviceChild *)p)->PipelineRelease(); + ((WrappedDeviceChild11 *)p)->PipelineRelease(); } } } diff --git a/renderdoc/driver/d3d11/d3d11_resources.cpp b/renderdoc/driver/d3d11/d3d11_resources.cpp index bf8396fb8..948b0bae9 100644 --- a/renderdoc/driver/d3d11/d3d11_resources.cpp +++ b/renderdoc/driver/d3d11/d3d11_resources.cpp @@ -259,1217 +259,6 @@ UINT GetByteSize(ID3D11Texture3D *tex, int SubResource) return GetByteSize(desc.Width, desc.Height, desc.Depth, desc.Format, SubResource); } -UINT GetFormatBPP(DXGI_FORMAT f) -{ - UINT ret = 8; - - switch(f) - { - case DXGI_FORMAT_R32G32B32A32_TYPELESS: - case DXGI_FORMAT_R32G32B32A32_FLOAT: - case DXGI_FORMAT_R32G32B32A32_UINT: - case DXGI_FORMAT_R32G32B32A32_SINT: ret *= 16; break; - case DXGI_FORMAT_R32G32B32_TYPELESS: - case DXGI_FORMAT_R32G32B32_FLOAT: - case DXGI_FORMAT_R32G32B32_UINT: - case DXGI_FORMAT_R32G32B32_SINT: ret *= 12; break; - case DXGI_FORMAT_R16G16B16A16_TYPELESS: - case DXGI_FORMAT_R16G16B16A16_FLOAT: - case DXGI_FORMAT_R16G16B16A16_UNORM: - case DXGI_FORMAT_R16G16B16A16_UINT: - case DXGI_FORMAT_R16G16B16A16_SNORM: - case DXGI_FORMAT_R16G16B16A16_SINT: - case DXGI_FORMAT_R32G32_TYPELESS: - case DXGI_FORMAT_R32G32_FLOAT: - case DXGI_FORMAT_R32G32_UINT: - case DXGI_FORMAT_R32G32_SINT: - case DXGI_FORMAT_R32G8X24_TYPELESS: - case DXGI_FORMAT_D32_FLOAT_S8X24_UINT: - case DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS: - case DXGI_FORMAT_X32_TYPELESS_G8X24_UINT: ret *= 8; break; - case DXGI_FORMAT_R10G10B10A2_TYPELESS: - case DXGI_FORMAT_R10G10B10A2_UNORM: - case DXGI_FORMAT_R10G10B10A2_UINT: - case DXGI_FORMAT_R11G11B10_FLOAT: - case DXGI_FORMAT_R8G8B8A8_TYPELESS: - case DXGI_FORMAT_R8G8B8A8_UNORM: - case DXGI_FORMAT_R8G8B8A8_UNORM_SRGB: - case DXGI_FORMAT_R8G8B8A8_UINT: - case DXGI_FORMAT_R8G8B8A8_SNORM: - case DXGI_FORMAT_R8G8B8A8_SINT: - case DXGI_FORMAT_R16G16_TYPELESS: - case DXGI_FORMAT_R16G16_FLOAT: - case DXGI_FORMAT_R16G16_UNORM: - case DXGI_FORMAT_R16G16_UINT: - case DXGI_FORMAT_R16G16_SNORM: - case DXGI_FORMAT_R16G16_SINT: - case DXGI_FORMAT_R32_TYPELESS: - case DXGI_FORMAT_D32_FLOAT: - case DXGI_FORMAT_R32_FLOAT: - case DXGI_FORMAT_R32_UINT: - case DXGI_FORMAT_R32_SINT: - case DXGI_FORMAT_R24G8_TYPELESS: - case DXGI_FORMAT_D24_UNORM_S8_UINT: - case DXGI_FORMAT_R24_UNORM_X8_TYPELESS: - case DXGI_FORMAT_X24_TYPELESS_G8_UINT: - case DXGI_FORMAT_R9G9B9E5_SHAREDEXP: - case DXGI_FORMAT_R8G8_B8G8_UNORM: - case DXGI_FORMAT_G8R8_G8B8_UNORM: - case DXGI_FORMAT_B8G8R8A8_UNORM: - case DXGI_FORMAT_B8G8R8X8_UNORM: - case DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM: - case DXGI_FORMAT_B8G8R8A8_TYPELESS: - case DXGI_FORMAT_B8G8R8A8_UNORM_SRGB: - case DXGI_FORMAT_B8G8R8X8_TYPELESS: - case DXGI_FORMAT_B8G8R8X8_UNORM_SRGB: ret *= 4; break; - case DXGI_FORMAT_R8G8_TYPELESS: - case DXGI_FORMAT_R8G8_UNORM: - case DXGI_FORMAT_R8G8_UINT: - case DXGI_FORMAT_R8G8_SNORM: - case DXGI_FORMAT_R8G8_SINT: - case DXGI_FORMAT_R16_TYPELESS: - case DXGI_FORMAT_R16_FLOAT: - case DXGI_FORMAT_D16_UNORM: - case DXGI_FORMAT_R16_UNORM: - case DXGI_FORMAT_R16_UINT: - case DXGI_FORMAT_R16_SNORM: - case DXGI_FORMAT_R16_SINT: - case DXGI_FORMAT_B5G6R5_UNORM: - case DXGI_FORMAT_B5G5R5A1_UNORM: ret *= 2; break; - case DXGI_FORMAT_R8_TYPELESS: - case DXGI_FORMAT_R8_UNORM: - case DXGI_FORMAT_R8_UINT: - case DXGI_FORMAT_R8_SNORM: - case DXGI_FORMAT_R8_SINT: - case DXGI_FORMAT_A8_UNORM: ret *= 1; break; - case DXGI_FORMAT_R1_UNORM: ret /= 8; break; - case DXGI_FORMAT_BC1_TYPELESS: - case DXGI_FORMAT_BC1_UNORM: - case DXGI_FORMAT_BC1_UNORM_SRGB: - case DXGI_FORMAT_BC4_TYPELESS: - case DXGI_FORMAT_BC4_UNORM: - case DXGI_FORMAT_BC4_SNORM: - // return block size (in bits) - ret *= 8; - break; - case DXGI_FORMAT_BC2_TYPELESS: - case DXGI_FORMAT_BC2_UNORM: - case DXGI_FORMAT_BC2_UNORM_SRGB: - case DXGI_FORMAT_BC3_TYPELESS: - case DXGI_FORMAT_BC3_UNORM: - case DXGI_FORMAT_BC3_UNORM_SRGB: - case DXGI_FORMAT_BC5_TYPELESS: - case DXGI_FORMAT_BC5_UNORM: - case DXGI_FORMAT_BC5_SNORM: - case DXGI_FORMAT_BC6H_TYPELESS: - case DXGI_FORMAT_BC6H_UF16: - case DXGI_FORMAT_BC6H_SF16: - case DXGI_FORMAT_BC7_TYPELESS: - case DXGI_FORMAT_BC7_UNORM: - case DXGI_FORMAT_BC7_UNORM_SRGB: - // return block size (in bits) - ret *= 16; - break; - - case DXGI_FORMAT_AYUV: - case DXGI_FORMAT_Y410: - case DXGI_FORMAT_YUY2: - case DXGI_FORMAT_Y416: - case DXGI_FORMAT_NV12: - case DXGI_FORMAT_P010: - case DXGI_FORMAT_P016: - case DXGI_FORMAT_420_OPAQUE: - case DXGI_FORMAT_Y210: - case DXGI_FORMAT_Y216: - case DXGI_FORMAT_NV11: - case DXGI_FORMAT_AI44: - case DXGI_FORMAT_IA44: - case DXGI_FORMAT_P8: - case DXGI_FORMAT_A8P8: - case DXGI_FORMAT_P208: - case DXGI_FORMAT_V208: - case DXGI_FORMAT_V408: RDCERR("Video formats not supported"); break; - - case DXGI_FORMAT_B4G4R4A4_UNORM: - ret *= 2; // 4 channels, half a byte each - break; - - case DXGI_FORMAT_UNKNOWN: - ret = 0; - RDCWARN("Getting BPP of DXGI_FORMAT_UNKNOWN"); - break; - - default: RDCERR("Unrecognised DXGI Format: %d", f); break; - } - - return ret; -} - -UINT GetByteSize(int Width, int Height, int Depth, DXGI_FORMAT Format, int mip) -{ - UINT ret = RDCMAX(Width >> mip, 1) * RDCMAX(Height >> mip, 1) * RDCMAX(Depth >> mip, 1); - - switch(Format) - { - case DXGI_FORMAT_R32G32B32A32_TYPELESS: - case DXGI_FORMAT_R32G32B32A32_FLOAT: - case DXGI_FORMAT_R32G32B32A32_UINT: - case DXGI_FORMAT_R32G32B32A32_SINT: ret *= 16; break; - case DXGI_FORMAT_R32G32B32_TYPELESS: - case DXGI_FORMAT_R32G32B32_FLOAT: - case DXGI_FORMAT_R32G32B32_UINT: - case DXGI_FORMAT_R32G32B32_SINT: ret *= 12; break; - case DXGI_FORMAT_R16G16B16A16_TYPELESS: - case DXGI_FORMAT_R16G16B16A16_FLOAT: - case DXGI_FORMAT_R16G16B16A16_UNORM: - case DXGI_FORMAT_R16G16B16A16_UINT: - case DXGI_FORMAT_R16G16B16A16_SNORM: - case DXGI_FORMAT_R16G16B16A16_SINT: - case DXGI_FORMAT_R32G32_TYPELESS: - case DXGI_FORMAT_R32G32_FLOAT: - case DXGI_FORMAT_R32G32_UINT: - case DXGI_FORMAT_R32G32_SINT: - case DXGI_FORMAT_R32G8X24_TYPELESS: - case DXGI_FORMAT_D32_FLOAT_S8X24_UINT: - case DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS: - case DXGI_FORMAT_X32_TYPELESS_G8X24_UINT: ret *= 8; break; - case DXGI_FORMAT_R10G10B10A2_TYPELESS: - case DXGI_FORMAT_R10G10B10A2_UNORM: - case DXGI_FORMAT_R10G10B10A2_UINT: - case DXGI_FORMAT_R11G11B10_FLOAT: - case DXGI_FORMAT_R8G8B8A8_TYPELESS: - case DXGI_FORMAT_R8G8B8A8_UNORM: - case DXGI_FORMAT_R8G8B8A8_UNORM_SRGB: - case DXGI_FORMAT_R8G8B8A8_UINT: - case DXGI_FORMAT_R8G8B8A8_SNORM: - case DXGI_FORMAT_R8G8B8A8_SINT: - case DXGI_FORMAT_R16G16_TYPELESS: - case DXGI_FORMAT_R16G16_FLOAT: - case DXGI_FORMAT_R16G16_UNORM: - case DXGI_FORMAT_R16G16_UINT: - case DXGI_FORMAT_R16G16_SNORM: - case DXGI_FORMAT_R16G16_SINT: - case DXGI_FORMAT_R32_TYPELESS: - case DXGI_FORMAT_D32_FLOAT: - case DXGI_FORMAT_R32_FLOAT: - case DXGI_FORMAT_R32_UINT: - case DXGI_FORMAT_R32_SINT: - case DXGI_FORMAT_R24G8_TYPELESS: - case DXGI_FORMAT_D24_UNORM_S8_UINT: - case DXGI_FORMAT_R24_UNORM_X8_TYPELESS: - case DXGI_FORMAT_X24_TYPELESS_G8_UINT: - case DXGI_FORMAT_R9G9B9E5_SHAREDEXP: - case DXGI_FORMAT_R8G8_B8G8_UNORM: - case DXGI_FORMAT_G8R8_G8B8_UNORM: - case DXGI_FORMAT_B8G8R8A8_UNORM: - case DXGI_FORMAT_B8G8R8X8_UNORM: - case DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM: - case DXGI_FORMAT_B8G8R8A8_TYPELESS: - case DXGI_FORMAT_B8G8R8A8_UNORM_SRGB: - case DXGI_FORMAT_B8G8R8X8_TYPELESS: - case DXGI_FORMAT_B8G8R8X8_UNORM_SRGB: ret *= 4; break; - case DXGI_FORMAT_R8G8_TYPELESS: - case DXGI_FORMAT_R8G8_UNORM: - case DXGI_FORMAT_R8G8_UINT: - case DXGI_FORMAT_R8G8_SNORM: - case DXGI_FORMAT_R8G8_SINT: - case DXGI_FORMAT_R16_TYPELESS: - case DXGI_FORMAT_R16_FLOAT: - case DXGI_FORMAT_D16_UNORM: - case DXGI_FORMAT_R16_UNORM: - case DXGI_FORMAT_R16_UINT: - case DXGI_FORMAT_R16_SNORM: - case DXGI_FORMAT_R16_SINT: - case DXGI_FORMAT_B5G6R5_UNORM: - case DXGI_FORMAT_B5G5R5A1_UNORM: ret *= 2; break; - case DXGI_FORMAT_R8_TYPELESS: - case DXGI_FORMAT_R8_UNORM: - case DXGI_FORMAT_R8_UINT: - case DXGI_FORMAT_R8_SNORM: - case DXGI_FORMAT_R8_SINT: - case DXGI_FORMAT_A8_UNORM: ret *= 1; break; - case DXGI_FORMAT_R1_UNORM: ret = RDCMAX(ret / 8, 1U); break; - case DXGI_FORMAT_BC1_TYPELESS: - case DXGI_FORMAT_BC1_UNORM: - case DXGI_FORMAT_BC1_UNORM_SRGB: - case DXGI_FORMAT_BC4_TYPELESS: - case DXGI_FORMAT_BC4_UNORM: - case DXGI_FORMAT_BC4_SNORM: - ret = AlignUp4(RDCMAX(Width >> mip, 1)) * AlignUp4(RDCMAX(Height >> mip, 1)) * - RDCMAX(Depth >> mip, 1); - ret /= 2; - break; - case DXGI_FORMAT_BC2_TYPELESS: - case DXGI_FORMAT_BC2_UNORM: - case DXGI_FORMAT_BC2_UNORM_SRGB: - case DXGI_FORMAT_BC3_TYPELESS: - case DXGI_FORMAT_BC3_UNORM: - case DXGI_FORMAT_BC3_UNORM_SRGB: - case DXGI_FORMAT_BC5_TYPELESS: - case DXGI_FORMAT_BC5_UNORM: - case DXGI_FORMAT_BC5_SNORM: - case DXGI_FORMAT_BC6H_TYPELESS: - case DXGI_FORMAT_BC6H_UF16: - case DXGI_FORMAT_BC6H_SF16: - case DXGI_FORMAT_BC7_TYPELESS: - case DXGI_FORMAT_BC7_UNORM: - case DXGI_FORMAT_BC7_UNORM_SRGB: - ret = AlignUp4(RDCMAX(Width >> mip, 1)) * AlignUp4(RDCMAX(Height >> mip, 1)) * - RDCMAX(Depth >> mip, 1); - ret *= 1; - break; - case DXGI_FORMAT_AYUV: - case DXGI_FORMAT_Y410: - case DXGI_FORMAT_YUY2: - case DXGI_FORMAT_Y416: - case DXGI_FORMAT_NV12: - case DXGI_FORMAT_P010: - case DXGI_FORMAT_P016: - case DXGI_FORMAT_420_OPAQUE: - case DXGI_FORMAT_Y210: - case DXGI_FORMAT_Y216: - case DXGI_FORMAT_NV11: - case DXGI_FORMAT_AI44: - case DXGI_FORMAT_IA44: - case DXGI_FORMAT_P8: - case DXGI_FORMAT_A8P8: - case DXGI_FORMAT_P208: - case DXGI_FORMAT_V208: - case DXGI_FORMAT_V408: RDCERR("Video formats not supported"); break; - - case DXGI_FORMAT_B4G4R4A4_UNORM: - ret *= 2; // 4 channels, half a byte each - break; - case DXGI_FORMAT_UNKNOWN: - RDCERR("Getting byte size of unknown DXGI format"); - ret = 0; - break; - default: RDCERR("Unrecognised DXGI Format: %d", Format); break; - } - - return ret; -} - -bool IsBlockFormat(DXGI_FORMAT f) -{ - switch(f) - { - case DXGI_FORMAT_BC1_TYPELESS: - case DXGI_FORMAT_BC1_UNORM: - case DXGI_FORMAT_BC1_UNORM_SRGB: - case DXGI_FORMAT_BC4_TYPELESS: - case DXGI_FORMAT_BC4_UNORM: - case DXGI_FORMAT_BC4_SNORM: - case DXGI_FORMAT_BC2_TYPELESS: - case DXGI_FORMAT_BC2_UNORM: - case DXGI_FORMAT_BC2_UNORM_SRGB: - case DXGI_FORMAT_BC3_TYPELESS: - case DXGI_FORMAT_BC3_UNORM: - case DXGI_FORMAT_BC3_UNORM_SRGB: - case DXGI_FORMAT_BC5_TYPELESS: - case DXGI_FORMAT_BC5_UNORM: - case DXGI_FORMAT_BC5_SNORM: - case DXGI_FORMAT_BC6H_TYPELESS: - case DXGI_FORMAT_BC6H_UF16: - case DXGI_FORMAT_BC6H_SF16: - case DXGI_FORMAT_BC7_TYPELESS: - case DXGI_FORMAT_BC7_UNORM: - case DXGI_FORMAT_BC7_UNORM_SRGB: return true; - default: break; - } - - return false; -} - -bool IsDepthFormat(DXGI_FORMAT f) -{ - switch(f) - { - case DXGI_FORMAT_R32G8X24_TYPELESS: - case DXGI_FORMAT_D32_FLOAT_S8X24_UINT: - case DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS: - case DXGI_FORMAT_X32_TYPELESS_G8X24_UINT: - - case DXGI_FORMAT_D24_UNORM_S8_UINT: - case DXGI_FORMAT_R24_UNORM_X8_TYPELESS: - case DXGI_FORMAT_X24_TYPELESS_G8_UINT: - case DXGI_FORMAT_R24G8_TYPELESS: - - case DXGI_FORMAT_D32_FLOAT: - case DXGI_FORMAT_D16_UNORM: return true; - } - - return false; -} - -bool IsTypelessFormat(DXGI_FORMAT f) -{ - switch(f) - { - case DXGI_FORMAT_R32G32B32A32_TYPELESS: - case DXGI_FORMAT_R32G32B32_TYPELESS: - case DXGI_FORMAT_R16G16B16A16_TYPELESS: - case DXGI_FORMAT_R32G32_TYPELESS: - case DXGI_FORMAT_R32G8X24_TYPELESS: - case DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS: - case DXGI_FORMAT_X32_TYPELESS_G8X24_UINT: - case DXGI_FORMAT_R10G10B10A2_TYPELESS: - case DXGI_FORMAT_R8G8B8A8_TYPELESS: - case DXGI_FORMAT_R16G16_TYPELESS: - case DXGI_FORMAT_R32_TYPELESS: - case DXGI_FORMAT_R24G8_TYPELESS: - case DXGI_FORMAT_R24_UNORM_X8_TYPELESS: - case DXGI_FORMAT_X24_TYPELESS_G8_UINT: - case DXGI_FORMAT_R8G8_TYPELESS: - case DXGI_FORMAT_R16_TYPELESS: - case DXGI_FORMAT_R8_TYPELESS: - case DXGI_FORMAT_BC1_TYPELESS: - case DXGI_FORMAT_BC2_TYPELESS: - case DXGI_FORMAT_BC3_TYPELESS: - case DXGI_FORMAT_BC4_TYPELESS: - case DXGI_FORMAT_BC5_TYPELESS: - case DXGI_FORMAT_B8G8R8A8_TYPELESS: - case DXGI_FORMAT_B8G8R8X8_TYPELESS: - case DXGI_FORMAT_BC6H_TYPELESS: - case DXGI_FORMAT_BC7_TYPELESS: return true; - } - - return false; -} - -bool IsUIntFormat(DXGI_FORMAT f) -{ - switch(f) - { - case DXGI_FORMAT_R32G32B32A32_UINT: - case DXGI_FORMAT_R32G32B32_UINT: - case DXGI_FORMAT_R16G16B16A16_UINT: - case DXGI_FORMAT_R32G32_UINT: - case DXGI_FORMAT_R10G10B10A2_UINT: - case DXGI_FORMAT_R8G8B8A8_UINT: - case DXGI_FORMAT_R16G16_UINT: - case DXGI_FORMAT_R32_UINT: - case DXGI_FORMAT_R8G8_UINT: - case DXGI_FORMAT_R16_UINT: - case DXGI_FORMAT_R8_UINT: return true; - } - - return false; -} - -bool IsIntFormat(DXGI_FORMAT f) -{ - switch(f) - { - case DXGI_FORMAT_R32G32B32A32_SINT: - case DXGI_FORMAT_R32G32B32_SINT: - case DXGI_FORMAT_R16G16B16A16_SINT: - case DXGI_FORMAT_R32G32_SINT: - case DXGI_FORMAT_R8G8B8A8_SINT: - case DXGI_FORMAT_R16G16_SINT: - case DXGI_FORMAT_R32_SINT: - case DXGI_FORMAT_R8G8_SINT: - case DXGI_FORMAT_R16_SINT: - case DXGI_FORMAT_R8_SINT: return true; - } - - return false; -} - -bool IsSRGBFormat(DXGI_FORMAT f) -{ - switch(f) - { - case DXGI_FORMAT_R8G8B8A8_UNORM_SRGB: - case DXGI_FORMAT_BC1_UNORM_SRGB: - case DXGI_FORMAT_BC2_UNORM_SRGB: - case DXGI_FORMAT_BC3_UNORM_SRGB: - case DXGI_FORMAT_BC7_UNORM_SRGB: - case DXGI_FORMAT_B8G8R8A8_UNORM_SRGB: - case DXGI_FORMAT_B8G8R8X8_UNORM_SRGB: return true; - - default: break; - } - - return false; -} - -DXGI_FORMAT GetDepthTypedFormat(DXGI_FORMAT f) -{ - switch(f) - { - case DXGI_FORMAT_R32_FLOAT: - case DXGI_FORMAT_R32_TYPELESS: return DXGI_FORMAT_D32_FLOAT; - - case DXGI_FORMAT_R32G8X24_TYPELESS: - case DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS: - case DXGI_FORMAT_X32_TYPELESS_G8X24_UINT: return DXGI_FORMAT_D32_FLOAT_S8X24_UINT; - - case DXGI_FORMAT_R24G8_TYPELESS: - case DXGI_FORMAT_R24_UNORM_X8_TYPELESS: - case DXGI_FORMAT_X24_TYPELESS_G8_UINT: return DXGI_FORMAT_D24_UNORM_S8_UINT; - - case DXGI_FORMAT_R16_FLOAT: - case DXGI_FORMAT_R16_TYPELESS: return DXGI_FORMAT_D16_UNORM; - - default: break; - } - return f; -} - -DXGI_FORMAT GetNonSRGBFormat(DXGI_FORMAT f) -{ - switch(f) - { - case DXGI_FORMAT_R8G8B8A8_UNORM_SRGB: return DXGI_FORMAT_R8G8B8A8_UNORM; - case DXGI_FORMAT_BC1_UNORM_SRGB: return DXGI_FORMAT_BC1_UNORM; - case DXGI_FORMAT_BC2_UNORM_SRGB: return DXGI_FORMAT_BC2_UNORM; - case DXGI_FORMAT_BC3_UNORM_SRGB: return DXGI_FORMAT_BC3_UNORM; - case DXGI_FORMAT_BC7_UNORM_SRGB: return DXGI_FORMAT_BC7_UNORM; - case DXGI_FORMAT_B8G8R8A8_UNORM_SRGB: return DXGI_FORMAT_B8G8R8A8_UNORM; - case DXGI_FORMAT_B8G8R8X8_UNORM_SRGB: return DXGI_FORMAT_B8G8R8X8_UNORM; - - default: break; - } - - return f; -} - -DXGI_FORMAT GetSRGBFormat(DXGI_FORMAT f) -{ - switch(f) - { - case DXGI_FORMAT_R8G8B8A8_TYPELESS: - case DXGI_FORMAT_R8G8B8A8_UNORM: return DXGI_FORMAT_R8G8B8A8_UNORM_SRGB; - - case DXGI_FORMAT_BC1_TYPELESS: - case DXGI_FORMAT_BC1_UNORM: return DXGI_FORMAT_BC1_UNORM_SRGB; - - case DXGI_FORMAT_BC2_TYPELESS: - case DXGI_FORMAT_BC2_UNORM: return DXGI_FORMAT_BC2_UNORM_SRGB; - - case DXGI_FORMAT_BC3_TYPELESS: - case DXGI_FORMAT_BC3_UNORM: return DXGI_FORMAT_BC3_UNORM_SRGB; - - case DXGI_FORMAT_BC7_TYPELESS: - case DXGI_FORMAT_BC7_UNORM: return DXGI_FORMAT_BC7_UNORM_SRGB; - - case DXGI_FORMAT_B8G8R8A8_TYPELESS: - case DXGI_FORMAT_B8G8R8A8_UNORM: return DXGI_FORMAT_B8G8R8A8_UNORM_SRGB; - - case DXGI_FORMAT_B8G8R8X8_TYPELESS: - case DXGI_FORMAT_B8G8R8X8_UNORM: return DXGI_FORMAT_B8G8R8X8_UNORM_SRGB; - - default: break; - } - return f; -} - -DXGI_FORMAT GetUnormTypedFormat(DXGI_FORMAT f) -{ - switch(f) - { - case DXGI_FORMAT_R16G16B16A16_TYPELESS: - case DXGI_FORMAT_R16G16B16A16_FLOAT: - case DXGI_FORMAT_R16G16B16A16_UINT: - case DXGI_FORMAT_R16G16B16A16_SNORM: - case DXGI_FORMAT_R16G16B16A16_SINT: return DXGI_FORMAT_R16G16B16A16_UNORM; - - case DXGI_FORMAT_R10G10B10A2_TYPELESS: - case DXGI_FORMAT_R10G10B10A2_UINT: return DXGI_FORMAT_R10G10B10A2_UNORM; - - case DXGI_FORMAT_R8G8B8A8_TYPELESS: - case DXGI_FORMAT_R8G8B8A8_UNORM_SRGB: - case DXGI_FORMAT_R8G8B8A8_UINT: - case DXGI_FORMAT_R8G8B8A8_SNORM: - case DXGI_FORMAT_R8G8B8A8_SINT: return DXGI_FORMAT_R8G8B8A8_UNORM; - - case DXGI_FORMAT_R16G16_TYPELESS: - case DXGI_FORMAT_R16G16_FLOAT: - case DXGI_FORMAT_R16G16_UINT: - case DXGI_FORMAT_R16G16_SNORM: - case DXGI_FORMAT_R16G16_SINT: return DXGI_FORMAT_R16G16_UNORM; - - case DXGI_FORMAT_R24G8_TYPELESS: - case DXGI_FORMAT_D24_UNORM_S8_UINT: - case DXGI_FORMAT_X24_TYPELESS_G8_UINT: return DXGI_FORMAT_R24_UNORM_X8_TYPELESS; - - case DXGI_FORMAT_R8G8_TYPELESS: - case DXGI_FORMAT_R8G8_UINT: - case DXGI_FORMAT_R8G8_SNORM: - case DXGI_FORMAT_R8G8_SINT: return DXGI_FORMAT_R8G8_UNORM; - - case DXGI_FORMAT_R16_TYPELESS: - case DXGI_FORMAT_R16_FLOAT: - case DXGI_FORMAT_D16_UNORM: - case DXGI_FORMAT_R16_UINT: - case DXGI_FORMAT_R16_SNORM: - case DXGI_FORMAT_R16_SINT: return DXGI_FORMAT_R16_UNORM; - - case DXGI_FORMAT_R8_TYPELESS: - case DXGI_FORMAT_R8_UINT: - case DXGI_FORMAT_R8_SNORM: - case DXGI_FORMAT_R8_SINT: return DXGI_FORMAT_R8_UNORM; - - case DXGI_FORMAT_BC1_TYPELESS: - case DXGI_FORMAT_BC1_UNORM_SRGB: return DXGI_FORMAT_BC1_UNORM; - - case DXGI_FORMAT_BC2_TYPELESS: - case DXGI_FORMAT_BC2_UNORM_SRGB: return DXGI_FORMAT_BC2_UNORM; - - case DXGI_FORMAT_BC3_TYPELESS: - case DXGI_FORMAT_BC3_UNORM_SRGB: return DXGI_FORMAT_BC3_UNORM; - - case DXGI_FORMAT_BC4_TYPELESS: - case DXGI_FORMAT_BC4_SNORM: return DXGI_FORMAT_BC4_UNORM; - - case DXGI_FORMAT_BC5_TYPELESS: - case DXGI_FORMAT_BC5_SNORM: return DXGI_FORMAT_BC5_UNORM; - - case DXGI_FORMAT_B8G8R8A8_TYPELESS: return DXGI_FORMAT_B8G8R8A8_UNORM; - - case DXGI_FORMAT_B8G8R8X8_TYPELESS: return DXGI_FORMAT_B8G8R8X8_UNORM; - - case DXGI_FORMAT_BC6H_TYPELESS: - case DXGI_FORMAT_BC6H_SF16: return DXGI_FORMAT_BC6H_UF16; - - case DXGI_FORMAT_BC7_TYPELESS: - case DXGI_FORMAT_BC7_UNORM_SRGB: return DXGI_FORMAT_BC7_UNORM; - - default: break; - } - - return f; -} - -DXGI_FORMAT GetSnormTypedFormat(DXGI_FORMAT f) -{ - switch(f) - { - case DXGI_FORMAT_R16G16B16A16_TYPELESS: - case DXGI_FORMAT_R16G16B16A16_FLOAT: - case DXGI_FORMAT_R16G16B16A16_UNORM: - case DXGI_FORMAT_R16G16B16A16_UINT: - case DXGI_FORMAT_R16G16B16A16_SINT: return DXGI_FORMAT_R16G16B16A16_SNORM; - - case DXGI_FORMAT_R8G8B8A8_TYPELESS: - case DXGI_FORMAT_R8G8B8A8_UNORM: - case DXGI_FORMAT_R8G8B8A8_UNORM_SRGB: - case DXGI_FORMAT_R8G8B8A8_UINT: - case DXGI_FORMAT_R8G8B8A8_SINT: return DXGI_FORMAT_R8G8B8A8_SNORM; - - case DXGI_FORMAT_R16G16_TYPELESS: - case DXGI_FORMAT_R16G16_FLOAT: - case DXGI_FORMAT_R16G16_UNORM: - case DXGI_FORMAT_R16G16_UINT: - case DXGI_FORMAT_R16G16_SINT: return DXGI_FORMAT_R16G16_SNORM; - - case DXGI_FORMAT_R8G8_TYPELESS: - case DXGI_FORMAT_R8G8_UNORM: - case DXGI_FORMAT_R8G8_UINT: - case DXGI_FORMAT_R8G8_SINT: return DXGI_FORMAT_R8G8_SNORM; - - case DXGI_FORMAT_R16_TYPELESS: - case DXGI_FORMAT_R16_FLOAT: - case DXGI_FORMAT_D16_UNORM: - case DXGI_FORMAT_R16_UNORM: - case DXGI_FORMAT_R16_UINT: - case DXGI_FORMAT_R16_SINT: return DXGI_FORMAT_R16_SNORM; - - case DXGI_FORMAT_R8_TYPELESS: - case DXGI_FORMAT_R8_UNORM: - case DXGI_FORMAT_R8_UINT: - case DXGI_FORMAT_R8_SINT: - case DXGI_FORMAT_A8_UNORM: return DXGI_FORMAT_R8_SNORM; - - case DXGI_FORMAT_BC4_TYPELESS: - case DXGI_FORMAT_BC4_UNORM: return DXGI_FORMAT_BC4_SNORM; - - case DXGI_FORMAT_BC5_TYPELESS: - case DXGI_FORMAT_BC5_UNORM: return DXGI_FORMAT_BC5_SNORM; - - case DXGI_FORMAT_BC6H_TYPELESS: - case DXGI_FORMAT_BC6H_UF16: return DXGI_FORMAT_BC6H_SF16; - - default: break; - } - - return f; -} - -DXGI_FORMAT GetUIntTypedFormat(DXGI_FORMAT f) -{ - switch(f) - { - case DXGI_FORMAT_R32G32B32A32_TYPELESS: - case DXGI_FORMAT_R32G32B32A32_FLOAT: - case DXGI_FORMAT_R32G32B32A32_SINT: return DXGI_FORMAT_R32G32B32A32_UINT; - - case DXGI_FORMAT_R32G32B32_TYPELESS: - case DXGI_FORMAT_R32G32B32_FLOAT: - case DXGI_FORMAT_R32G32B32_SINT: return DXGI_FORMAT_R32G32B32_UINT; - - case DXGI_FORMAT_R16G16B16A16_TYPELESS: - case DXGI_FORMAT_R16G16B16A16_FLOAT: - case DXGI_FORMAT_R16G16B16A16_UNORM: - case DXGI_FORMAT_R16G16B16A16_SNORM: - case DXGI_FORMAT_R16G16B16A16_SINT: return DXGI_FORMAT_R16G16B16A16_UINT; - - case DXGI_FORMAT_R32G32_TYPELESS: - case DXGI_FORMAT_R32G32_FLOAT: - case DXGI_FORMAT_R32G32_SINT: return DXGI_FORMAT_R32G32_UINT; - - case DXGI_FORMAT_R32G8X24_TYPELESS: - case DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS: return DXGI_FORMAT_X32_TYPELESS_G8X24_UINT; - - case DXGI_FORMAT_R10G10B10A2_TYPELESS: - case DXGI_FORMAT_R10G10B10A2_UNORM: return DXGI_FORMAT_R10G10B10A2_UINT; - - case DXGI_FORMAT_R8G8B8A8_TYPELESS: - case DXGI_FORMAT_R8G8B8A8_UNORM: - case DXGI_FORMAT_R8G8B8A8_UNORM_SRGB: - case DXGI_FORMAT_R8G8B8A8_SNORM: - case DXGI_FORMAT_R8G8B8A8_SINT: return DXGI_FORMAT_R8G8B8A8_UINT; - - case DXGI_FORMAT_R16G16_TYPELESS: - case DXGI_FORMAT_R16G16_FLOAT: - case DXGI_FORMAT_R16G16_UNORM: - case DXGI_FORMAT_R16G16_SNORM: - case DXGI_FORMAT_R16G16_SINT: return DXGI_FORMAT_R16G16_UINT; - - case DXGI_FORMAT_R32_TYPELESS: - case DXGI_FORMAT_D32_FLOAT: - case DXGI_FORMAT_R32_FLOAT: - case DXGI_FORMAT_R32_SINT: return DXGI_FORMAT_R32_UINT; - - case DXGI_FORMAT_R24G8_TYPELESS: - case DXGI_FORMAT_R24_UNORM_X8_TYPELESS: return DXGI_FORMAT_X24_TYPELESS_G8_UINT; - - case DXGI_FORMAT_R8G8_TYPELESS: - case DXGI_FORMAT_R8G8_UNORM: - case DXGI_FORMAT_R8G8_SNORM: - case DXGI_FORMAT_R8G8_SINT: return DXGI_FORMAT_R8G8_UINT; - - case DXGI_FORMAT_R16_TYPELESS: - case DXGI_FORMAT_R16_FLOAT: - case DXGI_FORMAT_D16_UNORM: - case DXGI_FORMAT_R16_UNORM: - case DXGI_FORMAT_R16_SNORM: - case DXGI_FORMAT_R16_SINT: return DXGI_FORMAT_R16_UINT; - - case DXGI_FORMAT_R8_TYPELESS: - case DXGI_FORMAT_R8_UNORM: - case DXGI_FORMAT_R8_SNORM: - case DXGI_FORMAT_R8_SINT: - case DXGI_FORMAT_A8_UNORM: return DXGI_FORMAT_R8_UINT; - - default: break; - } - - return f; -} - -DXGI_FORMAT GetSIntTypedFormat(DXGI_FORMAT f) -{ - switch(f) - { - case DXGI_FORMAT_R32G32B32A32_TYPELESS: - case DXGI_FORMAT_R32G32B32A32_FLOAT: - case DXGI_FORMAT_R32G32B32A32_UINT: return DXGI_FORMAT_R32G32B32A32_SINT; - - case DXGI_FORMAT_R32G32B32_TYPELESS: - case DXGI_FORMAT_R32G32B32_FLOAT: - case DXGI_FORMAT_R32G32B32_UINT: return DXGI_FORMAT_R32G32B32_SINT; - - case DXGI_FORMAT_R16G16B16A16_TYPELESS: - case DXGI_FORMAT_R16G16B16A16_FLOAT: - case DXGI_FORMAT_R16G16B16A16_UNORM: - case DXGI_FORMAT_R16G16B16A16_UINT: - case DXGI_FORMAT_R16G16B16A16_SNORM: return DXGI_FORMAT_R16G16B16A16_SINT; - - case DXGI_FORMAT_R32G32_TYPELESS: - case DXGI_FORMAT_R32G32_FLOAT: - case DXGI_FORMAT_R32G32_UINT: return DXGI_FORMAT_R32G32_SINT; - - case DXGI_FORMAT_R8G8B8A8_TYPELESS: - case DXGI_FORMAT_R8G8B8A8_UNORM: - case DXGI_FORMAT_R8G8B8A8_UNORM_SRGB: - case DXGI_FORMAT_R8G8B8A8_UINT: - case DXGI_FORMAT_R8G8B8A8_SNORM: return DXGI_FORMAT_R8G8B8A8_SINT; - - case DXGI_FORMAT_R16G16_TYPELESS: - case DXGI_FORMAT_R16G16_FLOAT: - case DXGI_FORMAT_R16G16_UNORM: - case DXGI_FORMAT_R16G16_UINT: - case DXGI_FORMAT_R16G16_SNORM: return DXGI_FORMAT_R16G16_SINT; - - case DXGI_FORMAT_R32_TYPELESS: - case DXGI_FORMAT_D32_FLOAT: - case DXGI_FORMAT_R32_FLOAT: - case DXGI_FORMAT_R32_UINT: return DXGI_FORMAT_R32_SINT; - - case DXGI_FORMAT_R8G8_TYPELESS: - case DXGI_FORMAT_R8G8_UNORM: - case DXGI_FORMAT_R8G8_UINT: - case DXGI_FORMAT_R8G8_SNORM: return DXGI_FORMAT_R8G8_SINT; - - case DXGI_FORMAT_R16_TYPELESS: - case DXGI_FORMAT_R16_FLOAT: - case DXGI_FORMAT_D16_UNORM: - case DXGI_FORMAT_R16_UNORM: - case DXGI_FORMAT_R16_UINT: - case DXGI_FORMAT_R16_SNORM: return DXGI_FORMAT_R16_SINT; - - case DXGI_FORMAT_R8_TYPELESS: - case DXGI_FORMAT_R8_UNORM: - case DXGI_FORMAT_R8_UINT: - case DXGI_FORMAT_R8_SNORM: return DXGI_FORMAT_R8_SINT; - - default: break; - } - - return f; -} - -DXGI_FORMAT GetFloatTypedFormat(DXGI_FORMAT f) -{ - switch(f) - { - case DXGI_FORMAT_R32G32B32A32_TYPELESS: - case DXGI_FORMAT_R32G32B32A32_SINT: - case DXGI_FORMAT_R32G32B32A32_UINT: return DXGI_FORMAT_R32G32B32A32_FLOAT; - - case DXGI_FORMAT_R32G32B32_TYPELESS: - case DXGI_FORMAT_R32G32B32_SINT: - case DXGI_FORMAT_R32G32B32_UINT: return DXGI_FORMAT_R32G32B32_FLOAT; - - case DXGI_FORMAT_R16G16B16A16_TYPELESS: - case DXGI_FORMAT_R16G16B16A16_SINT: - case DXGI_FORMAT_R16G16B16A16_UINT: return DXGI_FORMAT_R16G16B16A16_FLOAT; - - case DXGI_FORMAT_R32G32_TYPELESS: - case DXGI_FORMAT_R32G32_SINT: - case DXGI_FORMAT_R32G32_UINT: return DXGI_FORMAT_R32G32_FLOAT; - - case DXGI_FORMAT_R10G10B10A2_TYPELESS: - case DXGI_FORMAT_R10G10B10A2_UINT: return DXGI_FORMAT_R10G10B10A2_UNORM; - - case DXGI_FORMAT_R8G8B8A8_TYPELESS: - case DXGI_FORMAT_R8G8B8A8_UNORM: - case DXGI_FORMAT_R8G8B8A8_UNORM_SRGB: - case DXGI_FORMAT_R8G8B8A8_UINT: - case DXGI_FORMAT_R8G8B8A8_SNORM: return DXGI_FORMAT_R8G8B8A8_UNORM; - - case DXGI_FORMAT_R16G16_TYPELESS: - case DXGI_FORMAT_R16G16_FLOAT: - case DXGI_FORMAT_R16G16_UNORM: - case DXGI_FORMAT_R16G16_UINT: - case DXGI_FORMAT_R16G16_SNORM: return DXGI_FORMAT_R16G16_FLOAT; - - case DXGI_FORMAT_R32_TYPELESS: - case DXGI_FORMAT_D32_FLOAT: - case DXGI_FORMAT_R32_FLOAT: - case DXGI_FORMAT_R32_UINT: return DXGI_FORMAT_R32_FLOAT; - - case DXGI_FORMAT_R8G8_TYPELESS: - case DXGI_FORMAT_R8G8_UNORM: - case DXGI_FORMAT_R8G8_UINT: - case DXGI_FORMAT_R8G8_SNORM: return DXGI_FORMAT_R8G8_UNORM; - - case DXGI_FORMAT_R16_TYPELESS: - case DXGI_FORMAT_R16_FLOAT: - case DXGI_FORMAT_D16_UNORM: - case DXGI_FORMAT_R16_UNORM: - case DXGI_FORMAT_R16_UINT: - case DXGI_FORMAT_R16_SNORM: return DXGI_FORMAT_R16_FLOAT; - - case DXGI_FORMAT_R8_TYPELESS: - case DXGI_FORMAT_R8_UNORM: - case DXGI_FORMAT_R8_UINT: - case DXGI_FORMAT_R8_SNORM: return DXGI_FORMAT_R8_UNORM; - } - - return GetTypedFormat(f); -} - -DXGI_FORMAT GetTypedFormat(DXGI_FORMAT f) -{ - switch(f) - { - case DXGI_FORMAT_R32G32B32A32_TYPELESS: return DXGI_FORMAT_R32G32B32A32_FLOAT; - - case DXGI_FORMAT_R32G32B32_TYPELESS: return DXGI_FORMAT_R32G32B32_FLOAT; - - case DXGI_FORMAT_R16G16B16A16_TYPELESS: return DXGI_FORMAT_R16G16B16A16_FLOAT; - - case DXGI_FORMAT_R32G32_TYPELESS: return DXGI_FORMAT_R32G32_FLOAT; - - case DXGI_FORMAT_R32G8X24_TYPELESS: return DXGI_FORMAT_R32G8X24_TYPELESS; - - case DXGI_FORMAT_R10G10B10A2_TYPELESS: return DXGI_FORMAT_R10G10B10A2_UNORM; - - case DXGI_FORMAT_R8G8B8A8_TYPELESS: return DXGI_FORMAT_R8G8B8A8_UNORM; - - case DXGI_FORMAT_R16G16_TYPELESS: return DXGI_FORMAT_R16G16_FLOAT; - - case DXGI_FORMAT_R32_TYPELESS: - return DXGI_FORMAT_R32_FLOAT; - - // maybe not valid casts? - case DXGI_FORMAT_R24G8_TYPELESS: return DXGI_FORMAT_R24_UNORM_X8_TYPELESS; - - case DXGI_FORMAT_B8G8R8A8_TYPELESS: return DXGI_FORMAT_B8G8R8A8_UNORM; - - case DXGI_FORMAT_B8G8R8X8_TYPELESS: return DXGI_FORMAT_B8G8R8X8_UNORM; - - case DXGI_FORMAT_R8G8_TYPELESS: return DXGI_FORMAT_R8G8_UNORM; - - case DXGI_FORMAT_R16_TYPELESS: return DXGI_FORMAT_R16_UNORM; - - case DXGI_FORMAT_R8_TYPELESS: return DXGI_FORMAT_R8_UNORM; - - case DXGI_FORMAT_BC1_TYPELESS: return DXGI_FORMAT_BC1_UNORM; - - case DXGI_FORMAT_BC4_TYPELESS: return DXGI_FORMAT_BC4_UNORM; - - case DXGI_FORMAT_BC2_TYPELESS: return DXGI_FORMAT_BC2_UNORM; - - case DXGI_FORMAT_BC3_TYPELESS: return DXGI_FORMAT_BC3_UNORM; - - case DXGI_FORMAT_BC5_TYPELESS: return DXGI_FORMAT_BC5_UNORM; - - case DXGI_FORMAT_BC6H_TYPELESS: return DXGI_FORMAT_BC6H_UF16; - - case DXGI_FORMAT_BC7_TYPELESS: return DXGI_FORMAT_BC7_UNORM; - - default: break; - } - - return f; -} - -DXGI_FORMAT GetTypedFormat(DXGI_FORMAT f, FormatComponentType typeHint) -{ - switch(f) - { - // these formats have multiple typed formats - use the hint to decide which to use - - case DXGI_FORMAT_R8_TYPELESS: - { - if(typeHint == eCompType_UInt) - return DXGI_FORMAT_R8_UINT; - if(typeHint == eCompType_SInt) - return DXGI_FORMAT_R8_SINT; - if(typeHint == eCompType_SNorm) - return DXGI_FORMAT_R8_SNORM; - return DXGI_FORMAT_R8_UNORM; - } - - case DXGI_FORMAT_R8G8_TYPELESS: - { - if(typeHint == eCompType_UInt) - return DXGI_FORMAT_R8G8_UINT; - if(typeHint == eCompType_SInt) - return DXGI_FORMAT_R8G8_SINT; - if(typeHint == eCompType_SNorm) - return DXGI_FORMAT_R8G8_SNORM; - return DXGI_FORMAT_R8G8_UNORM; - } - - case DXGI_FORMAT_R8G8B8A8_TYPELESS: - { - if(typeHint == eCompType_UInt) - return DXGI_FORMAT_R8G8B8A8_UINT; - if(typeHint == eCompType_SInt) - return DXGI_FORMAT_R8G8B8A8_SINT; - if(typeHint == eCompType_SNorm) - return DXGI_FORMAT_R8G8B8A8_SNORM; - return DXGI_FORMAT_R8G8B8A8_UNORM; - } - - case DXGI_FORMAT_R16_TYPELESS: - { - if(typeHint == eCompType_UInt) - return DXGI_FORMAT_R16_UINT; - if(typeHint == eCompType_SInt) - return DXGI_FORMAT_R16_SINT; - if(typeHint == eCompType_SNorm) - return DXGI_FORMAT_R16_SNORM; - if(typeHint == eCompType_Float) - return DXGI_FORMAT_R16_FLOAT; - if(typeHint == eCompType_Depth) - return DXGI_FORMAT_D16_UNORM; - return DXGI_FORMAT_R16_UNORM; - } - - case DXGI_FORMAT_R16G16_TYPELESS: - { - if(typeHint == eCompType_UInt) - return DXGI_FORMAT_R16G16_UINT; - if(typeHint == eCompType_SInt) - return DXGI_FORMAT_R16G16_SINT; - if(typeHint == eCompType_SNorm) - return DXGI_FORMAT_R16G16_SNORM; - if(typeHint == eCompType_Float) - return DXGI_FORMAT_R16G16_FLOAT; - return DXGI_FORMAT_R16G16_UNORM; - } - - case DXGI_FORMAT_R16G16B16A16_TYPELESS: - { - if(typeHint == eCompType_UInt) - return DXGI_FORMAT_R16G16B16A16_UINT; - if(typeHint == eCompType_SInt) - return DXGI_FORMAT_R16G16B16A16_SINT; - if(typeHint == eCompType_SNorm) - return DXGI_FORMAT_R16G16B16A16_SNORM; - if(typeHint == eCompType_Float) - return DXGI_FORMAT_R16G16B16A16_FLOAT; - return DXGI_FORMAT_R16G16B16A16_UNORM; - } - - case DXGI_FORMAT_R32_TYPELESS: - { - if(typeHint == eCompType_UInt) - return DXGI_FORMAT_R32_UINT; - if(typeHint == eCompType_SInt) - return DXGI_FORMAT_R32_SINT; - if(typeHint == eCompType_Depth) - return DXGI_FORMAT_D32_FLOAT; - return DXGI_FORMAT_R32_FLOAT; - } - - case DXGI_FORMAT_R32G32_TYPELESS: - { - if(typeHint == eCompType_UInt) - return DXGI_FORMAT_R32G32_UINT; - if(typeHint == eCompType_SInt) - return DXGI_FORMAT_R32G32_SINT; - return DXGI_FORMAT_R32G32_FLOAT; - } - - case DXGI_FORMAT_R32G32B32_TYPELESS: - { - if(typeHint == eCompType_UInt) - return DXGI_FORMAT_R32G32B32_UINT; - if(typeHint == eCompType_SInt) - return DXGI_FORMAT_R32G32B32_SINT; - return DXGI_FORMAT_R32G32B32_FLOAT; - } - - case DXGI_FORMAT_R32G32B32A32_TYPELESS: - { - if(typeHint == eCompType_UInt) - return DXGI_FORMAT_R32G32B32A32_UINT; - if(typeHint == eCompType_SInt) - return DXGI_FORMAT_R32G32B32A32_SINT; - return DXGI_FORMAT_R32G32B32A32_FLOAT; - } - - case DXGI_FORMAT_R32G8X24_TYPELESS: - { - if(typeHint == eCompType_UInt) - return DXGI_FORMAT_X32_TYPELESS_G8X24_UINT; - if(typeHint == eCompType_Depth) - return DXGI_FORMAT_D32_FLOAT_S8X24_UINT; - return DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS; - } - - case DXGI_FORMAT_R24G8_TYPELESS: - { - if(typeHint == eCompType_UInt) - return DXGI_FORMAT_X24_TYPELESS_G8_UINT; - if(typeHint == eCompType_Depth) - return DXGI_FORMAT_D24_UNORM_S8_UINT; - return DXGI_FORMAT_R24_UNORM_X8_TYPELESS; - } - - case DXGI_FORMAT_R10G10B10A2_TYPELESS: - return typeHint == eCompType_UInt ? DXGI_FORMAT_R10G10B10A2_UINT - : DXGI_FORMAT_R10G10B10A2_UNORM; - - case DXGI_FORMAT_BC4_TYPELESS: - return typeHint == eCompType_SNorm ? DXGI_FORMAT_BC4_SNORM : DXGI_FORMAT_BC4_UNORM; - - case DXGI_FORMAT_BC5_TYPELESS: - return typeHint == eCompType_SNorm ? DXGI_FORMAT_BC5_SNORM : DXGI_FORMAT_BC5_UNORM; - - case DXGI_FORMAT_BC6H_TYPELESS: - return typeHint == eCompType_SNorm ? DXGI_FORMAT_BC6H_SF16 : DXGI_FORMAT_BC6H_UF16; - - // these formats have only one valid non-typeless format (ignoring SRGB) - case DXGI_FORMAT_B8G8R8A8_TYPELESS: return DXGI_FORMAT_B8G8R8A8_UNORM; - case DXGI_FORMAT_B8G8R8X8_TYPELESS: return DXGI_FORMAT_B8G8R8X8_UNORM; - case DXGI_FORMAT_BC1_TYPELESS: return DXGI_FORMAT_BC1_UNORM; - case DXGI_FORMAT_BC2_TYPELESS: return DXGI_FORMAT_BC2_UNORM; - case DXGI_FORMAT_BC3_TYPELESS: return DXGI_FORMAT_BC3_UNORM; - case DXGI_FORMAT_BC7_TYPELESS: return DXGI_FORMAT_BC7_UNORM; - - default: break; - } - - return f; -} - -DXGI_FORMAT GetTypelessFormat(DXGI_FORMAT f) -{ - switch(f) - { - case DXGI_FORMAT_R32G32B32A32_TYPELESS: - case DXGI_FORMAT_R32G32B32A32_FLOAT: - case DXGI_FORMAT_R32G32B32A32_UINT: - case DXGI_FORMAT_R32G32B32A32_SINT: return DXGI_FORMAT_R32G32B32A32_TYPELESS; - - case DXGI_FORMAT_R32G32B32_TYPELESS: - case DXGI_FORMAT_R32G32B32_FLOAT: - case DXGI_FORMAT_R32G32B32_UINT: - case DXGI_FORMAT_R32G32B32_SINT: return DXGI_FORMAT_R32G32B32_TYPELESS; - - case DXGI_FORMAT_R16G16B16A16_TYPELESS: - case DXGI_FORMAT_R16G16B16A16_FLOAT: - case DXGI_FORMAT_R16G16B16A16_UNORM: - case DXGI_FORMAT_R16G16B16A16_UINT: - case DXGI_FORMAT_R16G16B16A16_SNORM: - case DXGI_FORMAT_R16G16B16A16_SINT: return DXGI_FORMAT_R16G16B16A16_TYPELESS; - - case DXGI_FORMAT_R32G32_TYPELESS: - case DXGI_FORMAT_R32G32_FLOAT: - case DXGI_FORMAT_R32G32_UINT: - case DXGI_FORMAT_R32G32_SINT: return DXGI_FORMAT_R32G32_TYPELESS; - - case DXGI_FORMAT_R32G8X24_TYPELESS: - case DXGI_FORMAT_D32_FLOAT_S8X24_UINT: - case DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS: - case DXGI_FORMAT_X32_TYPELESS_G8X24_UINT: return DXGI_FORMAT_R32G8X24_TYPELESS; - - case DXGI_FORMAT_R10G10B10A2_TYPELESS: - case DXGI_FORMAT_R10G10B10A2_UNORM: - case DXGI_FORMAT_R10G10B10A2_UINT: - case DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM: // maybe not valid cast? - return DXGI_FORMAT_R10G10B10A2_TYPELESS; - - case DXGI_FORMAT_R8G8B8A8_TYPELESS: - case DXGI_FORMAT_R8G8B8A8_UNORM: - case DXGI_FORMAT_R8G8B8A8_UNORM_SRGB: - case DXGI_FORMAT_R8G8B8A8_UINT: - case DXGI_FORMAT_R8G8B8A8_SNORM: - case DXGI_FORMAT_R8G8B8A8_SINT: return DXGI_FORMAT_R8G8B8A8_TYPELESS; - - case DXGI_FORMAT_R16G16_TYPELESS: - case DXGI_FORMAT_R16G16_FLOAT: - case DXGI_FORMAT_R16G16_UNORM: - case DXGI_FORMAT_R16G16_UINT: - case DXGI_FORMAT_R16G16_SNORM: - case DXGI_FORMAT_R16G16_SINT: return DXGI_FORMAT_R16G16_TYPELESS; - - case DXGI_FORMAT_R32_TYPELESS: - case DXGI_FORMAT_D32_FLOAT: // maybe not valid cast? - case DXGI_FORMAT_R32_FLOAT: - case DXGI_FORMAT_R32_UINT: - case DXGI_FORMAT_R32_SINT: - return DXGI_FORMAT_R32_TYPELESS; - - // maybe not valid casts? - case DXGI_FORMAT_R24G8_TYPELESS: - case DXGI_FORMAT_D24_UNORM_S8_UINT: - case DXGI_FORMAT_R24_UNORM_X8_TYPELESS: - case DXGI_FORMAT_X24_TYPELESS_G8_UINT: return DXGI_FORMAT_R24G8_TYPELESS; - - case DXGI_FORMAT_B8G8R8A8_TYPELESS: - case DXGI_FORMAT_B8G8R8A8_UNORM: - case DXGI_FORMAT_B8G8R8A8_UNORM_SRGB: - case DXGI_FORMAT_R8G8_B8G8_UNORM: // maybe not valid cast? - case DXGI_FORMAT_G8R8_G8B8_UNORM: // maybe not valid cast? - return DXGI_FORMAT_B8G8R8A8_TYPELESS; - - case DXGI_FORMAT_B8G8R8X8_UNORM: - case DXGI_FORMAT_B8G8R8X8_TYPELESS: - case DXGI_FORMAT_B8G8R8X8_UNORM_SRGB: return DXGI_FORMAT_B8G8R8X8_TYPELESS; - - case DXGI_FORMAT_R8G8_TYPELESS: - case DXGI_FORMAT_R8G8_UNORM: - case DXGI_FORMAT_R8G8_UINT: - case DXGI_FORMAT_R8G8_SNORM: - case DXGI_FORMAT_R8G8_SINT: return DXGI_FORMAT_R8G8_TYPELESS; - - case DXGI_FORMAT_R16_TYPELESS: - case DXGI_FORMAT_R16_FLOAT: - case DXGI_FORMAT_D16_UNORM: - case DXGI_FORMAT_R16_UNORM: - case DXGI_FORMAT_R16_UINT: - case DXGI_FORMAT_R16_SNORM: - case DXGI_FORMAT_R16_SINT: return DXGI_FORMAT_R16_TYPELESS; - - case DXGI_FORMAT_R8_TYPELESS: - case DXGI_FORMAT_R8_UNORM: - case DXGI_FORMAT_R8_UINT: - case DXGI_FORMAT_R8_SNORM: - case DXGI_FORMAT_R8_SINT: - case DXGI_FORMAT_A8_UNORM: return DXGI_FORMAT_R8_TYPELESS; - - case DXGI_FORMAT_BC1_TYPELESS: - case DXGI_FORMAT_BC1_UNORM: - case DXGI_FORMAT_BC1_UNORM_SRGB: return DXGI_FORMAT_BC1_TYPELESS; - - case DXGI_FORMAT_BC4_TYPELESS: - case DXGI_FORMAT_BC4_UNORM: - case DXGI_FORMAT_BC4_SNORM: return DXGI_FORMAT_BC4_TYPELESS; - - case DXGI_FORMAT_BC2_TYPELESS: - case DXGI_FORMAT_BC2_UNORM: - case DXGI_FORMAT_BC2_UNORM_SRGB: return DXGI_FORMAT_BC2_TYPELESS; - - case DXGI_FORMAT_BC3_TYPELESS: - case DXGI_FORMAT_BC3_UNORM: - case DXGI_FORMAT_BC3_UNORM_SRGB: return DXGI_FORMAT_BC3_TYPELESS; - - case DXGI_FORMAT_BC5_TYPELESS: - case DXGI_FORMAT_BC5_UNORM: - case DXGI_FORMAT_BC5_SNORM: return DXGI_FORMAT_BC5_TYPELESS; - - case DXGI_FORMAT_BC6H_TYPELESS: - case DXGI_FORMAT_BC6H_UF16: - case DXGI_FORMAT_BC6H_SF16: return DXGI_FORMAT_BC6H_TYPELESS; - - case DXGI_FORMAT_BC7_TYPELESS: - case DXGI_FORMAT_BC7_UNORM: - case DXGI_FORMAT_BC7_UNORM_SRGB: return DXGI_FORMAT_BC7_TYPELESS; - - case DXGI_FORMAT_R1_UNORM: - case DXGI_FORMAT_R9G9B9E5_SHAREDEXP: - case DXGI_FORMAT_B5G6R5_UNORM: - case DXGI_FORMAT_B5G5R5A1_UNORM: - case DXGI_FORMAT_R11G11B10_FLOAT: - case DXGI_FORMAT_AYUV: - case DXGI_FORMAT_Y410: - case DXGI_FORMAT_YUY2: - case DXGI_FORMAT_Y416: - case DXGI_FORMAT_NV12: - case DXGI_FORMAT_P010: - case DXGI_FORMAT_P016: - case DXGI_FORMAT_420_OPAQUE: - case DXGI_FORMAT_Y210: - case DXGI_FORMAT_Y216: - case DXGI_FORMAT_NV11: - case DXGI_FORMAT_AI44: - case DXGI_FORMAT_IA44: - case DXGI_FORMAT_P8: - case DXGI_FORMAT_A8P8: - case DXGI_FORMAT_P208: - case DXGI_FORMAT_V208: - case DXGI_FORMAT_V408: - case DXGI_FORMAT_B4G4R4A4_UNORM: - RDCERR("No Typeless DXGI Format for %d", f); - return DXGI_FORMAT_UNKNOWN; - - case DXGI_FORMAT_UNKNOWN: - RDCWARN("Getting Typeless format of DXGI_FORMAT_UNKNOWN"); - return DXGI_FORMAT_UNKNOWN; - - default: RDCERR("Unrecognised DXGI Format: %d", f); return DXGI_FORMAT_UNKNOWN; - } -} - string ToStrHelper::Get(const ResourceType &el) { switch(el) diff --git a/renderdoc/driver/d3d11/d3d11_resources.h b/renderdoc/driver/d3d11/d3d11_resources.h index 3508a0e40..0ed004938 100644 --- a/renderdoc/driver/d3d11/d3d11_resources.h +++ b/renderdoc/driver/d3d11/d3d11_resources.h @@ -95,14 +95,14 @@ private: extern const GUID RENDERDOC_ID3D11ShaderGUID_ShaderDebugMagicValue; template -class WrappedDeviceChild : public RefCounter, public NestedType2, public TrackedResource +class WrappedDeviceChild11 : public RefCounter, public NestedType2, public TrackedResource { protected: WrappedID3D11Device *m_pDevice; NestedType *m_pReal; unsigned int m_PipelineRefs; - WrappedDeviceChild(NestedType *real, WrappedID3D11Device *device) + WrappedDeviceChild11(NestedType *real, WrappedID3D11Device *device) : RefCounter(real), m_pDevice(device), m_pReal(real), m_PipelineRefs(0) { m_pDevice->SoftRef(); @@ -123,7 +123,7 @@ protected: m_pDevice = NULL; } - virtual ~WrappedDeviceChild() + virtual ~WrappedDeviceChild11() { // should have already called shutdown (needs to be called from child class to ensure // vtables are still in place when we call ReleaseResource) @@ -213,7 +213,7 @@ public: return hr; } - auto dxgiWrapper = new WrappedDXGIInterface(this, m_pDevice); + auto dxgiWrapper = new WrappedDXGIInterface(this, m_pDevice); // anything could happen outside of our wrapped ecosystem, so immediately mark dirty m_pDevice->GetResourceManager()->MarkDirtyResource(GetResourceID()); @@ -315,7 +315,7 @@ public: }; template -class WrappedResource : public WrappedDeviceChild +class WrappedResource11 : public WrappedDeviceChild11 { private: unsigned int m_ViewRefcount; // refcount from views (invisible to the end-user) @@ -325,8 +325,8 @@ protected: DescType m_Desc; #endif - WrappedResource(NestedType *real, WrappedID3D11Device *device) - : WrappedDeviceChild(real, device), m_ViewRefcount(0) + WrappedResource11(NestedType *real, WrappedID3D11Device *device) + : WrappedDeviceChild11(real, device), m_ViewRefcount(0) { #if !defined(RELEASE) real->GetDesc(&m_Desc); @@ -336,8 +336,8 @@ protected: RefCounter::SetSelfDeleting(false); } - virtual void Shutdown() { WrappedDeviceChild::Shutdown(); } - virtual ~WrappedResource() {} + virtual void Shutdown() { WrappedDeviceChild11::Shutdown(); } + virtual ~WrappedResource11() {} public: void ViewAddRef() { @@ -384,7 +384,7 @@ public: return S_OK; } - return WrappedDeviceChild::QueryInterface(riid, ppvObject); + return WrappedDeviceChild11::QueryInterface(riid, ppvObject); } ////////////////////////////// @@ -420,7 +420,7 @@ public: } }; -class WrappedID3D11Buffer : public WrappedResource +class WrappedID3D11Buffer : public WrappedResource11 { public: struct BufferEntry @@ -437,7 +437,7 @@ public: ALLOCATE_WITH_WRAPPED_POOL(WrappedID3D11Buffer, AllocPoolCount, AllocPoolMaxByteSize); WrappedID3D11Buffer(ID3D11Buffer *real, uint32_t byteLength, WrappedID3D11Device *device) - : WrappedResource(real, device) + : WrappedResource11(real, device) { SCOPED_LOCK(m_pDevice->D3DLock()); @@ -463,7 +463,7 @@ public: }; template -class WrappedTexture : public WrappedResource +class WrappedTexture : public WrappedResource11 { public: struct TextureEntry @@ -479,7 +479,7 @@ public: static map m_TextureList; WrappedTexture(NestedType *real, WrappedID3D11Device *device, TextureDisplayType type) - : WrappedResource(real, device) + : WrappedResource11(real, device) { if(type != TEXDISPLAY_UNKNOWN) { @@ -602,26 +602,26 @@ public: } }; -class WrappedID3D11InputLayout : public WrappedDeviceChild +class WrappedID3D11InputLayout : public WrappedDeviceChild11 { public: ALLOCATE_WITH_WRAPPED_POOL(WrappedID3D11InputLayout); WrappedID3D11InputLayout(ID3D11InputLayout *real, WrappedID3D11Device *device) - : WrappedDeviceChild(real, device) + : WrappedDeviceChild11(real, device) { } virtual ~WrappedID3D11InputLayout() { Shutdown(); } }; class WrappedID3D11RasterizerState2 - : public WrappedDeviceChild + : public WrappedDeviceChild11 { public: ALLOCATE_WITH_WRAPPED_POOL(WrappedID3D11RasterizerState2); WrappedID3D11RasterizerState2(ID3D11RasterizerState *real, WrappedID3D11Device *device) - : WrappedDeviceChild(real, device) + : WrappedDeviceChild11(real, device) { } virtual ~WrappedID3D11RasterizerState2() { Shutdown(); } @@ -656,13 +656,13 @@ public: } }; -class WrappedID3D11BlendState1 : public WrappedDeviceChild +class WrappedID3D11BlendState1 : public WrappedDeviceChild11 { public: ALLOCATE_WITH_WRAPPED_POOL(WrappedID3D11BlendState1); WrappedID3D11BlendState1(ID3D11BlendState *real, WrappedID3D11Device *device) - : WrappedDeviceChild(real, device) + : WrappedDeviceChild11(real, device) { } virtual ~WrappedID3D11BlendState1() { Shutdown(); } @@ -685,13 +685,13 @@ public: } }; -class WrappedID3D11DepthStencilState : public WrappedDeviceChild +class WrappedID3D11DepthStencilState : public WrappedDeviceChild11 { public: ALLOCATE_WITH_WRAPPED_POOL(WrappedID3D11DepthStencilState); WrappedID3D11DepthStencilState(ID3D11DepthStencilState *real, WrappedID3D11Device *device) - : WrappedDeviceChild(real, device) + : WrappedDeviceChild11(real, device) { } virtual ~WrappedID3D11DepthStencilState() { Shutdown(); } @@ -704,13 +704,13 @@ public: } }; -class WrappedID3D11SamplerState : public WrappedDeviceChild +class WrappedID3D11SamplerState : public WrappedDeviceChild11 { public: ALLOCATE_WITH_WRAPPED_POOL(WrappedID3D11SamplerState); WrappedID3D11SamplerState(ID3D11SamplerState *real, WrappedID3D11Device *device) - : WrappedDeviceChild(real, device) + : WrappedDeviceChild11(real, device) { } virtual ~WrappedID3D11SamplerState() { Shutdown(); } @@ -721,14 +721,14 @@ public: }; template -class WrappedView1 : public WrappedDeviceChild +class WrappedView1 : public WrappedDeviceChild11 { protected: ID3D11Resource *m_pResource; ResourceId m_ResourceResID; WrappedView1(NestedType *real, WrappedID3D11Device *device, ID3D11Resource *res) - : WrappedDeviceChild(real, device), m_pResource(res) + : WrappedDeviceChild11(real, device), m_pResource(res) { m_ResourceResID = GetIDForResource(m_pResource); // cast is potentially invalid but functions in WrappedResource will be identical across each @@ -737,7 +737,7 @@ protected: virtual void Shutdown() { - WrappedDeviceChild::Shutdown(); + WrappedDeviceChild11::Shutdown(); // cast is potentially invalid but functions in WrappedResource will be identical across each ((WrappedID3D11Buffer *)m_pResource)->ViewRelease(); m_pResource = NULL; @@ -755,7 +755,7 @@ public: return S_OK; } - return WrappedDeviceChild::QueryInterface(riid, ppvObject); + return WrappedDeviceChild11::QueryInterface(riid, ppvObject); } ////////////////////////////// @@ -972,7 +972,7 @@ private: }; template -class WrappedID3D11Shader : public WrappedDeviceChild, public WrappedShader +class WrappedID3D11Shader : public WrappedDeviceChild11, public WrappedShader { public: static const int AllocPoolCount = 32 * 1024; @@ -982,20 +982,20 @@ public: WrappedID3D11Shader(RealShaderType *real, const byte *code, size_t codeLen, WrappedID3D11Device *device) - : WrappedDeviceChild(real, device), + : WrappedDeviceChild11(real, device), WrappedShader(GetResourceID(), code, codeLen) { } virtual ~WrappedID3D11Shader() { Shutdown(); } }; -class WrappedID3D11Counter : public WrappedDeviceChild +class WrappedID3D11Counter : public WrappedDeviceChild11 { public: ALLOCATE_WITH_WRAPPED_POOL(WrappedID3D11Counter); WrappedID3D11Counter(ID3D11Counter *real, WrappedID3D11Device *device) - : WrappedDeviceChild(real, device) + : WrappedDeviceChild11(real, device) { } virtual ~WrappedID3D11Counter() { Shutdown(); } @@ -1008,7 +1008,7 @@ public: return S_OK; } - return WrappedDeviceChild::QueryInterface(riid, ppvObject); + return WrappedDeviceChild11::QueryInterface(riid, ppvObject); } ////////////////////////////// @@ -1021,7 +1021,7 @@ public: void STDMETHODCALLTYPE GetDesc(__out D3D11_COUNTER_DESC *pDesc) { m_pReal->GetDesc(pDesc); } }; -class WrappedID3D11Query1 : public WrappedDeviceChild +class WrappedID3D11Query1 : public WrappedDeviceChild11 { public: static const int AllocPoolCount = 16 * 1024; @@ -1029,7 +1029,7 @@ public: ALLOCATE_WITH_WRAPPED_POOL(WrappedID3D11Query1, AllocPoolCount, AllocPoolMaxByteSize); WrappedID3D11Query1(ID3D11Query *real, WrappedID3D11Device *device) - : WrappedDeviceChild(real, device) + : WrappedDeviceChild11(real, device) { } virtual ~WrappedID3D11Query1() { Shutdown(); } @@ -1042,7 +1042,7 @@ public: return S_OK; } - return WrappedDeviceChild::QueryInterface(riid, ppvObject); + return WrappedDeviceChild11::QueryInterface(riid, ppvObject); } ////////////////////////////// @@ -1067,13 +1067,13 @@ public: } }; -class WrappedID3D11Predicate : public WrappedDeviceChild +class WrappedID3D11Predicate : public WrappedDeviceChild11 { public: ALLOCATE_WITH_WRAPPED_POOL(WrappedID3D11Predicate); WrappedID3D11Predicate(ID3D11Predicate *real, WrappedID3D11Device *device) - : WrappedDeviceChild(real, device) + : WrappedDeviceChild11(real, device) { } virtual ~WrappedID3D11Predicate() { Shutdown(); } @@ -1086,7 +1086,7 @@ public: return S_OK; } - return WrappedDeviceChild::QueryInterface(riid, ppvObject); + return WrappedDeviceChild11::QueryInterface(riid, ppvObject); } ////////////////////////////// @@ -1099,7 +1099,7 @@ public: void STDMETHODCALLTYPE GetDesc(__out D3D11_QUERY_DESC *pDesc) { m_pReal->GetDesc(pDesc); } }; -class WrappedID3D11ClassInstance : public WrappedDeviceChild +class WrappedID3D11ClassInstance : public WrappedDeviceChild11 { private: ID3D11ClassLinkage *m_pLinkage; @@ -1109,7 +1109,7 @@ public: WrappedID3D11ClassInstance(ID3D11ClassInstance *real, ID3D11ClassLinkage *linkage, WrappedID3D11Device *device) - : WrappedDeviceChild(real, device), m_pLinkage(linkage) + : WrappedDeviceChild11(real, device), m_pLinkage(linkage) { SAFE_ADDREF(m_pLinkage); } @@ -1159,13 +1159,13 @@ public: } }; -class WrappedID3D11ClassLinkage : public WrappedDeviceChild +class WrappedID3D11ClassLinkage : public WrappedDeviceChild11 { public: ALLOCATE_WITH_WRAPPED_POOL(WrappedID3D11ClassLinkage); WrappedID3D11ClassLinkage(ID3D11ClassLinkage *real, WrappedID3D11Device *device) - : WrappedDeviceChild(real, device) + : WrappedDeviceChild11(real, device) { } virtual ~WrappedID3D11ClassLinkage() { Shutdown(); } @@ -1237,7 +1237,7 @@ public: class WrappedID3D11DeviceContext; -class WrappedID3D11CommandList : public WrappedDeviceChild +class WrappedID3D11CommandList : public WrappedDeviceChild11 { WrappedID3D11DeviceContext *m_pContext; bool m_Successful; // indicates whether we have all of the commands serialised for this command @@ -1247,7 +1247,7 @@ public: WrappedID3D11CommandList(ID3D11CommandList *real, WrappedID3D11Device *device, WrappedID3D11DeviceContext *context, bool success) - : WrappedDeviceChild(real, device), m_pContext(context), m_Successful(success) + : WrappedDeviceChild11(real, device), m_pContext(context), m_Successful(success) { // context isn't defined type at this point. }