diff options
Diffstat (limited to 'src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Clear11.h')
-rw-r--r-- | src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Clear11.h | 100 |
1 files changed, 0 insertions, 100 deletions
diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Clear11.h b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Clear11.h deleted file mode 100644 index a09812c42b..0000000000 --- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Clear11.h +++ /dev/null @@ -1,100 +0,0 @@ -// -// Copyright (c) 2013 The ANGLE Project Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. -// - -// Clear11.h: Framebuffer clear utility class. - -#ifndef LIBANGLE_RENDERER_D3D_D3D11_CLEAR11_H_ -#define LIBANGLE_RENDERER_D3D_D3D11_CLEAR11_H_ - -#include <map> -#include <vector> - -#include "libANGLE/angletypes.h" -#include "libANGLE/Error.h" -#include "libANGLE/Framebuffer.h" -#include "libANGLE/renderer/d3d/d3d11/renderer11_utils.h" - -namespace rx -{ -class Renderer11; -class RenderTarget11; -struct ClearParameters; - -template <typename T> -struct RtvDsvClearInfo -{ - T r, g, b, a; - float z; - float c1padding[3]; -}; - -class Clear11 : angle::NonCopyable -{ - public: - explicit Clear11(Renderer11 *renderer); - ~Clear11(); - - // Clears the framebuffer with the supplied clear parameters, assumes that the framebuffer is currently applied. - gl::Error clearFramebuffer(const gl::Context *context, - const ClearParameters &clearParams, - const gl::FramebufferState &fboData); - - private: - class ShaderManager final : angle::NonCopyable - { - public: - ShaderManager(); - ~ShaderManager(); - gl::Error getShadersAndLayout(Renderer11 *renderer, - const INT clearType, - const uint32_t numRTs, - const bool hasLayeredLayout, - const d3d11::InputLayout **il, - const d3d11::VertexShader **vs, - const d3d11::GeometryShader **gs, - const d3d11::PixelShader **ps); - - private: - constexpr static size_t kNumShaders = D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT; - - d3d11::InputLayout mIl9; - d3d11::LazyShader<ID3D11VertexShader> mVs9; - d3d11::LazyShader<ID3D11PixelShader> mPsFloat9; - d3d11::LazyShader<ID3D11VertexShader> mVs; - d3d11::LazyShader<ID3D11VertexShader> mVsMultiview; - d3d11::LazyShader<ID3D11GeometryShader> mGsMultiview; - d3d11::LazyShader<ID3D11PixelShader> mPsDepth; - std::array<d3d11::LazyShader<ID3D11PixelShader>, kNumShaders> mPsFloat; - std::array<d3d11::LazyShader<ID3D11PixelShader>, kNumShaders> mPsUInt; - std::array<d3d11::LazyShader<ID3D11PixelShader>, kNumShaders> mPsSInt; - }; - - bool useVertexBuffer() const; - gl::Error ensureConstantBufferCreated(); - gl::Error ensureVertexBufferCreated(); - gl::Error ensureResourcesInitialized(); - - Renderer11 *mRenderer; - bool mResourcesInitialized; - - // States - d3d11::RasterizerState mScissorEnabledRasterizerState; - d3d11::RasterizerState mScissorDisabledRasterizerState; - gl::DepthStencilState mDepthStencilStateKey; - d3d11::BlendStateKey mBlendStateKey; - - // Shaders and shader resources - ShaderManager mShaderManager; - d3d11::Buffer mConstantBuffer; - d3d11::Buffer mVertexBuffer; - - // Buffer data and draw parameters - RtvDsvClearInfo<float> mShaderData; -}; - -} // namespace rx - -#endif // LIBANGLE_RENDERER_D3D_D3D11_CLEAR11_H_ |