1 //
2 // Copyright 2016 The ANGLE Project Authors. All rights reserved.
3 // Use of this source code is governed by a BSD-style license that can be
4 // found in the LICENSE file.
5 //
6 // FramebufferNULL.cpp:
7 //    Implements the class methods for FramebufferNULL.
8 //
9 
10 #include "libANGLE/renderer/null/FramebufferNULL.h"
11 
12 #include "common/debug.h"
13 
14 namespace rx
15 {
16 
FramebufferNULL(const gl::FramebufferState & state)17 FramebufferNULL::FramebufferNULL(const gl::FramebufferState &state) : FramebufferImpl(state)
18 {
19 }
20 
~FramebufferNULL()21 FramebufferNULL::~FramebufferNULL()
22 {
23 }
24 
discard(size_t count,const GLenum * attachments)25 gl::Error FramebufferNULL::discard(size_t count, const GLenum *attachments)
26 {
27     UNIMPLEMENTED();
28     return gl::Error(GL_INVALID_OPERATION);
29 }
30 
invalidate(size_t count,const GLenum * attachments)31 gl::Error FramebufferNULL::invalidate(size_t count, const GLenum *attachments)
32 {
33     UNIMPLEMENTED();
34     return gl::Error(GL_INVALID_OPERATION);
35 }
36 
invalidateSub(size_t count,const GLenum * attachments,const gl::Rectangle & area)37 gl::Error FramebufferNULL::invalidateSub(size_t count,
38                                          const GLenum *attachments,
39                                          const gl::Rectangle &area)
40 {
41     UNIMPLEMENTED();
42     return gl::Error(GL_INVALID_OPERATION);
43 }
44 
clear(ContextImpl * context,GLbitfield mask)45 gl::Error FramebufferNULL::clear(ContextImpl *context, GLbitfield mask)
46 {
47     UNIMPLEMENTED();
48     return gl::Error(GL_INVALID_OPERATION);
49 }
50 
clearBufferfv(ContextImpl * context,GLenum buffer,GLint drawbuffer,const GLfloat * values)51 gl::Error FramebufferNULL::clearBufferfv(ContextImpl *context,
52                                          GLenum buffer,
53                                          GLint drawbuffer,
54                                          const GLfloat *values)
55 {
56     UNIMPLEMENTED();
57     return gl::Error(GL_INVALID_OPERATION);
58 }
59 
clearBufferuiv(ContextImpl * context,GLenum buffer,GLint drawbuffer,const GLuint * values)60 gl::Error FramebufferNULL::clearBufferuiv(ContextImpl *context,
61                                           GLenum buffer,
62                                           GLint drawbuffer,
63                                           const GLuint *values)
64 {
65     UNIMPLEMENTED();
66     return gl::Error(GL_INVALID_OPERATION);
67 }
68 
clearBufferiv(ContextImpl * context,GLenum buffer,GLint drawbuffer,const GLint * values)69 gl::Error FramebufferNULL::clearBufferiv(ContextImpl *context,
70                                          GLenum buffer,
71                                          GLint drawbuffer,
72                                          const GLint *values)
73 {
74     UNIMPLEMENTED();
75     return gl::Error(GL_INVALID_OPERATION);
76 }
77 
clearBufferfi(ContextImpl * context,GLenum buffer,GLint drawbuffer,GLfloat depth,GLint stencil)78 gl::Error FramebufferNULL::clearBufferfi(ContextImpl *context,
79                                          GLenum buffer,
80                                          GLint drawbuffer,
81                                          GLfloat depth,
82                                          GLint stencil)
83 {
84     UNIMPLEMENTED();
85     return gl::Error(GL_INVALID_OPERATION);
86 }
87 
getImplementationColorReadFormat() const88 GLenum FramebufferNULL::getImplementationColorReadFormat() const
89 {
90     UNIMPLEMENTED();
91     return GLenum();
92 }
93 
getImplementationColorReadType() const94 GLenum FramebufferNULL::getImplementationColorReadType() const
95 {
96     UNIMPLEMENTED();
97     return GLenum();
98 }
99 
readPixels(ContextImpl * context,const gl::Rectangle & area,GLenum format,GLenum type,GLvoid * pixels) const100 gl::Error FramebufferNULL::readPixels(ContextImpl *context,
101                                       const gl::Rectangle &area,
102                                       GLenum format,
103                                       GLenum type,
104                                       GLvoid *pixels) const
105 {
106     UNIMPLEMENTED();
107     return gl::Error(GL_INVALID_OPERATION);
108 }
109 
blit(ContextImpl * context,const gl::Rectangle & sourceArea,const gl::Rectangle & destArea,GLbitfield mask,GLenum filter)110 gl::Error FramebufferNULL::blit(ContextImpl *context,
111                                 const gl::Rectangle &sourceArea,
112                                 const gl::Rectangle &destArea,
113                                 GLbitfield mask,
114                                 GLenum filter)
115 {
116     UNIMPLEMENTED();
117     return gl::Error(GL_INVALID_OPERATION);
118 }
119 
checkStatus() const120 bool FramebufferNULL::checkStatus() const
121 {
122     UNIMPLEMENTED();
123     return bool();
124 }
125 
syncState(const gl::Framebuffer::DirtyBits & dirtyBits)126 void FramebufferNULL::syncState(const gl::Framebuffer::DirtyBits &dirtyBits)
127 {
128     UNIMPLEMENTED();
129 }
130 
131 }  // namespace rx
132