| Index: src/gpu/GrDrawingManager.h
|
| diff --git a/src/gpu/GrDrawingManager.h b/src/gpu/GrDrawingManager.h
|
| index be21d68ea8e5eec0ee90a36b2d91deaa050cd108..c8b9a9b471405f2154d5474568d663c7ad4d3c6d 100644
|
| --- a/src/gpu/GrDrawingManager.h
|
| +++ b/src/gpu/GrDrawingManager.h
|
| @@ -9,10 +9,13 @@
|
| #define GrDrawingManager_DEFINED
|
|
|
| #include "GrDrawTarget.h"
|
| +#include "GrPathRendererChain.h"
|
| +#include "GrPathRenderer.h"
|
| #include "SkTDArray.h"
|
|
|
| class GrContext;
|
| class GrDrawContext;
|
| +class GrSoftwarePathRenderer;
|
| class GrTextContext;
|
|
|
| // Currently the DrawingManager creates a separate GrTextContext for each
|
| @@ -29,6 +32,7 @@ public:
|
| ~GrDrawingManager();
|
|
|
| bool abandoned() const { return fAbandoned; }
|
| + void freeGpuResources();
|
|
|
| GrDrawContext* drawContext(GrRenderTarget* rt, const SkSurfaceProps* surfaceProps);
|
|
|
| @@ -40,12 +44,19 @@ public:
|
|
|
| GrContext* getContext() { return fContext; }
|
|
|
| + GrPathRenderer* getPathRenderer(const GrPathRenderer::CanDrawPathArgs& args,
|
| + bool allowSW,
|
| + GrPathRendererChain::DrawType drawType,
|
| + GrPathRenderer::StencilSupport* stencilSupport = NULL);
|
| +
|
| private:
|
| GrDrawingManager(GrContext* context, GrDrawTarget::Options options)
|
| : fContext(context)
|
| , fAbandoned(false)
|
| , fOptions(options)
|
| - , fNVPRTextContext(nullptr) {
|
| + , fNVPRTextContext(nullptr)
|
| + , fPathRendererChain(nullptr)
|
| + , fSoftwarePathRenderer(nullptr) {
|
| sk_bzero(fTextContexts, sizeof(fTextContexts));
|
| }
|
|
|
| @@ -67,6 +78,9 @@ private:
|
|
|
| GrTextContext* fNVPRTextContext;
|
| GrTextContext* fTextContexts[kNumPixelGeometries][kNumDFTOptions];
|
| +
|
| + GrPathRendererChain* fPathRendererChain;
|
| + GrSoftwarePathRenderer* fSoftwarePathRenderer;
|
| };
|
|
|
| #endif
|
|
|