diff options
author | mtklein <mtklein@chromium.org> | 2015-04-29 08:16:50 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-04-29 08:16:50 -0700 |
commit | 2420e10d5a86da1964a05a749ab9bb625ae9f13e (patch) | |
tree | 7e7ea07fdf105b84d244a0f01f473821d3682d54 /src/core | |
parent | c64239a466b6e083ada93c2842d9e48bae606dfe (diff) |
Straighten out SkPicture::AccelData APIs.
Must have been we needed them to be weird (mutable, const setter) before.
It doesn't look like that's necessary now... we can just pass it to the
constructor.
BUG=skia:
Review URL: https://codereview.chromium.org/1112833003
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/SkPicture.cpp | 19 | ||||
-rw-r--r-- | src/core/SkPictureRecorder.cpp | 27 |
2 files changed, 22 insertions, 24 deletions
diff --git a/src/core/SkPicture.cpp b/src/core/SkPicture.cpp index 619be8b3ca..c014879354 100644 --- a/src/core/SkPicture.cpp +++ b/src/core/SkPicture.cpp @@ -241,10 +241,6 @@ SkPicture::~SkPicture() { } } -void SkPicture::EXPERIMENTAL_addAccelData(const SkPicture::AccelData* data) const { - fAccelData.reset(SkRef(data)); -} - const SkPicture::AccelData* SkPicture::EXPERIMENTAL_getAccelData( SkPicture::AccelData::Key key) const { if (fAccelData.get() && fAccelData->getKey() == key) { @@ -452,13 +448,18 @@ bool SkPicture::hasText() const { return fAnalysis.fHasText; } bool SkPicture::willPlayBackBitmaps() const { return fAnalysis.fWillPlaybackBitmaps; } int SkPicture::approximateOpCount() const { return fRecord->count(); } -SkPicture::SkPicture(const SkRect& cullRect, SkRecord* record, SnapshotArray* drawablePicts, - SkBBoxHierarchy* bbh, size_t approxBytesUsedBySubPictures) +SkPicture::SkPicture(const SkRect& cullRect, + SkRecord* record, + SnapshotArray* drawablePicts, + SkBBoxHierarchy* bbh, + AccelData* accelData, + size_t approxBytesUsedBySubPictures) : fUniqueID(0) , fCullRect(cullRect) - , fRecord(record) // For performance, we take ownership of the caller's ref. - , fBBH(bbh) // Ditto. - , fDrawablePicts(drawablePicts) // take ownership + , fRecord(record) // Take ownership of caller's ref. + , fDrawablePicts(drawablePicts) // Take ownership. + , fBBH(bbh) // Take ownership of caller's ref. + , fAccelData(accelData) // Take ownership of caller's ref. , fApproxBytesUsedBySubPictures(approxBytesUsedBySubPictures) , fAnalysis(*fRecord) {} diff --git a/src/core/SkPictureRecorder.cpp b/src/core/SkPictureRecorder.cpp index 6639bfcc85..282e2c22dd 100644 --- a/src/core/SkPictureRecorder.cpp +++ b/src/core/SkPictureRecorder.cpp @@ -77,14 +77,12 @@ SkPicture* SkPictureRecorder::endRecordingAsPicture() { for (int i = 0; pictList && i < pictList->count(); i++) { subPictureBytes += SkPictureUtils::ApproximateBytesUsed(pictList->begin()[i]); } - SkPicture* pict = SkNEW_ARGS(SkPicture, - (fCullRect, fRecord.detach(), pictList, fBBH.detach(), subPictureBytes)); - - if (saveLayerData) { - pict->EXPERIMENTAL_addAccelData(saveLayerData); - } - - return pict; + return SkNEW_ARGS(SkPicture, (fCullRect, + fRecord.detach(), + pictList, + fBBH.detach(), + saveLayerData.detach(), + subPictureBytes)); } void SkPictureRecorder::partialReplay(SkCanvas* canvas) const { @@ -161,13 +159,12 @@ protected: } // SkPicture will take ownership of a ref on both fRecord and fBBH. // We're not willing to give up our ownership, so we must ref them for SkPicture. - SkPicture* pict = SkNEW_ARGS(SkPicture, - (fBounds, SkRef(fRecord.get()), pictList, SkSafeRef(fBBH.get()), subPictureBytes)); - - if (saveLayerData) { - pict->EXPERIMENTAL_addAccelData(saveLayerData); - } - return pict; + return SkNEW_ARGS(SkPicture, (fBounds, + SkRef(fRecord.get()), + pictList, + SkSafeRef(fBBH.get()), + saveLayerData.detach(), + subPictureBytes)); } }; |