skia2/include/core
Brian Salomon bc074a68df Add SkBudgeted parameter to SkImage::makeTextureImage().
Also strengthens/adds some guarantees about this function:
* Always returns the same image if the original is texture-backed and
compatible with GrMipMapped (WRT HW MIP support)
* If a new texture backed image is returned it is always an uncached
texture that is not shared with another image or owned by an image
generator.

Adds a GrImageTexGenPolicy that allows control through image/bitmap
GrTextureProducers of whether a new texture must be made and whether
that texture should be budgeted or not.

Increases unit test coverage of this API.

Bug: skia:8669

Change-Id: Ifc0681856114a08fc8cfc57ca83d22efb1c1f166
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/274938
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-03-18 17:27:41 +00:00
..
SkAnnotation.h
SkBBHFactory.h add metadata to calculated bounds 2020-02-27 19:12:35 +00:00
SkBitmap.h remove enum docs 2020-02-11 21:43:07 +00:00
SkBlendMode.h remove enum docs 2020-02-11 21:43:07 +00:00
SkBlurTypes.h
SkCanvas.h remove uncalled virtuals 2020-03-18 15:42:29 +00:00
SkCanvasVirtualEnforcer.h remove legacy virtual from enforcer 2020-03-13 14:57:03 +00:00
SkClipOp.h
SkColor.h SkColorSetA now warns if the result is unused. 2020-02-05 16:07:57 +00:00
SkColorFilter.h rearrange to emphasize most salient params 2020-03-15 20:14:58 +00:00
SkColorPriv.h Remove SkScalarClampMax and SkScalarPin 2020-02-06 18:29:51 +00:00
SkColorSpace.h remove unneeded include 2020-02-21 21:01:32 +00:00
SkContourMeasure.h
SkCoverageMode.h
SkCubicMap.h
SkData.h test data.equals with empty 2020-02-17 17:53:49 +00:00
SkDataTable.h trim out unneeded references to SkString 2019-11-15 21:01:01 +00:00
SkDeferredDisplayList.h Switch member destructor order in SkDeferredDisplayList 2020-03-03 19:32:20 +00:00
SkDeferredDisplayListRecorder.h Move SkDeferredDisplayList.h into include\core (take 2) 2020-02-21 21:26:02 +00:00
SkDocument.h
SkDrawable.h
SkDrawLooper.h IWYU -- colorspace no longer includes matrix44 2020-01-21 21:37:32 +00:00
SkEncodedImageFormat.h
SkExecutor.h
SkFilterQuality.h
SkFlattenable.h
SkFont.h Skip degenerate contours in glyphs. 2020-02-13 16:22:42 +00:00
SkFontArguments.h
SkFontLCDConfig.h
SkFontMetrics.h Restore SkFontMetrics documentation. 2019-08-15 18:11:39 +00:00
SkFontMgr.h
SkFontParameters.h
SkFontStyle.h
SkFontTypes.h
SkGraphics.h
SkICC.h
SkImage.h Add SkBudgeted parameter to SkImage::makeTextureImage(). 2020-03-18 17:27:41 +00:00
SkImageEncoder.h
SkImageFilter.h Move SkImageFilter functionality into private SkImageFilter_Base 2019-08-02 18:56:39 +00:00
SkImageGenerator.h Add SkBudgeted parameter to SkImage::makeTextureImage(). 2020-03-18 17:27:41 +00:00
SkImageInfo.h basic, untested BGR 1010102 and 101010x 2020-02-11 21:44:57 +00:00
SkM44.h [skottie] Initial support for per-character 3D 2020-02-21 21:14:02 +00:00
SkMallocPixelRef.h SkMallocPixelRef: remove MakeDirect and MakeWithProc from API. 2019-08-15 19:01:13 +00:00
SkMaskFilter.h Remove SkMaskFilter::makeWithMatrix() 2020-03-09 21:02:38 +00:00
SkMath.h Remove SkClampMax 2020-02-06 19:49:53 +00:00
SkMatrix44.h remove legacy SkMScalar code 2020-01-23 23:13:21 +00:00
SkMatrix.h remove enum docs 2020-02-11 21:43:07 +00:00
SkMilestone.h Update Skia milestone to 83 2020-03-12 11:33:00 +00:00
SkOverdrawCanvas.h Remove drawBitmap et al. from SkDevice 2020-03-12 15:28:00 +00:00
SkPaint.h remove enum docs 2020-02-11 21:43:07 +00:00
SkPath.h remove enum docs 2020-02-11 21:43:07 +00:00
SkPathEffect.h
SkPathMeasure.h
SkPathTypes.h Revert "Revert "switch to new filltype for SkPath"" 2019-11-26 17:43:14 +00:00
SkPicture.h Docs: Add links to header files. 2019-10-18 19:24:13 +00:00
SkPictureRecorder.h let picture record take a bbh directly 2020-01-21 18:59:11 +00:00
SkPixelRef.h Prevent unbounded listener growth on SkPixelRefs. 2020-03-02 22:32:09 +00:00
SkPixmap.h remove enum docs 2020-02-11 21:43:07 +00:00
SkPngChunkReader.h
SkPoint3.h Add clipping for perspective triangles 2019-12-17 23:24:18 +00:00
SkPoint.h Test texture domain effect with local matrix. 2019-11-22 22:37:33 +00:00
SkPromiseImageTexture.h
SkRasterHandleAllocator.h use std::make_unique 2019-12-12 22:32:45 +00:00
SkRect.h Remove SkMin32/SkMax32 2020-02-06 17:31:51 +00:00
SkRefCnt.h Make GrSurfaceProxy ref counts thread safe. 2019-10-24 19:55:23 +00:00
SkRegion.h remove enum docs 2020-02-11 21:43:07 +00:00
SkRRect.h remove enum docs 2020-02-11 21:43:07 +00:00
SkRSXform.h
SkRWBuffer.h
SkScalar.h Remove SkScalarClampMax and SkScalarPin 2020-02-06 18:29:51 +00:00
SkSerialProcs.h
SkShader.h remove LerpRed shader 2020-03-12 18:37:17 +00:00
SkSize.h Remove GrSurfaceDesc 2020-02-07 19:48:13 +00:00
SkStream.h
SkString.h
SkStrokeRec.h
SkSurface.h Update SkSurface::ReplaceBackendTexture to take ContentChangeMode 2020-02-18 15:15:06 +00:00
SkSurfaceCharacterization.h Add createBackendFormat and createFBO0 helper methods to SkSurfaceCharacterization 2020-02-13 18:55:22 +00:00
SkSurfaceProps.h Add SkSurfaceProp::operator!=. 2019-08-30 15:27:33 +00:00
SkSwizzle.h
SkTextBlob.h Docs: Add links to header files. 2019-10-18 19:24:13 +00:00
SkTileMode.h
SkTime.h
SkTraceMemoryDump.h
SkTypeface.h Move scaler context fallback to GDI 2020-02-11 19:50:27 +00:00
SkTypes.h Revert "Don't build GL on Metal, Vulkan, Dawn, Direct3D bots" 2020-03-18 14:42:28 +00:00
SkUnPreMultiply.h
SkVertices.h hide getters so we can change the internals of SkVertices 2020-03-13 12:08:12 +00:00
SkYUVAIndex.h Remove SkTMin and SkTMax 2020-02-07 18:40:09 +00:00
SkYUVASizeInfo.h Use safe computation for adding up YUVASizeInfo total bytes 2019-09-23 20:55:28 +00:00