skia2/tools
Christopher Cameron 186a295111 Change Metal to not take ownership of objects
Prior to this change, Skia/Metal interfaces take ownership of the Metal
objects passed in (that is, the caller should count passing the object
to Skia as "freeing" the object).

Change this behavior so that Skia/Metal retains its own separate
ownership of the Metal objects.

Make GrBackendTexture and GrBackendRenderTarget maintain their own
references to the underlying MTLTexture by using the CFRetain/CFRelease
interfaces. Do this by adding a private GrMtlBackendSurfaceInfo.

Move GrMtlBackendSurfaceInfo (formerly GrMtlTextureInfo) out of the
union in GrBackendTexture and GrBackendRenderTarget because unions
cannot have nontrivial constructors and destructors (how fVkInfo isn't
causing a compile error is unclear).

Change-Id: Iae3719c0715825d86503d03c766e47f0f6015bdf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215685
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2019-05-25 01:53:25 +00:00
..
android
calmbench
copyright
debugger Use SkFontHinting instead of macros. 2019-05-08 12:16:37 +00:00
doxygen api.skia.org - Don't document private. 2019-03-11 15:52:21 +00:00
fiddle Use SkTextEncoding enum instead of macros. 2019-05-07 20:54:16 +00:00
flags Re-add flag to force opList splitting reduction 2019-05-06 18:52:15 +00:00
fm add SkNamedTransferFn::kRec2020 2019-05-24 16:03:03 +00:00
fonts Add thread safety annotations for SkMutex 2019-05-13 15:44:33 +00:00
gdb
gpu Change Metal to not take ownership of objects 2019-05-25 01:53:25 +00:00
infra [infra] Fixes for chrome_release_branch 2019-04-18 15:37:07 +00:00
lottiecap
lua rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
malisc Extend --writeShaders to output SPIR-V 2019-04-15 14:04:18 +00:00
mdbviz rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
rebaseline
sk_app Fix resize and vsync issues in Mac Viewer 2019-05-22 14:54:20 +00:00
skdiff Move SkTSearch.h into src. 2019-05-15 14:15:07 +00:00
skiaserve rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
skp [Recreate SKPs bot] Fix failing web pages 2019-05-17 20:34:58 +00:00
skpbench rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
skqp IWYU for SkTLogic.h 2019-05-02 21:17:37 +00:00
svg
timer rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
trace Add thread safety annotations for SkMutex 2019-05-13 15:44:33 +00:00
viewer Remove Nima from DEPS, experiments, Viewer, etc. 2019-05-16 17:02:11 +00:00
__init__.py
add_codereview_message.py
AndroidSkDebugToStdOut.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
BigPathBench.inc
build_command_buffer.py
BUILD_simulator.py
build_workaround_header.py
check-headers-self-sufficient Remove all references to jsoncpp (build scripts, DEPS, etc) 2019-02-06 15:15:52 +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 [infra] Fixes for chrome_release_branch 2019-04-18 15:37:07 +00:00
clang-tidy.sh run clang-tidy on headers too 2018-12-12 15:26:22 +00:00
compare_codereview.py
CrashHandler.cpp Move SkLeanWindows.h to src. 2019-05-21 13:48:00 +00:00
CrashHandler.h
DDLPromiseImageHelper.cpp Rename createTestingOnlyBackendTexture to createBackendTexture 2019-05-21 18:42:55 +00:00
DDLPromiseImageHelper.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
DDLTileHelper.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
DDLTileHelper.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
doxygen_footer.txt
dump_record.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
DumpRecord.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
DumpRecord.h
embed_resources.py rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
find_run_binary.py
fix_pythonpath.py
gcov_shim
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
gyp
HashAndEncode.cpp add SkNamedTransferFn::kRec2020 2019-05-24 16:03:03 +00:00
HashAndEncode.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
hello-opencl.cpp run all available OpenCL devices 2019-02-11 21:29:33 +00:00
imgcvt.cpp Move skcms.h to include/third_party/skcms 2019-04-29 15:02:45 +00:00
install_dependencies.sh Add harfbuzz to tools/install_dependencies.sh 2019-05-03 23:52:09 +00:00
ios_utils.h
ios_utils.m rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
jsondiff.py
list_gms.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +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 rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
merge_static_libs.py
milestone.py
mirror-dev.sh
misc_utils.py
OverwriteLine.h
parse_llvm_coverage.py
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 rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
ProcStats.h
public_headers_warnings_check.cpp
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
Registry.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
remote_demo.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +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
rewrite_includes.py preserve comments past the #include "" 2019-05-14 19:35:34 +00:00
sanitize_source_files.py
skhello.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
skp_parser.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
skpinfo.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
Stats.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
test_all.py
test_pdfs.py
ToolUtils.cpp Use SkTextEncoding enum instead of macros. 2019-05-07 20:54:16 +00:00
ToolUtils.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
UrlDataManager.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
UrlDataManager.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
using_skia_and_harfbuzz.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
valgrind.supp
whitelist_typefaces.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
win_dbghelp.cpp Move SkTSearch.h into src. 2019-05-15 14:15:07 +00:00
win_dbghelp.h
win_lcid.cpp Move SkTSearch.h into src. 2019-05-15 14:15:07 +00:00
xsan.blacklist