EXPORT_C class CFbsBitmap* LoadBitmapL(const TDesC8& aBuffer, TInt aIconNumber) { CEikonEnv* env=CEikonEnv::Static(); RWsSession& ws=env->WsSession(); CWsScreenDevice* screen=env->ScreenDevice(); return LoadBitmapL(aBuffer, aIconNumber, ws, screen); }
/** Override of base class virtual @return - TVerdict code */ TVerdict CTBitBltPerfDirectGdi::doTestStepPreambleL() { CTDirectGdiTestBase::doTestStepPreambleL(); // Create a CFbsBitmap image for each source mode we are testing. for (TInt srcMode = 0; srcMode < iSourcePixelFormatArray.Count(); ++srcMode) { TDisplayMode bitmapDisplayMode = TDisplayModeMapping::MapPixelFormatToDisplayMode(iSourcePixelFormatArray[srcMode]); CFbsBitmap* bitmapImage = NULL; switch(bitmapDisplayMode) { case EColor4K: case EGray256: bitmapImage = LoadBitmapL(KBitmap12bit, 0); break; case EColor64K: bitmapImage = LoadBitmapL(KBitmap16bit, 0); break; case EColor16M: bitmapImage = LoadBitmapL(KBitmap24bit, 0); break; default: bitmapImage = LoadBitmapL(KBitmap32bit, 0); break; } if (bitmapImage && bitmapImage->DisplayMode() != bitmapDisplayMode) { CleanupStack::PushL(bitmapImage); CFbsBitmap* tempBitmap = CopyIntoNewBitmapL(bitmapImage, bitmapDisplayMode); CleanupStack::PopAndDestroy(1, bitmapImage); //bitmapImage bitmapImage = tempBitmap; } iBitmapImage.AppendL(bitmapImage); } // Create 8bit alpha bitmap CFbsBitmap* tempBitmap = LoadBitmapL(KBitmap12bit, 0); CleanupStack::PushL(tempBitmap); iAlpha8bit = CopyIntoNewBitmapL(tempBitmap, EGray256); CleanupStack::PopAndDestroy(tempBitmap); // tempBitmap // Create CFbsBitmaps for the tile images of various pixel formats. // The first entry in the array is always the default pixelformat loaded from the mbm. // Then in the rest of the array are bitmaps converted to the source pixel formats. CFbsBitmap* tile = LoadBitmapL(KBitmapTile, 0); iBitmapTile.AppendL(tile); for (TInt srcMode = 0; srcMode < iSourcePixelFormatArray.Count(); ++srcMode) { TDisplayMode bitmapDisplayMode = TDisplayModeMapping::MapPixelFormatToDisplayMode(iSourcePixelFormatArray[srcMode]); CFbsBitmap* tileCopy = CopyIntoNewBitmapL(tile, bitmapDisplayMode); iBitmapTile.AppendL(tileCopy); } return TestStepResult(); }