xref: /aosp_15_r20/external/angle/src/libANGLE/renderer/null/SurfaceNULL.cpp (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1*8975f5c5SAndroid Build Coastguard Worker //
2*8975f5c5SAndroid Build Coastguard Worker // Copyright 2016 The ANGLE Project Authors. All rights reserved.
3*8975f5c5SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be
4*8975f5c5SAndroid Build Coastguard Worker // found in the LICENSE file.
5*8975f5c5SAndroid Build Coastguard Worker //
6*8975f5c5SAndroid Build Coastguard Worker // SurfaceNULL.cpp:
7*8975f5c5SAndroid Build Coastguard Worker //    Implements the class methods for SurfaceNULL.
8*8975f5c5SAndroid Build Coastguard Worker //
9*8975f5c5SAndroid Build Coastguard Worker 
10*8975f5c5SAndroid Build Coastguard Worker #include "libANGLE/renderer/null/SurfaceNULL.h"
11*8975f5c5SAndroid Build Coastguard Worker 
12*8975f5c5SAndroid Build Coastguard Worker #include "common/debug.h"
13*8975f5c5SAndroid Build Coastguard Worker 
14*8975f5c5SAndroid Build Coastguard Worker #include "libANGLE/renderer/null/FramebufferNULL.h"
15*8975f5c5SAndroid Build Coastguard Worker 
16*8975f5c5SAndroid Build Coastguard Worker namespace rx
17*8975f5c5SAndroid Build Coastguard Worker {
18*8975f5c5SAndroid Build Coastguard Worker 
SurfaceNULL(const egl::SurfaceState & surfaceState)19*8975f5c5SAndroid Build Coastguard Worker SurfaceNULL::SurfaceNULL(const egl::SurfaceState &surfaceState) : SurfaceImpl(surfaceState) {}
20*8975f5c5SAndroid Build Coastguard Worker 
~SurfaceNULL()21*8975f5c5SAndroid Build Coastguard Worker SurfaceNULL::~SurfaceNULL() {}
22*8975f5c5SAndroid Build Coastguard Worker 
initialize(const egl::Display * display)23*8975f5c5SAndroid Build Coastguard Worker egl::Error SurfaceNULL::initialize(const egl::Display *display)
24*8975f5c5SAndroid Build Coastguard Worker {
25*8975f5c5SAndroid Build Coastguard Worker     return egl::NoError();
26*8975f5c5SAndroid Build Coastguard Worker }
27*8975f5c5SAndroid Build Coastguard Worker 
swap(const gl::Context * context)28*8975f5c5SAndroid Build Coastguard Worker egl::Error SurfaceNULL::swap(const gl::Context *context)
29*8975f5c5SAndroid Build Coastguard Worker {
30*8975f5c5SAndroid Build Coastguard Worker     return egl::NoError();
31*8975f5c5SAndroid Build Coastguard Worker }
32*8975f5c5SAndroid Build Coastguard Worker 
postSubBuffer(const gl::Context * context,EGLint x,EGLint y,EGLint width,EGLint height)33*8975f5c5SAndroid Build Coastguard Worker egl::Error SurfaceNULL::postSubBuffer(const gl::Context *context,
34*8975f5c5SAndroid Build Coastguard Worker                                       EGLint x,
35*8975f5c5SAndroid Build Coastguard Worker                                       EGLint y,
36*8975f5c5SAndroid Build Coastguard Worker                                       EGLint width,
37*8975f5c5SAndroid Build Coastguard Worker                                       EGLint height)
38*8975f5c5SAndroid Build Coastguard Worker {
39*8975f5c5SAndroid Build Coastguard Worker     return egl::NoError();
40*8975f5c5SAndroid Build Coastguard Worker }
41*8975f5c5SAndroid Build Coastguard Worker 
querySurfacePointerANGLE(EGLint attribute,void ** value)42*8975f5c5SAndroid Build Coastguard Worker egl::Error SurfaceNULL::querySurfacePointerANGLE(EGLint attribute, void **value)
43*8975f5c5SAndroid Build Coastguard Worker {
44*8975f5c5SAndroid Build Coastguard Worker     UNREACHABLE();
45*8975f5c5SAndroid Build Coastguard Worker     return egl::NoError();
46*8975f5c5SAndroid Build Coastguard Worker }
47*8975f5c5SAndroid Build Coastguard Worker 
bindTexImage(const gl::Context * context,gl::Texture * texture,EGLint buffer)48*8975f5c5SAndroid Build Coastguard Worker egl::Error SurfaceNULL::bindTexImage(const gl::Context *context,
49*8975f5c5SAndroid Build Coastguard Worker                                      gl::Texture *texture,
50*8975f5c5SAndroid Build Coastguard Worker                                      EGLint buffer)
51*8975f5c5SAndroid Build Coastguard Worker {
52*8975f5c5SAndroid Build Coastguard Worker     return egl::NoError();
53*8975f5c5SAndroid Build Coastguard Worker }
54*8975f5c5SAndroid Build Coastguard Worker 
releaseTexImage(const gl::Context * context,EGLint buffer)55*8975f5c5SAndroid Build Coastguard Worker egl::Error SurfaceNULL::releaseTexImage(const gl::Context *context, EGLint buffer)
56*8975f5c5SAndroid Build Coastguard Worker {
57*8975f5c5SAndroid Build Coastguard Worker     return egl::NoError();
58*8975f5c5SAndroid Build Coastguard Worker }
59*8975f5c5SAndroid Build Coastguard Worker 
getSyncValues(EGLuint64KHR * ust,EGLuint64KHR * msc,EGLuint64KHR * sbc)60*8975f5c5SAndroid Build Coastguard Worker egl::Error SurfaceNULL::getSyncValues(EGLuint64KHR *ust, EGLuint64KHR *msc, EGLuint64KHR *sbc)
61*8975f5c5SAndroid Build Coastguard Worker {
62*8975f5c5SAndroid Build Coastguard Worker     UNIMPLEMENTED();
63*8975f5c5SAndroid Build Coastguard Worker     return egl::EglBadAccess();
64*8975f5c5SAndroid Build Coastguard Worker }
65*8975f5c5SAndroid Build Coastguard Worker 
getMscRate(EGLint * numerator,EGLint * denominator)66*8975f5c5SAndroid Build Coastguard Worker egl::Error SurfaceNULL::getMscRate(EGLint *numerator, EGLint *denominator)
67*8975f5c5SAndroid Build Coastguard Worker {
68*8975f5c5SAndroid Build Coastguard Worker     UNIMPLEMENTED();
69*8975f5c5SAndroid Build Coastguard Worker     return egl::EglBadAccess();
70*8975f5c5SAndroid Build Coastguard Worker }
71*8975f5c5SAndroid Build Coastguard Worker 
setSwapInterval(const egl::Display * display,EGLint interval)72*8975f5c5SAndroid Build Coastguard Worker void SurfaceNULL::setSwapInterval(const egl::Display *display, EGLint interval) {}
73*8975f5c5SAndroid Build Coastguard Worker 
getWidth() const74*8975f5c5SAndroid Build Coastguard Worker EGLint SurfaceNULL::getWidth() const
75*8975f5c5SAndroid Build Coastguard Worker {
76*8975f5c5SAndroid Build Coastguard Worker     // TODO(geofflang): Read from an actual window?
77*8975f5c5SAndroid Build Coastguard Worker     return 100;
78*8975f5c5SAndroid Build Coastguard Worker }
79*8975f5c5SAndroid Build Coastguard Worker 
getHeight() const80*8975f5c5SAndroid Build Coastguard Worker EGLint SurfaceNULL::getHeight() const
81*8975f5c5SAndroid Build Coastguard Worker {
82*8975f5c5SAndroid Build Coastguard Worker     // TODO(geofflang): Read from an actual window?
83*8975f5c5SAndroid Build Coastguard Worker     return 100;
84*8975f5c5SAndroid Build Coastguard Worker }
85*8975f5c5SAndroid Build Coastguard Worker 
isPostSubBufferSupported() const86*8975f5c5SAndroid Build Coastguard Worker EGLint SurfaceNULL::isPostSubBufferSupported() const
87*8975f5c5SAndroid Build Coastguard Worker {
88*8975f5c5SAndroid Build Coastguard Worker     return EGL_TRUE;
89*8975f5c5SAndroid Build Coastguard Worker }
90*8975f5c5SAndroid Build Coastguard Worker 
getSwapBehavior() const91*8975f5c5SAndroid Build Coastguard Worker EGLint SurfaceNULL::getSwapBehavior() const
92*8975f5c5SAndroid Build Coastguard Worker {
93*8975f5c5SAndroid Build Coastguard Worker     return EGL_BUFFER_PRESERVED;
94*8975f5c5SAndroid Build Coastguard Worker }
95*8975f5c5SAndroid Build Coastguard Worker 
initializeContents(const gl::Context * context,GLenum binding,const gl::ImageIndex & imageIndex)96*8975f5c5SAndroid Build Coastguard Worker angle::Result SurfaceNULL::initializeContents(const gl::Context *context,
97*8975f5c5SAndroid Build Coastguard Worker                                               GLenum binding,
98*8975f5c5SAndroid Build Coastguard Worker                                               const gl::ImageIndex &imageIndex)
99*8975f5c5SAndroid Build Coastguard Worker {
100*8975f5c5SAndroid Build Coastguard Worker     return angle::Result::Continue;
101*8975f5c5SAndroid Build Coastguard Worker }
102*8975f5c5SAndroid Build Coastguard Worker 
attachToFramebuffer(const gl::Context * context,gl::Framebuffer * framebuffer)103*8975f5c5SAndroid Build Coastguard Worker egl::Error SurfaceNULL::attachToFramebuffer(const gl::Context *context,
104*8975f5c5SAndroid Build Coastguard Worker                                             gl::Framebuffer *framebuffer)
105*8975f5c5SAndroid Build Coastguard Worker {
106*8975f5c5SAndroid Build Coastguard Worker     return egl::NoError();
107*8975f5c5SAndroid Build Coastguard Worker }
108*8975f5c5SAndroid Build Coastguard Worker 
detachFromFramebuffer(const gl::Context * context,gl::Framebuffer * framebuffer)109*8975f5c5SAndroid Build Coastguard Worker egl::Error SurfaceNULL::detachFromFramebuffer(const gl::Context *context,
110*8975f5c5SAndroid Build Coastguard Worker                                               gl::Framebuffer *framebuffer)
111*8975f5c5SAndroid Build Coastguard Worker {
112*8975f5c5SAndroid Build Coastguard Worker     return egl::NoError();
113*8975f5c5SAndroid Build Coastguard Worker }
114*8975f5c5SAndroid Build Coastguard Worker 
115*8975f5c5SAndroid Build Coastguard Worker }  // namespace rx
116