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

Side by Side Diff: tools/PictureRenderer.h

Issue 291843010: Call write() within render_pictures but not bench_pictures (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: disable write() calls except in render_pictures Created 6 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
« no previous file with comments | « no previous file | tools/PictureRenderer.cpp » ('j') | 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 2012 Google Inc. 2 * Copyright 2012 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 #ifndef PictureRenderer_DEFINED 8 #ifndef PictureRenderer_DEFINED
9 #define PictureRenderer_DEFINED 9 #define PictureRenderer_DEFINED
10 10
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 * @param mismatchPath The output directory within which this renderer shoul d write any images 89 * @param mismatchPath The output directory within which this renderer shoul d write any images
90 * which do not match expectations, or NULL if this renderer should not write mismatches. 90 * which do not match expectations, or NULL if this renderer should not write mismatches.
91 * @param inputFilename The name of the input file we are rendering. 91 * @param inputFilename The name of the input file we are rendering.
92 * @param useChecksumBasedFilenames Whether to use checksum-based filenames when writing 92 * @param useChecksumBasedFilenames Whether to use checksum-based filenames when writing
93 * bitmap images to disk. 93 * bitmap images to disk.
94 */ 94 */
95 virtual void init(SkPicture* pict, const SkString* writePath, const SkString * mismatchPath, 95 virtual void init(SkPicture* pict, const SkString* writePath, const SkString * mismatchPath,
96 const SkString* inputFilename, bool useChecksumBasedFilena mes); 96 const SkString* inputFilename, bool useChecksumBasedFilena mes);
97 97
98 /** 98 /**
99 * TODO(epoger): Temporary hack, while we work on http://skbug.com/2584 ('be nch_pictures is
100 * timing reading pixels and writing json files'), such that:
101 * - render_pictures can call this method and continue to work
102 * - any other callers (bench_pictures) will skip calls to write() by defaul t
103 */
104 void enableWrites() { fEnableWrites = true; }
105
106 /**
99 * Set the viewport so that only the portion listed gets drawn. 107 * Set the viewport so that only the portion listed gets drawn.
100 */ 108 */
101 void setViewport(SkISize size) { fViewport = size; } 109 void setViewport(SkISize size) { fViewport = size; }
102 110
103 /** 111 /**
104 * Set the scale factor at which draw the picture. 112 * Set the scale factor at which draw the picture.
105 */ 113 */
106 void setScaleFactor(SkScalar scale) { fScaleFactor = scale; } 114 void setScaleFactor(SkScalar scale) { fScaleFactor = scale; }
107 115
108 /** 116 /**
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after
338 return fCanvas; 346 return fCanvas;
339 } 347 }
340 348
341 SkPicture* getPicture() { 349 SkPicture* getPicture() {
342 return fPicture; 350 return fPicture;
343 } 351 }
344 352
345 PictureRenderer() 353 PictureRenderer()
346 : fJsonSummaryPtr(NULL) 354 : fJsonSummaryPtr(NULL)
347 , fDeviceType(kBitmap_DeviceType) 355 , fDeviceType(kBitmap_DeviceType)
356 , fEnableWrites(false)
348 , fBBoxHierarchyType(kNone_BBoxHierarchyType) 357 , fBBoxHierarchyType(kNone_BBoxHierarchyType)
349 , fScaleFactor(SK_Scalar1) 358 , fScaleFactor(SK_Scalar1)
350 #if SK_SUPPORT_GPU 359 #if SK_SUPPORT_GPU
351 , fGrContext(NULL) 360 , fGrContext(NULL)
352 , fSampleCount(0) 361 , fSampleCount(0)
353 #endif 362 #endif
354 { 363 {
355 fGridInfo.fMargin.setEmpty(); 364 fGridInfo.fMargin.setEmpty();
356 fGridInfo.fOffset.setZero(); 365 fGridInfo.fOffset.setZero();
357 fGridInfo.fTileInterval.set(1, 1); 366 fGridInfo.fTileInterval.set(1, 1);
358 sk_bzero(fDrawFilters, sizeof(fDrawFilters)); 367 sk_bzero(fDrawFilters, sizeof(fDrawFilters));
359 fViewport.set(0, 0); 368 fViewport.set(0, 0);
360 } 369 }
361 370
362 #if SK_SUPPORT_GPU 371 #if SK_SUPPORT_GPU
363 virtual ~PictureRenderer() { 372 virtual ~PictureRenderer() {
364 SkSafeUnref(fGrContext); 373 SkSafeUnref(fGrContext);
365 } 374 }
366 #endif 375 #endif
367 376
368 protected: 377 protected:
369 SkAutoTUnref<SkCanvas> fCanvas; 378 SkAutoTUnref<SkCanvas> fCanvas;
370 SkAutoTUnref<SkPicture> fPicture; 379 SkAutoTUnref<SkPicture> fPicture;
371 bool fUseChecksumBasedFilenames; 380 bool fUseChecksumBasedFilenames;
372 ImageResultsAndExpectations* fJsonSummaryPtr; 381 ImageResultsAndExpectations* fJsonSummaryPtr;
373 SkDeviceTypes fDeviceType; 382 SkDeviceTypes fDeviceType;
383 bool fEnableWrites;
374 BBoxHierarchyType fBBoxHierarchyType; 384 BBoxHierarchyType fBBoxHierarchyType;
375 DrawFilterFlags fDrawFilters[SkDrawFilter::kTypeCount]; 385 DrawFilterFlags fDrawFilters[SkDrawFilter::kTypeCount];
376 SkString fDrawFiltersConfig; 386 SkString fDrawFiltersConfig;
377 SkString fWritePath; 387 SkString fWritePath;
378 SkString fMismatchPath; 388 SkString fMismatchPath;
379 SkString fInputFilename; 389 SkString fInputFilename;
380 SkTileGridFactory::TileGridInfo fGridInfo; // used when fBBoxHierarchyType i s TileGrid 390 SkTileGridFactory::TileGridInfo fGridInfo; // used when fBBoxHierarchyType i s TileGrid
381 391
382 void buildBBoxHierarchy(); 392 void buildBBoxHierarchy();
383 393
(...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after
638 648
639 typedef PictureRenderer INHERITED; 649 typedef PictureRenderer INHERITED;
640 }; 650 };
641 651
642 extern PictureRenderer* CreateGatherPixelRefsRenderer(); 652 extern PictureRenderer* CreateGatherPixelRefsRenderer();
643 extern PictureRenderer* CreatePictureCloneRenderer(); 653 extern PictureRenderer* CreatePictureCloneRenderer();
644 654
645 } 655 }
646 656
647 #endif // PictureRenderer_DEFINED 657 #endif // PictureRenderer_DEFINED
OLDNEW
« no previous file with comments | « no previous file | tools/PictureRenderer.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698