1 #ifndef _EGLUCONFIGINFO_HPP 2 #define _EGLUCONFIGINFO_HPP 3 /*------------------------------------------------------------------------- 4 * drawElements Quality Program Tester Core 5 * ---------------------------------------- 6 * 7 * Copyright 2014 The Android Open Source Project 8 * 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 12 * 13 * http://www.apache.org/licenses/LICENSE-2.0 14 * 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. 20 * 21 *//*! 22 * \file 23 * \brief EGL config info. 24 *//*--------------------------------------------------------------------*/ 25 26 #include "tcuDefs.hpp" 27 #include "egluHeaderWrapper.hpp" 28 29 namespace eglu 30 { 31 32 class ConfigInfo 33 { 34 public: 35 deInt32 bufferSize; 36 deInt32 redSize; 37 deInt32 greenSize; 38 deInt32 blueSize; 39 deInt32 luminanceSize; 40 deInt32 alphaSize; 41 deInt32 alphaMaskSize; 42 deUint32 bindToTextureRGB; 43 deUint32 bindToTextureRGBA; 44 deUint32 colorBufferType; 45 deUint32 configCaveat; 46 deInt32 configId; 47 deInt32 conformant; 48 deInt32 depthSize; 49 deInt32 level; 50 deInt32 maxPbufferWidth; 51 deInt32 maxPbufferHeight; 52 deInt32 maxSwapInterval; 53 deInt32 minSwapInterval; 54 deUint32 nativeRenderable; 55 deInt32 nativeVisualId; 56 deInt32 nativeVisualType; 57 deInt32 renderableType; 58 deInt32 sampleBuffers; 59 deInt32 samples; 60 deInt32 stencilSize; 61 deInt32 surfaceType; 62 deUint32 transparentType; 63 deInt32 transparentRedValue; 64 deInt32 transparentGreenValue; 65 deInt32 transparentBlueValue; 66 67 ConfigInfo (void) 68 : bufferSize (0) 69 , redSize (0) 70 , greenSize (0) 71 , blueSize (0) 72 , luminanceSize (0) 73 , alphaSize (0) 74 , alphaMaskSize (0) 75 , bindToTextureRGB (0) 76 , bindToTextureRGBA (0) 77 , colorBufferType (0) 78 , configCaveat (0) 79 , configId (0) 80 , conformant (0) 81 , depthSize (0) 82 , level (0) 83 , maxPbufferWidth (0) 84 , maxPbufferHeight (0) 85 , maxSwapInterval (0) 86 , minSwapInterval (0) 87 , nativeRenderable (0) 88 , nativeVisualId (0) 89 , nativeVisualType (0) 90 , renderableType (0) 91 , sampleBuffers (0) 92 , samples (0) 93 , stencilSize (0) 94 , surfaceType (0) 95 , transparentType (0) 96 , transparentRedValue (0) 97 , transparentGreenValue (0) 98 , transparentBlueValue (0) 99 { 100 } 101 102 deInt32 getAttribute (deUint32 attribute) const; 103 }; 104 105 void queryConfigInfo (EGLDisplay display, EGLConfig config, ConfigInfo* dst); 106 107 } // eglu 108 109 #endif // _EGLUCONFIGINFO_HPP 110