skia2/tools/gpu/gl/interface
Robert Phillips 43e3dc994e Remove NVPR entry points from Skia's GL interface
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>
2021-03-22 17:44:16 +00:00
..
gen_interface.go Reland "Get EGLimage functions out of GrGLInterface." 2019-05-15 19:58:45 +00:00
interface.json5 Remove NVPR entry points from Skia's GL interface 2021-03-22 17:44:16 +00:00
Makefile Reland "Generate GrGLInterface and GrGlAssembleInterface* from table" 2019-03-26 10:55:00 +00:00
README.md Reland "Generate GrGLInterface and GrGlAssembleInterface* from table" 2019-03-26 10:55:00 +00:00
templates.go Don't cast emscripten pointers when assembling WebGL interface 2020-09-30 14:31:07 +00:00

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.