diff -r 000000000000 -r bde4ae8d615e os/graphics/graphicstest/uibench/s60/src/openvgengine.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/os/graphics/graphicstest/uibench/s60/src/openvgengine.h Fri Jun 15 03:10:57 2012 +0200 @@ -0,0 +1,83 @@ + // Copyright (c) 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: + // + + +#ifndef OPENVGENGINE_H_ +#define OPENVGENGINE_H_ + + +#include "engine.h" + +#include +#include + + +const TInt KMaxDisplayCoversExample3 = 40; +const TInt KMaxDisplayLeftExample3 = -3; +const TInt KMaxDisplayRightExample3 = 3; + +// the max number of covers visible on the screen at any given time +const TInt KMaxCoversExample3 = 40; + + +class COpenVGEngine : public CBase, public MEngine + { +public: + static COpenVGEngine* NewL(RWindow& aWindow, EGLDisplay& aDisplay, EGLSurface& aSurface, EGLContext& aContext); + ~COpenVGEngine(); + TInt GetSpeed(); + + // From MEngine + void ActivateL(); + void Deactivate(); + void Step(); + TBool IsPending(); + void Refresh(); + TKeyResponse HandleKeyEventL(const TKeyEvent& aKeyEvent); + +private: + COpenVGEngine(RWindow& aWindow, EGLDisplay& aDisplay, EGLSurface& aSurface, EGLContext& aContext); + void DrawCover(TInt i); + void NextCover(); + void PreviousCover(); + void ToggleCoverReflection(); + VGfloat GetMiddleCoverScalingFactor(VGfloat coverPosition); + +private: + RWindow& iWindow; + EGLDisplay& iDisplay; + EGLSurface& iSurface; + EGLContext& iContext; + + TPoint iOldPos; + TBool isResize; + + VGfloat iCoverLocation[KMaxCoversExample3]; + VGint iWantedCover; + TBool iHasPendingDraw; + TBool iShowCoverImage; + VGfloat iSpeedOffset; + TBool iShowMirror; + + TSize iSurfaceSize; + + VGfloat iSpeed; + RArray iImages; + TInt iCurrentImageIndex; + + VGPaint iShadowPaint; + }; + +#endif