| Index: include/gpu/GrCaps.h
|
| diff --git a/include/gpu/GrCaps.h b/include/gpu/GrCaps.h
|
| index 05da8d7cadf40d5af5eafa185b03ad761c8b7029..248298e01a1325772df631f94b7b646e4b2f174e 100644
|
| --- a/include/gpu/GrCaps.h
|
| +++ b/include/gpu/GrCaps.h
|
| @@ -143,6 +143,9 @@ public:
|
| bool oversizedStencilSupport() const { return fOversizedStencilSupport; }
|
| bool textureBarrierSupport() const { return fTextureBarrierSupport; }
|
| bool usesMixedSamples() const { return fUsesMixedSamples; }
|
| + /** "Raster multisample" is a special HW mode where the rasterizer runs more samples than are in
|
| + the target framebuffer. */
|
| + bool rasterMultisampleSupport() const { return fRasterMultisampleSupport; }
|
|
|
| bool useDrawInsteadOfClear() const { return fUseDrawInsteadOfClear; }
|
| bool useDrawInsteadOfPartialRenderTargetWrite() const {
|
| @@ -220,6 +223,11 @@ public:
|
| return SkTMin(this->maxColorSampleCount(), this->maxStencilSampleCount());
|
| }
|
| }
|
| + // This can only be called if raster multisample is supported.
|
| + int maxRasterSamples() const {
|
| + SkASSERT(this->rasterMultisampleSupport());
|
| + return fMaxRasterSamples;
|
| + }
|
|
|
|
|
| virtual bool isConfigTexturable(GrPixelConfig config) const = 0;
|
| @@ -268,6 +276,7 @@ protected:
|
| bool fOversizedStencilSupport : 1;
|
| bool fTextureBarrierSupport : 1;
|
| bool fUsesMixedSamples : 1;
|
| + bool fRasterMultisampleSupport : 1;
|
| bool fSupportsInstancedDraws : 1;
|
| bool fFullClearIsFree : 1;
|
| bool fMustClearUploadedBufferData : 1;
|
| @@ -291,6 +300,7 @@ protected:
|
| int fMaxTileSize;
|
| int fMaxColorSampleCount;
|
| int fMaxStencilSampleCount;
|
| + int fMaxRasterSamples;
|
|
|
| private:
|
| virtual void onApplyOptionsOverrides(const GrContextOptions&) {};
|
|
|