diff options
Diffstat (limited to 'src/3rdparty/angle/src/libANGLE/renderer/SurfaceImpl.h')
-rw-r--r-- | src/3rdparty/angle/src/libANGLE/renderer/SurfaceImpl.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/3rdparty/angle/src/libANGLE/renderer/SurfaceImpl.h b/src/3rdparty/angle/src/libANGLE/renderer/SurfaceImpl.h index ca04a42bd1..32125d542c 100644 --- a/src/3rdparty/angle/src/libANGLE/renderer/SurfaceImpl.h +++ b/src/3rdparty/angle/src/libANGLE/renderer/SurfaceImpl.h @@ -11,6 +11,8 @@ #include "common/angleutils.h" #include "libANGLE/Error.h" +#include "libANGLE/Framebuffer.h" +#include "libANGLE/FramebufferAttachment.h" namespace egl { @@ -21,17 +23,20 @@ struct Config; namespace rx { -class SurfaceImpl : angle::NonCopyable +class FramebufferImpl; + +class SurfaceImpl : public FramebufferAttachmentObjectImpl { public: SurfaceImpl(); virtual ~SurfaceImpl(); virtual egl::Error initialize() = 0; + virtual FramebufferImpl *createDefaultFramebuffer(const gl::Framebuffer::Data &data) = 0; virtual egl::Error swap() = 0; virtual egl::Error postSubBuffer(EGLint x, EGLint y, EGLint width, EGLint height) = 0; virtual egl::Error querySurfacePointerANGLE(EGLint attribute, void **value) = 0; - virtual egl::Error bindTexImage(EGLint buffer) = 0; + virtual egl::Error bindTexImage(gl::Texture *texture, EGLint buffer) = 0; virtual egl::Error releaseTexImage(EGLint buffer) = 0; virtual void setSwapInterval(EGLint interval) = 0; @@ -40,6 +45,7 @@ class SurfaceImpl : angle::NonCopyable virtual EGLint getHeight() const = 0; virtual EGLint isPostSubBufferSupported() const = 0; + virtual EGLint getSwapBehavior() const = 0; }; } |