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

Unified Diff: src/gpu/gl/GrGLGpu.h

Issue 1541903002: added support for PLS path rendering (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 4 years, 11 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: src/gpu/gl/GrGLGpu.h
diff --git a/src/gpu/gl/GrGLGpu.h b/src/gpu/gl/GrGLGpu.h
index cdd8a38c6602eb4208f5996f80f89506d76acff2..3ff5bad1ed49a51c1c3938f3d80314aad5fcd324 100644
--- a/src/gpu/gl/GrGLGpu.h
+++ b/src/gpu/gl/GrGLGpu.h
@@ -134,6 +134,8 @@ public:
void drawDebugWireRect(GrRenderTarget*, const SkIRect&, GrColor) override;
+ void performFlushWorkaround() override;
+
private:
GrGLGpu(GrGLContext* ctx, GrContext* context);
@@ -217,6 +219,11 @@ private:
const SkIRect& srcRect,
const SkIPoint& dstPoint);
+ void stampRectUsingProgram(GrGLuint program, const SkRect& bounds, GrGLint posXformUniform,
+ GrGLuint arrayBuffer);
+
+ void setupPixelLocalStorage(const DrawArgs& args);
+
static bool BlendCoeffReferencesConstant(GrBlendCoeff coeff);
class ProgramCache : public ::SkNoncopyable {
@@ -338,6 +345,8 @@ private:
void createWireRectProgram();
void createUnitRectBuffer();
+ void createPLSSetupProgram();
+
// GL program-related state
ProgramCache* fProgramCache;
@@ -543,6 +552,16 @@ private:
}
}
+ #ifdef ENABLE_PLS
bsalomon 2016/01/13 19:15:34 untab
+ struct {
+ GrGLuint fProgram;
+ GrGLint fPosXformUniform;
+ GrGLuint fArrayBuffer;
+ } fPLSSetupProgram;
+
+ bool fHWPLSEnabled;
+ #endif
+
typedef GrGpu INHERITED;
friend class GrGLPathRendering; // For accessing setTextureUnit.
};

Powered by Google App Engine
This is Rietveld 408576698