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

Unified Diff: include/gpu/GrDrawContext.h

Issue 1754563003: Begin weaning GrClipMaskManager off of GrDrawTarget (take 2) (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: update Created 4 years, 10 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 side-by-side diff with in-line comments
Download patch
Index: include/gpu/GrDrawContext.h
diff --git a/include/gpu/GrDrawContext.h b/include/gpu/GrDrawContext.h
index 8042ab12c690a572cc109d480d08d2e754049aed..c61182b41d4b9467b4386fd5e4c9b4103193226c 100644
--- a/include/gpu/GrDrawContext.h
+++ b/include/gpu/GrDrawContext.h
@@ -11,6 +11,7 @@
#include "GrColor.h"
#include "GrRenderTarget.h"
#include "SkRefCnt.h"
+#include "SkRegion.h"
#include "SkSurfaceProps.h"
#include "../private/GrSingleOwner.h"
@@ -26,6 +27,7 @@ class GrPaint;
class GrPathProcessor;
class GrPipelineBuilder;
class GrRenderTarget;
+class GrStencilSettings;
class GrStrokeInfo;
class GrSurface;
class SkDrawFilter;
@@ -102,6 +104,14 @@ public:
const SkRect&,
const GrStrokeInfo* strokeInfo = NULL);
+ bool stencilRect(const SkIRect* scissorRect,
joshualitt 2016/03/01 17:34:50 I really like the direction this CL is going, but
bsalomon 2016/03/01 17:38:55 I think the name here isn't quite right... it isn'
bsalomon 2016/03/01 17:40:06 I think some way of hiding this is in order (priv
robertphillips 2016/03/01 20:11:57 Done - for now. I was hoping to fold the stencil-o
robertphillips 2016/03/01 20:11:57 Done. I have added GrDrawContextPriv.
+ const GrStencilSettings&,
+ SkRegion::Op op,
+ bool invert,
+ bool doAA,
+ const SkMatrix& viewMatrix,
+ const SkRect&);
+
/**
* Maps a rectangle of shader coordinates to a rectangle and fills that rectangle.
*
@@ -155,6 +165,14 @@ public:
const SkPath&,
const GrStrokeInfo&);
+ bool stencilPath(const SkIRect* scissorRect,
+ const GrStencilSettings&,
+ SkRegion::Op op,
+ bool invert,
+ bool doAA,
+ const SkMatrix& viewMatrix,
+ const SkPath&);
+
/**
* Draws vertices with a paint.
*
@@ -280,6 +298,10 @@ private:
friend class GrAtlasTextBlob; // for access to drawBatch
friend class GrDrawingManager; // for ctor
+ GrDrawBatch* getFillRectBatch(const GrPaint& paint,
+ const SkMatrix& viewMatrix,
+ const SkRect& rect);
+
void internalDrawPath(GrPipelineBuilder*,
const SkMatrix& viewMatrix,
GrColor,

Powered by Google App Engine
This is Rietveld 408576698