skia2/include/core
brianosman e25d71ccbc Gradients are serialized (and can be constructed) as SkColor4f + SkColorSpace
Added gradient shader factories that take SkColor4f + SkColorSpace.
Modified Descriptor to only store SkColor4f + SkColorSpace.
Existing factories make use of helper code to convert SkColor and
forward to the new factories.

Bumped SKP version to handle new gradient serialization format.
I was toying with using half-float when serializing SkColor4f,
despite my aggressive packing of flags, this format is significantly
bigger.

Also added GM to use 4f factories. This GM should (and does)
look identical to the existing gradients GM.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2370063002

Review-Url: https://codereview.chromium.org/2370063002
2016-09-28 11:27:28 -07: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 Remove SkBitmap::getTexture() 2016-08-30 12:52:49 -07:00
SkBitmapDevice.h store info in basedevice, change getter to non-virtual const& 2016-08-20 07:59:19 -07:00
SkBlitRow.h Port SkBlitRow::Color32 to SkOpts. 2015-09-10 10:38:02 -07:00
SkBlurTypes.h move common blur types into central header 2014-04-28 16:25:35 +00:00
SkCanvas.h allow clip calls w/o op param, remove unnecessary kReplace ops 2016-09-21 11:15:07 -07:00
SkChunkAlloc.h MIPS32r2: Fix Chromium runtime crash 2016-06-05 13:14:21 -07:00
SkClipOp.h abstract name of clipping ops, to transtion to a more restricted set 2016-09-20 08:42:39 -07:00
SkClipStack.h abstract name of clipping ops, to transtion to a more restricted set 2016-09-20 08:42:39 -07:00
SkColor.h Added SkColor4f::FromColor3f(SkColor3f, float a) 2016-08-19 11:23:15 -07:00
SkColorFilter.h Add SkRasterPipeline blitter. 2016-07-22 11:05:04 -07:00
SkColorPriv.h SkBlendARGB32 and S32[A]_Blend_BlitRow32 are currently formulated as: SkAlphaMulQ(src, src_scale) + SkAlphaMulQ(dst, dst_scale), which boils down to ((src*src_scale)>>8) + ((dst*dst_scale)>>8). In particular, note that the intermediate precision is discarded before the two parts are added together, causing the final result to possibly inaccurate. 2016-08-05 11:48:45 -07:00
SkColorSpace.h Move toXYZD50() to SkColorSpace_Base 2016-09-28 11:15:27 -07:00
SkColorTable.h Ensure that SkColorTable->fCount is set properly after decodes 2016-05-17 08:52:11 -07:00
SkData.h Use SkNVRefCnt for a couple common types. 2016-08-09 12:20:04 -07:00
SkDataTable.h Move to SkDataTable::MakeXXX and sk_sp. 2016-08-05 06:51:50 -07: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
SkDevice.h remove unused SkDevice::setMatrixClip 2016-09-02 12:10:07 -07:00
SkDocument.h document.close from bool to void 2016-09-22 14:12:47 -07:00
SkDraw.h SkPixmap::setColorSpace 2016-06-09 11:03:45 -07:00
SkDrawable.h Make SkDrawable an SkFlattenable 2016-04-25 06:40:26 -07:00
SkDrawFilter.h SkPaintFilterCanvas cleanup 2016-01-12 12:14:10 -08:00
SkDrawLooper.h Revert of Delete SkFlattenable::Type (patchset #2 id:20001 of https://codereview.chromium.org/1834303003/ ) 2016-04-04 14:57:19 -07:00
SkError.h Sanitizing source files in Housekeeper-Nightly 2013-09-05 07:01:19 +00:00
SkFilterQuality.h Skia Filter Quality and Scaling Metrics 2016-04-18 09:14:00 -07:00
SkFlattenable.h SkLightingShader normal vector CPU computation refactor. 2016-06-27 11:40:45 -07:00
SkFlattenableSerialization.h Revert of Delete SkFlattenable::Type (part 1) (patchset #1 id:1 of https://codereview.chromium.org/1861013002/ ) 2016-04-05 12:00:49 -07:00
SkFont.h typedef uint16_t SkGlyphID 2016-07-25 07:18:12 -07:00
SkFontLCDConfig.h Add SK_API to SkFontLCDConfig. 2016-05-03 11:56:03 -07:00
SkFontStyle.h Remove 'Ulta' width. 2016-08-02 10:43:29 -07:00
SkGraphics.h add SkGraphics::PurageAllCaches 2016-02-22 06:19:54 -08:00
SkImage.h Store mipmap levels in deferred texture image 2016-08-30 12:09:23 -07:00
SkImageDeserializer.h Deserialize pictures with custom image-deserializer 2016-08-11 03:55:15 -07:00
SkImageEncoder.h GN: guard tools (except fiddle) by skia_enable_tools. 2016-08-24 12:23:52 -07:00
SkImageFilter.h Add output format properties to SkImageFilter::Context 2016-09-22 07:15:37 -07:00
SkImageGenerator.h Enable generating SkImage with the same uniqueID in SkImageGenerator subclass 2016-05-02 01:43:38 -07:00
SkImageInfo.h Add SkColorSpace::Equals() API 2016-08-01 09:43:08 -07:00
SkLights.h added radial lights to SkLights 2016-09-06 13:03:30 -07:00
SkMallocPixelRef.h For non-opaque SkBitmapDevices, replace malloc-then-zero with calloc. 2015-11-05 09:46:23 -08:00
SkMask.h Add default ctor to SkMask 2015-12-17 11:33:12 -08:00
SkMaskFilter.h Implement GPU occluded blur mask filter 2016-08-10 16:25:25 -07:00
SkMath.h SkLiteDL: remove freelisting, add reset() and SKLITEDL_PAGE knob. 2016-08-16 09:36:18 -07:00
SkMatrix44.h Fix storage of gamut transform matrices in SkColorSpace 2016-09-09 10:36:17 -07:00
SkMatrix.h add SkMatrixPriv for specialized helpers 2016-08-22 06:39:49 -07:00
SkMetaData.h "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
SkMilestone.h Update Skia milestone to 55 2016-08-25 06:19:31 -07:00
SkMultiPictureDraw.h Move SkTDArray to private. 2016-02-18 08:53:33 -08:00
SkOSFile.h add fsync to try to get complete skps from webpage picture capture 2015-12-16 13:41:23 -08:00
SkPaint.h use expected name for setDrawLooper/getDrawLooper 2016-09-11 05:40:31 -07:00
SkPath.h Avoid warnings on GCC 4.8.4 2016-07-26 14:10:17 -07:00
SkPathEffect.h Remove stray semicolons. 2016-09-27 14:04:26 +00:00
SkPathMeasure.h Move seg_to to a new header, define SkSegType enum there 2016-08-09 09:38:30 -07:00
SkPathRef.h Remove stray semicolons. 2016-09-27 14:04:26 +00:00
SkPicture.h Gradients are serialized (and can be constructed) as SkColor4f + SkColorSpace 2016-09-28 11:27:28 -07:00
SkPictureAnalyzer.h abstract name of clipping ops, to transtion to a more restricted set 2016-09-20 08:42:39 -07:00
SkPictureRecorder.h Clean up unused SkPictureRecorder::optimizeFor() 2016-09-15 04:43:03 -07:00
SkPixelRef.h Remove SkPixelRef::getTexture() 2016-08-23 14:02:54 -07:00
SkPixelSerializer.h SkPixelSerializer: remove deprecated virtual 2015-12-10 09:30:57 -08:00
SkPixmap.h SkPixmap::setColorSpace 2016-06-09 11:03:45 -07:00
SkPngChunkReader.h Delete SkImageDecoder 2016-03-24 10:41:47 -07:00
SkPoint3.h Update SkLightingShader to support rotation 2015-08-20 05:15:07 -07:00
SkPoint.h handle large conic weights 2016-07-13 10:56:53 -07:00
SkPostConfig.h SkPDF: Glyph validation change 2016-08-26 13:17:44 -07:00
SkPreConfig.h Apple devices do not support CRC32 instructions. Don't believe Clang's lies. 2016-09-08 11:22:09 -07:00
SkRasterizer.h Revert of Delete SkFlattenable::Type (patchset #2 id:20001 of https://codereview.chromium.org/1834303003/ ) 2016-04-04 14:57:19 -07:00
SkRect.h helper to SkRect to create from SkISize 2016-09-12 06:32:07 -07:00
SkRefCnt.h SkLite* 2016-08-06 12:51:51 -07:00
SkRegion.h inline very common intersect+rect_rgn 2016-06-30 07:47:34 -07:00
SkRRect.h Add validation of RRects to SkValidatingReadBuffer 2016-09-23 19:44:57 +00:00
SkRSXform.h add helper to create RSXform w/ anchorPt 2015-07-30 05:46:05 -07:00
SkRWBuffer.h Fixes for SkRWBuffer 2016-04-22 06:59:01 -07:00
SkScalar.h Swap SkGpuBlurUtils over to using SkIRects 2016-05-13 05:06:19 -07:00
SkShader.h Always return ImageShader, even from SkShader::MakeBitmapShader 2016-08-02 06:12:06 -07:00
SkSize.h deprecate SkScalarRound (and its ilk), use SkScalarRound[ToInt,ToScalar]. #define SK_SUPPORT_DEPRECATED_SCALARROUND for legacy clients 2013-12-17 19:22:07 +00:00
SkStream.h SkFontData to use smart pointers. 2016-09-16 06:24:20 -07:00
SkString.h Reverse dependency between SkScalar.h and SkFixed.h. 2016-04-07 08:49:31 -07:00
SkStrokeRec.h Unify implementations of stroking radius calculationsns 2016-04-29 07:07:03 -07:00
SkSurface.h Remove SkSurface::MakeRenderTargetDirect 2016-08-04 08:45:02 -07:00
SkSurfaceProps.h remove disable aa/dither flags from Props -- never used 2016-08-18 09:30:44 -07:00
SkSwizzle.h Add missing SK_API to SkSwizzle.h 2016-03-24 07:50:14 -07:00
SkTextBlob.h Use sk_sp text blob APIs 2016-09-13 10:00:23 -07: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 Fix SkTLazy(const T*) initialization 2016-08-24 11:03:24 -07:00
SkTraceMemoryDump.h Add support for light dumps in SkTraceMemoryDump interface. 2015-09-30 04:31:23 -07:00
SkTRegistry.h Rewrite SkTRegistry to take any trivially-copyable type. 2013-09-04 17:20:18 +00:00
SkTypeface.h Remove SK_DECLARE_LEGACY_CREATE_FROM_FONTDATA. 2016-09-16 14:54:16 -07:00
SkTypes.h Revert of My take on SkAlign changes. (patchset #3 id:40001 of https://codereview.chromium.org/2368293002/ ) 2016-09-26 18:20:57 -07:00
SkUnPreMultiply.h Factor out UnPreMultiplyPreservingByteOrder 2014-01-15 22:24:58 +00:00
SkWriteBuffer.h Add SkColor4f serialization 2016-09-25 13:15:58 -07:00
SkWriter32.h Remove SkWriter32::contiguousArray(). 2016-04-29 14:45:36 -07:00
SkXfermode.h Add SkRasterPipeline blitter. 2016-07-22 11:05:04 -07:00
SkYUVSizeInfo.h Update Skia's YUV API 2016-03-10 05:44:43 -08:00