| Index: src/gpu/batches/GrClearBatch.h
|
| diff --git a/src/gpu/batches/GrClearBatch.h b/src/gpu/batches/GrClearBatch.h
|
| index 9a653a3962ca386efdd6c3d55033fc41fbccd029..00a1c84de653cfb5d811fb2c2374444be990286a 100644
|
| --- a/src/gpu/batches/GrClearBatch.h
|
| +++ b/src/gpu/batches/GrClearBatch.h
|
| @@ -18,12 +18,8 @@ class GrClearBatch final : public GrBatch {
|
| public:
|
| DEFINE_BATCH_CLASS_ID
|
|
|
| - GrClearBatch(const SkIRect& rect, GrColor color, GrRenderTarget* rt)
|
| - : INHERITED(ClassID())
|
| - , fRect(rect)
|
| - , fColor(color)
|
| - , fRenderTarget(rt) {
|
| - this->setBounds(SkRect::Make(rect), HasAABloat::kNo, IsZeroArea::kNo);
|
| + static sk_sp<GrBatch> Make(const SkIRect& rect, GrColor color, GrRenderTarget* rt) {
|
| + return sk_sp<GrBatch>(new GrClearBatch(rect, color, rt));
|
| }
|
|
|
| const char* name() const override { return "Clear"; }
|
| @@ -41,6 +37,14 @@ public:
|
| }
|
|
|
| private:
|
| + GrClearBatch(const SkIRect& rect, GrColor color, GrRenderTarget* rt)
|
| + : INHERITED(ClassID())
|
| + , fRect(rect)
|
| + , fColor(color)
|
| + , fRenderTarget(rt) {
|
| + this->setBounds(SkRect::Make(rect), HasAABloat::kNo, IsZeroArea::kNo);
|
| + }
|
| +
|
| bool onCombineIfPossible(GrBatch* t, const GrCaps& caps) override {
|
| // This could be much more complicated. Currently we look at cases where the new clear
|
| // contains the old clear, or when the new clear is a subset of the old clear and is the
|
| @@ -71,46 +75,4 @@ private:
|
| typedef GrBatch INHERITED;
|
| };
|
|
|
| -class GrClearStencilClipBatch final : public GrBatch {
|
| -public:
|
| - DEFINE_BATCH_CLASS_ID
|
| -
|
| - GrClearStencilClipBatch(const SkIRect& rect, bool insideClip, GrRenderTarget* rt)
|
| - : INHERITED(ClassID())
|
| - , fRect(rect)
|
| - , fInsideClip(insideClip)
|
| - , fRenderTarget(rt) {
|
| - this->setBounds(SkRect::Make(rect), HasAABloat::kNo, IsZeroArea::kNo);
|
| - }
|
| -
|
| - const char* name() const override { return "ClearStencilClip"; }
|
| -
|
| - uint32_t renderTargetUniqueID() const override { return fRenderTarget.get()->getUniqueID(); }
|
| - GrRenderTarget* renderTarget() const override { return fRenderTarget.get(); }
|
| -
|
| - SkString dumpInfo() const override {
|
| - SkString string;
|
| - string.printf("Rect [L: %d, T: %d, R: %d, B: %d], IC: %d, RT: 0x%p",
|
| - fRect.fLeft, fRect.fTop, fRect.fRight, fRect.fBottom, fInsideClip,
|
| - fRenderTarget.get());
|
| - string.append(INHERITED::dumpInfo());
|
| - return string;
|
| - }
|
| -
|
| -private:
|
| - bool onCombineIfPossible(GrBatch* t, const GrCaps& caps) override { return false; }
|
| -
|
| - void onPrepare(GrBatchFlushState*) override {}
|
| -
|
| - void onDraw(GrBatchFlushState* state) override {
|
| - state->commandBuffer()->clearStencilClip(fRect, fInsideClip, fRenderTarget.get());
|
| - }
|
| -
|
| - SkIRect fRect;
|
| - bool fInsideClip;
|
| - GrPendingIOResource<GrRenderTarget, kWrite_GrIOType> fRenderTarget;
|
| -
|
| - typedef GrBatch INHERITED;
|
| -};
|
| -
|
| #endif
|
|
|