Refactor SkLiteDL to no longer extend SkDrawable.
Change-Id: Ieaa849bceba0e98e4c99491c721fe945a0694e68
Reviewed-on: https://skia-review.googlesource.com/9111
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Stan Iliev <stani@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
diff --git a/bench/PictureOverheadBench.cpp b/bench/PictureOverheadBench.cpp
index 27424a2..1fea9e9 100644
--- a/bench/PictureOverheadBench.cpp
+++ b/bench/PictureOverheadBench.cpp
@@ -25,14 +25,15 @@
void onDraw(int loops, SkCanvas*) override {
SkLiteRecorder lite;
SkPictureRecorder rec;
- for (int i = 0; i < loops; i++) {
- SkRect bounds{0,0, 2000,3000};
- sk_sp<SkLiteDL> liteDL;
+ SkIRect iBounds = {0,0, 2000,3000};
+ SkRect bounds = SkRect::Make(iBounds);
+
+ for (int i = 0; i < loops; i++) {
+ SkLiteDL liteDL;
SkCanvas* canvas;
if (kLite) {
- liteDL = SkLiteDL::New(bounds);
- lite.reset(liteDL.get());
+ lite.reset(&liteDL, iBounds);
canvas = &lite;
} else {
rec.beginRecording(bounds);
diff --git a/bench/RecordingBench.cpp b/bench/RecordingBench.cpp
index 69be911..aa31052 100644
--- a/bench/RecordingBench.cpp
+++ b/bench/RecordingBench.cpp
@@ -40,9 +40,9 @@
{
// If we're recording into an SkLiteDL, also record _from_ one.
if (lite) {
- fDL = SkLiteDL::New(fSrc->cullRect());
+ fDL.reset(new SkLiteDL());
SkLiteRecorder r;
- r.reset(fDL.get());
+ r.reset(fDL.get(), fSrc->cullRect().roundOut());
fSrc->playback(&r);
}
}
@@ -51,10 +51,10 @@
if (fDL) {
SkLiteRecorder rec;
while (loops --> 0) {
- sk_sp<SkLiteDL> dl = SkLiteDL::New(fSrc->cullRect());
- rec.reset(dl.get());
+ SkLiteDL dl;
+ rec.reset(&dl, fSrc->cullRect().roundOut());
fDL->draw(&rec);
- dl->makeThreadsafe();
+ dl.makeThreadsafe();
}
} else {
diff --git a/bench/RecordingBench.h b/bench/RecordingBench.h
index 4e34276..beaea3e 100644
--- a/bench/RecordingBench.h
+++ b/bench/RecordingBench.h
@@ -36,7 +36,7 @@
void onDraw(int loops, SkCanvas*) override;
private:
- sk_sp<SkLiteDL> fDL;
+ std::unique_ptr<SkLiteDL> fDL;
bool fUseBBH;
typedef PictureCentricBench INHERITED;