#ifndef _GLCPARALLELSHADERCOMPILETESTS_HPP #define _GLCPARALLELSHADERCOMPILETESTS_HPP /*------------------------------------------------------------------------- * OpenGL Conformance Test Suite * ----------------------------- * * Copyright (c) 2016-2017 The Khronos Group Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * */ /*! * \file * \brief */ /*-------------------------------------------------------------------*/ /** */ /*! * \file glcParallelShaderCompileTests.hpp * \brief Conformance tests for the GL_KHR_parallel_shader_compile functionality. */ /*-------------------------------------------------------------------*/ #include "glcTestCase.hpp" #include "glwDefs.hpp" #include "tcuDefs.hpp" #include namespace glcts { /** Test verifies if GetBooleanv, GetIntegerv, GetInteger64v, GetFloatv, and GetDoublev * queries for MAX_SHADER_COMPILER_THREADS_KHR returns the same value. **/ class SimpleQueriesTest : public deqp::TestCase { public: /* Public methods */ SimpleQueriesTest(deqp::Context& context); tcu::TestNode::IterateResult iterate(); private: /* Private methods */ /* Private members */ }; /** Test verifies if MaxShaderCompilerThreadsKHR function works as expected **/ class MaxShaderCompileThreadsTest : public deqp::TestCase { public: /* Public methods */ MaxShaderCompileThreadsTest(deqp::Context& context); tcu::TestNode::IterateResult iterate(); private: /* Private methods */ /* Private members */ }; /** Test verifies if GetShaderiv and GetProgramiv queries returns value as expected * for COMPLETION_STATUS and parallel compilation. **/ class CompilationCompletionParallelTest : public deqp::TestCase { public: /* Public methods */ CompilationCompletionParallelTest(deqp::Context& context); tcu::TestNode::IterateResult iterate(); private: /* Private methods */ /* Private members */ }; /** Test group which encapsulates all sparse buffer conformance tests */ class ParallelShaderCompileTests : public deqp::TestCaseGroup { public: /* Public methods */ ParallelShaderCompileTests(deqp::Context& context); void init(); private: ParallelShaderCompileTests(const ParallelShaderCompileTests& other); ParallelShaderCompileTests& operator=(const ParallelShaderCompileTests& other); }; } /* glcts namespace */ #endif // _GLCPARALLELSHADERCOMPILETESTS_HPP