am ac0983ee: Merge "Remove mediump cos() tests from mustpass" into mnc-dev
[platform/upstream/VK-GL-CTS.git] / modules / egl / teglGLES2RenderUtil.cpp
1 /*-------------------------------------------------------------------------
2  * drawElements Quality Program EGL Module
3  * ---------------------------------------
4  *
5  * Copyright 2014 The Android Open Source Project
6  *
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  *
19  *//*!
20  * \file
21  * \brief GLES2 render utils.
22  *//*--------------------------------------------------------------------*/
23
24 #include "teglGLES2RenderUtil.hpp"
25 #include "glwFunctions.hpp"
26 #include "glwEnums.hpp"
27
28 namespace deqp
29 {
30 namespace egl
31 {
32 namespace gles2
33 {
34
35 void clear (const glw::Functions& gl, int x, int y, int width, int height, const tcu::Vec4& color)
36 {
37         gl.enable(GL_SCISSOR_TEST);
38         gl.scissor(x, y, width, height);
39         gl.clearColor(color.x(), color.y(), color.z(), color.w());
40         gl.clear(GL_COLOR_BUFFER_BIT);
41         gl.disable(GL_SCISSOR_TEST);
42 }
43
44 void readPixels (const glw::Functions& gl, tcu::Surface& dst, int x, int y, int width, int height)
45 {
46         dst.setSize(width, height);
47         gl.readPixels(x, y, width, height, GL_RGBA, GL_UNSIGNED_BYTE, dst.getAccess().getDataPtr());
48 }
49
50 void finish (const glw::Functions& gl)
51 {
52         gl.finish();
53 }
54
55 } // gles2
56 } // egl
57 } // deqp