History log of /external/skia/src/core/SkColorSpace.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
f3880933092c3226cd7ffd1690fe72c9c0cc376c 24-Mar-2017 Matt Sarett <msarett@google.com> Delete SkColorSpace::ColorSpaceFlags

BUG=skia:

Change-Id: Ia0688876915cd773614ca0c4ccd467cf6e7c603e
Reviewed-on: https://skia-review.googlesource.com/10105
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/core/SkColorSpace.cpp
919cc4562cc615c7f4b4325def1f7454bc8dd724 18-Mar-2017 Mike Klein <mtklein@google.com> Revert "Revert "Add color spin test for SkColorSpaceXformCanvas""

This reverts commit 73e21af21390c2806eb1350253233903808edd6b.

Reason for revert: I will fix the broken bot next week.

Original change's description:
> Revert "Add color spin test for SkColorSpaceXformCanvas"
>
> This reverts commit cb01aec63bcb3dee52afcf3605bcd64166b873c0.
>
> Reason for revert: Breaks Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-SK_USE_DISCARDABLE_SCALEDIMAGECACHE
>
> Original change's description:
> > Add color spin test for SkColorSpaceXformCanvas
> >
> > Also changes behavior to treat nullptr srcs as sRGB.
> >
> > Testing locally, it looks like 353 gms have no diffs from 8888.
> > There are 269 diffs - some are fine (gms that do color space stuff)
> > and some are bugs.
> >
> > BUG=skia:
> >
> > Change-Id: I55c2825f4f4b857e0b0a0ec050c6db82ac881492
> > Reviewed-on: https://skia-review.googlesource.com/9738
> > Reviewed-by: Brian Osman <brianosman@google.com>
> > Commit-Queue: Matt Sarett <msarett@google.com>
> >
>
> TBR=mtklein@google.com,msarett@google.com,brianosman@google.com,reviews@skia.org
> # Not skipping CQ checks because original CL landed > 1 day ago.
> BUG=skia:
>
> Change-Id: I70bb69f747b863d267494e37a60888a51ab0184c
> Reviewed-on: https://skia-review.googlesource.com/9823
> Reviewed-by: Eric Boren <borenet@google.com>
> Commit-Queue: Eric Boren <borenet@google.com>
>

TBR=borenet@google.com,mtklein@google.com,msarett@google.com,reviews@skia.org,brianosman@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
BUG=skia:

Change-Id: I766382e6655f614042cded84f547f9fd5b109fca
Reviewed-on: https://skia-review.googlesource.com/9879
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
/external/skia/src/core/SkColorSpace.cpp
73e21af21390c2806eb1350253233903808edd6b 17-Mar-2017 Eric Boren <borenet@google.com> Revert "Add color spin test for SkColorSpaceXformCanvas"

This reverts commit cb01aec63bcb3dee52afcf3605bcd64166b873c0.

Reason for revert: Breaks Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-SK_USE_DISCARDABLE_SCALEDIMAGECACHE

Original change's description:
> Add color spin test for SkColorSpaceXformCanvas
>
> Also changes behavior to treat nullptr srcs as sRGB.
>
> Testing locally, it looks like 353 gms have no diffs from 8888.
> There are 269 diffs - some are fine (gms that do color space stuff)
> and some are bugs.
>
> BUG=skia:
>
> Change-Id: I55c2825f4f4b857e0b0a0ec050c6db82ac881492
> Reviewed-on: https://skia-review.googlesource.com/9738
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
>

TBR=mtklein@google.com,msarett@google.com,brianosman@google.com,reviews@skia.org
# Not skipping CQ checks because original CL landed > 1 day ago.
BUG=skia:

Change-Id: I70bb69f747b863d267494e37a60888a51ab0184c
Reviewed-on: https://skia-review.googlesource.com/9823
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
/external/skia/src/core/SkColorSpace.cpp
cb01aec63bcb3dee52afcf3605bcd64166b873c0 15-Mar-2017 Matt Sarett <msarett@google.com> Add color spin test for SkColorSpaceXformCanvas

Also changes behavior to treat nullptr srcs as sRGB.

Testing locally, it looks like 353 gms have no diffs from 8888.
There are 269 diffs - some are fine (gms that do color space stuff)
and some are bugs.

BUG=skia:

Change-Id: I55c2825f4f4b857e0b0a0ec050c6db82ac881492
Reviewed-on: https://skia-review.googlesource.com/9738
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
73e627074839bc00569117235eb4e7d4fc3cc39f 14-Mar-2017 Brian Osman <brianosman@google.com> Expose SkColorSpaceTransferFn inversion function

Also adds tolerance to checks against zero

BUG=skia:

Change-Id: I2ad5737c6eef7e3ed52a685dceb347a434607336
Reviewed-on: https://skia-review.googlesource.com/9643
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
d83545e4904ba78c6bc7b82169e9be5070f64e32 06-Mar-2017 Matt Sarett <msarett@google.com> Add SkColorSpace::isSRGB()

BUG=skia:

Change-Id: I124480a15e0c3cb01f4e22397c0a116f2d1c0d7d
Reviewed-on: https://skia-review.googlesource.com/9239
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
9341c98113c91e3cf6ba2ca19833c01392c37cc8 28-Feb-2017 Matt Sarett <msarett@google.com> SkAndroidCodec: Leave pixels in encoded colorspace when tf is numerical

Color space conversion will be deferred until later.

Change-Id: I0fbade9bb374fe2ee9328f87284a2d86a199f7b4
Reviewed-on: https://skia-review.googlesource.com/9080
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
6722553135613010b4dd6eac1b6f572cfa8aabe8 28-Feb-2017 Matt Sarett <msarett@google.com> Add SkColorSpace::isNumericalTransferFn() to the public API

This adds a little more flexibility for clients wanting to handle
color space transformation outside of the codecs. Ex: they can
leave the encoded data as is and apply the numerical transfer
fn in a later step.

BUG=skia:

Change-Id: Ieca53b01648d4cb9cf0995715deacd4c4876900f
Reviewed-on: https://skia-review.googlesource.com/9077
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
e522f4c455d0d5dbe813f38d16c0d4cd46fa5dee 22-Feb-2017 Matt Sarett <msarett@google.com> Enable legacy premuls in SkColorSpaceXform

***Will allow for simplified Android framework code, they typically
want a color correct transform followed by a gamma encoded premul.
***Chrome does the same, so this will make it easier to replace their
codecs.
***Will decrease code size. Both types of premuls are moved off the
fast path here - one is essentially unused in production and the
other is not "encouraged".
***Will actually make the common case faster: sRGB->sRGB means no
color xform, just premul in SkSwizzler.

BUG=skia:

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD

Change-Id: Ia4ec1d273b6f137151f951d37c0ebf975f6b9a3e
Reviewed-on: https://skia-review.googlesource.com/8848
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
5444446b75baaa6e12f07dd1fbe7d11cfc94c7b1 16-Feb-2017 Matt Sarett <msarett@google.com> Use non-linear color spaces for Android decode outputs

BUG=skia:

Change-Id: Ic4bce28f4bc45f73cbfcacc3630140d11fa9c41f
Reviewed-on: https://skia-review.googlesource.com/8530
Reviewed-by: Leon Scroggins <scroggo@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
25834ffc5a4f6c45830dded7d5d135df157870e6 15-Feb-2017 Matt Sarett <msarett@google.com> Use non-linear blending flag in raster pipeline blitter

BUG=skia:

Change-Id: I00b52e6de3b46b7d26c1df2aa63c521b6c7ece2d
Reviewed-on: https://skia-review.googlesource.com/8526
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
/external/skia/src/core/SkColorSpace.cpp
3f405985be5c84a8b4b3e38f24091656aa699b5c 15-Feb-2017 Brian Osman <brianosman@google.com> Non linear blending flag for SkColorSpace

BUG=skia:6242

Change-Id: I63cce6019ce854ba807b2a819ef4fe3214898bee
Reviewed-on: https://skia-review.googlesource.com/8344
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
3e50027f2269195a08e6dd861f504ec5b90b4279 10-Feb-2017 Matt Sarett <msarett@google.com> Delete legacy named color space API

BUG=skia:

Change-Id: I3a41b5affdfad830cea969a1e4932794d27f4f7a
Reviewed-on: https://skia-review.googlesource.com/8331
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
77a7a1b57c16c97f056c1e50c03bdc954947778c 07-Feb-2017 Matt Sarett <msarett@google.com> SkColorSpace: remove named API, add gamut API

Reland from: https://skia-review.googlesource.com/c/8021/

BUG=skia:

Change-Id: I18985f130587b15fccbc86b76b2bb5c49ba5ba8a
Reviewed-on: https://skia-review.googlesource.com/8136
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
1f2fff2544a9dc6a0f169a017d374eca9f04c6b5 07-Feb-2017 Matt Sarett <msarett@google.com> Revert "SkColorSpace: remove named API, add gamut API"

This reverts commit ecaaf6f1c156e5690200322fc2636380c1f63dd8.

Reason for revert: Breaks everything

Original change's description:
> SkColorSpace: remove named API, add gamut API
>
> BUG=skia:
>
> Change-Id: I01c5e1874c9a034febc64e25b3aaafb5050393a6
> Reviewed-on: https://skia-review.googlesource.com/8021
> Reviewed-by: Brian Osman <brianosman@google.com>
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
>

TBR=msarett@google.com,brianosman@google.com,reed@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Change-Id: Ief5a0a4eeabe75a21f7512e23fc15309151066c4
Reviewed-on: https://skia-review.googlesource.com/8127
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
ecaaf6f1c156e5690200322fc2636380c1f63dd8 06-Feb-2017 Matt Sarett <msarett@google.com> SkColorSpace: remove named API, add gamut API

BUG=skia:

Change-Id: I01c5e1874c9a034febc64e25b3aaafb5050393a6
Reviewed-on: https://skia-review.googlesource.com/8021
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
0312a0cec95a9002f27ba88f7d24de25111a4e2d 04-Feb-2017 Matt Sarett <msarett@google.com> Add toXYZD50() to SkColorSpace API

BUG=skia:

Change-Id: I996877c9482453fc5ff58b0f66fa29715bea2191
Reviewed-on: https://skia-review.googlesource.com/8024
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
/external/skia/src/core/SkColorSpace.cpp
1e854246e6ce431838de882116b86f085eb7b08e 04-Jan-2017 Matt Sarett <msarett@google.com> Improve detection of color space transfer fns

BUG=skia:

Change-Id: I744af0efd4d48a8932b834092ed2dbad13008c1d
Reviewed-on: https://skia-review.googlesource.com/6556
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
1bfcf887553a9d39b25f0d8c408b78841cd9d8fc 20-Dec-2016 Matt Sarett <msarett@google.com> Implement SkICC::WriteICC()

BUG=skia:

Change-Id: Idd950c3da2c517780b24e312a4e7cc16ee413c99
Reviewed-on: https://skia-review.googlesource.com/6270
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
c2881e9b404d757cb26a1c68ed9c8a51ddd36f6b 01-Dec-2016 Matt Sarett <msarett@google.com> Refine constant sRGB and Adobe RGB to D50 matrices

The new values are calculated starting with the "true" values,
adapted to D50 using the Bradford transform.

I don't remember where the old values came from, they've been
around forever. It's possible that I just typed in the values
that came out of ICC profiles (these would have been imperfect,
given that there's a fixed-point -> float conversion happening
there).

BUG=skia:

Change-Id: I8e870266bc8ab5372c3ccf6a5ee6691b2915af43
Reviewed-on: https://skia-review.googlesource.com/5450
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/core/SkColorSpace.cpp
5476128f0a88217414f05e6a7ee518cdb411d026 01-Dec-2016 raftias <raftias@google.com> Added CMYK support for ICC profiles.

Changed ICC parsing/SkGammas/SkColorLookUpTable to handle non-3-channel
inputs. Parsed CMYK A2B ICC profiles. Integrated this with SkJpegCodec
(the only file that supports CMYK) and SkColorSpaceXform_A2B to allow
parsing and color xforming of ICC CMYK images.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD

Change-Id: I11e3d17180244281be3eb43fd608609925a7f71e
Reviewed-on: https://skia-review.googlesource.com/5444
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
62458a6778bc39eea5360301a67d192b3a263df1 01-Dec-2016 Mike Klein <mtklein@chromium.org> Revert "Added CMYK support for ICC profiles."

This reverts commit 51c3fcd376c5c9972d9476b5532f6164375a38d1.

Reason for revert: ASAN, MSAN both take issue with parse_and_load_gamma()

Original change's description:
> Added CMYK support for ICC profiles.
>
> Changed ICC parsing/SkGammas/SkColorLookUpTable to handle non-3-channel
> inputs. Parsed CMYK A2B ICC profiles. Integrated this with SkJpegCodec
> (the only file that supports CMYK) and SkColorSpaceXform_A2B to allow
> parsing and color xforming of ICC CMYK images.
>
> BUG=skia:
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5197
> CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD
>
>
> Change-Id: Id6619f63f04071f79cd2d84321857dfa269ad3aa
> Reviewed-on: https://skia-review.googlesource.com/5197
> Commit-Queue: Mike Klein <mtklein@chromium.org>
> Reviewed-by: Matt Sarett <msarett@google.com>
> Reviewed-by: Mike Klein <mtklein@chromium.org>
> Reviewed-by: Leon Scroggins <scroggo@google.com>
>

TBR=mtklein@chromium.org,mtklein@google.com,msarett@google.com,scroggo@google.com,brianosman@google.com,raftias@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Ib43fef00bc233c0b4fa47ed29040d69601def267
Reviewed-on: https://skia-review.googlesource.com/5423
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
/external/skia/src/core/SkColorSpace.cpp
51c3fcd376c5c9972d9476b5532f6164375a38d1 30-Nov-2016 raftias <raftias@google.com> Added CMYK support for ICC profiles.

Changed ICC parsing/SkGammas/SkColorLookUpTable to handle non-3-channel
inputs. Parsed CMYK A2B ICC profiles. Integrated this with SkJpegCodec
(the only file that supports CMYK) and SkColorSpaceXform_A2B to allow
parsing and color xforming of ICC CMYK images.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5197
CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD


Change-Id: Id6619f63f04071f79cd2d84321857dfa269ad3aa
Reviewed-on: https://skia-review.googlesource.com/5197
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Leon Scroggins <scroggo@google.com>
/external/skia/src/core/SkColorSpace.cpp
99e3f7d6fcb7b3b4340286455733a7de9eb4ef81 28-Oct-2016 Matt Sarett <msarett@google.com> Remove unneeded SkColorSpace constructor
TBR=reed@google.com
BUG=skia:

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

Change-Id: Ib1c477b6b56a100ea449ffa20bdf18041c044a78
Reviewed-on: https://skia-review.googlesource.com/4140
Reviewed-by: Matt Sarett <msarett@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
526972ecb5411b84ba2f5e20252f178f9ee2151f 24-Oct-2016 Brian Osman <brianosman@google.com> Rename all color space factories from New* to Make*

Matches our naming convention for all other types - factories that
return sk_sp (or any type that intelligently manages its own
lifetime) are named Make.

Previous factories are still around, assuming
SK_SUPPORT_LEGACY_COLOR_SPACE_FACTORIES is defined. Enable that
define for Android, etc.

See also: https://codereview.chromium.org/2442053002/

BUG=skia:

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

Change-Id: Iaea9376490736b494e8ffc820831f052bbe1478d
Reviewed-on: https://skia-review.googlesource.com/3822
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
/external/skia/src/core/SkColorSpace.cpp
bbf251bf225489a0939fff6df938035a290f4d16 19-Oct-2016 Brian Osman <brianosman@google.com> Hash the gamut of XYZ color spaces, to speed up comparison

Also going to use this to allow caching of GrColorSpaceXforms

BUG=skia:

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

Change-Id: I56ed2dcbdddc22046263f56d68f2d6aea55547c8
Reviewed-on: https://skia-review.googlesource.com/3670
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/core/SkColorSpace.cpp
9488833428e83c93a7e6002f4d056084fb57112f 18-Oct-2016 raftias <raftias@google.com> Refactored SkColorSpace and added in a Lab PCS GM

The refactoring breaks off A2B0 tag support into a separate
subclass of SkColorSpace_Base, while keeping the current
(besides CLUT) functionality in a XYZTRC subclass.

ICC profile loading is now aware of this and creates the A2B0
subclass when SkColorSpace::NewICC() is called on a profile
in need of the A2B0 functionality.

The LabPCSDemo GM loads a .icc profile containing a LAB PCS and
then runs a Lab->XYZ conversion on an image using it so we can
display it and test out the A2B0 SkColorSpace functionality,
sans a/b/m-curves, as well as the Lab->XYZ conversion code.

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

Review-Url: https://codereview.chromium.org/2389983002
/external/skia/src/core/SkColorSpace.cpp
f489886915034093278353d06c6f1973b2e8b7d2 16-Oct-2016 Matt Sarett <msarett@google.com> Cache dst LUTs in SkColorSpaceXform

This is only useful in the rare case that the dst does not
fall into one of our main paths.

But it's a good optimization, since this does happen,
and typically, the dst won't change.

ColorCodecBench z620 --nonstd --xform_only
Without Patch 511us
With Patch 348us

BUG=skia:

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

Change-Id: Ibf68d9ce7072680465662922f4aa15630545e3d6
Reviewed-on: https://skia-review.googlesource.com/3400
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
c434f5122a2394639ddeb66a1ded456565b043cd 14-Oct-2016 Matt Sarett <msarett@google.com> Add NewRGB() with float gamma to SkColorSpace public API

Necessary because PNGs like to specify their gamma this way.

BUG=skia:

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

Change-Id: I399984d611db907b115b345df1afc88d39326fbb
Reviewed-on: https://skia-review.googlesource.com/3402
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
7c602de058c6332dfd92b70a3d05d4a3c401a3ae 13-Oct-2016 raftias <raftias@google.com> Removed makeLinearGamma() from the public API for SkColorSpace

It will now reside in SkColorSpace_Base. Future work for SkColorSpace
will cause this function to not be desirable or sensible to call on
all SkColorSpaces. Call sites were changed to make a kSRGBLinear_Named
instead of kSRGB_Named -> makeLinearGamma() (the majority of cases),
and if that was not possible, SkColorSpace_Base::makeLinearGamma()
was called instead.

TBR=reed@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2412613005

Review-Url: https://codereview.chromium.org/2412613005
/external/skia/src/core/SkColorSpace.cpp
df44fc5f2bb282557df291e20dbd26c070533aa6 11-Oct-2016 Matt Sarett <msarett@google.com> Add SkColorSpaceTransferFn to SkColorSpace

BUG=skia:

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

Change-Id: I354342d4469cee0e25a7b0d189e925e431da623c
Reviewed-on: https://skia-review.googlesource.com/3178
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
/external/skia/src/core/SkColorSpace.cpp
a5a31dd99467604f345850881dc8540c62aa506c 11-Oct-2016 msarett <msarett@google.com> Add SkColorSpacePrimaries to help with making D50 matrices

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

Review-Url: https://codereview.chromium.org/2304753002
/external/skia/src/core/SkColorSpace.cpp
7802c3db24effa6f3186bff7490a2a8dd85d2a70 28-Sep-2016 msarett <msarett@google.com> Move toXYZD50() to SkColorSpace_Base

SkColorSpace needs to become more versatile, in order to support
profiles that cannot specified with just a "to XYZ D50" matrix.

This a just first step to clean up the public API.

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

Review-Url: https://codereview.chromium.org/2381553002
/external/skia/src/core/SkColorSpace.cpp
eec8304714f35e4c789a2b69e511f88fe5890149 28-Sep-2016 brianosman <brianosman@google.com> Added kSRGBLinear_Named color space, along with tests

Gradients (and other shaders) are going to end up serializing this
particular color space very frequently, so we want a shorthand way of
writing it out. I think it's also helpful to have a clearer way of
creating it (vs. NewNamed(kSRGB_Named)->makeLinearGamma()).

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

Review-Url: https://codereview.chromium.org/2377763002
/external/skia/src/core/SkColorSpace.cpp
94d7872ab3b0a32675b8e826637665fd3ada5b35 23-Sep-2016 Brian Osman <brianosman@google.com> In makeLinearGamma, return the original CS if it's already linear

BUG=skia:

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

Change-Id: I51d8f8f64bc5f73a0b7cbf5f01f3d23b56c1895e
Reviewed-on: https://skia-review.googlesource.com/2589
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/core/SkColorSpace.cpp
de68d6c4616d86621373d88100002ddfdb9c08e3 09-Sep-2016 brianosman <brianosman@google.com> Fix storage of gamut transform matrices in SkColorSpace

We were effectively storing the transpose, which made all of our
operations on individual colors, and our concatenation of matrices
awkward and backwards.

I'm planning to push this further into Ganesh, where I had incorrectly
adjusted to the previous layout, treating colors as row vectors in the
shaders.

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

Review-Url: https://codereview.chromium.org/2324843003
/external/skia/src/core/SkColorSpace.cpp
971cd496b9e25f87f3a75a0015c203322907136a 08-Sep-2016 brianosman <brianosman@google.com> Cache the inverse matrix on SkColorSpace. Rename xyz() to toXYZ().

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

Review-Url: https://codereview.chromium.org/2323003002
/external/skia/src/core/SkColorSpace.cpp
48ba2b8550d0d243dddf728b602995b01bc137e1 08-Sep-2016 msarett <msarett@google.com> Rename SkColorSpace::GammaNamed to SkColorSpace::RenderTargetGamma

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

Review-Url: https://codereview.chromium.org/2319293002
/external/skia/src/core/SkColorSpace.cpp
600c737b64eae2c7379442ae2c852853cce3a278 07-Sep-2016 msarett <msarett@google.com> Delete SkColorSpace::gammaNamed() from public API

Move fGammaNamed to SkColorSpace_Base.

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

Review-Url: https://codereview.chromium.org/2318663003
/external/skia/src/core/SkColorSpace.cpp
653212c37efaa6d3175882559634772528bb8ad2 07-Sep-2016 msarett <msarett@google.com> Add gammaIsLinear() API to SkColorSpace

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

Review-Url: https://codereview.chromium.org/2319073002
/external/skia/src/core/SkColorSpace.cpp
47ae5c5d8f01111dad6694aaa3a3dee1ed6e677e 06-Sep-2016 msarett <msarett@google.com> Delete SkColorSpace::kUnknown_Named, remove fNamed field

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

Committed: https://skia.googlesource.com/skia/+/54682e856cb66c653bc7e253981a421a2618398e
Review-Url: https://codereview.chromium.org/2302413002
/external/skia/src/core/SkColorSpace.cpp
008fbd1b8e8339797d0f43164acde6357edb9dc6 05-Sep-2016 mgiuca <mgiuca@chromium.org> Revert of Delete SkColorSpace::kUnknown_Named, remove fNamed field (patchset #1 id:20001 of https://codereview.chromium.org/2302413002/ )

Reason for revert:
This CL introduced two static initializers (gAdobeRGB and gSRGB) which are causing a sizes regression on Chromium builders:

https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/24981

Original issue's description:
> Delete SkColorSpace::kUnknown_Named, remove fNamed field
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2302413002
>
> Committed: https://skia.googlesource.com/skia/+/54682e856cb66c653bc7e253981a421a2618398e

TBR=reed@google.com,brianosman@google.com,msarett@google.com
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=skia:5724

Review-Url: https://codereview.chromium.org/2306313002
/external/skia/src/core/SkColorSpace.cpp
54682e856cb66c653bc7e253981a421a2618398e 02-Sep-2016 msarett <msarett@google.com> Delete SkColorSpace::kUnknown_Named, remove fNamed field

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

Review-Url: https://codereview.chromium.org/2302413002
/external/skia/src/core/SkColorSpace.cpp
8aeec39f1fedfdd3508365ff0548cc3f876f6a00 24-Aug-2016 brianosman <brianosman@google.com> New helper for creating a color space from another, with linear gamma

Going to need this in many places once we expliclty require F16 surfaces
to have linear gamma color spaces.

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

Review-Url: https://codereview.chromium.org/2270103002
/external/skia/src/core/SkColorSpace.cpp
ae6377c08e5c3735c65212ba9ff86fa51af7d68a 23-Aug-2016 msarett <msarett@google.com> Make singleton SkColorSpaces thread safe

SkColorSpaces may be once-ptrs, so we can reuse common color spaces.
This means that they must be thread safe. SkMatrix44 is not
thread safe because it maintains a mutable type mask.

This CL ensures that we precompute the type mask so we
can use const SkMatrix44's safely.

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

Review-Url: https://codereview.chromium.org/2277463002
/external/skia/src/core/SkColorSpace.cpp
d9015a43cf6c6e7c372c804ee3e1021b153d505f 22-Aug-2016 msarett <msarett@google.com> Fix Equals and serialization for rare pngs

PNGs may contain a gAMA chunk that specifies gamma
values as floats. If so, we will use these floats
to create an SkColorSpace.

This CL fixes Equals(), serialize(), and
Deserialize() to correctly handle SkColorSpaces
with strange gammas, where we are unable to fall
back on the profile data.

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

Review-Url: https://codereview.chromium.org/2221983002
/external/skia/src/core/SkColorSpace.cpp
b8d1aac87a6e3821c7ed435a17a550e6e87d2044 04-Aug-2016 msarett <msarett@google.com> Create a separate src for colorspace tests

This will allow me to run these tests in sRGB mode, while
leaving most of the image tests disabled.

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

Review-Url: https://codereview.chromium.org/2206953006
/external/skia/src/core/SkColorSpace.cpp
abbd6d5e02832d53a939be15b78de592d88fe9ec 01-Aug-2016 msarett <msarett@google.com> Add SkColorSpace::Equals() API

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

Review-Url: https://codereview.chromium.org/2196743002
/external/skia/src/core/SkColorSpace.cpp
a714bc39294f19500269c8ec536139f75c4b1f25 29-Jul-2016 msarett <msarett@google.com> Fix various SkColorSpace bugs

(1) Fixes serialization/deserialization of wacky SkColorSpaces
(2) Fix gamma equals checking

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

Review-Url: https://codereview.chromium.org/2194903002
/external/skia/src/core/SkColorSpace.cpp
a0605bf9d13f5758a6fa2fa366c4dc5341c2cf61 28-Jul-2016 msarett <msarett@google.com> Add writeToMemory() API to SkColorSpace

New API mirrors the form of similar APIs in SkRegion,
SkMatrix, etc.

This also fixes a bug:
SkImageInfo appears in a object that Chrome stores in
discardable memory. So when sk_sp<SkColorSpace> was added
to SkImageInfo a leak was introduced. We'll use this new
method and deserialize to store the SkColorSpace in the
discardable object.

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

Review-Url: https://codereview.chromium.org/2192903002
/external/skia/src/core/SkColorSpace.cpp
7b9b541af8a0deb0da33a7979f1a904f42db63d1 27-Jul-2016 msarett <msarett@google.com> Expose more gamma info for UMA statistics

TBR=reed@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2188633003

Review-Url: https://codereview.chromium.org/2188633003
/external/skia/src/core/SkColorSpace.cpp
bb0ab4df70a5e30052a39570de833ad0c6e9e701 27-Jul-2016 bsalomon <bsalomon@google.com> Fix leak of srgb/adobesrgb colorspace objects

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

Review-Url: https://codereview.chromium.org/2185043002
/external/skia/src/core/SkColorSpace.cpp
1b93bd1e6eba3d14593490e4e24a34546638c8da 21-Jul-2016 msarett <msarett@google.com> Refactor parsing and storage of SkGammas

Benefits:
(1) Parses and stores gamma tags in a single allocation.
(2) Recognizes equal gamma tags to skip parsing work and
save memory.

Non-Benefits:
(1) Not less complicated.

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

Committed: https://skia.googlesource.com/skia/+/2ea944c2b710caf29d4795ac953bad14224796f7
Committed: https://skia.googlesource.com/skia/+/959ccc1f3f49e1ddeb51c32c30ac4a2d94653856
Review-Url: https://codereview.chromium.org/2117773002
/external/skia/src/core/SkColorSpace.cpp
456bf30d321292da7f15d1af35fd94fbb6a4bb59 21-Jul-2016 msarett <msarett@google.com> Revert of Refactor parsing and storage of SkGammas (patchset #8 id:280001 of https://codereview.chromium.org/2117773002/ )

Reason for revert:
Tests failing

Original issue's description:
> Refactor parsing and storage of SkGammas
>
> Benefits:
> (1) Parses and stores gamma tags in a single allocation.
> (2) Recognizes equal gamma tags to skip parsing work and
> save memory.
>
> Non-Benefits:
> (1) Not less complicated.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2117773002
>
> Committed: https://skia.googlesource.com/skia/+/2ea944c2b710caf29d4795ac953bad14224796f7
> Committed: https://skia.googlesource.com/skia/+/959ccc1f3f49e1ddeb51c32c30ac4a2d94653856

TBR=reed@google.com,brianosman@google.com,mtklein@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review-Url: https://codereview.chromium.org/2171623002
/external/skia/src/core/SkColorSpace.cpp
959ccc1f3f49e1ddeb51c32c30ac4a2d94653856 21-Jul-2016 msarett <msarett@google.com> Refactor parsing and storage of SkGammas

Benefits:
(1) Parses and stores gamma tags in a single allocation.
(2) Recognizes equal gamma tags to skip parsing work and
save memory.

Non-Benefits:
(1) Not less complicated.

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

Committed: https://skia.googlesource.com/skia/+/2ea944c2b710caf29d4795ac953bad14224796f7
Review-Url: https://codereview.chromium.org/2117773002
/external/skia/src/core/SkColorSpace.cpp
2aec3ffe32558505d7314f064b88ecb7f13b1c16 20-Jul-2016 msarett <msarett@google.com> Revert of Refactor parsing and storage of SkGammas (patchset #7 id:220001 of https://codereview.chromium.org/2117773002/ )

Reason for revert:
Broken bots.

Original issue's description:
> Refactor parsing and storage of SkGammas
>
> Benefits:
> (1) Parses and stores gamma tags in a single allocation.
> (2) Recognizes equal gamma tags to skip parsing work and
> save memory.
>
> Non-Benefits:
> (1) Not less complicated.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2117773002
>
> Committed: https://skia.googlesource.com/skia/+/2ea944c2b710caf29d4795ac953bad14224796f7

TBR=reed@google.com,brianosman@google.com,mtklein@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review-Url: https://codereview.chromium.org/2159253005
/external/skia/src/core/SkColorSpace.cpp
2ea944c2b710caf29d4795ac953bad14224796f7 20-Jul-2016 msarett <msarett@google.com> Refactor parsing and storage of SkGammas

Benefits:
(1) Parses and stores gamma tags in a single allocation.
(2) Recognizes equal gamma tags to skip parsing work and
save memory.

Non-Benefits:
(1) Not less complicated.

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

Review-Url: https://codereview.chromium.org/2117773002
/external/skia/src/core/SkColorSpace.cpp
085cad4abcca4e10dcc6ba95347c378d4c47fb90 28-Jun-2016 msarett <msarett@google.com> Move SkColorSpace ICC parsing/writing code to its own file

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

Review-Url: https://codereview.chromium.org/2101823003
/external/skia/src/core/SkColorSpace.cpp
0f83e0151f757ecd8d55d55ffefef58ecb11a97b 24-Jun-2016 msarett <msarett@google.com> Add support for 3D colorLUTs to SkColorXform

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

Review-Url: https://codereview.chromium.org/2097553002
/external/skia/src/core/SkColorSpace.cpp
c1a3e24918f99fc0b975111afb39dca38c50eb5c 23-Jun-2016 msarett <msarett@google.com> SkMatrix44 clarifications and clean-ups

Fixed row/col major bug and added comments to the
header.

Made SkMatrix::I() thread safe using constexpr.

Added a test set3x3RowMajorf().

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

Review-Url: https://codereview.chromium.org/2098583002
/external/skia/src/core/SkColorSpace.cpp
111a42d9cebf0bb8844c5d24f67fac57cc619d29 22-Jun-2016 msarett <msarett@google.com> Enable flattening and unflattening of SkColorSpace

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

Review-Url: https://codereview.chromium.org/2085653003
/external/skia/src/core/SkColorSpace.cpp
0ed057542ce545da57cda92dc09c1da8b5fdc363 20-Jun-2016 msarett <msarett@google.com> Sanitize parsing of color look-up table

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

Review-Url: https://codereview.chromium.org/2079243003
/external/skia/src/core/SkColorSpace.cpp
c4ce6b592487305de251bbebaf8eeee38371b877 16-Jun-2016 msarett <msarett@google.com> Differentiate between sRGBGamma and 2Dot2Gamma

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

Review-Url: https://codereview.chromium.org/2067833003
/external/skia/src/core/SkColorSpace.cpp
8c5424cb77f842113213c52854b17f14f7f3881d 09-Jun-2016 msarett <msarett@google.com> SkColorSpace::NewICC fix integer overflow caught by fuzzer

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

Review-Url: https://codereview.chromium.org/2053683002
/external/skia/src/core/SkColorSpace.cpp
dc27a648d2ff23b2e96232c00c15976c46e1d48d 06-Jun-2016 msarett <msarett@google.com> Add SkDefaultXform as a catch-all to handle color conversions

I'd like to start optimizing the common case for color xforms,
but before doing that, I think it makes sense to have correct
code to support all xforms.

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

Review-Url: https://codereview.chromium.org/2038823002
/external/skia/src/core/SkColorSpace.cpp
a4fa4f6eb727e8b97f6d8a58d9fda4aea56bbc75 06-Jun-2016 msarett <msarett@google.com> Gamma sanity checks

(1) Make load_gammas() return false on invalid gammas.
(2) Assert that gamma always exists after loading.
(3) Avoid dividing by zero.

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

Review-Url: https://codereview.chromium.org/2043803002
/external/skia/src/core/SkColorSpace.cpp
64d31430e01a37b735f5b1de55798bddb564cdeb 06-Jun-2016 msarett <msarett@google.com> Name parametric gamma curve types

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

Review-Url: https://codereview.chromium.org/2041753004
/external/skia/src/core/SkColorSpace.cpp
fbce71f1ae2ff05adc584f2f0433435c93987e13 02-Jun-2016 reed <reed@google.com> add MakeS32 helper to SkImageInfo, fix named-gamma constructor bug

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

Review-Url: https://codereview.chromium.org/2035813003
/external/skia/src/core/SkColorSpace.cpp
81e4cc7723ea87de8b8917e52cc25f524225fa43 01-Jun-2016 msarett <msarett@google.com> Recognize common parametric gamma

5% of images with ICC profiles (in my test set of 10k)
have this exact gamma representation, which is very close
to 2.2f.

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

Review-Url: https://codereview.chromium.org/2027413002
/external/skia/src/core/SkColorSpace.cpp
107c895c12458380e0e6d11b9f09c55d383e5878 31-May-2016 msarett <msarett@google.com> Fix integer overflow in SkColorSpace

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

Review-Url: https://codereview.chromium.org/2020303002
/external/skia/src/core/SkColorSpace.cpp
ab926f0a1bca1c6e17520803d964a0344b4f79b4 25-May-2016 msarett <msarett@google.com> Write ICC profiles from SkColorSpace object

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

Review-Url: https://codereview.chromium.org/2001203003
/external/skia/src/core/SkColorSpace.cpp
e077e0683a6fe79f71f3e3762edb259941431ada 24-May-2016 msarett <msarett@google.com> SkColorSpace tweaks

***Move includes to the correct file
***Add "const"
***Use std::move for more efficient refs and unrefs

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

Review-Url: https://codereview.chromium.org/2005263002
/external/skia/src/core/SkColorSpace.cpp
888dc16684da2158702639be2023f998b7c27f66 23-May-2016 msarett <msarett@google.com> Test color correction in DM

This will allow me to test and visualize some assumptions
on parsing and applying color profiles. Also, it should
help me find and fix bugs.

This is certainly not an optimized implementation, and, as
far as I know, it doesn't take any shortcuts to improve
performance. We'll probably want to do both of these
once we know where it fits in the pipeline.

Right now this test is only run on an arbitrary set of ~100
images from the top 10k skps. I'll continue to add more
"interesting" images and probably tweak the code as
necessary.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1995233003

Review-Url: https://codereview.chromium.org/1995233003
/external/skia/src/core/SkColorSpace.cpp
8cc209111876b7c78b5ec577c9221d8ed5e21024 23-May-2016 msarett <msarett@google.com> Make SkColorSpace a public API

I've trimmed uniqueID for now, and added some comments.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1996973002

Review-Url: https://codereview.chromium.org/1996973002
/external/skia/src/core/SkColorSpace.cpp
61a999ca3e2c865a121a6eb378ff85a837b87a44 18-May-2016 msarett <msarett@google.com> Parse parametric gamma curves

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1972403002

Review-Url: https://codereview.chromium.org/1972403002
/external/skia/src/core/SkColorSpace.cpp
264f88aff5c2303339c1dbcad02e12f70c62ae72 17-May-2016 msarett <msarett@google.com> SkColorSpace follow-ups

Based on comments from:
https://codereview.chromium.org/1985903002/

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1986833002

Review-Url: https://codereview.chromium.org/1986833002
/external/skia/src/core/SkColorSpace.cpp
1483d0f73ea484bf582b81f031222082f33d6d35 17-May-2016 msarett <msarett@google.com> Fix leak of SkGammas

TBR=borenet@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1990533002

Review-Url: https://codereview.chromium.org/1990533002
/external/skia/src/core/SkColorSpace.cpp
bb9f77437dad6a127840e6898edb3f811e3e9e94 17-May-2016 msarett <msarett@google.com> Prepare SkColorSpace to be a public API

Moves implementation details into SkColorSpacePriv.h

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1985903002

Review-Url: https://codereview.chromium.org/1985903002
/external/skia/src/core/SkColorSpace.cpp
f44b020ecb95121eb745f058a028f1529ee735d4 16-May-2016 msarett <msarett@google.com> Recognize Adobe RGB profiles

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1971203002

Review-Url: https://codereview.chromium.org/1971203002
/external/skia/src/core/SkColorSpace.cpp
c2e4bb39d4ac987cc011d171c89e18922ac06e75 13-May-2016 msarett <msarett@google.com> Recognize more sRGB gammas

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1975883003

Review-Url: https://codereview.chromium.org/1975883003
/external/skia/src/core/SkColorSpace.cpp
2c3eca38c9f74be9d91f467540feb586a0e941ca 09-May-2016 msarett <msarett@google.com> Approximate common gamma tables as single values

This should improve performance of gamma conversion in
software (we can use vector math instead of table look
ups).

Additionally this allows us to quickly and easily
identify sRGB-like gammas.

On gpu, identifying sRGB gamma improves performance/memory,
because the hardware may support gamma conversion.

This will help us identify situations where gamma
conversion is not necessary.
Ex: sRGB input -> sRGB display

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1950183006

Review-Url: https://codereview.chromium.org/1950183006
/external/skia/src/core/SkColorSpace.cpp
ffa4a9213b4e754adc210fa02a3c4b1ae8d3b6d0 06-May-2016 mtklein <mtklein@chromium.org> SkOncePtr -> SkOnce

It's always nice to kill off a synchronization primitive.
And while less terse, I think this new code reads more clearly.

... and, SkOncePtr's tests were the only thing now using sk_num_cores()
outside of SkTaskGroup, so I've hidden it as static inside SkTaskGroup.cpp.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953533002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Committed: https://skia.googlesource.com/skia/+/9bd3fc7fa9bb7cad050bd619aa93d4c48ebb5c02

Review-Url: https://codereview.chromium.org/1953533002
/external/skia/src/core/SkColorSpace.cpp
959a2937d55279c6d020f2511007bb39ed322ace 05-May-2016 reed <reed@google.com> Revert of SkOncePtr -> SkOnce (patchset #1 id:1 of https://codereview.chromium.org/1949313003/ )

Reason for revert:
ok, I have no idea what's going on

Original issue's description:
> Reland of SkOncePtr -> SkOnce (patchset #1 id:1 of https://codereview.chromium.org/1945293004/ )
>
> Reason for revert:
> previous revert unneeded (I think)
>
> Original issue's description:
> > Revert of SkOncePtr -> SkOnce (patchset #4 id:60001 of https://codereview.chromium.org/1953533002/ )
> >
> > Reason for revert:
> > broken the Mac and Linux builders, e.g.:
> >
> > https://build.chromium.org/p/chromium/builders/Mac/builds/15151
> > https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/19052
> >
> > Original issue's description:
> > > SkOncePtr -> SkOnce
> > >
> > > It's always nice to kill off a synchronization primitive.
> > > And while less terse, I think this new code reads more clearly.
> > >
> > > ... and, SkOncePtr's tests were the only thing now using sk_num_cores()
> > > outside of SkTaskGroup, so I've hidden it as static inside SkTaskGroup.cpp.
> > >
> > > BUG=skia:
> > > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953533002
> > > CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
> > >
> > > Committed: https://skia.googlesource.com/skia/+/9bd3fc7fa9bb7cad050bd619aa93d4c48ebb5c02
> >
> > TBR=herb@google.com,mtklein@chromium.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=skia:
> >
> > Committed: https://skia.googlesource.com/skia/+/7eb33da7eede34c050b865dbb1b60c3dcea7191b
>
> TBR=herb@google.com,mtklein@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/82da9a8aa0ce648f36882830765b42e0ada6c0fa

TBR=herb@google.com,mtklein@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review-Url: https://codereview.chromium.org/1948313002
/external/skia/src/core/SkColorSpace.cpp
82da9a8aa0ce648f36882830765b42e0ada6c0fa 05-May-2016 reed <reed@google.com> Reland of SkOncePtr -> SkOnce (patchset #1 id:1 of https://codereview.chromium.org/1945293004/ )

Reason for revert:
previous revert unneeded (I think)

Original issue's description:
> Revert of SkOncePtr -> SkOnce (patchset #4 id:60001 of https://codereview.chromium.org/1953533002/ )
>
> Reason for revert:
> broken the Mac and Linux builders, e.g.:
>
> https://build.chromium.org/p/chromium/builders/Mac/builds/15151
> https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/19052
>
> Original issue's description:
> > SkOncePtr -> SkOnce
> >
> > It's always nice to kill off a synchronization primitive.
> > And while less terse, I think this new code reads more clearly.
> >
> > ... and, SkOncePtr's tests were the only thing now using sk_num_cores()
> > outside of SkTaskGroup, so I've hidden it as static inside SkTaskGroup.cpp.
> >
> > BUG=skia:
> > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953533002
> > CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
> >
> > Committed: https://skia.googlesource.com/skia/+/9bd3fc7fa9bb7cad050bd619aa93d4c48ebb5c02
>
> TBR=herb@google.com,mtklein@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/7eb33da7eede34c050b865dbb1b60c3dcea7191b

TBR=herb@google.com,mtklein@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review-Url: https://codereview.chromium.org/1949313003
/external/skia/src/core/SkColorSpace.cpp
7eb33da7eede34c050b865dbb1b60c3dcea7191b 05-May-2016 reed <reed@google.com> Revert of SkOncePtr -> SkOnce (patchset #4 id:60001 of https://codereview.chromium.org/1953533002/ )

Reason for revert:
broken the Mac and Linux builders, e.g.:

https://build.chromium.org/p/chromium/builders/Mac/builds/15151
https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/19052

Original issue's description:
> SkOncePtr -> SkOnce
>
> It's always nice to kill off a synchronization primitive.
> And while less terse, I think this new code reads more clearly.
>
> ... and, SkOncePtr's tests were the only thing now using sk_num_cores()
> outside of SkTaskGroup, so I've hidden it as static inside SkTaskGroup.cpp.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953533002
> CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/9bd3fc7fa9bb7cad050bd619aa93d4c48ebb5c02

TBR=herb@google.com,mtklein@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review-Url: https://codereview.chromium.org/1945293004
/external/skia/src/core/SkColorSpace.cpp
9bd3fc7fa9bb7cad050bd619aa93d4c48ebb5c02 04-May-2016 mtklein <mtklein@chromium.org> SkOncePtr -> SkOnce

It's always nice to kill off a synchronization primitive.
And while less terse, I think this new code reads more clearly.

... and, SkOncePtr's tests were the only thing now using sk_num_cores()
outside of SkTaskGroup, so I've hidden it as static inside SkTaskGroup.cpp.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953533002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review-Url: https://codereview.chromium.org/1953533002
/external/skia/src/core/SkColorSpace.cpp
02125d10d5d021f1f3190ca95a3ef62b43349a64 03-May-2016 msarett <msarett@google.com> Create a single, unique pointer to sRGB color space

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1945693002

Review-Url: https://codereview.chromium.org/1945693002
/external/skia/src/core/SkColorSpace.cpp
50d3b57c8aaa0f026b981101c45ea30361382940 03-May-2016 reed <reed@google.com> return 4x4 matrix from SkColorSpace
move SkMatrix44 into core (with alias in utils to transition chrome)

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1943833002

Review-Url: https://codereview.chromium.org/1943833002
/external/skia/src/core/SkColorSpace.cpp
ffc2aea3cb6981a5cc26f6c0f2ebf889ca5eb73f 02-May-2016 msarett <msarett@google.com> Introduce SkGammas type to represent ICC gamma curves

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1928123002

Committed: https://skia.googlesource.com/skia/+/7b2c6dd8c918209cb92e1338905d511c68da3eb2

Review-Url: https://codereview.chromium.org/1928123002
/external/skia/src/core/SkColorSpace.cpp
a2ffa98323a17036c6df018127e3723099458a93 29-Apr-2016 msarett <msarett@google.com> Revert of Introduce SkGammas type to represent ICC gamma curves (patchset #7 id:40002 of https://codereview.chromium.org/1928123002/ )

Reason for revert:
Breaks TSAN
https://build.chromium.org/p/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-TSAN/builds/6387/steps/dm/logs/stdio

Original issue's description:
> Introduce SkGammas type to represent ICC gamma curves
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1928123002
>
> Committed: https://skia.googlesource.com/skia/+/7b2c6dd8c918209cb92e1338905d511c68da3eb2

TBR=scroggo@google.com,reed@google.com,brianosman@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review-Url: https://codereview.chromium.org/1933863002
/external/skia/src/core/SkColorSpace.cpp
7b2c6dd8c918209cb92e1338905d511c68da3eb2 29-Apr-2016 msarett <msarett@google.com> Introduce SkGammas type to represent ICC gamma curves

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1928123002

Review-Url: https://codereview.chromium.org/1928123002
/external/skia/src/core/SkColorSpace.cpp
23bd7e9273438863149ed58c089e9bf457e9892d 28-Apr-2016 msarett <msarett@google.com> Delete unused code from SkColorSpace

IMO, a lot of this code reflects an oversimplified view of
handling color profiles. And a lot of this code is valid
math/checks/enums that we will eventually need.

Right now, it's all unused and is adding a bit of clutter
and confusion as I try to redesign this object. I think
it makes sense to start simpler and build this back up as
necessary.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1932743002

Review-Url: https://codereview.chromium.org/1932743002
/external/skia/src/core/SkColorSpace.cpp
85def2e0673f3b75c4500440b95ab3dac7435702 28-Apr-2016 msarett <msarett@google.com> Parse A2B0 tag on ICC profiles

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1925753002

Review-Url: https://codereview.chromium.org/1925753002
/external/skia/src/core/SkColorSpace.cpp
92bd2e8f32a6e1d68ecc9f12a043518087c283d2 27-Apr-2016 msarett <msarett@google.com> Add comments and sanity checks to parsing of ICC headers

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1922073003

Review URL: https://codereview.chromium.org/1922073003
/external/skia/src/core/SkColorSpace.cpp
1cf632500a854d01b789ea22c1cf7967cfb6f570 22-Mar-2016 msarett <msarett@google.com> Use SkColorSpacePrintf instead of SkDebugf

TBR=reed@google.com

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1828503002

Review URL: https://codereview.chromium.org/1828503002
/external/skia/src/core/SkColorSpace.cpp
ad8bcfeac4a684a64db3a7447aeea5bc35155f16 07-Mar-2016 msarett <msarett@google.com> Use a smart pointer for SkColorSpace factories

This should fix master-skia in Android because we no longer need
to include src/core for SkCodec.h.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1766413002

Review URL: https://codereview.chromium.org/1766413002
/external/skia/src/core/SkColorSpace.cpp
6a738217eaeb9aed45a07efdfc1ae52372430d87 04-Mar-2016 msarett <msarett@google.com> Set SkColorSpace object for PNGs and parse ICC profiles

Code for ICC profile parsing adapted from:
https://codereview.chromium.org/1707033002/

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1726823002

Review URL: https://codereview.chromium.org/1726823002
/external/skia/src/core/SkColorSpace.cpp
dd9ffea9ce051a49dbc6544e6aa3cb68fe987f47 18-Feb-2016 reed <reed@google.com> make SkPM4f private

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1713653002

Review URL: https://codereview.chromium.org/1713653002
/external/skia/src/core/SkColorSpace.cpp
66a6589478d379ef301130d6134a4f20db6c5e48 15-Feb-2016 reed <reed@chromium.org> starter kit for colorspaces

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1692893003

TBR=jvanverth

Review URL: https://codereview.chromium.org/1695353002
/external/skia/src/core/SkColorSpace.cpp