1 #ifndef _EGLUCONFIGINFO_HPP
2 #define _EGLUCONFIGINFO_HPP
3 /*-------------------------------------------------------------------------
4 * drawElements Quality Program Tester Core
5 * ----------------------------------------
7 * Copyright 2014 The Android Open Source Project
9 * Licensed under the Apache License, Version 2.0 (the "License");
10 * you may not use this file except in compliance with the License.
11 * You may obtain a copy of the License at
13 * http://www.apache.org/licenses/LICENSE-2.0
15 * Unless required by applicable law or agreed to in writing, software
16 * distributed under the License is distributed on an "AS IS" BASIS,
17 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 * See the License for the specific language governing permissions and
19 * limitations under the License.
23 * \brief EGL config info.
24 *//*--------------------------------------------------------------------*/
26 #include "tcuDefs.hpp"
27 #include "eglwDefs.hpp"
28 #include "eglwEnums.hpp"
46 deInt32 luminanceSize;
48 deInt32 alphaMaskSize;
49 deUint32 bindToTextureRGB;
50 deUint32 bindToTextureRGBA;
51 deUint32 colorBufferType;
52 deUint32 configCaveat;
57 deInt32 maxPbufferWidth;
58 deInt32 maxPbufferHeight;
59 deInt32 maxSwapInterval;
60 deInt32 minSwapInterval;
61 deUint32 nativeRenderable;
62 deInt32 nativeVisualId;
63 deInt32 nativeVisualType;
64 deInt32 renderableType;
65 deInt32 sampleBuffers;
69 deUint32 transparentType;
70 deInt32 transparentRedValue;
71 deInt32 transparentGreenValue;
72 deInt32 transparentBlueValue;
74 // Extension attributes - set by queryExtConfigInfo()
76 // EGL_EXT_yuv_surface
78 deInt32 yuvNumberOfPlanes;
79 deUint32 yuvSubsample;
80 deUint32 yuvDepthRange;
81 deUint32 yuvCscStandard;
84 // EGL_EXT_pixel_format_float
85 deUint32 colorComponentType;
95 , bindToTextureRGB (0)
96 , bindToTextureRGBA (0)
103 , maxPbufferWidth (0)
104 , maxPbufferHeight (0)
105 , maxSwapInterval (0)
106 , minSwapInterval (0)
107 , nativeRenderable (0)
109 , nativeVisualType (0)
115 , transparentType (0)
116 , transparentRedValue (0)
117 , transparentGreenValue (0)
118 , transparentBlueValue (0)
119 , yuvOrder (EGL_NONE)
120 , yuvNumberOfPlanes (0)
121 , yuvSubsample (EGL_NONE)
122 , yuvDepthRange (EGL_NONE)
123 , yuvCscStandard (EGL_NONE)
124 , yuvPlaneBpp (EGL_YUV_PLANE_BPP_0_EXT)
125 , colorComponentType (EGL_NONE)
129 deInt32 getAttribute (deUint32 attribute) const;
132 void queryCoreConfigInfo (const eglw::Library& egl, eglw::EGLDisplay display, eglw::EGLConfig config, ConfigInfo* dst);
133 void queryExtConfigInfo (const eglw::Library& egl, eglw::EGLDisplay display, eglw::EGLConfig config, ConfigInfo* dst);
137 #endif // _EGLUCONFIGINFO_HPP