diff -r 000000000000 -r 5d03bc08d59c graphicstest/uibench/src/tmultiptreventhandlingperf.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/graphicstest/uibench/src/tmultiptreventhandlingperf.h Tue Feb 02 01:47:50 2010 +0200 @@ -0,0 +1,96 @@ +// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of "Eclipse Public License v1.0" +// which accompanies this distribution, and is available +// at the URL "http://www.eclipse.org/legal/epl-v10.html". +// +// Initial Contributors: +// Nokia Corporation - initial contribution. +// +// Contributors: +// +// Description: +// teventhandlingperf.h +// +// + +/** + @file + @test + @internalComponent - Internal Symbian test code +*/ + + +#ifndef __TMULTIPTREVENTHANDLINGPERF_H__ +#define __TMULTIPTREVENTHANDLINGPERF_H__ + +#include +#include +#include +#include + +_LIT(KChunkName,"MULTIPOINTERSHAREDCHUNK"); + + +enum TMultiPtrPerfPanics + { + EMultiPtrPerfPanicWrongTest, + }; + +class CMultiPtrPerfTestAppUi; + +class CMultiPtrPerfTestControl : public CCoeControl + { + enum {EEventBufferSize=32}; +public: + ~CMultiPtrPerfTestControl(); + void ConstructL(); + void ConstructL(TPoint aOrigin, TSize aSize); + TInt CalculateLatencyAndStartThread(); + void AddExpectedEvent(TAdvancedPointerEvent& aExpEvent); + TInt Failed(TPoint3D aExp3DPoint, TPoint3D aActual3DPoint, TInt aErrorCode = 0, TInt aExpPtrNum = 0, TInt aActPtrNum = 0); + TInt PointerEventsNotSupported(); + + // From CCoeControl + void HandlePointerEventL(const TPointerEvent& aPointerEvent); + +protected: + CCirBuf iEventBuffer; + CMultiPtrPerfTestAppUi* iPtrAppUi; + RChunk iChunk; + TInt iLatLenInLetters; + TInt64 iAverageLatency; + TInt64 iLatency; + TInt iChunkOffset; + TBool iPointerEventNotSupported; + }; + +class CMultiPtrPerfTestAppUi : public CCoeAppUi + { +public: + CMultiPtrPerfTestAppUi(); + ~CMultiPtrPerfTestAppUi(); + + void ConstructL(); + TInt CreateEventSimulatingThreads(); + TInt64 TestStartTime() {return iTestStartTime;} + TInt& TestCaseNum() {return iTestCaseNum;} + void AddExpectedEvent(TAdvancedPointerEvent& aExpEvent); + void Failed(TPoint3D aExp3DPoint, TPoint3D aActual3DPoint, TInt aErrorCode = 0, TInt aExpPtrNum = 0, TInt aActPtrNum = 0); + void PointerEventsNotSupported(); + void CloseThread() {iThread.Close();} + void SetNumberOfEvents(TInt aNumEvents) {iNumEvents = aNumEvents;} + void DecrementEventCount() {--iNumEvents;} + TInt EventCount() {return iNumEvents;} + RThread& ChildThread() {return iThread;} + +private: + TInt iTestCaseNum; + TInt64 iTestStartTime; + CMultiPtrPerfTestControl* iControl; + RThread iThread; + TInt iNumEvents; + }; + +#endif // __TMULTIPTREVENTHANDLINGPERF_H__