--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/fbs/fontandbitmapserver/tfbs/TBitmap.h Tue Feb 02 01:47:50 2010 +0200
@@ -0,0 +1,155 @@
+// Copyright (c) 2004-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:
+// This file contains test bitmap file names for TBitmap test app.
+//
+//
+
+#ifndef __TBITMAP_H__
+#define __TBITMAP_H__
+
+#include <gdi.h>
+#include "TFBS.H"
+#include "TGraphicsHarness.h"
+#include "../sfbs/fbsbitmapasyncstreamer.h"
+
+//The main test class. Add your test methods here.
+class CTBitmap : public CTGraphicsBase
+ {
+public:
+ CTBitmap(CTestStep* aStep);
+ ~CTBitmap();
+ void DeleteScanLineBuffer();
+protected:
+//from CTGraphicsStep
+ virtual void RunTestCaseL(TInt aCurTestCase);
+
+private:
+ void CheckScanlineL();
+ void StreamBitmap();
+ void StreamRectangle();
+ void GetScanline();
+ void SetScanline();
+ void StretchScanline();
+ void LoadInSegments();
+ void SaveInSegments();
+ void MonoDetect();
+ void ChunkPileL();
+ void LargeBitmaps();
+ void HugeBitmaps();
+ void Resize();
+ void BitmapUtil();
+ void BitmapTiming();
+ void InvalidBitmap();
+ void SaveAndLoad();
+ void SaveAndLoadFast();
+ void Color256BitmapUtil();
+ void HardwareBitmaps();
+ void Compress();
+ void INC036062L();
+ void PerformanceTest_INC036062L();
+ void INC037474L();
+ void DEF038286L();
+ void DEF038286_2L();
+ void MonohromeL();
+ void GetVerticalScanLineL();
+ void GetVerticalScanLinePerformanceL();
+ void TwoComprLines();
+ void DEF071843_16MAL();
+ void DEF071843_16MUL();
+ void DEF071843_16ML();
+ void DEF074623_16MAL();
+#ifdef _DEBUG
+ void DEF095361_16MAL();
+#endif
+ void TestPaletteCompressionL() ;
+ void TestSynchronousBackgroundPaletteCompressionL() ;
+ void TestAsynchronousBackgroundPaletteCompressionL() ;
+ void CompareColourLikeness(const TRgb& aSrc, const TRgb& aDest, TInt aDifference=0);
+ void GetAllBitmapsIdsL();
+ void CheckBadBmp();
+ void CheckSetDisplayModeL();
+ void MultiThreadedTestsL();
+ void MultiThreadedResizeTestL();
+ void MultiThreadedCompressTestL();
+ void DoMultiThreadedTestL(const TDesC& aThreadName, TInt (*aBitmapFunction)(CFbsBitmap*), TBool (*aCheckFunction)(const CFbsBitmap*));
+#ifdef SYMBIAN_DEBUG_FBS_LOCKHEAP
+ void MultiThreadedLockHeapTestL();
+#endif
+ void TestBgCompressL();
+ void TestBgCompressInUseL();
+ void TestDisconnectWithBitmapL();
+ void TestTouchedAndVolatileL();
+ void TestBitmapWhiteFillL();
+private:
+ void DoStreamBitmapSizes(TDisplayMode aDispMode);
+ void DoStreamBitmap(const TSize& aSize,TDisplayMode aDispMode,TBool aBlank);
+ void DoStreamRectangle(TDisplayMode aDispMode,TBool aBlank);
+ void DoGetScanline(const TSize& aSize,TDisplayMode aDispMode);
+ void DoGetScanlineCheck1(CFbsBitmap& aBitmap,CFbsBitmap& aReference,const TSize& aSize,TDisplayMode aDispMode);
+ void DoGetScanlineCheck2(CFbsBitmap& aBitmap,CFbsBitmap& aReference,const TSize& aSize,TDisplayMode aDispMode);
+ void DoGetScanlineCheck3(CFbsBitmap& aBitmap,TDisplayMode aDispMode);
+ void DoGetScanlineAlt(TDisplayMode aDispMode);
+ void DoSetScanline(TDisplayMode aDispMode);
+ void DoStretchScanline(const TSize& aSize,TDisplayMode aDispMode);
+ void DoMonoDetect(TDisplayMode aDisplayMode);
+ void DoLargeBitmaps(const TSize& aSize,TDisplayMode aDisplayMode);
+ void DoHugeBitmaps(const TSize& aSize,TDisplayMode aDisplayMode);
+ void DoResize(TDisplayMode aDispMode);
+ void DoBitmapUtil(const TSize& aSize,TDisplayMode aDispMode);
+ void DoSaveAndLoad(const TSize& aSize,TDisplayMode aDispMode,TBool aBlank);
+ void FuzzyCompareBitmapsColor256(CFbsBitmapEx& aBmp1,CFbsBitmapEx& aBmp2,TUint aDifLimit=7);
+ void CheckScanLine(CFbsBitmapEx& aBitmap,CFbsBitmapEx& aReference,TDisplayMode aDispMode);
+ void CheckWhite(TUint8* aData,TInt aDataLength,TDisplayMode aDispMode);
+ void CompareBitmaps(CFbsBitmapEx& aBmp1,CFbsBitmapEx& aBmp2,TDisplayMode aDispMode);
+ void DoCompareBitmaps(CFbsBitmapEx& aBmp1,CFbsBitmapEx& aBmp2,TDisplayMode aDispMode, TPoint aLineOrigin, TSize aBmpSize);
+ void CopyBitmap(CFbsBitmapEx& aBmp1,const CFbsBitmapEx& aBmp2);
+ void BlankBitmap(CFbsBitmapEx& aBitmap);
+ void FillBitmap(CFbsBitmapEx& aBitmap);
+ void StripeBitmap(CFbsBitmapEx& aBitmap);
+ TRgb ExtractRgb(TUint8* aBuffer,TInt aPixelOffset,TDisplayMode aDispMode);
+
+ static TInt BmpLoadCallBack(TAny* aPtr);
+ static TInt BmpSaveCallBack(TAny* aPtr);
+ CFbsBitmap* CreateBitmapLC(const TSize& aSize, TDisplayMode aMode);
+ CFbsBitmap* CreateBitmapLC(const TSize& aSize, TDisplayMode aMode, const CFbsBitmap* aSrcBmp);
+ CFbsBitmap* LoadBitmapLC(const TDesC& aFileName);
+ void LoadAndCompressBitmapLC(CFbsBitmap*& aBmp, const TDesC& aBmpFile);
+ void LoadAndNotCompressBitmapLC(CFbsBitmap*& aBmp, const TDesC& aBmpFile);
+ void TestAssortedBPPandColourDepthL(const TDesC& aFilename, RFbsSession* aFbs);
+ void DoStretchScanline(const TSize& aSize,TDisplayMode aSrcMode, TDisplayMode aDstMode, TBool aUseCompareLikeness);
+ TInt ColorDifference(TDisplayMode aMode,TInt aAlpha=0xff);
+private:
+ CFbsBitmapAsyncStreamer* iBmpHandler;
+ CFbsBitmap* iBitmap;
+ CActiveScheduler* iAs;
+ RFs iFs;
+ TFileName iTestBitmapName;
+ TBool iSkipRomBitmapTests;
+ };
+
+
+class CTBitmapStep : public CTGraphicsStep
+ {
+public:
+ CTBitmapStep();
+protected:
+ //from CTGraphicsStep
+ virtual CTGraphicsBase* CreateTestL();
+ virtual void TestSetupL();
+ virtual void TestClose();
+ };
+
+_LIT(KTBitmapStep,"TBitmap");
+
+#endif//__TBITMAP_H__