Index: include/gpu/GrContext.h |
diff --git a/include/gpu/GrContext.h b/include/gpu/GrContext.h |
index 39f5be728f85b171920d841b842f69791905fa77..07434425f972486620fa03bb06a51fdfb15e8dde 100644 |
--- a/include/gpu/GrContext.h |
+++ b/include/gpu/GrContext.h |
@@ -49,10 +49,19 @@ class SK_API GrContext : public SkRefCnt { |
public: |
SK_DECLARE_INST_COUNT(GrContext) |
+ struct Options { |
+ Options(); |
+ |
+ // 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 +948,14 @@ public: |
GrPathRendererChain::DrawType drawType = GrPathRendererChain::kColor_DrawType, |
GrPathRendererChain::StencilSupport* stencilSupport = NULL); |
+ /** |
+ * This returns true if the underlying graphics device and system is |
+ * 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. |
+ */ |
robertphillips
2014/08/11 19:22:20
drawPathsToCompressedTextures ?
compressCoverageMa
krajcevski
2014/08/11 20:01:33
Done.
|
+ bool supportsDrawPathToCompressedTexture() const; |
+ |
#if GR_CACHE_STATS |
void printCacheStats() const; |
#endif |
@@ -986,9 +1003,10 @@ private: |
SkTDArray<CleanUpData> fCleanUpData; |
int fMaxTextureSizeOverride; |
robertphillips
2014/08/11 19:22:20
Options fOptions; ?
krajcevski
2014/08/11 20:01:33
Done.
|
+ bool fSupportsDrawPathToCompressed; |
GrContext(); // init must be called after the constructor. |
- bool init(GrBackend, GrBackendContext); |
+ bool init(GrBackend, GrBackendContext, const Options& opts); |
void setupDrawBuffer(); |