1 #ifndef _GLCTESTCASE_HPP 2 #define _GLCTESTCASE_HPP 3 /*------------------------------------------------------------------------- 4 * OpenGL Conformance Test Suite 5 * ----------------------------- 6 * 7 * Copyright (c) 2016 Google Inc. 8 * Copyright (c) 2016 The Khronos Group Inc. 9 * 10 * Licensed under the Apache License, Version 2.0 (the "License"); 11 * you may not use this file except in compliance with the License. 12 * You may obtain a copy of the License at 13 * 14 * http://www.apache.org/licenses/LICENSE-2.0 15 * 16 * Unless required by applicable law or agreed to in writing, software 17 * distributed under the License is distributed on an "AS IS" BASIS, 18 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 19 * See the License for the specific language governing permissions and 20 * limitations under the License. 21 * 22 */ /*! 23 * \file 24 * \brief OpenGL test case. 25 */ /*-------------------------------------------------------------------*/ 26 27 #include "glcContext.hpp" 28 #include "tcuDefs.hpp" 29 #include "tcuTestCase.hpp" 30 31 namespace deqp 32 { 33 34 class TestCaseGroup : public tcu::TestCaseGroup 35 { 36 public: 37 TestCaseGroup(Context& context, const char* name, const char* description); 38 TestCaseGroup(Context& context, const char* name, const char* description, const std::vector<TestNode*>& children); 39 40 virtual ~TestCaseGroup(void) 41 { 42 } 43 44 Context& getContext(void) 45 { 46 return m_context; 47 } 48 49 protected: 50 Context& m_context; 51 }; 52 53 class TestCase : public tcu::TestCase 54 { 55 public: 56 TestCase(Context& context, const char* name, const char* description); 57 TestCase(Context& context, tcu::TestNodeType nodeType, const char* name, const char* description); 58 virtual ~TestCase(void) 59 { 60 } 61 62 protected: 63 Context& m_context; 64 }; 65 66 inline TestCaseGroup::TestCaseGroup(Context& context, const char* name, const char* description) 67 : tcu::TestCaseGroup(context.getTestContext(), name, description), m_context(context) 68 { 69 } 70 71 inline TestCaseGroup::TestCaseGroup(Context& context, const char* name, const char* description, 72 const std::vector<TestNode*>& children) 73 : tcu::TestCaseGroup(context.getTestContext(), name, description, children), m_context(context) 74 { 75 } 76 77 inline TestCase::TestCase(Context& context, const char* name, const char* description) 78 : tcu::TestCase(context.getTestContext(), name, description), m_context(context) 79 { 80 } 81 82 inline TestCase::TestCase(Context& context, tcu::TestNodeType nodeType, const char* name, const char* description) 83 : tcu::TestCase(context.getTestContext(), nodeType, name, description), m_context(context) 84 { 85 } 86 87 } // deqp 88 89 namespace glcts 90 { 91 92 using deqp::TestCaseGroup; 93 94 } // glcts 95 96 #endif // _GLCTESTCASE_HPP 97