skia2/third_party
Leon Scroggins III c8037dc5ed Reland "Hide SkEncodedInfo"
This partially reverts commit
1793e7bb46.

Hide SkEncodedInfo

Bug: skia:7353
Bug: skia:6839

This contains information that is not necessary for clients to know. The
Color enum tells the number of components in the input, but this is only
interesting internally (to the SkSwizzler).

Similarly, the Alpha enum differs from SkAlphaType in that it has
kBinary instead of kPremul. This is useful information only internally
for determining whether the SkColorSpaceXform needs to premultiply.

The bitsPerComponent is potentially useful for a client; Android (in
SkAndroidCodec) uses it to determine the SkColorType. Rather than
exposing bitsPerComponent, make SkAndroidCodec a friend so it can
access the SkEncodedInfo. A future change will change SkCodec to
recommend F16 for bitsPerComponent > 8, but that will be more involved;
it was the reason for the revert of this CL.

Switch conversionSupported to use an SkColorType, which is enough info.

Replace the SkEncodedInfo::Alpha field on SkCodec::FrameInfo with an
SkAlphaType.

SkCodec still needs an SkEncodedInfo, so move its header (which is
already not SK_API) to include/private.

TBR=mtklein@chromium.org,reed@google.com
Change-Id: I928b1f55317602cb37d29da63b53026c8d139cee
Reviewed-on: https://skia-review.googlesource.com/80860
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-12-05 19:28:08 +00:00
..
angle2 Suppress warning 4577 (noexcept used with no exception handling mechanism specified) 2017-11-12 19:38:16 +00:00
cpu-features GN: Android 2016-08-25 14:50:44 -07:00
dng_sdk remove mips support and bots 2017-12-05 17:19:45 +00:00
etc1 Revert "Remove compressed (ETC1) texture support from Ganesh" 2017-05-22 20:14:50 +00:00
expat Strengthen is_official_build, update docs. 2017-03-03 15:41:24 +00:00
freetype/include/freetype-android Roll freetype. 2017-03-15 14:16:22 +00:00
freetype2 Strengthen is_official_build, update docs. 2017-03-03 15:41:24 +00:00
gif Reland "Hide SkEncodedInfo" 2017-12-05 19:28:08 +00:00
googletest GPU-CTS Program 2017-10-17 19:01:13 +00:00
harfbuzz harfbuzz 1.3.0 → 1.4.2 2017-02-07 16:01:57 +00:00
icu Fix system icu build. 2017-08-31 21:12:00 +00:00
imgui Integrate the ImGui library with viewer 2017-02-10 19:17:03 +00:00
jsoncpp Strengthen is_official_build, update docs. 2017-03-03 15:41:24 +00:00
libjpeg-turbo Added support for building for tvOS 2017-03-14 22:55:04 +00:00
libmicrohttpd GN/Win: everything links on my machine. 2016-10-12 16:39:42 +00:00
libpng roll libpng to 1.6.33 2017-10-02 17:31:34 +00:00
libsdl Add iOS support for SkiaSDLExample. 2017-08-30 18:56:46 +00:00
libwebp link libwebpmux in system-webp builds 2017-08-01 14:33:38 +00:00
lua Strengthen is_official_build, update docs. 2017-03-03 15:41:24 +00:00
native_app_glue Add Android viewer to GN 2016-10-21 15:19:32 +00:00
piex Reland "Build SkRawCodec in GN" 2016-10-31 09:02:57 -07:00
sfntly Compile the skia library for windows using gn. 2016-09-16 13:29:57 -07:00
spirv-headers wired up SPIR-V validator 2017-03-16 14:42:20 +00:00
spirv-tools corrected spirv tools output file name 2017-09-25 13:28:29 +00:00
vulkan/vulkan Use system Vulkan headers except when no building with vulkan support 2017-04-25 18:30:37 +00:00
zlib clang on windows support 2017-07-31 18:39:23 +00:00
BUILD.gn GN: Android 2016-08-25 14:50:44 -07:00
README BUG=skia:5602 2016-09-02 11:19:34 -07:00
third_party.gni Allow most third_party targets to use system libraries if asked. 2016-11-01 16:17:38 +00:00

The third_party directory contains a set of dependencies from outside sources
that are needed to build various components and tools within Skia.  

Some of these dependencies reside within the Skia repo, while others are pulled 
from other repositories and placed in the third_party/externals directory
during build. These external dependencies are defined in a DEPS file.

Products in third_party are subject to their own respective license terms.  The
license for each project should be included in the source itself via a license
header or file.  If the source itself does not include a license header or file,
create a README that refers to reliable documentation of the project's license
terms on the web.