Update contrib.
1 // Copyright (c) 2004-2010 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of "Eclipse Public License v1.0"
5 // which accompanies this distribution, and is available
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
14 // This file contains test bitmap file names for TBitmap test app.
23 #include "test/TGraphicsHarness.h"
24 #include "fbsbitmapasyncstreamer.h"
27 //The main test class. Add your test methods here.
28 class CTBitmap : public CTGraphicsBase
31 CTBitmap(CTestStep* aStep);
33 void DeleteScanLineBuffer();
36 virtual void RunTestCaseL(TInt aCurTestCase);
39 void CheckScanlineL();
41 void StreamRectangle();
44 void StretchScanline();
45 void LoadInSegments();
46 void SaveInSegments();
56 void SaveAndLoadFast();
57 void Color256BitmapUtil();
58 void HardwareBitmaps();
61 void PerformanceTest_INC036062L();
66 void GetVerticalScanLineL();
67 void GetVerticalScanLinePerformanceL();
69 void DEF071843_16MAL();
70 void DEF071843_16MUL();
71 void DEF071843_16ML();
72 void DEF074623_16MAL();
74 void DEF095361_16MAL();
76 void TestPaletteCompressionL() ;
77 void TestSynchronousBackgroundPaletteCompressionL() ;
78 void TestAsynchronousBackgroundPaletteCompressionL() ;
79 void CompareColourLikeness(const TRgb& aSrc, const TRgb& aDest, TInt aDifference=0);
80 void GetAllBitmapsIdsL();
82 void CheckSetDisplayModeL();
83 void MultiThreadedTestsL();
84 void MultiThreadedResizeTestL();
85 void MultiThreadedCompressTestL();
86 void DoMultiThreadedTestL(const TDesC& aThreadName, TInt (*aBitmapFunction)(CFbsBitmap*), TBool (*aCheckFunction)(const CFbsBitmap*));
87 #ifdef SYMBIAN_DEBUG_FBS_LOCKHEAP
88 void MultiThreadedLockHeapTestL();
90 void TestBgCompressL();
91 void TestBgCompressInUseL();
92 void TestDisconnectWithBitmapL();
93 void TestTouchedAndVolatileL();
94 void TestBitmapWhiteFillL();
96 void TestBitmapUtilWithUnsupportedBitmap(const TDesC& aThreadName, TAny* aFunctionPtr);
97 void TestBitmapUtilWithUnsupportedBitmaps();
100 void DoStreamBitmapSizes(TDisplayMode aDispMode);
101 void DoStreamBitmap(const TSize& aSize,TDisplayMode aDispMode,TBool aBlank);
102 void DoStreamRectangle(TDisplayMode aDispMode,TBool aBlank);
103 void DoGetScanline(const TSize& aSize,TDisplayMode aDispMode);
104 void DoGetScanlineCheck1(CFbsBitmap& aBitmap,CFbsBitmap& aReference,const TSize& aSize,TDisplayMode aDispMode);
105 void DoGetScanlineCheck2(CFbsBitmap& aBitmap,CFbsBitmap& aReference,const TSize& aSize,TDisplayMode aDispMode);
106 void DoGetScanlineCheck3(CFbsBitmap& aBitmap,TDisplayMode aDispMode);
107 void DoGetScanlineAlt(TDisplayMode aDispMode);
108 void DoSetScanline(TDisplayMode aDispMode);
109 void DoStretchScanline(const TSize& aSize,TDisplayMode aDispMode);
110 void DoMonoDetect(TDisplayMode aDisplayMode);
111 void DoLargeBitmaps(const TSize& aSize,TDisplayMode aDisplayMode);
112 void DoHugeBitmaps(const TSize& aSize,TDisplayMode aDisplayMode);
113 void DoResize(TDisplayMode aDispMode);
114 void DoBitmapUtil(const TSize& aSize,TDisplayMode aDispMode);
115 void DoSaveAndLoad(const TSize& aSize,TDisplayMode aDispMode,TBool aBlank);
116 void FuzzyCompareBitmapsColor256(CFbsBitmapEx& aBmp1,CFbsBitmapEx& aBmp2,TUint aDifLimit=7);
117 void CheckScanLine(CFbsBitmapEx& aBitmap,CFbsBitmapEx& aReference,TDisplayMode aDispMode);
118 void CheckWhite(TUint8* aData,TInt aDataLength,TDisplayMode aDispMode);
119 void CompareBitmaps(CFbsBitmapEx& aBmp1,CFbsBitmapEx& aBmp2,TDisplayMode aDispMode);
120 void DoCompareBitmaps(CFbsBitmapEx& aBmp1,CFbsBitmapEx& aBmp2,TDisplayMode aDispMode, TPoint aLineOrigin, TSize aBmpSize);
121 void CopyBitmap(CFbsBitmapEx& aBmp1,const CFbsBitmapEx& aBmp2);
122 void BlankBitmap(CFbsBitmapEx& aBitmap);
123 void FillBitmap(CFbsBitmapEx& aBitmap);
124 void StripeBitmap(CFbsBitmapEx& aBitmap);
125 TRgb ExtractRgb(TUint8* aBuffer,TInt aPixelOffset,TDisplayMode aDispMode);
127 static TInt BmpLoadCallBack(TAny* aPtr);
128 static TInt BmpSaveCallBack(TAny* aPtr);
129 CFbsBitmap* CreateBitmapLC(const TSize& aSize, TDisplayMode aMode);
130 CFbsBitmap* CreateBitmapLC(const TSize& aSize, TDisplayMode aMode, const CFbsBitmap* aSrcBmp);
131 CFbsBitmap* LoadBitmapLC(const TDesC& aFileName);
132 void LoadAndCompressBitmapLC(CFbsBitmap*& aBmp, const TDesC& aBmpFile);
133 void LoadAndNotCompressBitmapLC(CFbsBitmap*& aBmp, const TDesC& aBmpFile);
134 void TestAssortedBPPandColourDepthL(const TDesC& aFilename, RFbsSession* aFbs);
135 void DoStretchScanline(const TSize& aSize,TDisplayMode aSrcMode, TDisplayMode aDstMode, TBool aUseCompareLikeness);
136 TInt ColorDifference(TDisplayMode aMode,TInt aAlpha=0xff);
138 CFbsBitmapAsyncStreamer* iBmpHandler;
140 CActiveScheduler* iAs;
142 TFileName iTestBitmapName;
143 TBool iSkipRomBitmapTests;
147 class CTBitmapStep : public CTGraphicsStep
152 //from CTGraphicsStep
153 virtual CTGraphicsBase* CreateTestL();
154 virtual void TestSetupL();
155 virtual void TestClose();
158 _LIT(KTBitmapStep,"TBitmap");
160 #endif//__TBITMAP_H__