1#ifndef _ES3PTEXTURECASES_HPP 2#define _ES3PTEXTURECASES_HPP 3/*------------------------------------------------------------------------- 4 * drawElements Quality Program OpenGL ES 3.0 Module 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 Texture format performance tests. 24 *//*--------------------------------------------------------------------*/ 25 26#include "tcuDefs.hpp" 27#include "tes3TestCase.hpp" 28#include "glsShaderPerformanceCase.hpp" 29#include "tcuMatrix.hpp" 30#include "gluTexture.hpp" 31 32namespace deqp 33{ 34namespace gles3 35{ 36namespace Performance 37{ 38 39class Texture2DRenderCase : public gls::ShaderPerformanceCase 40{ 41public: 42 Texture2DRenderCase (Context& context, 43 const char* name, 44 const char* description, 45 deUint32 internalFormat, 46 deUint32 wrapS, 47 deUint32 wrapT, 48 deUint32 minFilter, 49 deUint32 magFilter, 50 const tcu::Mat3& coordTransform, 51 int numTextures, 52 bool powerOfTwo); 53 ~Texture2DRenderCase (void); 54 55 void init (void); 56 void deinit (void); 57 58private: 59 void setupProgram (deUint32 program); 60 void setupRenderState (void); 61 62 const deUint32 m_internalFormat; 63 const deUint32 m_wrapS; 64 const deUint32 m_wrapT; 65 const deUint32 m_minFilter; 66 const deUint32 m_magFilter; 67 const tcu::Mat3 m_coordTransform; 68 const int m_numTextures; 69 const bool m_powerOfTwo; 70 71 std::vector<glu::Texture2D*> m_textures; 72}; 73 74} // Performance 75} // gles3 76} // deqp 77 78#endif // _ES3PTEXTURECASES_HPP 79