Chromium Code Reviews| Index: include/gpu/GrContext.h |
| diff --git a/include/gpu/GrContext.h b/include/gpu/GrContext.h |
| index 39f5be728f85b171920d841b842f69791905fa77..7a8663bed61321c29f74127761c3dfb2881549a1 100644 |
| --- a/include/gpu/GrContext.h |
| +++ b/include/gpu/GrContext.h |
| @@ -49,10 +49,21 @@ class SK_API GrContext : public SkRefCnt { |
| public: |
| SK_DECLARE_INST_COUNT(GrContext) |
| + struct Options { |
| + Options() |
| + : fDrawPathToCompressedTexture(false) |
| + { } |
| + |
| + // EXPERIMENTAL |
| + // May be removed in the future, or may become standard depending |
| + // on the outcomes of a variety of internal tests. |
| + bool fDrawPathToCompressedTexture; |
| + }; |
| + |
| /** |
| * Creates a GrContext for a backend context. |
| */ |
| - static GrContext* Create(GrBackend, GrBackendContext); |
| + static GrContext* Create(GrBackend, GrBackendContext, const Options* opts = NULL); |
| virtual ~GrContext(); |
| @@ -939,6 +950,14 @@ public: |
| GrPathRendererChain::DrawType drawType = GrPathRendererChain::kColor_DrawType, |
| GrPathRendererChain::StencilSupport* stencilSupport = NULL); |
| + /** |
| + * This returns true if the underlying graphics device and system is |
|
bsalomon
2014/08/11 20:51:32
update comment?
|
| + * capable of drawing paths to compressed textures. This generally provides |
| + * a speedup on mobile devices with advanced GPUs, but it only gets turned |
| + * on when there is a clear speedup benefit. |
| + */ |
| + const Options& getOptions() const { return fOptions; } |
| + |
| #if GR_CACHE_STATS |
| void printCacheStats() const; |
| #endif |
| @@ -987,7 +1006,9 @@ private: |
| int fMaxTextureSizeOverride; |
| - GrContext(); // init must be called after the constructor. |
| + const Options fOptions; |
| + |
| + GrContext(const Options&); // init must be called after the constructor. |
| bool init(GrBackend, GrBackendContext); |
| void setupDrawBuffer(); |