1 #ifndef _ESEXTCDRAWBUFFERSINDEXEDCOLORMASKS_HPP 2 #define _ESEXTCDRAWBUFFERSINDEXEDCOLORMASKS_HPP 3 /*------------------------------------------------------------------------- 4 * OpenGL Conformance Test Suite 5 * ----------------------------- 6 * 7 * Copyright (c) 2015-2016 The Khronos Group Inc. 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 24 */ /*-------------------------------------------------------------------*/ 25 26 /*! 27 * \file esextcDrawBuffersIndexedColorMasks.hpp 28 * \brief Draw Buffers Indexed tests 4. Color masks 29 */ /*-------------------------------------------------------------------*/ 30 31 #include "esextcDrawBuffersIndexedBase.hpp" 32 #include "tcuSurface.hpp" 33 34 namespace glcts 35 { 36 37 /** 4. Color masks 38 **/ 39 class DrawBuffersIndexedColorMasks : public DrawBuffersIndexedBase 40 { 41 public: 42 /** Public methods 43 **/ 44 DrawBuffersIndexedColorMasks(Context& context, const ExtParameters& extParams, const char* name, 45 const char* description); ~DrawBuffersIndexedColorMasks()46 virtual ~DrawBuffersIndexedColorMasks() 47 { 48 } 49 50 private: 51 /** Private methods 52 **/ 53 virtual IterateResult iterate(); 54 55 void prepareFramebuffer(void); 56 void releaseFramebuffer(void); 57 unsigned int NumComponents(glw::GLenum format); 58 glw::GLenum ReadableType(glw::GLenum format); 59 tcu::RGBA GetEpsilon(); 60 bool VerifyImg(const tcu::TextureLevel& textureLevel, tcu::RGBA expectedColor, tcu::RGBA epsilon); 61 62 glw::GLuint m_fbo; 63 }; 64 65 } // namespace glcts 66 67 #endif // _ESEXTCDRAWBUFFERSINDEXEDCOLORMASKS_HPP 68