aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/image
Commit message (Collapse)AuthorAge
* remove code from SK_SUPPORT_LEGACY_NEWFROMGENERATOR, eliminates caller of ↵Gravatar reed2015-09-14
| | | | | | | | deprecated SkInstallDiscardablePixelRef BUG=skia: Review URL: https://codereview.chromium.org/1344663002
* impl preroll for all image backendsGravatar reed2015-09-14
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1341043002
* Use SkImageCacherator in SkImagesGravatar reed2015-09-10
| | | | | | | | | | | | Possible follow-up changes to consider 1. Roll SkImage_Raster and _Gpu into _Generator, where the generator (or cacherator) is backed by a pre-existing texture or raster. 2. Evolve SkImageUsageType into a verb requiring stretching, and have the caller (common code) digest the caps() and usage, so that subclasses are just told what to do (stretch or not) 3. Common code/utility to convert an unstretched texture into a stretch one (and cache it) if the generator can only make an unstretched one. BUG=skia: Review URL: https://codereview.chromium.org/1282363002
* make a shallow-copy so we don't get racy trying to lock/unlock our private ↵Gravatar reed2015-09-10
| | | | | | | | | bitmap BUG= 529995 NOTREECHECKS=True Review URL: https://codereview.chromium.org/1327313002
* Add a SkPixelSerializer SkImage encode variantGravatar fmalita2015-09-03
| | | | | | | R=reed@google.com BUG=skia:4285 Review URL: https://codereview.chromium.org/1310633006
* forgot base implGravatar reed2015-09-02
| | | | | | | BUG=skia: TBR=fmalita Review URL: https://codereview.chromium.org/1323173002
* add preroll to image, for chrome's warmup passGravatar reed2015-09-01
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1301373007
* Limit lifetime of GrDrawContext objectsGravatar robertphillips2015-09-01
| | | | | | GrDrawContext's are about to become real allocated objects. This CL sets up the machinery so they won't leak. Review URL: https://codereview.chromium.org/1321353002
* Style Change: NULL->nullptrGravatar halcanary2015-08-27
| | | | | | DOCS_PREVIEW= https://skia.org/?cl=1316233002 Review URL: https://codereview.chromium.org/1316233002
* Remove GrStagedProcessor, remove the word Stage as it applies to FPsGravatar bsalomon2015-08-27
| | | | | | Committed: https://skia.googlesource.com/skia/+/24243446cdf7b7e4e132c2a0c387c7723777e0c7 Review URL: https://codereview.chromium.org/1307223004
* Style Change: SkNEW->new; SkDELETE->deleteGravatar halcanary2015-08-26
| | | | | | DOCS_PREVIEW= https://skia.org/?cl=1316123003 Review URL: https://codereview.chromium.org/1316123003
* Revert of Remove GrStagedProcessor, remove the word Stage as it applies to ↵Gravatar rmistry2015-08-26
| | | | | | | | | | | | | | | | | | | | | | | | | FPs (patchset #6 id:90001 of https://codereview.chromium.org/1307223004/ ) Reason for revert: Causes bot failures: https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Mac10.9-Clang-MacMini6.2-GPU-HD4000-x86_64-Debug/builds/1639 https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Ubuntu-GCC-ShuttleA-GPU-GTX660-x86_64-Debug/builds/1702 https://uberchromegw.corp.google.com/i/client.skia.android/builders/Test-Android-GCC-NexusPlayer-GPU-PowerVR-x86-Debug/builds/1223 Original issue's description: > Remove GrStagedProcessor, remove the word Stage as it applies to FPs > > Committed: https://skia.googlesource.com/skia/+/24243446cdf7b7e4e132c2a0c387c7723777e0c7 TBR=joshualitt@google.com,egdaniel@google.com,bsalomon@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1306803003
* Remove GrStagedProcessor, remove the word Stage as it applies to FPsGravatar bsalomon2015-08-26
| | | | Review URL: https://codereview.chromium.org/1307223004
* SkImage method for detecting lazy decodingGravatar fmalita2015-08-20
| | | | | | | BUG=skia:4224 R=reed@google.com Review URL: https://codereview.chromium.org/1305453007
* Move SkTemplates.h to private.Gravatar bungeman2015-08-19
| | | | | | | | SkTemplates.h contains a number of Skia specific utilities which are not designed for external use. In addition to reducing the external support burden, this will allow Skia to freely refactor this file. Review URL: https://codereview.chromium.org/1272293004
* add SkImage::NewFromPicture and a GM to test itGravatar reed2015-08-13
| | | | | | | BUG=skia: TBR= Review URL: https://codereview.chromium.org/1288403002
* SkSurface copy-on-write can yield stale GPU render targets.Gravatar fmalita2015-08-06
| | | | | | | | | | | | | | Prepare_rt_for_external_access() grabs the render target and then fires access notifications. But the notification handlers may trigger copy-on-write, causing the returned render target to be stale (pointing at the detached snapshot). We should grab the render target after firing notifications. R=reed@google.com,bsalomon@google.com Review URL: https://codereview.chromium.org/1276713002
* init atomic bool in SkImage_GpuGravatar bsalomon2015-08-05
| | | | | | | | | | BUG=chromium:516860 TBR=reed@google.com NOTREECHECKS=true Review URL: https://codereview.chromium.org/1269243004
* cache private readback for gpu-imagesGravatar reed2015-08-04
| | | | | | | | | | | | Does not try to cache calls to readPixels at the moment: - not triggered by drawing - not clear if we want to perform any pixel transformations (that readPixels allows) on the GPU or CPU Can consider that another time. BUG=513695 Review URL: https://codereview.chromium.org/1262923003
* Some cleanup in GrTextureProvider and GrResourceProvider.Gravatar bsalomon2015-07-31
| | | | Review URL: https://codereview.chromium.org/1261643004
* lock pixels in image when bitmap is immutable and not-lazyGravatar reed2015-07-30
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1266143003
* fix empty image constructorGravatar reed2015-07-30
| | | | | | | | | fBitmap was not fully constructed yet BUG=skia: TBR= Review URL: https://codereview.chromium.org/1264773004
* unify pixelref and image ID space, so we can share IDs when we share pixelsGravatar reed2015-07-30
| | | | | | | | I view this as a performance opportunity, not a feature or bug fix per-se. BUG=skia: Review URL: https://codereview.chromium.org/1266883002
* SkImage_Raster's pixels are always immutable.Gravatar reed2015-07-29
| | | | | | | | | | | | | | | | | | To make this work, we tag their pixelrefs as temporarily immutable, allowing ourselves to restore the pixels to mutability only when the image drops away. This should allow us to wobble back and forth between writing to the Surface and reading from the Image without a COW, with the Surface seeing mutable pixels and the Image seeing immutable pixels. The big idea is, Image doesn't need forever-immutable pixels, it just needs pixels that are immutable as long as it's alive. BUG=skia: patch from issue 804523002 at patchset 40001 (http://crrev.com/804523002#ps40001) Review URL: https://codereview.chromium.org/1254383006
* Make peekPixels() usable with raster surface snapshotsGravatar fmalita2015-07-27
| | | | | | | | | | | | | | | SkSurface_Raster snapshots do not lock their backing bitmaps when the pixel ref is shared - they only lock on deep-copy. But since for raster surfaces the pixels are always in memory, I think it would be OK to also lock in the former case. This allows for optimized (zero-copy) reads of raster surface snapshot data. R=reed@google.com Review URL: https://codereview.chromium.org/1256993002
* Make readpixels work on GrTexturesGravatar bsalomon2015-07-16
| | | | Review URL: https://codereview.chromium.org/1234313002
* have canvas send discard instead of retain if the draw would overwrite ↵Gravatar reed2015-07-16
| | | | | | | | | | | | everything Motivation: - perf win for clients that overwrite the surface after a snapshot. - may allow us to eliminate SkDeferredCanvas, as this was its primary advantage. BUG=skia: Review URL: https://codereview.chromium.org/1236023004
* Fix SkImage::asLegacyBitmap() rowBytes assertGravatar fmalita2015-07-09
| | | | | | | | When reusing the pixel ref, we need to observe its rowBytes. R=reed@google.com Review URL: https://codereview.chromium.org/1227413002
* add runtime option to provide data->imagegenerator factoryGravatar reed2015-07-09
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1229933003
* YUV to RGB Texture threading GrProcessorDataManagerGravatar joshualitt2015-07-09
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1230803002
* add ability to get FBO ID to SurfaceGravatar joshualitt2015-07-08
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1220733007
* Add image->bitmapGravatar reed2015-07-08
| | | | | | | | BUG=skia: patch from issue 1212163012 at patchset 1 (http://crrev.com/1212163012#ps1) Review URL: https://codereview.chromium.org/1208993017
* Remove SkImage::NewFromBitmap encoded data helperGravatar fmalita2015-07-08
| | | | | | | | | | | | Attempting to instantiate image decoders at this stage introduces embedder dependencies. Instead, we can just let callers set up any needed generators on the bitmap. R=reed@google.com Review URL: https://codereview.chromium.org/1218663012
* add SkImage::NewFromBitmapGravatar reed2015-07-07
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1217053003
* add colortable param to newrastercopyGravatar reed2015-07-03
| | | | | | | | BUG=skia: TBR= NOTREECHECKS=True Review URL: https://codereview.chromium.org/1222683004
* explicitly bump legacy genID on gpu surfaceGravatar reed2015-07-03
| | | | | | | | | | | | Previous attempt to "test" getTextureHandle was giving false-positive because we had an active image-snapshot, which was incidentally also triggering a new genID. I think this CL will also enable this change: https://codereview.chromium.org/1222243002/ BUG=skia: TBR=bsalomon@google.com NOTREECHECKS=True Review URL: https://codereview.chromium.org/1208993008
* Add SkSurface factory for wrapping an FBO in SkSurfaceGravatar bsalomon2015-06-30
| | | | Review URL: https://codereview.chromium.org/1221853003
* Rename flushForExternalRead->flushForExternalIO and always call in ↵Gravatar bsalomon2015-06-30
| | | | | | SkSurface::getTextureHandle Review URL: https://codereview.chromium.org/1216243003
* remove premature discard optimizationGravatar reed2015-06-29
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1212613005
* add getTextureHandle to SkSurfaceGravatar reed2015-06-29
| | | | | | BUG=485243 Review URL: https://codereview.chromium.org/1210303003
* remove SkInstCntGravatar mtklein2015-06-26
| | | | | | | | | | | | | | It's been outclassed by Valgrind and leak sanitizer, and it seems to be causing problems for external folks building Skia. I'm not sure why our own builds seem unaffected. Latest thread: https://groups.google.com/forum/#!topic/skia-discuss/oj9FsQwwSF0 BUG=skia: Review URL: https://codereview.chromium.org/1217573002
* Make SkGpuDevice know its alpha typeGravatar bsalomon2015-06-23
| | | | | | | | Make SkImage_Gpu snapshots opaque if surface is opaque. BUG=skia:3965 Review URL: https://codereview.chromium.org/1205643002
* Propagate SkSurfaceProps to more call sitesGravatar robertphillips2015-06-23
| | | | | | | | | | Start moving to a world where everyone provides surface properties. Most notably this exposes a portion of SkSurfaceProps to the C API. BUG=skia:3934 Review URL: https://codereview.chromium.org/1195003003
* change old picture serialization to really handle imagesGravatar reed2015-06-22
| | | | | | BUG=skia:3965 Review URL: https://codereview.chromium.org/1199473002
* Rename all things "leaky" in SkDeviceGravatar robertphillips2015-06-19
| | | | Review URL: https://codereview.chromium.org/1198603002
* remove SkDevicePropertiesGravatar robertphillips2015-06-19
| | | | | | There is a lot more clean up to do here but this is probably a big enough bite. Review URL: https://codereview.chromium.org/1196683003
* add callbacks to Images that wrap client-provided contentGravatar reed2015-06-18
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1169553003
* Add support for creating texture backed images where Skia will delete the ↵Gravatar bsalomon2015-06-18
| | | | | | texture. Review URL: https://codereview.chromium.org/1187523005
* Make GrTextContext be owned by the GrDrawContextGravatar robertphillips2015-06-17
| | | | | | | | | | | | | | This CL makes the GrTextContext be owned (and hidden) by the GrDrawContext. This funnels all the drawText* calls through the GrDrawContext and hides the (dispreferred) GrPipelineBuilder drawText variant. Some consequences of this are: GrDrawContext now has to get the text drawing settings (i.e., SkDeviceProperties & useDFT). This means that we need a separate GrDrawContext for each combination of pixel geometry and DFT-use. All the GrTextContext-derived classes now get a back pointer to the originating GrDrawContext so their method calls no longer take one. Committed: https://skia.googlesource.com/skia/+/5b16e740fe6ab6d679083d06f07651602265081b Review URL: https://codereview.chromium.org/1175553002
* Revert of Make GrTextContext be owned by the GrDrawContext (patchset #7 ↵Gravatar bsalomon2015-06-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | id:120001 of https://codereview.chromium.org/1175553002/) Reason for revert: Breaking Test-Win8-MSVC-ShuttleA-GPU-GTX660-x86_64-Debug ? https://build.chromium.org/p/client.skia/builders/Test-Win8-MSVC-ShuttleA-GPU-GTX660-x86_64-Debug/builds/436/steps/dm/logs/stdio Original issue's description: > Make GrTextContext be owned by the GrDrawContext > > This CL makes the GrTextContext be owned (and hidden) by the GrDrawContext. This funnels all the drawText* calls through the GrDrawContext and hides the (dispreferred) GrPipelineBuilder drawText variant. > > Some consequences of this are: > > GrDrawContext now has to get the text drawing settings (i.e., SkDeviceProperties & useDFT). This means that we need a separate GrDrawContext for each combination of pixel geometry and DFT-use. > > All the GrTextContext-derived classes now get a back pointer to the originating GrDrawContext so their method calls no longer take one. > > Committed: https://skia.googlesource.com/skia/+/5b16e740fe6ab6d679083d06f07651602265081b TBR=joshualitt@chromium.org,joshualitt@google.com,jvanverth@google.com,reed@google.com,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1178383003