Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(462)

Side by Side Diff: gm/gmmain.cpp

Issue 310283004: remove SkBitmap::allocConfigPixels and update dox (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: remove unused function Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | include/core/SkBitmap.h » ('j') | include/core/SkBitmap.h » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2011 Google Inc. 2 * Copyright 2011 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 /* 8 /*
9 * Code for the "gm" (Golden Master) rendering comparison tool. 9 * Code for the "gm" (Golden Master) rendering comparison tool.
10 * 10 *
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
144 enum ConfigFlags { 144 enum ConfigFlags {
145 kNone_ConfigFlag = 0x0, 145 kNone_ConfigFlag = 0x0,
146 /* Write GM images if a write path is provided. */ 146 /* Write GM images if a write path is provided. */
147 kWrite_ConfigFlag = 0x1, 147 kWrite_ConfigFlag = 0x1,
148 /* Read reference GM images if a read path is provided. */ 148 /* Read reference GM images if a read path is provided. */
149 kRead_ConfigFlag = 0x2, 149 kRead_ConfigFlag = 0x2,
150 kRW_ConfigFlag = (kWrite_ConfigFlag | kRead_ConfigFlag), 150 kRW_ConfigFlag = (kWrite_ConfigFlag | kRead_ConfigFlag),
151 }; 151 };
152 152
153 struct ConfigData { 153 struct ConfigData {
154 SkBitmap::Config fConfig; 154 SkColorType fColorType;
155 Backend fBackend; 155 Backend fBackend;
156 GLContextType fGLContextType; // GPU backend only 156 GLContextType fGLContextType; // GPU backend only
157 int fSampleCnt; // GPU backend only 157 int fSampleCnt; // GPU backend only
158 ConfigFlags fFlags; 158 ConfigFlags fFlags;
159 const char* fName; 159 const char* fName;
160 bool fRunByDefault; 160 bool fRunByDefault;
161 }; 161 };
162 162
163 struct PDFRasterizerData { 163 struct PDFRasterizerData {
164 bool (*fRasterizerFunction)(SkStream*, SkBitmap*); 164 bool (*fRasterizerFunction)(SkStream*, SkBitmap*);
(...skipping 305 matching lines...) Expand 10 before | Expand all | Expand 10 after
470 * After you've rendered the GM into the SkBitmap, you must call 470 * After you've rendered the GM into the SkBitmap, you must call
471 * complete_bitmap()! 471 * complete_bitmap()!
472 * 472 *
473 * @todo thudson 22 April 2011 - could refactor this to take in 473 * @todo thudson 22 April 2011 - could refactor this to take in
474 * a factory to generate the context, always call readPixels() 474 * a factory to generate the context, always call readPixels()
475 * (logically a noop for rasters, if wasted time), and thus collapse the 475 * (logically a noop for rasters, if wasted time), and thus collapse the
476 * GPU special case and also let this be used for SkPicture testing. 476 * GPU special case and also let this be used for SkPicture testing.
477 */ 477 */
478 static void setup_bitmap(const ConfigData& gRec, SkISize& size, 478 static void setup_bitmap(const ConfigData& gRec, SkISize& size,
479 SkBitmap* bitmap) { 479 SkBitmap* bitmap) {
480 bitmap->allocConfigPixels(gRec.fConfig, size.width(), size.height()); 480 bitmap->allocPixels(SkImageInfo::Make(size.width(), size.height(),
481 gRec.fColorType, kPremul_SkAlphaTy pe));
481 bitmap->eraseColor(SK_ColorTRANSPARENT); 482 bitmap->eraseColor(SK_ColorTRANSPARENT);
482 } 483 }
483 484
484 /** 485 /**
485 * Any finalization steps we need to perform on the SkBitmap after 486 * Any finalization steps we need to perform on the SkBitmap after
486 * we have rendered the GM into it. 487 * we have rendered the GM into it.
487 * 488 *
488 * It's too bad that we are throwing away alpha channel data 489 * It's too bad that we are throwing away alpha channel data
489 * we could otherwise be examining, but this had always been happening 490 * we could otherwise be examining, but this had always been happening
490 * before... it was buried within the compare() method at 491 * before... it was buried within the compare() method at
(...skipping 789 matching lines...) Expand 10 before | Expand all | Expand 10 after
1280 #endif 1281 #endif
1281 }; // end of GMMain class definition 1282 }; // end of GMMain class definition
1282 1283
1283 #if SK_SUPPORT_GPU 1284 #if SK_SUPPORT_GPU
1284 static const GLContextType kDontCare_GLContextType = GrContextFactory::kNative_G LContextType; 1285 static const GLContextType kDontCare_GLContextType = GrContextFactory::kNative_G LContextType;
1285 #else 1286 #else
1286 static const GLContextType kDontCare_GLContextType = 0; 1287 static const GLContextType kDontCare_GLContextType = 0;
1287 #endif 1288 #endif
1288 1289
1289 static const ConfigData gRec[] = { 1290 static const ConfigData gRec[] = {
1290 { SkBitmap::kARGB_8888_Config, kRaster_Backend, kDontCare_GLContextType, 0, kRW_ConfigFlag, "8888", true }, 1291 { kN32_SkColorType, kRaster_Backend, kDontCare_GLContextType, 0, kRW_ConfigFlag, "8888", true },
1291 #if 0 // stop testing this (for now at least) since we want to remove support for it (soon please!!!) 1292 { kRGB_565_SkColorType, kRaster_Backend, kDontCare_GLContextType, 0, kRW_ConfigFlag, "565", true },
1292 { SkBitmap::kARGB_4444_Config, kRaster_Backend, kDontCare_GLContextType, 0, kRW_ConfigFlag, "4444", true },
1293 #endif
1294 { SkBitmap::kRGB_565_Config, kRaster_Backend, kDontCare_GLContextType, 0, kRW_ConfigFlag, "565", true },
1295 #if SK_SUPPORT_GPU 1293 #if SK_SUPPORT_GPU
1296 { SkBitmap::kARGB_8888_Config, kGPU_Backend, GrContextFactory::kNative_GL ContextType, 0, kRW_ConfigFlag, "gpu", true }, 1294 { kN32_SkColorType, kGPU_Backend, GrContextFactory::kNative_GLContextType , 0, kRW_ConfigFlag, "gpu", true },
1297 { SkBitmap::kARGB_8888_Config, kGPU_Backend, GrContextFactory::kNative_GL ContextType, 16, kRW_ConfigFlag, "msaa16", false}, 1295 { kN32_SkColorType, kGPU_Backend, GrContextFactory::kNative_GLContextType , 16, kRW_ConfigFlag, "msaa16", false},
1298 { SkBitmap::kARGB_8888_Config, kGPU_Backend, GrContextFactory::kNative_GL ContextType, 4, kRW_ConfigFlag, "msaa4", false}, 1296 { kN32_SkColorType, kGPU_Backend, GrContextFactory::kNative_GLContextType , 4, kRW_ConfigFlag, "msaa4", false},
1299 { SkBitmap::kARGB_8888_Config, kGPU_Backend, GrContextFactory::kNVPR_GLCo ntextType, 4, kRW_ConfigFlag, "nvprmsaa4", true }, 1297 { kN32_SkColorType, kGPU_Backend, GrContextFactory::kNVPR_GLContextType, 4, kRW_ConfigFlag, "nvprmsaa4", true },
1300 { SkBitmap::kARGB_8888_Config, kGPU_Backend, GrContextFactory::kNVPR_GLCo ntextType, 16, kRW_ConfigFlag, "nvprmsaa16", false}, 1298 { kN32_SkColorType, kGPU_Backend, GrContextFactory::kNVPR_GLContextType, 16, kRW_ConfigFlag, "nvprmsaa16", false},
1301 /* The gpudebug context does not generate meaningful images, so don't record 1299 /* The gpudebug context does not generate meaningful images, so don't record
1302 * the images it generates! We only run it to look for asserts. */ 1300 * the images it generates! We only run it to look for asserts. */
1303 { SkBitmap::kARGB_8888_Config, kGPU_Backend, GrContextFactory::kDebug_GLC ontextType, 0, kNone_ConfigFlag, "gpudebug", kDebugOnly}, 1301 { kN32_SkColorType, kGPU_Backend, GrContextFactory::kDebug_GLContextType, 0, kNone_ConfigFlag, "gpudebug", kDebugOnly},
1304 /* The gpunull context does the least amount of work possible and doesn't 1302 /* The gpunull context does the least amount of work possible and doesn't
1305 generate meaninful images, so don't record them!. It can be run to 1303 generate meaninful images, so don't record them!. It can be run to
1306 isolate the CPU-side processing expense from the GPU-side. 1304 isolate the CPU-side processing expense from the GPU-side.
1307 */ 1305 */
1308 { SkBitmap::kARGB_8888_Config, kGPU_Backend, GrContextFactory::kNull_GLCo ntextType, 0, kNone_ConfigFlag, "gpunull", kDebugOnly}, 1306 { kN32_SkColorType, kGPU_Backend, GrContextFactory::kNull_GLContextType, 0, kNone_ConfigFlag, "gpunull", kDebugOnly},
1309 #if SK_ANGLE 1307 #if SK_ANGLE
1310 { SkBitmap::kARGB_8888_Config, kGPU_Backend, GrContextFactory::kANGLE_GLC ontextType, 0, kRW_ConfigFlag, "angle", true }, 1308 { kN32_SkColorType, kGPU_Backend, GrContextFactory::kANGLE_GLContextType, 0, kRW_ConfigFlag, "angle", true },
1311 { SkBitmap::kARGB_8888_Config, kGPU_Backend, GrContextFactory::kANGLE_GLC ontextType, 16, kRW_ConfigFlag, "anglemsaa16", true }, 1309 { kN32_SkColorType, kGPU_Backend, GrContextFactory::kANGLE_GLContextType, 16, kRW_ConfigFlag, "anglemsaa16", true },
1312 #endif // SK_ANGLE 1310 #endif // SK_ANGLE
1313 #ifdef SK_MESA 1311 #ifdef SK_MESA
1314 { SkBitmap::kARGB_8888_Config, kGPU_Backend, GrContextFactory::kMESA_GLCo ntextType, 0, kRW_ConfigFlag, "mesa", true }, 1312 { kN32_SkColorType, kGPU_Backend, GrContextFactory::kMESA_GLContextType, 0, kRW_ConfigFlag, "mesa", true },
1315 #endif // SK_MESA 1313 #endif // SK_MESA
1316 #endif // SK_SUPPORT_GPU 1314 #endif // SK_SUPPORT_GPU
1317 #ifdef SK_SUPPORT_XPS 1315 #ifdef SK_SUPPORT_XPS
1318 /* At present we have no way of comparing XPS files (either natively or by c onverting to PNG). */ 1316 /* At present we have no way of comparing XPS files (either natively or by c onverting to PNG). */
1319 { SkBitmap::kARGB_8888_Config, kXPS_Backend, kDontCare_GLContextType, 0, kWrite_ConfigFlag, "xps", true }, 1317 { kN32_SkColorType, kXPS_Backend, kDontCare_GLContextType, 0, kWrite_ConfigFlag, "xps", true },
1320 #endif // SK_SUPPORT_XPS 1318 #endif // SK_SUPPORT_XPS
1321 #ifdef SK_SUPPORT_PDF 1319 #ifdef SK_SUPPORT_PDF
1322 { SkBitmap::kARGB_8888_Config, kPDF_Backend, kDontCare_GLContextType, 0, kRW_ConfigFlag, "pdf", true }, 1320 { kN32_SkColorType, kPDF_Backend, kDontCare_GLContextType, 0, kRW_ConfigFlag, "pdf", true },
1323 #endif // SK_SUPPORT_PDF 1321 #endif // SK_SUPPORT_PDF
1324 }; 1322 };
1325 1323
1326 static bool SkNoRasterizePDF(SkStream*, SkBitmap*) { return false; } 1324 static bool SkNoRasterizePDF(SkStream*, SkBitmap*) { return false; }
1327 1325
1328 static const PDFRasterizerData kPDFRasterizers[] = { 1326 static const PDFRasterizerData kPDFRasterizers[] = {
1329 #ifdef SK_BUILD_FOR_MAC 1327 #ifdef SK_BUILD_FOR_MAC
1330 { &SkPDFDocumentToBitmap, "mac", true }, 1328 { &SkPDFDocumentToBitmap, "mac", true },
1331 #endif 1329 #endif
1332 #ifdef SK_BUILD_POPPLER 1330 #ifdef SK_BUILD_POPPLER
(...skipping 400 matching lines...) Expand 10 before | Expand all | Expand 10 after
1733 if (gmFlags & GM::kSkipPDF_Flag) { 1731 if (gmFlags & GM::kSkipPDF_Flag) {
1734 gmmain.RecordSkippedTest(shortNamePlusConfig, 1732 gmmain.RecordSkippedTest(shortNamePlusConfig,
1735 renderModeDescriptor, 1733 renderModeDescriptor,
1736 config.fBackend); 1734 config.fBackend);
1737 errorsForAllConfigs.add(kIntentionallySkipped_ErrorType); 1735 errorsForAllConfigs.add(kIntentionallySkipped_ErrorType);
1738 continue; 1736 continue;
1739 } 1737 }
1740 } 1738 }
1741 if ((gmFlags & GM::kSkip565_Flag) && 1739 if ((gmFlags & GM::kSkip565_Flag) &&
1742 (kRaster_Backend == config.fBackend) && 1740 (kRaster_Backend == config.fBackend) &&
1743 (SkBitmap::kRGB_565_Config == config.fConfig)) { 1741 (kRGB_565_SkColorType == config.fColorType)) {
1744 gmmain.RecordSkippedTest(shortNamePlusConfig, 1742 gmmain.RecordSkippedTest(shortNamePlusConfig,
1745 renderModeDescriptor, 1743 renderModeDescriptor,
1746 config.fBackend); 1744 config.fBackend);
1747 errorsForAllConfigs.add(kIntentionallySkipped_ErrorType); 1745 errorsForAllConfigs.add(kIntentionallySkipped_ErrorType);
1748 continue; 1746 continue;
1749 } 1747 }
1750 if (((gmFlags & GM::kSkipGPU_Flag) && kGPU_Backend == config.fBackend) | | 1748 if (((gmFlags & GM::kSkipGPU_Flag) && kGPU_Backend == config.fBackend) | |
1751 ((gmFlags & GM::kGPUOnly_Flag) && kGPU_Backend != config.fBackend)) { 1749 ((gmFlags & GM::kGPUOnly_Flag) && kGPU_Backend != config.fBackend)) {
1752 gmmain.RecordSkippedTest(shortNamePlusConfig, 1750 gmmain.RecordSkippedTest(shortNamePlusConfig,
1753 renderModeDescriptor, 1751 renderModeDescriptor,
(...skipping 712 matching lines...) Expand 10 before | Expand all | Expand 10 after
2466 if (FLAGS_forceBWtext) { 2464 if (FLAGS_forceBWtext) {
2467 canvas->setDrawFilter(SkNEW(BWTextDrawFilter))->unref(); 2465 canvas->setDrawFilter(SkNEW(BWTextDrawFilter))->unref();
2468 } 2466 }
2469 } 2467 }
2470 2468
2471 #if !defined(SK_BUILD_FOR_IOS) && !defined(SK_BUILD_FOR_NACL) 2469 #if !defined(SK_BUILD_FOR_IOS) && !defined(SK_BUILD_FOR_NACL)
2472 int main(int argc, char * const argv[]) { 2470 int main(int argc, char * const argv[]) {
2473 return tool_main(argc, (char**) argv); 2471 return tool_main(argc, (char**) argv);
2474 } 2472 }
2475 #endif 2473 #endif
OLDNEW
« no previous file with comments | « no previous file | include/core/SkBitmap.h » ('j') | include/core/SkBitmap.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698