1 #ifndef _TEGLTESTPACKAGE_HPP 2 #define _TEGLTESTPACKAGE_HPP 3 /*------------------------------------------------------------------------- 4 * drawElements Quality Program EGL 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 EGL Test Package 24 *//*--------------------------------------------------------------------*/ 25 26 #include "tcuDefs.hpp" 27 #include "tcuTestPackage.hpp" 28 #include "teglTestCase.hpp" 29 #include "tcuResource.hpp" 30 31 namespace deqp 32 { 33 namespace egl 34 { 35 36 class TestCaseWrapper : public tcu::TestCaseWrapper 37 { 38 public: 39 TestCaseWrapper (EglTestContext& eglTestContext); 40 ~TestCaseWrapper (void); 41 42 bool initTestCase (tcu::TestCase* testCase); 43 bool deinitTestCase (tcu::TestCase* testCase); 44 45 tcu::TestNode::IterateResult iterateTestCase (tcu::TestCase* testCase); 46 47 private: 48 EglTestContext& m_eglTestCtx; 49 }; 50 51 class PackageContext 52 { 53 public: 54 PackageContext (tcu::TestContext& testCtx); 55 ~PackageContext (void); 56 57 EglTestContext& getEglTestContext (void) { return *m_eglTestCtx; } 58 tcu::TestCaseWrapper& getTestCaseWrapper (void) { return *m_caseWrapper; } 59 60 private: 61 EglTestContext* m_eglTestCtx; 62 TestCaseWrapper* m_caseWrapper; 63 }; 64 65 class TestPackage : public tcu::TestPackage 66 { 67 public: 68 TestPackage (tcu::TestContext& testCtx); 69 virtual ~TestPackage (void); 70 71 virtual void init (void); 72 virtual void deinit (void); 73 74 tcu::TestCaseWrapper& getTestCaseWrapper (void) { return m_packageCtx->getTestCaseWrapper(); } 75 tcu::ResourcePrefix& getArchive (void) { return m_archive; } 76 77 private: 78 PackageContext* m_packageCtx; 79 tcu::ResourcePrefix m_archive; 80 }; 81 82 } // egl 83 } // deqp 84 85 #endif // _TEGLTESTPACKAGE_HPP 86