1 #ifndef _ESEXTCTEXTUREBORDERCLAMPGETTEXPARAMETERIERRORS_HPP 2 #define _ESEXTCTEXTUREBORDERCLAMPGETTEXPARAMETERIERRORS_HPP 3 /*------------------------------------------------------------------------- 4 * OpenGL Conformance Test Suite 5 * ----------------------------- 6 * 7 * Copyright (c) 2014-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 esextcTextureBorderClampGetTexParameterIErrors.hpp 28 * \brief Texture Border Clamp glGetTexParameterIivEXT(), glGetTexParameterIuivEXT() Errors (Test 3) 29 */ /*-------------------------------------------------------------------*/ 30 31 #include "esextcTextureBorderClampBase.hpp" 32 #include <vector> 33 34 namespace glcts 35 { 36 37 /** Implementation of Test 3 from CTS_EXT_texture_border_clamp. Description follows 38 * 39 * Verify glGetTexParameterIivEXT() and glGetTexParameterIuivEXT() report errors 40 * as per spec. 41 * 42 * Category: Negative tests, 43 * Optional dependency on EXT_texture_buffer, 44 * Optional dependency on OES_texture_storage_multisample_2d_array. 45 * Priority: Must-have. 46 * 47 * Make sure the functions report GL_INVALID_ENUM error if cube-map face 48 * texture targets or GL_TEXTURE_BUFFER_EXT (if supported) are used as 49 * a texture target. 50 * 51 */ 52 class TextureBorderClampGetTexParameterIErrorsTest : public TextureBorderClampBase 53 { 54 public: 55 /* Public methods */ 56 TextureBorderClampGetTexParameterIErrorsTest(Context& context, const ExtParameters& extParams, const char* name, 57 const char* description); 58 59 virtual ~TextureBorderClampGetTexParameterIErrorsTest() 60 { 61 } 62 63 virtual IterateResult iterate(void); 64 65 private: 66 /* Private methods */ 67 virtual void initTest(void); 68 69 void CheckAllNames(glw::GLenum target, glw::GLenum expected_error); 70 void VerifyGLGetTexParameterIiv(glw::GLenum target, glw::GLenum pname, glw::GLenum expected_error); 71 void VerifyGLGetTexParameterIuiv(glw::GLenum target, glw::GLenum pname, glw::GLenum expected_error); 72 73 /* Private variables */ 74 glw::GLboolean m_test_passed; 75 76 /* Private static variables */ 77 static const glw::GLuint m_buffer_size; 78 79 std::vector<glw::GLenum> m_pname_list; 80 }; 81 82 } // namespace glcts 83 84 #endif // _ESEXTCTEXTUREBORDERCLAMPGETTEXPARAMETERIERRORS_HPP 85