sl@0: // Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). sl@0: // All rights reserved. sl@0: // This component and the accompanying materials are made available sl@0: // under the terms of "Eclipse Public License v1.0" sl@0: // which accompanies this distribution, and is available sl@0: // at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: // sl@0: // Initial Contributors: sl@0: // Nokia Corporation - initial contribution. sl@0: // sl@0: // Contributors: sl@0: // sl@0: // Description: sl@0: // sl@0: sl@0: /** sl@0: @file sl@0: @test sl@0: */ sl@0: sl@0: #ifndef EGLTEST_BENCHMARK_SWAPBUFFERS_H sl@0: #define EGLTEST_BENCHMARK_SWAPBUFFERS_H sl@0: sl@0: #include "eglteststep.h" sl@0: #include sl@0: sl@0: class CTProfiler; sl@0: sl@0: NONSHARABLE_CLASS(CEglTest_Benchmark_SwapBuffers) : public CEglTestStep sl@0: { sl@0: public: sl@0: CEglTest_Benchmark_SwapBuffers(); sl@0: virtual ~CEglTest_Benchmark_SwapBuffers(); sl@0: sl@0: private: sl@0: // From CTestStep sl@0: virtual TVerdict doTestStepPreambleL(); sl@0: virtual TVerdict doTestStepPostambleL(); sl@0: virtual TVerdict doTestStepL(); sl@0: sl@0: void EglSwapBufferL(); sl@0: void EglSwapBufferRegionL(); sl@0: void EglSwapBufferRegionStressL(EGLint aCount); sl@0: sl@0: private: sl@0: RWsSession iWs; sl@0: RWindowGroup iWindowGroup; sl@0: RWindow iWindow; sl@0: sl@0: EGLSurface iEglSurface; sl@0: EGLContext iEglContext; sl@0: CTProfiler* iProfiler; sl@0: TSize iWindowSize; sl@0: sl@0: PFNEGLSWAPBUFFERSREGIONNOKPROC iPfnEglSwapBuffersRegionNok; sl@0: }; sl@0: sl@0: // Testname, is used by the test server and the test scripts to identify the test sl@0: _LIT(KBenchmark_SwapBuffers, "Benchmark_SwapBuffers"); sl@0: sl@0: #endif