Chromium Code Reviews| Index: include/core/SkPictureRecorder.h |
| diff --git a/include/core/SkPictureRecorder.h b/include/core/SkPictureRecorder.h |
| index 3f0cbcc801690be21002327e8d8ac380ad08dd49..419c01bc881b0ba996b8923dfb46137e8b1a6002 100644 |
| --- a/include/core/SkPictureRecorder.h |
| +++ b/include/core/SkPictureRecorder.h |
| @@ -33,11 +33,15 @@ public: |
| enum RecordFlags { |
| // This flag indicates that, if some BHH is being computed, saveLayer |
| // information should also be extracted at the same time. |
| - kComputeSaveLayerInfo_RecordFlag = 0x01, |
| + kComputeSaveLayerInfo_RecordFlag = 1 << 0, |
| // If you call drawPicture() or drawDrawable() on the recording canvas, this flag forces |
| // that object to playback its contents immediately rather than reffing the object. |
| - kPlaybackDrawPicture_RecordFlag = 0x02, |
| + kPlaybackDrawPicture_RecordFlag = 1 << 1, |
|
liyuqian
2016/07/06 15:39:03
Just curious: is 1 << 1 faster than 0x02? (In case
|
| + }; |
| + |
| + enum FinishFlags { |
| + kReturnNullForEmpty_FinishFlag = 1 << 0, // no draw-ops will return nullptr |
| }; |
| /** Returns the canvas that records the drawing commands. |
| @@ -72,7 +76,7 @@ public: |
| * reflect their current state, but will not contain a live reference to the drawables |
| * themselves. |
| */ |
| - sk_sp<SkPicture> finishRecordingAsPicture(); |
| + sk_sp<SkPicture> finishRecordingAsPicture(uint32_t endFlags = 0); |
| /** |
| * Signal that the caller is done recording, and update the cull rect to use for bounding |
| @@ -83,7 +87,8 @@ public: |
| * and subsequent culling operations. |
| * @return the picture containing the recorded content. |
| */ |
| - sk_sp<SkPicture> finishRecordingAsPictureWithCull(const SkRect& cullRect); |
| + sk_sp<SkPicture> finishRecordingAsPictureWithCull(const SkRect& cullRect, |
| + uint32_t endFlags = 0); |
| /** |
| * Signal that the caller is done recording. This invalidates the canvas returned by |
| @@ -95,7 +100,7 @@ public: |
| * and therefore this drawable will reflect the current state of those nested drawables anytime |
| * it is drawn or a new picture is snapped from it (by calling drawable->newPictureSnapshot()). |
| */ |
| - sk_sp<SkDrawable> finishRecordingAsDrawable(); |
| + sk_sp<SkDrawable> finishRecordingAsDrawable(uint32_t endFlags = 0); |
| #ifdef SK_SUPPORT_LEGACY_PICTURE_PTR |
| SkPicture* SK_WARN_UNUSED_RESULT endRecordingAsPicture() { |