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 31namespace deqp 32{ 33namespace egl 34{ 35 36class TestCaseWrapper : public tcu::TestCaseWrapper 37{ 38public: 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 47private: 48 EglTestContext& m_eglTestCtx; 49}; 50 51class PackageContext 52{ 53public: 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 60private: 61 EglTestContext* m_eglTestCtx; 62 TestCaseWrapper* m_caseWrapper; 63}; 64 65class TestPackage : public tcu::TestPackage 66{ 67public: 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 77private: 78 PackageContext* m_packageCtx; 79 tcu::ResourcePrefix m_archive; 80}; 81 82} // egl 83} // deqp 84 85#endif // _TEGLTESTPACKAGE_HPP 86