Hash :
7e44ec26
Author :
Date :
2019-08-26T15:59:48
GL_EXT_multisampled_render_to_texture extension. Part 1. Adding new parameters for extension without adding any real code change. Since no new code paths were added, we expect all tests to pass as before. Bug: angleproject:980428 Change-Id: I551b46a66f422eabd357fd021e00cf266a991efb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1772377 Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com> Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
//
// Copyright 2014 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.
//
// RenderbufferD3d.h: Defines the RenderbufferD3D class which implements RenderbufferImpl.
#ifndef LIBANGLE_RENDERER_D3D_RENDERBUFFERD3D_H_
#define LIBANGLE_RENDERER_D3D_RENDERBUFFERD3D_H_
#include "angle_gl.h"
#include "common/angleutils.h"
#include "libANGLE/renderer/RenderbufferImpl.h"
namespace rx
{
class EGLImageD3D;
class RendererD3D;
class RenderTargetD3D;
class SwapChainD3D;
class RenderbufferD3D : public RenderbufferImpl
{
public:
RenderbufferD3D(const gl::RenderbufferState &state, RendererD3D *renderer);
~RenderbufferD3D() override;
void onDestroy(const gl::Context *context) override;
angle::Result setStorage(const gl::Context *context,
GLenum internalformat,
size_t width,
size_t height) override;
angle::Result setStorageMultisample(const gl::Context *context,
size_t samples,
GLenum internalformat,
size_t width,
size_t height) override;
angle::Result setStorageEGLImageTarget(const gl::Context *context, egl::Image *image) override;
angle::Result getRenderTarget(const gl::Context *context, RenderTargetD3D **outRenderTarget);
angle::Result getAttachmentRenderTarget(const gl::Context *context,
GLenum binding,
const gl::ImageIndex &imageIndex,
GLsizei samples,
FramebufferAttachmentRenderTarget **rtOut) override;
angle::Result initializeContents(const gl::Context *context,
const gl::ImageIndex &imageIndex) override;
private:
RendererD3D *mRenderer;
RenderTargetD3D *mRenderTarget;
EGLImageD3D *mImage;
};
} // namespace rx
#endif // LIBANGLE_RENDERER_D3D_RENDERBUFFERD3D_H_