1e5c31af7Sopenharmony_ci/*-------------------------------------------------------------------------
2e5c31af7Sopenharmony_ci * drawElements Quality Program OpenGL ES Utilities
3e5c31af7Sopenharmony_ci * ------------------------------------------------
4e5c31af7Sopenharmony_ci *
5e5c31af7Sopenharmony_ci * Copyright 2014 The Android Open Source Project
6e5c31af7Sopenharmony_ci *
7e5c31af7Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
8e5c31af7Sopenharmony_ci * you may not use this file except in compliance with the License.
9e5c31af7Sopenharmony_ci * You may obtain a copy of the License at
10e5c31af7Sopenharmony_ci *
11e5c31af7Sopenharmony_ci *      http://www.apache.org/licenses/LICENSE-2.0
12e5c31af7Sopenharmony_ci *
13e5c31af7Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
14e5c31af7Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
15e5c31af7Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16e5c31af7Sopenharmony_ci * See the License for the specific language governing permissions and
17e5c31af7Sopenharmony_ci * limitations under the License.
18e5c31af7Sopenharmony_ci *
19e5c31af7Sopenharmony_ci *//*!
20e5c31af7Sopenharmony_ci * \file
21e5c31af7Sopenharmony_ci * \brief Context wrapper that exposes sglr API as GL-compatible API.
22e5c31af7Sopenharmony_ci *//*--------------------------------------------------------------------*/
23e5c31af7Sopenharmony_ci
24e5c31af7Sopenharmony_ci#include "sglrContextWrapper.hpp"
25e5c31af7Sopenharmony_ci#include "sglrContext.hpp"
26e5c31af7Sopenharmony_ci
27e5c31af7Sopenharmony_cinamespace sglr
28e5c31af7Sopenharmony_ci{
29e5c31af7Sopenharmony_ci
30e5c31af7Sopenharmony_ciContextWrapper::ContextWrapper (void)
31e5c31af7Sopenharmony_ci : m_curCtx(DE_NULL)
32e5c31af7Sopenharmony_ci{
33e5c31af7Sopenharmony_ci}
34e5c31af7Sopenharmony_ci
35e5c31af7Sopenharmony_ciContextWrapper::~ContextWrapper (void)
36e5c31af7Sopenharmony_ci{
37e5c31af7Sopenharmony_ci}
38e5c31af7Sopenharmony_ci
39e5c31af7Sopenharmony_civoid ContextWrapper::setContext (Context* context)
40e5c31af7Sopenharmony_ci{
41e5c31af7Sopenharmony_ci	m_curCtx = context;
42e5c31af7Sopenharmony_ci}
43e5c31af7Sopenharmony_ci
44e5c31af7Sopenharmony_ciContext* ContextWrapper::getCurrentContext (void) const
45e5c31af7Sopenharmony_ci{
46e5c31af7Sopenharmony_ci	return m_curCtx;
47e5c31af7Sopenharmony_ci}
48e5c31af7Sopenharmony_ci
49e5c31af7Sopenharmony_ciint ContextWrapper::getWidth (void) const
50e5c31af7Sopenharmony_ci{
51e5c31af7Sopenharmony_ci	return m_curCtx->getWidth();
52e5c31af7Sopenharmony_ci}
53e5c31af7Sopenharmony_ci
54e5c31af7Sopenharmony_ciint ContextWrapper::getHeight (void) const
55e5c31af7Sopenharmony_ci{
56e5c31af7Sopenharmony_ci	return m_curCtx->getHeight();
57e5c31af7Sopenharmony_ci}
58e5c31af7Sopenharmony_ci
59e5c31af7Sopenharmony_civoid ContextWrapper::glViewport (int x, int y, int width, int height)
60e5c31af7Sopenharmony_ci{
61e5c31af7Sopenharmony_ci	m_curCtx->viewport(x, y, width, height);
62e5c31af7Sopenharmony_ci}
63e5c31af7Sopenharmony_ci
64e5c31af7Sopenharmony_civoid ContextWrapper::glActiveTexture (deUint32 texture)
65e5c31af7Sopenharmony_ci{
66e5c31af7Sopenharmony_ci	m_curCtx->activeTexture(texture);
67e5c31af7Sopenharmony_ci}
68e5c31af7Sopenharmony_ci
69e5c31af7Sopenharmony_civoid ContextWrapper::glBindTexture (deUint32 target, deUint32 texture)
70e5c31af7Sopenharmony_ci{
71e5c31af7Sopenharmony_ci	m_curCtx->bindTexture(target, texture);
72e5c31af7Sopenharmony_ci}
73e5c31af7Sopenharmony_ci
74e5c31af7Sopenharmony_civoid ContextWrapper::glGenTextures (int numTextures, deUint32* textures)
75e5c31af7Sopenharmony_ci{
76e5c31af7Sopenharmony_ci	m_curCtx->genTextures(numTextures, textures);
77e5c31af7Sopenharmony_ci}
78e5c31af7Sopenharmony_ci
79e5c31af7Sopenharmony_civoid ContextWrapper::glDeleteTextures (int numTextures, const deUint32* textures)
80e5c31af7Sopenharmony_ci{
81e5c31af7Sopenharmony_ci	m_curCtx->deleteTextures(numTextures, textures);
82e5c31af7Sopenharmony_ci}
83e5c31af7Sopenharmony_ci
84e5c31af7Sopenharmony_civoid ContextWrapper::glBindFramebuffer (deUint32 target, deUint32 framebuffer)
85e5c31af7Sopenharmony_ci{
86e5c31af7Sopenharmony_ci	m_curCtx->bindFramebuffer(target, framebuffer);
87e5c31af7Sopenharmony_ci}
88e5c31af7Sopenharmony_ci
89e5c31af7Sopenharmony_civoid ContextWrapper::glGenFramebuffers (int numFramebuffers, deUint32* framebuffers)
90e5c31af7Sopenharmony_ci{
91e5c31af7Sopenharmony_ci	m_curCtx->genFramebuffers(numFramebuffers, framebuffers);
92e5c31af7Sopenharmony_ci}
93e5c31af7Sopenharmony_ci
94e5c31af7Sopenharmony_civoid ContextWrapper::glDeleteFramebuffers (int numFramebuffers, const deUint32* framebuffers)
95e5c31af7Sopenharmony_ci{
96e5c31af7Sopenharmony_ci	m_curCtx->deleteFramebuffers(numFramebuffers, framebuffers);
97e5c31af7Sopenharmony_ci}
98e5c31af7Sopenharmony_ci
99e5c31af7Sopenharmony_civoid ContextWrapper::glBindRenderbuffer (deUint32 target, deUint32 renderbuffer)
100e5c31af7Sopenharmony_ci{
101e5c31af7Sopenharmony_ci	m_curCtx->bindRenderbuffer(target, renderbuffer);
102e5c31af7Sopenharmony_ci}
103e5c31af7Sopenharmony_ci
104e5c31af7Sopenharmony_civoid ContextWrapper::glGenRenderbuffers (int numRenderbuffers, deUint32* renderbuffers)
105e5c31af7Sopenharmony_ci{
106e5c31af7Sopenharmony_ci	m_curCtx->genRenderbuffers(numRenderbuffers, renderbuffers);
107e5c31af7Sopenharmony_ci}
108e5c31af7Sopenharmony_ci
109e5c31af7Sopenharmony_civoid ContextWrapper::glDeleteRenderbuffers (int numRenderbuffers, const deUint32* renderbuffers)
110e5c31af7Sopenharmony_ci{
111e5c31af7Sopenharmony_ci	m_curCtx->deleteRenderbuffers(numRenderbuffers, renderbuffers);
112e5c31af7Sopenharmony_ci}
113e5c31af7Sopenharmony_ci
114e5c31af7Sopenharmony_civoid ContextWrapper::glPixelStorei (deUint32 pname, int param)
115e5c31af7Sopenharmony_ci{
116e5c31af7Sopenharmony_ci	m_curCtx->pixelStorei(pname, param);
117e5c31af7Sopenharmony_ci}
118e5c31af7Sopenharmony_ci
119e5c31af7Sopenharmony_civoid ContextWrapper::glTexImage1D (deUint32 target, int level, int internalFormat, int width, int border, deUint32 format, deUint32 type, const void* data)
120e5c31af7Sopenharmony_ci{
121e5c31af7Sopenharmony_ci	m_curCtx->texImage1D(target, level, (deUint32)internalFormat, width, border, format, type, data);
122e5c31af7Sopenharmony_ci}
123e5c31af7Sopenharmony_ci
124e5c31af7Sopenharmony_civoid ContextWrapper::glTexImage2D (deUint32 target, int level, int internalFormat, int width, int height, int border, deUint32 format, deUint32 type, const void* data)
125e5c31af7Sopenharmony_ci{
126e5c31af7Sopenharmony_ci	m_curCtx->texImage2D(target, level, (deUint32)internalFormat, width, height, border, format, type, data);
127e5c31af7Sopenharmony_ci}
128e5c31af7Sopenharmony_ci
129e5c31af7Sopenharmony_civoid ContextWrapper::glTexImage3D (deUint32 target, int level, int internalFormat, int width, int height, int depth, int border, deUint32 format, deUint32 type, const void* data)
130e5c31af7Sopenharmony_ci{
131e5c31af7Sopenharmony_ci	m_curCtx->texImage3D(target, level, (deUint32)internalFormat, width, height, depth, border, format, type, data);
132e5c31af7Sopenharmony_ci}
133e5c31af7Sopenharmony_ci
134e5c31af7Sopenharmony_civoid ContextWrapper::glTexSubImage1D (deUint32 target, int level, int xoffset, int width, deUint32 format, deUint32 type, const void* data)
135e5c31af7Sopenharmony_ci{
136e5c31af7Sopenharmony_ci	m_curCtx->texSubImage1D(target, level, xoffset, width, format, type, data);
137e5c31af7Sopenharmony_ci}
138e5c31af7Sopenharmony_ci
139e5c31af7Sopenharmony_civoid ContextWrapper::glTexSubImage2D (deUint32 target, int level, int xoffset, int yoffset, int width, int height, deUint32 format, deUint32 type, const void* data)
140e5c31af7Sopenharmony_ci{
141e5c31af7Sopenharmony_ci	m_curCtx->texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, data);
142e5c31af7Sopenharmony_ci}
143e5c31af7Sopenharmony_ci
144e5c31af7Sopenharmony_civoid ContextWrapper::glTexSubImage3D (deUint32 target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, deUint32 format, deUint32 type, const void* data)
145e5c31af7Sopenharmony_ci{
146e5c31af7Sopenharmony_ci	m_curCtx->texSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, data);
147e5c31af7Sopenharmony_ci}
148e5c31af7Sopenharmony_ci
149e5c31af7Sopenharmony_civoid ContextWrapper::glCopyTexImage1D (deUint32 target, int level, deUint32 internalFormat, int x, int y, int width, int border)
150e5c31af7Sopenharmony_ci{
151e5c31af7Sopenharmony_ci	m_curCtx->copyTexImage1D(target, level, internalFormat, x, y, width, border);
152e5c31af7Sopenharmony_ci}
153e5c31af7Sopenharmony_ci
154e5c31af7Sopenharmony_civoid ContextWrapper::glCopyTexImage2D (deUint32 target, int level, deUint32 internalFormat, int x, int y, int width, int height, int border)
155e5c31af7Sopenharmony_ci{
156e5c31af7Sopenharmony_ci	m_curCtx->copyTexImage2D(target, level, internalFormat, x, y, width, height, border);
157e5c31af7Sopenharmony_ci}
158e5c31af7Sopenharmony_ci
159e5c31af7Sopenharmony_civoid ContextWrapper::glCopyTexSubImage1D (deUint32 target, int level, int xoffset, int x, int y, int width)
160e5c31af7Sopenharmony_ci{
161e5c31af7Sopenharmony_ci	m_curCtx->copyTexSubImage1D(target, level, xoffset, x, y, width);
162e5c31af7Sopenharmony_ci}
163e5c31af7Sopenharmony_ci
164e5c31af7Sopenharmony_civoid ContextWrapper::glCopyTexSubImage2D (deUint32 target, int level, int xoffset, int yoffset, int x, int y, int width, int height)
165e5c31af7Sopenharmony_ci{
166e5c31af7Sopenharmony_ci	m_curCtx->copyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
167e5c31af7Sopenharmony_ci}
168e5c31af7Sopenharmony_ci
169e5c31af7Sopenharmony_civoid ContextWrapper::glTexStorage2D (deUint32 target, int levels, deUint32 internalFormat, int width, int height)
170e5c31af7Sopenharmony_ci{
171e5c31af7Sopenharmony_ci	m_curCtx->texStorage2D(target, levels, internalFormat, width, height);
172e5c31af7Sopenharmony_ci}
173e5c31af7Sopenharmony_ci
174e5c31af7Sopenharmony_civoid ContextWrapper::glTexStorage3D (deUint32 target, int levels, deUint32 internalFormat, int width, int height, int depth)
175e5c31af7Sopenharmony_ci{
176e5c31af7Sopenharmony_ci	m_curCtx->texStorage3D(target, levels, internalFormat, width, height, depth);
177e5c31af7Sopenharmony_ci}
178e5c31af7Sopenharmony_ci
179e5c31af7Sopenharmony_civoid ContextWrapper::glTexParameteri (deUint32 target, deUint32 pname, int value)
180e5c31af7Sopenharmony_ci{
181e5c31af7Sopenharmony_ci	m_curCtx->texParameteri(target, pname, value);
182e5c31af7Sopenharmony_ci}
183e5c31af7Sopenharmony_ci
184e5c31af7Sopenharmony_civoid ContextWrapper::glUseProgram (deUint32 program)
185e5c31af7Sopenharmony_ci{
186e5c31af7Sopenharmony_ci	m_curCtx->useProgram(program);
187e5c31af7Sopenharmony_ci}
188e5c31af7Sopenharmony_ci
189e5c31af7Sopenharmony_civoid ContextWrapper::glFramebufferTexture2D (deUint32 target, deUint32 attachment, deUint32 textarget, deUint32 texture, int level)
190e5c31af7Sopenharmony_ci{
191e5c31af7Sopenharmony_ci	m_curCtx->framebufferTexture2D(target, attachment, textarget, texture, level);
192e5c31af7Sopenharmony_ci}
193e5c31af7Sopenharmony_ci
194e5c31af7Sopenharmony_civoid ContextWrapper::glFramebufferTextureLayer (deUint32 target, deUint32 attachment, deUint32 texture, int level, int layer)
195e5c31af7Sopenharmony_ci{
196e5c31af7Sopenharmony_ci	m_curCtx->framebufferTextureLayer(target, attachment, texture, level, layer);
197e5c31af7Sopenharmony_ci}
198e5c31af7Sopenharmony_ci
199e5c31af7Sopenharmony_civoid ContextWrapper::glFramebufferRenderbuffer (deUint32 target, deUint32 attachment, deUint32 renderbuffertarget, deUint32 renderbuffer)
200e5c31af7Sopenharmony_ci{
201e5c31af7Sopenharmony_ci	m_curCtx->framebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
202e5c31af7Sopenharmony_ci}
203e5c31af7Sopenharmony_ci
204e5c31af7Sopenharmony_cideUint32 ContextWrapper::glCheckFramebufferStatus (deUint32 target)
205e5c31af7Sopenharmony_ci{
206e5c31af7Sopenharmony_ci	return m_curCtx->checkFramebufferStatus(target);
207e5c31af7Sopenharmony_ci}
208e5c31af7Sopenharmony_ci
209e5c31af7Sopenharmony_civoid ContextWrapper::glGetFramebufferAttachmentParameteriv (deUint32 target, deUint32 attachment, deUint32 pname, int* params)
210e5c31af7Sopenharmony_ci{
211e5c31af7Sopenharmony_ci	m_curCtx->getFramebufferAttachmentParameteriv(target, attachment, pname, params);
212e5c31af7Sopenharmony_ci}
213e5c31af7Sopenharmony_ci
214e5c31af7Sopenharmony_civoid ContextWrapper::glRenderbufferStorage (deUint32 target, deUint32 internalformat, int width, int height)
215e5c31af7Sopenharmony_ci{
216e5c31af7Sopenharmony_ci	m_curCtx->renderbufferStorage(target, internalformat, width, height);
217e5c31af7Sopenharmony_ci}
218e5c31af7Sopenharmony_ci
219e5c31af7Sopenharmony_civoid ContextWrapper::glRenderbufferStorageMultisample (deUint32 target, int samples, deUint32 internalformat, int width, int height)
220e5c31af7Sopenharmony_ci{
221e5c31af7Sopenharmony_ci	m_curCtx->renderbufferStorageMultisample(target, samples, internalformat, width, height);
222e5c31af7Sopenharmony_ci}
223e5c31af7Sopenharmony_ci
224e5c31af7Sopenharmony_civoid ContextWrapper::glBindBuffer (deUint32 target, deUint32 buffer)
225e5c31af7Sopenharmony_ci{
226e5c31af7Sopenharmony_ci	m_curCtx->bindBuffer(target, buffer);
227e5c31af7Sopenharmony_ci}
228e5c31af7Sopenharmony_ci
229e5c31af7Sopenharmony_civoid ContextWrapper::glGenBuffers (int n, deUint32* buffers)
230e5c31af7Sopenharmony_ci{
231e5c31af7Sopenharmony_ci	m_curCtx->genBuffers(n, buffers);
232e5c31af7Sopenharmony_ci}
233e5c31af7Sopenharmony_ci
234e5c31af7Sopenharmony_civoid ContextWrapper::glDeleteBuffers (int n, const deUint32* buffers)
235e5c31af7Sopenharmony_ci{
236e5c31af7Sopenharmony_ci	m_curCtx->deleteBuffers(n, buffers);
237e5c31af7Sopenharmony_ci}
238e5c31af7Sopenharmony_ci
239e5c31af7Sopenharmony_civoid ContextWrapper::glBufferData (deUint32 target, deIntptr size, const void* data, deUint32 usage)
240e5c31af7Sopenharmony_ci{
241e5c31af7Sopenharmony_ci	m_curCtx->bufferData(target, size, data, usage);
242e5c31af7Sopenharmony_ci}
243e5c31af7Sopenharmony_ci
244e5c31af7Sopenharmony_civoid ContextWrapper::glBufferSubData (deUint32 target, deIntptr offset, deIntptr size, const void* data)
245e5c31af7Sopenharmony_ci{
246e5c31af7Sopenharmony_ci	m_curCtx->bufferSubData(target, offset, size, data);
247e5c31af7Sopenharmony_ci}
248e5c31af7Sopenharmony_ci
249e5c31af7Sopenharmony_civoid ContextWrapper::glClearColor (float red, float green, float blue, float alpha)
250e5c31af7Sopenharmony_ci{
251e5c31af7Sopenharmony_ci	m_curCtx->clearColor(red, green, blue, alpha);
252e5c31af7Sopenharmony_ci}
253e5c31af7Sopenharmony_ci
254e5c31af7Sopenharmony_civoid ContextWrapper::glClearDepthf (float depth)
255e5c31af7Sopenharmony_ci{
256e5c31af7Sopenharmony_ci	m_curCtx->clearDepthf(depth);
257e5c31af7Sopenharmony_ci}
258e5c31af7Sopenharmony_ci
259e5c31af7Sopenharmony_civoid ContextWrapper::glClearStencil (int stencil)
260e5c31af7Sopenharmony_ci{
261e5c31af7Sopenharmony_ci	m_curCtx->clearStencil(stencil);
262e5c31af7Sopenharmony_ci}
263e5c31af7Sopenharmony_ci
264e5c31af7Sopenharmony_civoid ContextWrapper::glClear (deUint32 buffers)
265e5c31af7Sopenharmony_ci{
266e5c31af7Sopenharmony_ci	m_curCtx->clear(buffers);
267e5c31af7Sopenharmony_ci}
268e5c31af7Sopenharmony_ci
269e5c31af7Sopenharmony_civoid ContextWrapper::glClearBufferiv (deUint32 buffer, int drawbuffer, const int* value)
270e5c31af7Sopenharmony_ci{
271e5c31af7Sopenharmony_ci	m_curCtx->clearBufferiv(buffer, drawbuffer, value);
272e5c31af7Sopenharmony_ci}
273e5c31af7Sopenharmony_ci
274e5c31af7Sopenharmony_civoid ContextWrapper::glClearBufferfv (deUint32 buffer, int drawbuffer, const float* value)
275e5c31af7Sopenharmony_ci{
276e5c31af7Sopenharmony_ci	m_curCtx->clearBufferfv(buffer, drawbuffer, value);
277e5c31af7Sopenharmony_ci}
278e5c31af7Sopenharmony_ci
279e5c31af7Sopenharmony_civoid ContextWrapper::glClearBufferuiv (deUint32 buffer, int drawbuffer, const deUint32* value)
280e5c31af7Sopenharmony_ci{
281e5c31af7Sopenharmony_ci	m_curCtx->clearBufferuiv(buffer, drawbuffer, value);
282e5c31af7Sopenharmony_ci}
283e5c31af7Sopenharmony_ci
284e5c31af7Sopenharmony_civoid ContextWrapper::glClearBufferfi (deUint32 buffer, int drawbuffer, float depth, int stencil)
285e5c31af7Sopenharmony_ci{
286e5c31af7Sopenharmony_ci	m_curCtx->clearBufferfi(buffer, drawbuffer, depth, stencil);
287e5c31af7Sopenharmony_ci}
288e5c31af7Sopenharmony_ci
289e5c31af7Sopenharmony_civoid ContextWrapper::glScissor (int x, int y, int width, int height)
290e5c31af7Sopenharmony_ci{
291e5c31af7Sopenharmony_ci	m_curCtx->scissor(x, y, width, height);
292e5c31af7Sopenharmony_ci}
293e5c31af7Sopenharmony_ci
294e5c31af7Sopenharmony_civoid ContextWrapper::glEnable (deUint32 cap)
295e5c31af7Sopenharmony_ci{
296e5c31af7Sopenharmony_ci	m_curCtx->enable(cap);
297e5c31af7Sopenharmony_ci}
298e5c31af7Sopenharmony_ci
299e5c31af7Sopenharmony_civoid ContextWrapper::glDisable (deUint32 cap)
300e5c31af7Sopenharmony_ci{
301e5c31af7Sopenharmony_ci	m_curCtx->disable(cap);
302e5c31af7Sopenharmony_ci}
303e5c31af7Sopenharmony_ci
304e5c31af7Sopenharmony_civoid ContextWrapper::glStencilFunc (deUint32 func, int ref, deUint32 mask)
305e5c31af7Sopenharmony_ci{
306e5c31af7Sopenharmony_ci	m_curCtx->stencilFunc(func, ref, mask);
307e5c31af7Sopenharmony_ci}
308e5c31af7Sopenharmony_ci
309e5c31af7Sopenharmony_civoid ContextWrapper::glStencilOp (deUint32 sfail, deUint32 dpfail, deUint32 dppass)
310e5c31af7Sopenharmony_ci{
311e5c31af7Sopenharmony_ci	m_curCtx->stencilOp(sfail, dpfail, dppass);
312e5c31af7Sopenharmony_ci}
313e5c31af7Sopenharmony_ci
314e5c31af7Sopenharmony_civoid ContextWrapper::glDepthFunc (deUint32 func)
315e5c31af7Sopenharmony_ci{
316e5c31af7Sopenharmony_ci	m_curCtx->depthFunc(func);
317e5c31af7Sopenharmony_ci}
318e5c31af7Sopenharmony_ci
319e5c31af7Sopenharmony_civoid ContextWrapper::glBlendEquation (deUint32 mode)
320e5c31af7Sopenharmony_ci{
321e5c31af7Sopenharmony_ci	m_curCtx->blendEquation(mode);
322e5c31af7Sopenharmony_ci}
323e5c31af7Sopenharmony_ci
324e5c31af7Sopenharmony_civoid ContextWrapper::glBlendEquationSeparate (deUint32 modeRGB, deUint32 modeAlpha)
325e5c31af7Sopenharmony_ci{
326e5c31af7Sopenharmony_ci	m_curCtx->blendEquationSeparate(modeRGB, modeAlpha);
327e5c31af7Sopenharmony_ci}
328e5c31af7Sopenharmony_ci
329e5c31af7Sopenharmony_civoid ContextWrapper::glBlendFunc (deUint32 src, deUint32 dst)
330e5c31af7Sopenharmony_ci{
331e5c31af7Sopenharmony_ci	m_curCtx->blendFunc(src, dst);
332e5c31af7Sopenharmony_ci}
333e5c31af7Sopenharmony_ci
334e5c31af7Sopenharmony_civoid ContextWrapper::glBlendFuncSeparate (deUint32 srcRGB, deUint32 dstRGB, deUint32 srcAlpha, deUint32 dstAlpha)
335e5c31af7Sopenharmony_ci{
336e5c31af7Sopenharmony_ci	m_curCtx->blendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha);
337e5c31af7Sopenharmony_ci}
338e5c31af7Sopenharmony_ci
339e5c31af7Sopenharmony_civoid ContextWrapper::glBlendColor (float red, float green, float blue, float alpha)
340e5c31af7Sopenharmony_ci{
341e5c31af7Sopenharmony_ci	m_curCtx->blendColor(red, green, blue, alpha);
342e5c31af7Sopenharmony_ci}
343e5c31af7Sopenharmony_ci
344e5c31af7Sopenharmony_civoid ContextWrapper::glColorMask (deBool r, deBool g, deBool b, deBool a)
345e5c31af7Sopenharmony_ci{
346e5c31af7Sopenharmony_ci	m_curCtx->colorMask(r, g, b, a);
347e5c31af7Sopenharmony_ci}
348e5c31af7Sopenharmony_ci
349e5c31af7Sopenharmony_civoid ContextWrapper::glDepthMask (deBool mask)
350e5c31af7Sopenharmony_ci{
351e5c31af7Sopenharmony_ci	m_curCtx->depthMask(mask);
352e5c31af7Sopenharmony_ci}
353e5c31af7Sopenharmony_ci
354e5c31af7Sopenharmony_civoid ContextWrapper::glStencilMask (deUint32 mask)
355e5c31af7Sopenharmony_ci{
356e5c31af7Sopenharmony_ci	m_curCtx->stencilMask(mask);
357e5c31af7Sopenharmony_ci}
358e5c31af7Sopenharmony_ci
359e5c31af7Sopenharmony_civoid ContextWrapper::glBlitFramebuffer (int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, deUint32 mask, deUint32 filter)
360e5c31af7Sopenharmony_ci{
361e5c31af7Sopenharmony_ci	m_curCtx->blitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
362e5c31af7Sopenharmony_ci}
363e5c31af7Sopenharmony_ci
364e5c31af7Sopenharmony_civoid ContextWrapper::glInvalidateSubFramebuffer (deUint32 target, int numAttachments, const deUint32* attachments, int x, int y, int width, int height)
365e5c31af7Sopenharmony_ci{
366e5c31af7Sopenharmony_ci	m_curCtx->invalidateSubFramebuffer(target, numAttachments, attachments, x, y, width, height);
367e5c31af7Sopenharmony_ci}
368e5c31af7Sopenharmony_ci
369e5c31af7Sopenharmony_civoid ContextWrapper::glInvalidateFramebuffer (deUint32 target, int numAttachments, const deUint32* attachments)
370e5c31af7Sopenharmony_ci{
371e5c31af7Sopenharmony_ci	m_curCtx->invalidateFramebuffer(target, numAttachments, attachments);
372e5c31af7Sopenharmony_ci}
373e5c31af7Sopenharmony_ci
374e5c31af7Sopenharmony_civoid ContextWrapper::glReadPixels (int x, int y, int width, int height, deUint32 format, deUint32 type, void* data)
375e5c31af7Sopenharmony_ci{
376e5c31af7Sopenharmony_ci	m_curCtx->readPixels(x, y, width, height, format, type, data);
377e5c31af7Sopenharmony_ci}
378e5c31af7Sopenharmony_ci
379e5c31af7Sopenharmony_cideUint32 ContextWrapper::glGetError (void)
380e5c31af7Sopenharmony_ci{
381e5c31af7Sopenharmony_ci	return m_curCtx->getError();
382e5c31af7Sopenharmony_ci}
383e5c31af7Sopenharmony_ci
384e5c31af7Sopenharmony_civoid ContextWrapper::glGetIntegerv (deUint32 pname, int* params)
385e5c31af7Sopenharmony_ci{
386e5c31af7Sopenharmony_ci	m_curCtx->getIntegerv(pname, params);
387e5c31af7Sopenharmony_ci}
388e5c31af7Sopenharmony_ci
389e5c31af7Sopenharmony_ci} // sglr
390