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

Side by Side Diff: tools/PictureRenderingFlags.cpp

Issue 14544007: Add msaa configs to bench_pictures (Closed) Base URL: http://skia.googlecode.com/svn/trunk/
Patch Set: Remove enum Created 7 years, 7 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 | Annotate | Revision Log
« no previous file with comments | « tools/PictureRenderer.cpp ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2013 Google Inc. 2 * Copyright 2013 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 #include "PictureRenderingFlags.h" 8 #include "PictureRenderingFlags.h"
9 9
10 #include "CopyTilesRenderer.h" 10 #include "CopyTilesRenderer.h"
(...skipping 13 matching lines...) Expand all
24 DEFINE_string(bbh, "none", "bbhType [width height]: Set the bounding box hierarc hy type to " 24 DEFINE_string(bbh, "none", "bbhType [width height]: Set the bounding box hierarc hy type to "
25 "be used. Accepted values are: none, rtree, grid. " 25 "be used. Accepted values are: none, rtree, grid. "
26 "Not compatible with --pipe. With value " 26 "Not compatible with --pipe. With value "
27 "'grid', width and height must be specified. 'grid' can " 27 "'grid', width and height must be specified. 'grid' can "
28 "only be used with modes tile, record, and " 28 "only be used with modes tile, record, and "
29 "playbackCreation."); 29 "playbackCreation.");
30 // Although this config does not support all the same options as gm, the names s hould be kept 30 // Although this config does not support all the same options as gm, the names s hould be kept
31 // consistent. 31 // consistent.
32 #if SK_ANGLE 32 #if SK_ANGLE
33 // ANGLE assumes GPU 33 // ANGLE assumes GPU
34 DEFINE_string(config, "8888", "[8888|gpu|angle]: Use the corresponding config.") ; 34 DEFINE_string(config, "8888", "[8888|gpu|msaa4|msaa16|angle]: Use the correspond ing config.");
35 #elif SK_SUPPORT_GPU 35 #elif SK_SUPPORT_GPU
36 DEFINE_string(config, "8888", "[8888|gpu]: Use the corresponding config."); 36 DEFINE_string(config, "8888", "[8888|gpu|msaa4|msaa16]: Use the corresponding co nfig.");
37 #else 37 #else
38 DEFINE_string(config, "8888", "[8888]: Use the corresponding config."); 38 DEFINE_string(config, "8888", "[8888]: Use the corresponding config.");
39 #endif 39 #endif
40 40
41 DEFINE_bool(deferImageDecoding, false, "Defer decoding until drawing images. " 41 DEFINE_bool(deferImageDecoding, false, "Defer decoding until drawing images. "
42 "Has no effect if the provided skp does not have its images encoded. "); 42 "Has no effect if the provided skp does not have its images encoded. ");
43 DEFINE_string(mode, "simple", "Run in the corresponding mode:\n" 43 DEFINE_string(mode, "simple", "Run in the corresponding mode:\n"
44 "simple: Simple rendering.\n" 44 "simple: Simple rendering.\n"
45 "tile width height: Use tiles with the given dimensions or percent ages.\n" 45 "tile width height: Use tiles with the given dimensions or percent ages.\n"
46 "pow2tile minWidth height: Use tiles with widths that are all a po wer\n" 46 "pow2tile minWidth height: Use tiles with widths that are all a po wer\n"
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
245 return NULL; 245 return NULL;
246 } 246 }
247 SkISize viewport; 247 SkISize viewport;
248 viewport.fWidth = atoi(FLAGS_viewport[0]); 248 viewport.fWidth = atoi(FLAGS_viewport[0]);
249 viewport.fHeight = atoi(FLAGS_viewport[1]); 249 viewport.fHeight = atoi(FLAGS_viewport[1]);
250 renderer->setViewport(viewport); 250 renderer->setViewport(viewport);
251 } 251 }
252 252
253 sk_tools::PictureRenderer::SkDeviceTypes deviceType = 253 sk_tools::PictureRenderer::SkDeviceTypes deviceType =
254 sk_tools::PictureRenderer::kBitmap_DeviceType; 254 sk_tools::PictureRenderer::kBitmap_DeviceType;
255 #if SK_SUPPORT_GPU
256 int sampleCount = 0;
257 #endif
255 if (FLAGS_config.count() > 0) { 258 if (FLAGS_config.count() > 0) {
256 if (0 == strcmp(FLAGS_config[0], "8888")) { 259 if (0 == strcmp(FLAGS_config[0], "8888")) {
257 deviceType = sk_tools::PictureRenderer::kBitmap_DeviceType; 260 deviceType = sk_tools::PictureRenderer::kBitmap_DeviceType;
258 } 261 }
259 #if SK_SUPPORT_GPU 262 #if SK_SUPPORT_GPU
260 else if (0 == strcmp(FLAGS_config[0], "gpu")) { 263 else if (0 == strcmp(FLAGS_config[0], "gpu")) {
261 deviceType = sk_tools::PictureRenderer::kGPU_DeviceType; 264 deviceType = sk_tools::PictureRenderer::kGPU_DeviceType;
262 if (FLAGS_multi > 1) { 265 if (FLAGS_multi > 1) {
263 error.printf("GPU not compatible with multithreaded tiling.\n"); 266 error.printf("GPU not compatible with multithreaded tiling.\n");
264 return NULL; 267 return NULL;
265 } 268 }
266 } 269 }
270 else if (0 == strcmp(FLAGS_config[0], "msaa4")) {
271 deviceType = sk_tools::PictureRenderer::kGPU_DeviceType;
272 if (FLAGS_multi > 1) {
273 error.printf("GPU not compatible with multithreaded tiling.\n");
274 return NULL;
275 }
276 sampleCount = 4;
277 }
278 else if (0 == strcmp(FLAGS_config[0], "msaa16")) {
279 deviceType = sk_tools::PictureRenderer::kGPU_DeviceType;
280 if (FLAGS_multi > 1) {
281 error.printf("GPU not compatible with multithreaded tiling.\n");
282 return NULL;
283 }
284 sampleCount = 16;
285 }
267 #if SK_ANGLE 286 #if SK_ANGLE
268 else if (0 == strcmp(FLAGS_config[0], "angle")) { 287 else if (0 == strcmp(FLAGS_config[0], "angle")) {
269 deviceType = sk_tools::PictureRenderer::kAngle_DeviceType; 288 deviceType = sk_tools::PictureRenderer::kAngle_DeviceType;
270 if (FLAGS_multi > 1) { 289 if (FLAGS_multi > 1) {
271 error.printf("Angle not compatible with multithreaded tiling.\n" ); 290 error.printf("Angle not compatible with multithreaded tiling.\n" );
272 return NULL; 291 return NULL;
273 } 292 }
274 } 293 }
275 #endif 294 #endif
276 #endif 295 #endif
277 else { 296 else {
278 error.printf("%s is not a valid mode for --config\n", FLAGS_config[0 ]); 297 error.printf("%s is not a valid mode for --config\n", FLAGS_config[0 ]);
279 return NULL; 298 return NULL;
280 } 299 }
281 renderer->setDeviceType(deviceType); 300 renderer->setDeviceType(deviceType);
301 #if SK_SUPPORT_GPU
302 renderer->setSampleCount(sampleCount);
303 #endif
282 } 304 }
283 305
284 306
285 sk_tools::PictureRenderer::BBoxHierarchyType bbhType 307 sk_tools::PictureRenderer::BBoxHierarchyType bbhType
286 = sk_tools::PictureRenderer::kNone_BBoxHierarchyType; 308 = sk_tools::PictureRenderer::kNone_BBoxHierarchyType;
287 if (FLAGS_bbh.count() > 0) { 309 if (FLAGS_bbh.count() > 0) {
288 const char* type = FLAGS_bbh[0]; 310 const char* type = FLAGS_bbh[0];
289 if (0 == strcmp(type, "none")) { 311 if (0 == strcmp(type, "none")) {
290 bbhType = sk_tools::PictureRenderer::kNone_BBoxHierarchyType; 312 bbhType = sk_tools::PictureRenderer::kNone_BBoxHierarchyType;
291 } else if (0 == strcmp(type, "rtree")) { 313 } else if (0 == strcmp(type, "rtree")) {
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
360 if (FLAGS_useVolatileCache && SkAutoTUnref<SkImageCache>( 382 if (FLAGS_useVolatileCache && SkAutoTUnref<SkImageCache>(
361 SkPurgeableImageCache::Create()).get() != NULL) { 383 SkPurgeableImageCache::Create()).get() != NULL) {
362 gFactory.setCacheSelector(&gCacheSelector); 384 gFactory.setCacheSelector(&gCacheSelector);
363 } else { 385 } else {
364 gFactory.setImageCache(&gLruImageCache); 386 gFactory.setImageCache(&gLruImageCache);
365 } 387 }
366 gOnce = true; 388 gOnce = true;
367 } 389 }
368 return gFactory.installPixelRef(data, bitmap); 390 return gFactory.installPixelRef(data, bitmap);
369 } 391 }
OLDNEW
« no previous file with comments | « tools/PictureRenderer.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698