skia2/tools/viewer
Brian Osman bbbf1a7f50 Redesign program key construction
This does two things:
1) Moves responsibility for bit-packing portions of the key into the key
   itself. A new GrKeyBuilder type manages adding bits, with asserts to
   ensure a value always fits in the requested number. In theory this
   will let us generate smaller keys overall, at the expense of slightly
   more complex code during construction.
2) Adds a string label parameter for key methods that fold in data. For
   new methods, the label is required. To ease migration, the old add32
   does not require a label (yet). This will let us generate detailed,
   human readable keys, either based on SK_DEBUG, or a runtime option
   (if we're comfortable paying the cost).

Bug: skia:11372
Change-Id: Ib0f941551e0dbadabbd2a7de912b00e9e766b166
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/377876
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2021-03-02 23:46:48 +00:00
..
AnimTimer.h tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
BisectSlide.cpp [svg] Allow clients to pass a custom SkFontMgr 2020-11-11 01:51:44 +00:00
BisectSlide.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
GMSlide.cpp Add a convenience to downcast contexts into GrDirectContext 2020-07-07 18:13:50 +00:00
GMSlide.h Adjust how GM::gpuSetup is handled in the tools 2020-06-26 15:37:30 +00:00
ImageSlide.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
ImageSlide.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
ImGuiLayer.cpp Add support for retina displays to sk_app. 2021-01-29 17:33:48 +00:00
ImGuiLayer.h Add support for retina displays to sk_app. 2021-01-29 17:33:48 +00:00
ParticlesSlide.cpp Particle refactor: Only have one code string, uniforms, etc. 2021-02-01 19:29:48 +00:00
ParticlesSlide.h Particles: Remove play-position thing, simplify mouse tracking 2019-12-05 20:07:13 +00:00
SampleSlide.cpp tools/skui: put all enums in a common namespace 2019-08-29 15:39:32 +00:00
SampleSlide.h tools/skui: put all enums in a common namespace 2019-08-29 15:39:32 +00:00
SkottieSlide.cpp Simplify common case for recttorect 2021-01-15 18:37:46 +00:00
SkottieSlide.h Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
SKPSlide.cpp Enable ClangTidy check readability-redundant-smartptr-get. 2020-08-16 15:56:48 +00:00
SKPSlide.h Add an skp loader to CanvasKit viewer 2020-05-28 17:29:28 +00:00
SkRiveSlide.cpp Simplify common case for recttorect 2021-01-15 18:37:46 +00:00
SkRiveSlide.h [skrive] Initial artboard plumbing 2020-06-09 19:58:38 +00:00
SkSLSlide.cpp Remove 'f' prefix on SkRuntimeEffect::Uniform struct 2021-02-04 01:57:53 +00:00
SkSLSlide.h SkSLSlide: Add shadertoy iResolution & iMouse 2020-12-11 20:19:20 +00:00
Slide.h Update Slide::getName to return a const reference. 2020-07-28 17:37:01 +00:00
SlideDir.cpp Simplify common case for recttorect 2021-01-15 18:37:46 +00:00
SlideDir.h Enable ClangTidy check llvm-namespace-comment. 2020-08-06 19:07:52 +00:00
StatsLayer.cpp Simplify common case for recttorect 2021-01-15 18:37:46 +00:00
StatsLayer.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
SvgSlide.cpp Reland "[svg] Plumb a ResourceProvider" 2021-01-27 21:12:23 +00:00
SvgSlide.h Reland "[svg] Plumb a ResourceProvider" 2021-01-27 21:12:23 +00:00
TouchGesture.cpp Don't limit pinch zooming in viewer 2020-11-11 17:51:35 +00:00
TouchGesture.h Don't limit pinch zooming in viewer 2020-11-11 17:51:35 +00:00
Viewer.cpp Redesign program key construction 2021-03-02 23:46:48 +00:00
Viewer.h Redesign program key construction 2021-03-02 23:46:48 +00:00