skia2/tools
Greg Daniel c2cca5a8a0 Revert "Better first-class shader & color filter support in runtime effects"
This reverts commit adadb95a9f.

Reason for revert: breaking android

Original change's description:
> Better first-class shader & color filter support in runtime effects
>
> This does a few things, because they're all intertwined:
>
> 1) SkRuntimeEffect's API now includes details about children (which Skia
>    stage was declared, not just the name). The factories verify that the
>    declared types in the SkSL match up with the C++ types being passed.
>    Today, we still only support adding children of the same type, so the
>    checks are simple. Once we allow mixing types, we'll be testing the
>    declared type against the actual C++ type supplied for each slot.
> 2) Adds sample variants that supply the input color to the child. This
>    is now the only way to invoke a colorFilter child. Internally, we
>    support passing a color when invoking a child shader, but I'm not
>    exposing that. It's not clearly part of the semantics of the Skia
>    pipeline, and is almost never useful. It also exposes users to
>    several inconsistencies (skbug.com/11942).
> 3) Because of #2, it's possible that we can't compute a reusable program
>    to filter individual colors. In that case, we don't set the constant
>    output for constant input optimization, and filterColor4f falls back
>    to the slower base-class implementation.
>
> Bug: skia:11813 skia:11942
> Change-Id: I06c41e1b35056e486f3163a72acf6b9535d7fed4
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/401917
> Commit-Queue: Brian Osman <brianosman@google.com>
> Reviewed-by: Mike Klein <mtklein@google.com>

TBR=mtklein@google.com,bsalomon@google.com,brianosman@google.com

Change-Id: I94ba57e73305b2302f86fd0c1d76f667d4e45b92
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:11813 skia:11942
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/404117
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2021-05-04 13:36:26 +00:00
..
android Fix Python3 compatibility 2021-03-25 14:15:35 +00:00
calmbench Fix Python3 compatibility 2021-03-25 14:15:35 +00:00
copyright Fix Python3 compatibility 2021-03-25 14:15:35 +00:00
debugger FilterQuality should no longer be needed. 2021-03-20 14:30:06 +00:00
doxygen Include svg module in Doxygen generated output. 2021-01-06 16:40:09 +00:00
fiddle Expose writing to mip levels via GrSurfaceContext::writePixels 2021-04-02 19:16:15 +00:00
flags Delete mixed samples 2021-04-22 20:11:34 +00:00
fm Add --reducedshaders to fm 2021-04-30 16:04:08 +00:00
fonts Revert "Revert "onMatchFaceStyle is unused, so remove it"" 2021-04-27 16:40:29 +00:00
gdb Update gdb bitmap viewer. 2018-06-20 21:24:27 +00:00
gpu Delete mixed samples 2021-04-22 20:11:34 +00:00
infra [infra] Use "mod download" and "install", not "get" in chrome_release_branch 2019-12-06 11:16:41 +00:00
lottie-web-perf HTML typo egde => edge 2020-06-19 15:12:06 +00:00
lottiecap HTML typo egde => edge 2020-06-19 15:12:06 +00:00
malisc Fix Python3 compatibility 2021-03-25 14:15:35 +00:00
mdbviz Reland "Merge GrOpList and GrRTOpList and rename to GrOpsTask." 2019-08-22 20:52:09 +00:00
perf-canvaskit-puppeteer Bump bl from 4.0.2 to 4.0.3 in /tools/perf-canvaskit-puppeteer 2020-11-24 17:10:56 +00:00
rebaseline Fix Python3 compatibility 2021-03-25 14:15:35 +00:00
run-wasm-gm-tests Remove texture idle proc mechanism 2021-02-25 22:23:20 +00:00
sk_app Reland "Fix sk_app macOS raster window build conditions." 2021-04-19 18:25:44 +00:00
skdiff Revert "Remove custom SkSort algorithms." 2020-07-14 00:25:05 +00:00
skiaserve deprecate getTotalMatrix 2020-12-03 17:37:35 +00:00
skottie_ios_app roll gn to latest 2021-01-15 15:34:00 +00:00
skottie-wasm-perf Reland "[canvaskit] Change SkRects to be arrays, not objects." 2020-09-03 14:31:38 +00:00
skp Add wait time to ebay pageset 2021-04-24 15:17:04 +00:00
skpbench Delete mixed samples 2021-04-22 20:11:34 +00:00
skqp Fix Python3 compatibility 2021-03-25 14:15:35 +00:00
skui Enable ClangTidy check llvm-namespace-comment. 2020-08-06 19:07:52 +00:00
svg Fix Python3 compatibility 2021-03-25 14:15:35 +00:00
timer Adapt GrRectBlur for cases with rect W/H less than six sigma. 2019-09-10 14:39:07 +00:00
trace Remove SkTMin and SkTMax 2020-02-07 18:40:09 +00:00
viewer Revert "Better first-class shader & color filter support in runtime effects" 2021-05-04 13:36:26 +00:00
__init__.py Add bench_pictures config 2012-12-12 20:13:26 +00:00
abandon_gerrit_cls.py Add wrapper script to call tool to bulk abandon Gerrit CLs 2020-03-11 18:50:57 +00:00
add_codereview_message.py Remove trailing whitespace. 2017-10-09 21:20:34 +00:00
AndroidSkDebugToStdOut.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
AutoreleasePool.h Reland "Added AutoreleasePool for managing pool memory in testing apps." 2019-05-31 15:40:01 +00:00
AutoreleasePool.mm Reland "Added AutoreleasePool for managing pool memory in testing apps." 2019-05-31 15:40:01 +00:00
bazel_test.cc bazel baby steps 2020-09-14 15:18:32 +00:00
BigPathBench.inc Factor out VisualBench timing code into a helper class 2015-10-05 07:23:30 -07:00
blob_cache_sim.cpp SkRemoteGlyphCache Add tracing to diff canvas 2019-10-24 17:09:31 +00:00
build_command_buffer.py Improvements to build_command_buffer.py 2016-11-04 10:54:54 -07:00
BUILD_simulator.py Fix Google3 fonts. Use fontconfig rather than custom_directory_factory. Add Google3 font caching. 2015-12-01 11:12:05 -08:00
build_workaround_header.py Add CheckGeneratedFiles recipe check for gpu workarounds 2018-04-25 19:26:27 +00:00
check-headers-self-sufficient rm SkPreConfig.h and SkPostConfig.h 2020-02-06 19:16:43 +00:00
chrome_fuzz.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
chrome_release_branch [infra] Add chrome_release_branch script 2019-04-16 19:46:10 +00:00
chrome_release_branch.bat [infra] Add chrome_release_branch script 2019-04-16 19:46:10 +00:00
chrome_release_branch.py Fix Python3 compatibility 2021-03-25 14:15:35 +00:00
clang-tidy.sh don't run clang-tidy on third_party 2020-03-30 15:26:32 +00:00
compare_codereview.py Further tweak compare_codereview.py. 2014-03-25 18:02:17 +00:00
convert-to-nia.cpp Add convert-to-nia command-line program 2020-05-28 15:08:08 +00:00
cpu_modules.cpp Particle cleanup: split SkParticleBinding out of SkParticleEffect 2019-08-30 15:32:38 +00:00
CrashHandler.cpp Add UWP support 2021-02-10 19:04:42 +00:00
CrashHandler.h rewrite ambiguous comment 2015-02-10 07:47:31 -08:00
DDLPromiseImageHelper.cpp Make use of shareable promise images in tools 2021-03-30 14:25:55 +00:00
DDLPromiseImageHelper.h Make use of shareable promise images in tools 2021-03-30 14:25:55 +00:00
DDLTileHelper.cpp Make use of shareable promise images in tools 2021-03-30 14:25:55 +00:00
DDLTileHelper.h Make use of shareable promise images in tools 2021-03-30 14:25:55 +00:00
doxygen_footer.txt Fix update-doxygen, which fails when skia-autogen is reset 2012-09-26 16:09:43 +00:00
dump_record.cpp densify dump_record 2020-08-19 13:35:09 +00:00
embed_resources.py Tweak scripts to fix CK builds with python 3 2020-06-29 12:59:05 +00:00
find_run_binary.py [minor] mark scripts as executable 2019-11-21 17:06:27 +00:00
fix_pythonpath.py [minor] mark scripts as executable 2019-11-21 17:06:27 +00:00
force_older_glibc_math.h roll cast toolchain 2019-08-15 20:02:18 +00:00
gcov_shim add a way to get code coverage 2013-09-13 19:32:43 +00:00
get_current_monitor_profile.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
get_images_from_skps.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
git-sync-deps fix git-sync-deps 2021-04-09 15:52:57 +00:00
HashAndEncode.cpp break huge conversions into batches 2021-02-03 14:51:10 +00:00
HashAndEncode.h [canvaskit] POC bindings for testing gms 2020-10-08 16:03:08 +00:00
hello-opencl.cpp run all available OpenCL devices 2019-02-11 21:29:33 +00:00
image_diff_metric.cpp pdf-comparison and image_diff_metric tools 2019-09-19 21:18:28 +00:00
imgcvt.cpp Move skcms.h to include/third_party/skcms 2019-04-29 15:02:45 +00:00
install_dependencies.sh Add optional --yes argument to tools/install_dependencies.sh. 2021-01-05 16:30:22 +00:00
ios_utils.h Fix bugs with fence sync API on iOS devices 2017-10-10 19:05:13 +00:00
ios_utils.m rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
jsondiff.py Fix pylint check in presubmit 2018-06-22 14:38:28 +00:00
list_gms.cpp gm: GMFactory returns a unique_ptr<> 2019-08-12 19:02:40 +00:00
list_gpu_unit_tests.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
LsanSuppressions.cpp stifle leaks in terminator_CreateDevice() 2020-04-08 15:28:48 +00:00
merge_static_libs.py Fix Python3 compatibility 2021-03-25 14:15:35 +00:00
milestone.py SkPDF: milestone in metadata, also SkMilestone.h 2016-03-29 09:09:29 -07:00
mirror-dev.sh Update mirror-dev for *-dev:amd64 packages. 2017-11-09 22:44:57 +00:00
misc_utils.py Whitespace fixes for Python tools 2014-06-25 08:40:58 -07:00
MSKPPlayer.cpp MSKP support in nanobench 2021-04-30 20:04:08 +00:00
MSKPPlayer.h MSKP support in nanobench 2021-04-30 20:04:08 +00:00
OverwriteLine.h eliminate SK_BUILD_FOR_WIN32 2018-01-26 19:52:04 +00:00
parse_llvm_coverage.py Walk through files in parse_llvm_coverage.py instead of using 'git ls-files' 2016-04-18 04:18:56 -07:00
pathops_sorter.htm fix pathops bug 8380 2018-12-21 19:15:54 +00:00
pathops_visualizer.htm fix pathops bug 8380 2018-12-21 19:15:54 +00:00
ProcStats.cpp Add heap usage of SkSL::Compiler to nanobench output 2020-07-09 00:05:28 +00:00
ProcStats.h Add heap usage of SkSL::Compiler to nanobench output 2020-07-09 00:05:28 +00:00
public_headers_warnings_check.cpp GN: add public headers warnings check. 2016-11-16 19:27:29 +00:00
random_parse_path.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
random_parse_path.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
reformat-json.py Fix Python3 compatibility 2021-03-25 14:15:35 +00:00
Registry.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
remote_demo.cpp Reland "Remove use of legacy display globals." 2020-10-05 19:13:58 +00:00
ResourceFactory.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
Resources.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
Resources.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
retrieve_from_googlesource.py [minor] mark scripts as executable 2019-11-21 17:06:27 +00:00
rewrite_includes.py Clarify output from rewrite_includes assertion. 2021-04-15 19:44:32 +00:00
sanitize_source_files.py Fix Python3 compatibility 2021-03-25 14:15:35 +00:00
skhello.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
SkMetaData.cpp Move fontmgr_bounds labels to tight bounds 2020-08-24 15:02:44 +00:00
SkMetaData.h Move fontmgr_bounds labels to tight bounds 2020-08-24 15:02:44 +00:00
skottie2movie.cpp Fix skottie2movie after asyncRescaleAndReadPixels changes 2021-01-05 18:42:51 +00:00
skp_parser.cpp Remove an uncessary and unused parameter for partially generating the JSON command list 2019-12-13 19:30:03 +00:00
skpinfo.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
SkSharingProc.cpp Accept a callback used in MultiPictureDocument::endPage 2021-01-06 16:52:50 +00:00
SkSharingProc.h Accept a callback used in MultiPictureDocument::endPage 2021-01-06 16:52:50 +00:00
Stats.h Update SkTQSort to use half-open ranges. 2020-07-14 22:13:59 +00:00
test_all.py Fix Python3 compatibility 2021-03-25 14:15:35 +00:00
test_pdfs.py Add an SKP to PDF rendered. test_pdfs.py will be hooked up in buildbot testing later. 2012-10-10 15:20:34 +00:00
ToolUtils.cpp Simplify common case for recttorect 2021-01-15 18:37:46 +00:00
ToolUtils.h Add a new implementation of reduceOpsTaskSplitting 2021-01-07 17:20:03 +00:00
UrlDataManager.cpp begin refactoring SkTDynamicHash and SkTMultiMap 2020-03-16 14:06:30 +00:00
UrlDataManager.h Enable ClangTidy check readability-redundant-smartptr-get. 2020-08-16 15:56:48 +00:00
using_skia_and_harfbuzz.cpp Fix clang 12 Wsuggest-override and Wsuggest-destructor-override 2020-07-22 01:11:36 +00:00
valgrind.supp Add another make_get_error_with_random_oom valgrind suppression 2020-06-24 22:15:33 +00:00
win_dbghelp.cpp Remove "dummy" to comply with Android's inclusive language guidance 2020-07-31 19:11:23 +00:00
win_dbghelp.h eliminate SK_BUILD_FOR_WIN32 2018-01-26 19:52:04 +00:00
win_lcid.cpp Move SkTSearch.h into src. 2019-05-15 14:15:07 +00:00
xsan.supp rename tools/xsan.blacklist 2020-07-24 18:12:31 +00:00