skia2/gn
Brian Salomon e2826ab59c Add API to invalidate GL texture parameters from GrBackendTexture.
This is modeled on how we coordinate VkImage layout changes between
GrContext and clients.

A type GrGLTextureParameters is used to track the current parameter
state.

When a client creates a GrBackendTexture in order to wrap a resource
they created a new GrGLTextureParameters is created and the wrapped
GrGLTexture will share ownership.

When GrContext creates a non-wrapped GrGLTexture, the GrGLTexture
creates a new GrGLTextureParameters and any GrBackendTextures created
from that GrGLTexture will share ownership.

Clients indicate parameter changes by calling
GrBackendTexture::glTextureParametersModified().

We still assume all texture parameters may have changed after a call
to GrContext::resetContext() (for now). The "timestamp" that is used
to implement this has been moved from GrGpu to GrGLGpu as there were
no other use cases.

Change-Id: Ic24e00488fad254a29d5eec6890278b67df6efae
Bug: skia:7966
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/217385
Auto-Submit: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-06-05 13:50:25 +00:00
..
toolchain Updates to iOS build 2019-04-02 17:24:46 +00:00
__init__.py Make gn directory importable in python 2017-03-20 17:40:30 +00:00
ar.py GN: quiet alink spam on Mac 2016-11-07 14:19:32 +00:00
bench.gni sketch an skvm 2019-06-03 19:53:48 +00:00
BUILD.gn Add thread safety annotations. 2019-05-10 13:40:38 +00:00
BUILDCONFIG.gn Add support for MSVC run-time checks (and control flow guard) 2019-02-04 20:55:24 +00:00
call.py Add gn plumbing for mdbviz tool 2017-09-05 13:57:44 +00:00
checkdir.py Bundle resources and skps directories into iOS app. 2017-11-29 17:06:25 +00:00
codesign_ios.py Allow different identities for iOS code signing 2017-12-07 20:42:00 +00:00
compile_processors.py moved files generated from .fp files into generated/ directories 2019-04-10 18:02:02 +00:00
core.gni sketch an skvm 2019-06-03 19:53:48 +00:00
cp.py GN: get Angle compiling on Windows. 2016-10-17 16:16:16 +00:00
create_sksl_enums.py Create sksl_enums.inc with UNIX line endings (even on Windows) 2018-02-09 15:13:11 +00:00
effects_imagefilters.gni GN: split out skia_*_public from skia_*_sources 2019-03-15 18:29:19 +00:00
effects.gni GN: split out skia_*_public from skia_*_sources 2019-03-15 18:29:19 +00:00
find_headers.py rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
find_ios_sysroot.py Add iOS simulator support in GN. 2017-03-13 17:21:43 +00:00
flutter_defines.gni Define SK_GL in Flutter. 2019-05-28 13:13:46 +00:00
fuchsia_defines.gni remove legacy hinting-enum guards 2018-11-28 20:15:03 +00:00
gen_plist_ios.py Add create_bundle support for GN 2017-11-28 15:29:07 +00:00
gm.gni GrTessellator: improved straight skeleton implementation. 2019-05-22 16:16:59 +00:00
gn_meta_sln.py Decorate project names with their relative path in the meta SLN 2018-06-01 19:22:08 +00:00
gn_to_bp_utils.py Revert "SKIA_IMPLEMENTATION is only relevant in shared builds" 2019-04-29 16:20:05 +00:00
gn_to_bp.py Remove skcms shim header 2019-05-01 20:25:14 +00:00
gn_to_cmake.py Add mm files to cmake sources 2019-04-05 13:07:32 +00:00
gpu.gni Add API to invalidate GL texture parameters from GrBackendTexture. 2019-06-05 13:50:25 +00:00
highest_version_dir.py Filter Windows SDK and Compiler directories 2017-12-11 20:26:08 +00:00
is_clang.py GN: match shell behavior for cc and cxx in is_clang.py 2016-09-27 09:29:24 -07:00
make_gm_gni.py GMs: re-sort gni, script to regenerate gni, file name convention 2019-05-02 20:08:37 +00:00
opts.gni clean up SkBitmapProcState::platformProcs() 2018-12-03 21:24:31 +00:00
pdf.gni SkPDF: move type1 font code into single file 2019-04-18 21:01:58 +00:00
push_to_android.py skia_android_serial = "auto" 2017-01-12 16:30:17 +00:00
run_sksllex.py Revert "Revert "SkSL now supports null child processors"" 2019-02-22 17:50:30 +00:00
samples.gni Remove Nima from DEPS, experiments, Viewer, etc. 2019-05-16 17:02:11 +00:00
shared_sources.gni remove empty skia_for_chromium_defines 2019-01-17 17:37:01 +00:00
skia.gni Make SkShaper's GN setup more DLL friendly 2019-04-10 18:59:35 +00:00
sksl.gni Color matrix effect rewritten as .fp 2019-05-31 14:25:05 +00:00
tests.gni Add API to invalidate GL texture parameters from GrBackendTexture. 2019-06-05 13:50:25 +00:00
utils.gni Reland "SkShaper JSON output with cluster visualization" 2019-05-03 15:48:46 +00:00
xps.gni GN: split out skia_*_public from skia_*_sources 2019-03-15 18:29:19 +00:00