43e3dc994e
This is blocked on the Chrome-side CL: https://chromium-review.googlesource.com/c/chromium/src/+/2774573 (Remove setting of NVPR entries on Skia's GL interface) Bug: skia:11760 Change-Id: I1788de07d8f0208e15356a147005b87110dfeab5 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/387096 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com> |
||
---|---|---|
.. | ||
gen_interface.go | ||
interface.json5 | ||
Makefile | ||
README.md | ||
templates.go |
GrGlInterface Autogeneration
Background
At a high level, the first three steps of making a GrGLInterface (a generic way to interact with a GL-like GPU) are:
- Assemble: Copy a set of function pointers into the struct
- Validate: Make sure the function pointers advertised actually exist.
- Capabilities: Compute what fast/slow paths are enabled based on the functions in the struct (GrGLCaps, for short)
Autogeneration
The first two steps have been automated with a table-based generation script located in this folder. The table is in JSON5 format (like JSON, but with comments). O
Once edited, the Assemble/Validate code can be re-generated by running
make generate
in this folder.