Add way to determine at link time what path renderer will be used.
Added mechanism for a custom path renderer to punt and fallback to default path renderer
git-svn-id: http://skia.googlecode.com/svn/trunk@1005 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/gpu/include/GrContext.h b/gpu/include/GrContext.h
index 4058c5b..106ac8a 100644
--- a/gpu/include/GrContext.h
+++ b/gpu/include/GrContext.h
@@ -21,13 +21,13 @@
#include "GrGpu.h"
#include "GrTextureCache.h"
#include "GrPaint.h"
+#include "GrPathRenderer.h"
class GrFontCache;
class GrPathIter;
class GrVertexBufferAllocPool;
class GrIndexBufferAllocPool;
class GrInOrderDrawBuffer;
-class GrPathRenderer;
class GR_API GrContext : public GrRefCnt {
public:
@@ -479,13 +479,16 @@
GrGpu* fGpu;
GrTextureCache* fTextureCache;
GrFontCache* fFontCache;
- GrPathRenderer* fPathRenderer;
+
+ GrPathRenderer* fCustomPathRenderer;
+ GrDefaultPathRenderer fDefaultPathRenderer;
GrVertexBufferAllocPool* fDrawBufferVBAllocPool;
GrIndexBufferAllocPool* fDrawBufferIBAllocPool;
GrInOrderDrawBuffer* fDrawBuffer;
GrContext(GrGpu* gpu);
+
void flushDrawBuffer();
static void SetPaint(const GrPaint& paint, GrDrawTarget* target);
@@ -495,6 +498,11 @@
GrDrawTarget* prepareToDraw(const GrPaint& paint, DrawCategory drawType);
void drawClipIntoStencil();
+
+ GrPathRenderer* getPathRenderer(const GrDrawTarget* target,
+ GrPathIter* path,
+ GrPathFill fill);
+
};
/**