1*35238bceSAndroid Build Coastguard Worker #ifndef _GLSBUILTINPRECISIONTESTS_HPP 2*35238bceSAndroid Build Coastguard Worker #define _GLSBUILTINPRECISIONTESTS_HPP 3*35238bceSAndroid Build Coastguard Worker 4*35238bceSAndroid Build Coastguard Worker /*------------------------------------------------------------------------- 5*35238bceSAndroid Build Coastguard Worker * drawElements Quality Program OpenGL (ES) Module 6*35238bceSAndroid Build Coastguard Worker * ----------------------------------------------- 7*35238bceSAndroid Build Coastguard Worker * 8*35238bceSAndroid Build Coastguard Worker * Copyright 2014 The Android Open Source Project 9*35238bceSAndroid Build Coastguard Worker * 10*35238bceSAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License"); 11*35238bceSAndroid Build Coastguard Worker * you may not use this file except in compliance with the License. 12*35238bceSAndroid Build Coastguard Worker * You may obtain a copy of the License at 13*35238bceSAndroid Build Coastguard Worker * 14*35238bceSAndroid Build Coastguard Worker * http://www.apache.org/licenses/LICENSE-2.0 15*35238bceSAndroid Build Coastguard Worker * 16*35238bceSAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software 17*35238bceSAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS, 18*35238bceSAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 19*35238bceSAndroid Build Coastguard Worker * See the License for the specific language governing permissions and 20*35238bceSAndroid Build Coastguard Worker * limitations under the License. 21*35238bceSAndroid Build Coastguard Worker * 22*35238bceSAndroid Build Coastguard Worker *//*! 23*35238bceSAndroid Build Coastguard Worker * \file 24*35238bceSAndroid Build Coastguard Worker * \brief Tests for precision and range of GLSL builtins and types. 25*35238bceSAndroid Build Coastguard Worker *//*--------------------------------------------------------------------*/ 26*35238bceSAndroid Build Coastguard Worker 27*35238bceSAndroid Build Coastguard Worker #include "deUniquePtr.hpp" 28*35238bceSAndroid Build Coastguard Worker #include "tcuTestCase.hpp" 29*35238bceSAndroid Build Coastguard Worker #include "gluRenderContext.hpp" 30*35238bceSAndroid Build Coastguard Worker #include "gluShaderUtil.hpp" 31*35238bceSAndroid Build Coastguard Worker 32*35238bceSAndroid Build Coastguard Worker #include <vector> 33*35238bceSAndroid Build Coastguard Worker 34*35238bceSAndroid Build Coastguard Worker namespace deqp 35*35238bceSAndroid Build Coastguard Worker { 36*35238bceSAndroid Build Coastguard Worker namespace gls 37*35238bceSAndroid Build Coastguard Worker { 38*35238bceSAndroid Build Coastguard Worker namespace BuiltinPrecisionTests 39*35238bceSAndroid Build Coastguard Worker { 40*35238bceSAndroid Build Coastguard Worker 41*35238bceSAndroid Build Coastguard Worker class CaseFactory; 42*35238bceSAndroid Build Coastguard Worker 43*35238bceSAndroid Build Coastguard Worker class CaseFactories 44*35238bceSAndroid Build Coastguard Worker { 45*35238bceSAndroid Build Coastguard Worker public: ~CaseFactories(void)46*35238bceSAndroid Build Coastguard Worker virtual ~CaseFactories(void) 47*35238bceSAndroid Build Coastguard Worker { 48*35238bceSAndroid Build Coastguard Worker } 49*35238bceSAndroid Build Coastguard Worker virtual const std::vector<const CaseFactory *> getFactories(void) const = 0; 50*35238bceSAndroid Build Coastguard Worker }; 51*35238bceSAndroid Build Coastguard Worker 52*35238bceSAndroid Build Coastguard Worker de::MovePtr<const CaseFactories> createES3BuiltinCases(void); 53*35238bceSAndroid Build Coastguard Worker de::MovePtr<const CaseFactories> createES31BuiltinCases(void); 54*35238bceSAndroid Build Coastguard Worker 55*35238bceSAndroid Build Coastguard Worker void addBuiltinPrecisionTests(tcu::TestContext &testCtx, glu::RenderContext &renderCtx, const CaseFactories &cases, 56*35238bceSAndroid Build Coastguard Worker const std::vector<glu::ShaderType> &shaderTypes, tcu::TestCaseGroup &dstGroup); 57*35238bceSAndroid Build Coastguard Worker 58*35238bceSAndroid Build Coastguard Worker } // namespace BuiltinPrecisionTests 59*35238bceSAndroid Build Coastguard Worker 60*35238bceSAndroid Build Coastguard Worker using BuiltinPrecisionTests::addBuiltinPrecisionTests; 61*35238bceSAndroid Build Coastguard Worker 62*35238bceSAndroid Build Coastguard Worker } // namespace gls 63*35238bceSAndroid Build Coastguard Worker } // namespace deqp 64*35238bceSAndroid Build Coastguard Worker 65*35238bceSAndroid Build Coastguard Worker #endif // _GLSBUILTINPRECISIONTESTS_HPP 66