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

Unified Diff: src/gpu/GrGpu.h

Issue 22686002: Implement path cover with nv_path_rendering (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: fix a comment Created 7 years, 2 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
« no previous file with comments | « src/gpu/GrDrawTargetCaps.h ('k') | src/gpu/GrGpu.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/gpu/GrGpu.h
diff --git a/src/gpu/GrGpu.h b/src/gpu/GrGpu.h
index 239ae6bd8362d3dbd25a7ca8b76027f8169afb6f..6a9dfa2b58038506912a9c6b9dedc7d75c014e15 100644
--- a/src/gpu/GrGpu.h
+++ b/src/gpu/GrGpu.h
@@ -335,12 +335,15 @@ public:
// clipping.
};
+ void getPathStencilSettingsForFillType(SkPath::FillType fill, GrStencilSettings* outStencilSettings);
+
protected:
enum DrawType {
kDrawPoints_DrawType,
kDrawLines_DrawType,
kDrawTriangles_DrawType,
kStencilPath_DrawType,
+ kFillPath_DrawType,
};
DrawType PrimTypeToDrawType(GrPrimitiveType type) {
@@ -440,15 +443,10 @@ private:
// overridden by backend-specific derived class to perform the draw call.
virtual void onGpuDraw(const DrawInfo&) = 0;
- // when GrDrawTarget::stencilPath is called the draw state's current stencil
- // settings are ignored. Instead the GrGpu decides the stencil rules
- // necessary to stencil the path. These are still subject to filtering by
- // the clip mask manager.
- virtual void setStencilPathSettings(const GrPath&,
- SkPath::FillType,
- GrStencilSettings* settings) = 0;
+
// overridden by backend-specific derived class to perform the path stenciling.
virtual void onGpuStencilPath(const GrPath*, SkPath::FillType) = 0;
+ virtual void onGpuFillPath(const GrPath*, SkPath::FillType) = 0;
// overridden by backend-specific derived class to perform flush
virtual void onForceRenderTargetFlush() = 0;
@@ -494,6 +492,9 @@ private:
virtual void onStencilPath(const GrPath* path, const SkStrokeRec& stroke,
SkPath::FillType) SK_OVERRIDE;
+ virtual void onFillPath(const GrPath* path, const SkStrokeRec& stroke, SkPath::FillType,
+ const GrDeviceCoordTexture* dstCopy) SK_OVERRIDE;
+
// readies the pools to provide vertex/index data.
void prepareVertexPool();
void prepareIndexPool();
« no previous file with comments | « src/gpu/GrDrawTargetCaps.h ('k') | src/gpu/GrGpu.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698