skia2/include/core
Brian Salomon 48825b11ad Redefine the meaning of sample counts in GPU backend.
Old: 0  -> nonMSAA
     1+ -> MSAA

New:
     0  -> error/unsupported
     1  -> nonMSAA
     2+ -> MSAA

We still allow 0 to mean nonMSAA in three sets of public APIs for backwards compatibility:

1) SkSurface factories
2) GrBackendRenderTarget constructors
3) GrCaps::getSampleCnt()'s requestedCount parameter

However, we immediately clamp to 1 and treat 0 as invalid/non-renderable internally.

This also changes the behavior when using a large sample count. We now fail in that case rather than using the largest sample available sample count. GrCaps::getSampleCount() will return 0 in this case.


Bug: skia:
Change-Id: Ida22c6b22c1365e563c9046b611e88bf5eb3ff33
Reviewed-on: https://skia-review.googlesource.com/101560
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2018-02-01 18:16:58 +00:00
..
SkAnnotation.h remove unneeded flag for annotations 2016-03-05 06:00:12 -08:00
SkBBHFactory.h Remove stray semicolons. 2016-09-27 14:04:26 +00:00
SkBitmap.h SkBitmap now *has* a SkPixmap. 2018-01-09 16:46:22 +00:00
SkBlendMode.h move SkBlendMode_Name into public (for chrome) 2016-11-16 19:17:21 +00:00
SkBlurTypes.h move common blur types into central header 2014-04-28 16:25:35 +00:00
SkCanvas.h Revert "declare SkRasterizer for android" 2018-01-22 12:35:49 +00:00
SkClipOp.h add flag to hide deprecated clipops 2017-05-10 18:56:14 +00:00
SkColor.h Make SkASSERT and co. constexpr compatible. 2017-09-29 13:49:04 +00:00
SkColorFilter.h Pass GrRenderTargetContext's GrColorSpaceInfo to SkShader and SkColorFilter. 2017-10-25 19:32:20 +00:00
SkColorPriv.h Remove trailing whitespace. 2017-10-09 21:20:34 +00:00
SkColorSpace.h Remove more functionality from SkColorSpace_Base 2017-12-21 21:01:35 +00:00
SkColorSpaceXform.h add helper static to SkColorSpaceXform 2017-05-22 18:08:13 +00:00
SkColorSpaceXformCanvas.h Make xformer class for SkCSXCanvas, use for draw loopers 2017-03-30 18:02:58 +00:00
SkCoverageMode.h use coverage modes instead of blend modes 2018-01-26 17:03:58 +00:00
SkData.h Class delete call unsized delete when size not known. 2016-10-19 21:41:00 +00:00
SkDataTable.h Convert NULL and 0 to nullptr. 2017-08-28 17:48:57 +00:00
SkDeferredDisplayListRecorder.h Implement GPU/OpList DDLs 2018-02-01 15:00:53 +00:00
SkDeque.h This CL addresses "SkCanvas::save flags are not respected by GPU backend" (https://code.google.com/p/skia/issues/detail?id=1503). 2013-08-16 00:53:34 +00:00
SkDocument.h SkDocument: remove unused fDoneProc 2018-01-08 20:53:41 +00:00
SkDrawable.h Remove trailing whitespace. 2017-10-09 21:20:34 +00:00
SkDrawFilter.h SkPaintFilterCanvas cleanup 2016-01-12 12:14:10 -08:00
SkDrawLooper.h Make xformer class for SkCSXCanvas, use for draw loopers 2017-03-30 18:02:58 +00:00
SkEncodedImageFormat.h GOOGLE3 -> SK_BUILD_FOR_GOOGLE3 2017-12-19 14:42:16 +00:00
SkExecutor.h Add FIFO thread pool, use it for most things. 2017-09-01 16:19:47 +00:00
SkFilterQuality.h Skia Filter Quality and Scaling Metrics 2016-04-18 09:14:00 -07:00
SkFlattenable.h remove unused SkRasterizer 2018-01-21 18:24:11 +00:00
SkFont.h typedef uint16_t SkGlyphID 2016-07-25 07:18:12 -07:00
SkFontArguments.h Add SkTypeface::getVariationDesignPosition. 2017-02-24 16:59:05 +00:00
SkFontLCDConfig.h Add SK_API to SkFontLCDConfig. 2016-05-03 11:56:03 -07:00
SkFontStyle.h Make SkTypeface::Style and FromOldStyle private. 2017-10-13 15:49:18 +00:00
SkGraphics.h add API to change max pointsize for font cache 2017-06-01 20:55:16 +00:00
SkICC.h Improve comment in SkICC.h 2017-02-24 20:35:57 +00:00
SkImage.h Add lazy proxy's for wrapping backend textures 2018-01-24 15:12:30 +00:00
SkImageEncoder.h centralize encoding to SkData 2017-12-09 01:36:48 +00:00
SkImageFilter.h don't draw non-finite contexts in imagefilters 2018-01-30 02:02:42 +00:00
SkImageGenerator.h Add api for passing mipped hint into ImageGenerator onGenerateTexture 2017-10-11 17:11:07 +00:00
SkImageInfo.h Add kRGBX_8888, kRGBA_1010102, and kRGBX_1010102 color types. Unused for now. 2018-01-30 01:59:31 +00:00
SkMallocPixelRef.h removed dead colortable code 2017-07-19 22:20:57 +00:00
SkMask.h move zero-init to sk_malloc for masks 2018-01-22 20:50:47 +00:00
SkMaskFilter.h use coverage modes instead of blend modes 2018-01-26 17:03:58 +00:00
SkMath.h SkLiteDL: remove freelisting, add reset() and SKLITEDL_PAGE knob. 2016-08-16 09:36:18 -07:00
SkMatrix44.h Suppress float-cast-overflow for double-to-float in SkMatrix{,44} 2017-09-18 17:23:39 +00:00
SkMatrix.h Remove public version of SkMatrix::mapPointsWithStride. 2018-01-05 19:32:15 +00:00
SkMetaData.h Convert NULL and 0 to nullptr. 2017-08-28 17:48:57 +00:00
SkMilestone.h Update Skia milestone to 66 2018-01-19 17:07:13 +00:00
SkMultiPictureDraw.h Convert NULL and 0 to nullptr. 2017-08-28 17:48:57 +00:00
SkOverdrawCanvas.h Add SK_API to SkOverdrawCanvas and SkOverdrawColorFilter. 2017-08-18 16:53:49 +00:00
SkPaint.h Move glyph cache and descriptor functions off of SkPaint 2018-01-23 21:55:50 +00:00
SkPath.h refresh public includes 2018-01-03 15:21:49 +00:00
SkPathEffect.h Convert NULL and 0 to nullptr. 2017-08-28 17:48:57 +00:00
SkPathMeasure.h Move seg_to to a new header, define SkSegType enum there 2016-08-09 09:38:30 -07:00
SkPicture.h add SkPicture::MakePlaceholder() 2018-01-28 00:18:37 +00:00
SkPictureRecorder.h Convert NULL and 0 to nullptr. 2017-08-28 17:48:57 +00:00
SkPixelRef.h Convert NULL and 0 to nullptr. 2017-08-28 17:48:57 +00:00
SkPixmap.h SkBitmap now *has* a SkPixmap. 2018-01-09 16:46:22 +00:00
SkPngChunkReader.h Delete SkImageDecoder 2016-03-24 10:41:47 -07:00
SkPoint3.h convert mapHomogeneousPoints to SkPoint3 2017-10-18 16:09:46 +00:00
SkPoint.h refresh public includes 2018-01-03 15:21:49 +00:00
SkPostConfig.h eliminate SK_BUILD_FOR_WIN32 2018-01-26 19:52:04 +00:00
SkPreConfig.h eliminate SK_BUILD_FOR_WIN32 2018-01-26 19:52:04 +00:00
SkRasterHandleAllocator.h Make header files self-sufficient 2017-02-10 01:19:52 +00:00
SkRect.h saturate some irect ops for fuzzers 2018-01-30 21:50:30 +00:00
SkRefCnt.h GOOGLE3 -> SK_BUILD_FOR_GOOGLE3 2017-12-19 14:42:16 +00:00
SkRegion.h use 64bit math to compute is a rect is empty 2018-01-09 16:54:52 +00:00
SkRRect.h Don't canonicalize empty SkRRects. They stroke differently. 2017-12-19 21:10:36 +00:00
SkRSXform.h Revert "Revert "Make GPU backend triangulate rects such that they are rendered as tri strips rather than tri fans."" 2017-10-18 12:21:17 +00:00
SkRWBuffer.h Remove trailing whitespace. 2017-10-09 21:20:34 +00:00
SkScalar.h Change SkScalarTruncToInt to saturate. 2017-09-18 18:26:13 +00:00
SkSerialProcs.h add serialprocs to MultiDocument, hide redundant methods 2017-12-21 12:36:30 +00:00
SkShader.h IWYU -- SkShader.h 2018-01-23 18:08:30 +00:00
SkSize.h SkSize can be aggregate-initialized 2017-04-11 18:57:20 +00:00
SkStream.h remove dead code for STREAM_API 2017-09-20 20:43:50 +00:00
SkString.h Allow printf style var args for messages in REPORTER_ASSERT. 2018-01-29 15:17:09 +00:00
SkStrokeRec.h Unify implementations of stroking radius calculationsns 2016-04-29 07:07:03 -07:00
SkSurface.h Redefine the meaning of sample counts in GPU backend. 2018-02-01 18:16:58 +00:00
SkSurfaceProps.h Flesh out SkSurfaceCharacterization 2017-11-30 17:10:38 +00:00
SkSwizzle.h Add missing SK_API to SkSwizzle.h 2016-03-24 07:50:14 -07:00
SkTextBlob.h simple version of serialization for SkTextBlob 2017-12-19 22:34:56 +00:00
SkTime.h Make SkTime SK_API so that SkTime::GetDateTime() is visible to the clients. 2016-05-02 15:04:46 -07:00
SkTLazy.h Update SkTLazy for move only types. 2017-11-28 22:13:47 +00:00
SkTraceMemoryDump.h Add support for light dumps in SkTraceMemoryDump interface. 2015-09-30 04:31:23 -07:00
SkTypeface.h Make SkTypeface::Style and FromOldStyle private. 2017-10-13 15:49:18 +00:00
SkTypes.h add saturate helper for float2int64 2018-01-31 21:21:36 +00:00
SkUnPreMultiply.h Factor out UnPreMultiplyPreservingByteOrder 2014-01-15 22:24:58 +00:00
SkVertices.h check for valid vertices mode 2018-01-23 18:28:47 +00:00
SkYUVSizeInfo.h Make header files self-sufficient 2017-02-10 01:19:52 +00:00