diff -r 2717213c588a -r 171fae344dd4 windowing/windowserver/tcsc/cwsgcecscbase.h --- a/windowing/windowserver/tcsc/cwsgcecscbase.h Tue Jun 22 15:21:29 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,181 +0,0 @@ -// 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: -// - -#ifndef TCWGCECSCBASE_H_ -#define TCWGCECSCBASE_H_ - -#include -#include -#include "surfaceutility.h" -#include - -class TPerfProperties -{ -public: - TBool GetValue(TUint aKey); - void PrintAllL(CTestFixture& aLogger); - TBool ResetValue(TUint aKey); - void UpdateAll(); - void ResetAll(); -private: -#ifdef GCE_BACKEND_PROFILING - TInt iValue[EPerfLastKey]; - TInt iPrevValue[EPerfLastKey]; - const static TBuf<100> propertyKeysTxt[EPerfLastKey]; -#endif -}; - -class CWsGceCscBase: public CTestFixture -{ - -public: - template - class SafePointer - { - public: - SafePointer(LoggerOwner* aOwner,Referee* aReferee=NULL): - iOwner(aOwner), iReferee(aReferee) - {} - Referee* operator=(Referee* aReferee) - { - return iReferee=aReferee; - } - Referee*& operator()() - { - return iReferee; - } - Referee* operator->() - { - if (iReferee==NULL) - { - iOwner -> INFO_PRINTF1(_L("Tried to dereference a pointer that is null!")); - User::Panic(_L("null pointer"),__LINE__); - } - return iReferee; - } - private: - LoggerOwner* iOwner; - Referee* iReferee; - }; - -public: - CWsGceCscBase(); - virtual ~CWsGceCscBase(); - virtual void SetupL(); - virtual void TearDownL(); - virtual void TearDownFromDeleteL(); - -protected: - typedef TBuf TTestName; - - class TPostTestCleanup - { - protected: - TPostTestCleanup() {} - public: - CSurfaceUtility* iSharedUtility; - TBool iCleanedUpOnExit; - }; - - - typedef enum TOptimizationLevel - { - EDisable, - EDetectFrontmostFullScreenOpaqueLayer, - EMaximum, - } TOptimizationLevel; - - -protected: - void SetCompositionMode(RWindow& aWindow, TDisplayMode aMode); - - TBool Compare(CFbsBitmap& aBitmap1, CFbsBitmap& aBitmap2); - - void ConstructOpaqueWindowLC(RWindow& aWindow, - const TRgb& aColor, - TInt aPos, - const TPoint& aPoint, - const TSize& aSize); - - void ConstructOpaqueWindowL(RWindow& aWindow, - const TRgb& aColor, - TInt aPos, - const TPoint& aPoint, - const TSize& aSize); - - void SetBackgroundColorWindow(RWindow& aWindow, const TRgb& aColor); - - void ConstructOpaqueSurfacedWindowLC(RWindow& aWindow, - const TRgb& aColor, - TInt aPos, - const TPoint& aPoint, - const TSize& aSize, - TSurfaceId& aSurfaceID); - void ConstructOpaqueSurfacedWindowL(RWindow& aWindow, - const TRgb& aColor, - TInt aPos, - const TPoint& aPoint, - const TSize& aSize, - const TSurfaceId& aSurfaceID); - -protected: - inline TInt ObjIndScr(TInt aScreen,TInt aWin=0,TInt aLayer=0,TInt aExtra=0); - template // DataType may be TSurfaceId, TInt,TRect, TSurfaceConfiguration (not TRegion) - TInt DebugInfo(TWsDebugInfoFunc aFunction, TInt aObjectIndex, TDes8& aHostBuffer,const DataType*&aReturnedObject)const - { - return DebugInfo(aFunction,aObjectIndex,aHostBuffer,(const void*&)aReturnedObject,sizeof(DataType)); - } - TInt DebugInfo(TWsDebugInfoFunc aFunction, - TInt aParam, - TDes8& aHostBuffer, - const void*&aReturnedObject, - TInt aObjectSize)const; - void TefUnitFailLeaveL(); - static void Pause(TInt aMilliseconds=200); - TBool GCEIsSupported() const; - static TBool GCEIsSupportedStatic(); - static TPostTestCleanup& PostTestCleanupInstance(); - -protected: - TBool iDoTearDown; - RWsSession iSession; - RWindowGroup iGroup; - CWsScreenDevice* iScreenDevice; - CWindowGc* iGc; - TInt iWindowHandle; - TBool iTransparencyEnabled; - TRgb iRed, iGreen, iBlue, iCyan, iMagenta, iYellow, iWhite; - TDisplayMode iDisplayMode; - SafePointer iUtility; - static const TInt KMaxInfoLines=5; - TTestName iTestInfo[KMaxInfoLines]; - TTestName iTestName; - static const TUidPixelFormat KSurfaceFormat = EUidPixelFormatXRGB_8888; - static const TInt KBytesPerPixel = 4; // Four bytes per pixel for the format above. - TPerfProperties iProperties; -}; - -inline TInt CWsGceCscBase::ObjIndScr(TInt aScreen, - TInt aWin, - TInt aLayer, - TInt aExtra) - { - return (aScreen<