bsalomon@google.com
95ed55adc6
Make all GrContext members that return a texture also ref the texture for the caller.
...
Review URL: https://codereview.appspot.com/7198049
git-svn-id: http://skia.googlecode.com/svn/trunk@7362 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-24 14:46:47 +00:00
skia.committer@gmail.com
43a6b6a046
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7357 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-24 07:06:13 +00:00
bsalomon@google.com
838f6e18fb
Add deferred count to GrResource.
...
This will be used to determine whether a resource can either be deleted or reinserted in the cache when its ref count reaches zero.
Review URL: https://codereview.appspot.com/7202046
git-svn-id: http://skia.googlecode.com/svn/trunk@7355 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 21:37:01 +00:00
bsalomon@google.com
1f0f1a3b5e
Fix bug introduced in r7348, deleting wrapped resources.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7354 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 21:32:32 +00:00
bsalomon@google.com
7283022819
Make GrResource know whether 3D objects' lifetimes are managed by Skia or not.
...
Review URL: https://codereview.appspot.com/7201046
git-svn-id: http://skia.googlecode.com/svn/trunk@7348 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 20:25:22 +00:00
bsalomon@google.com
ca43208e4a
Reland r7342 with fixes.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7346 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 19:53:46 +00:00
bsalomon@google.com
58f9ae1c7a
Revert 7342 to investigate failures.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7345 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 19:09:06 +00:00
bsalomon@google.com
bcede394ee
Add GrDrawState::DeferredState for saving GrDrawStates in GrInOrderDrawBuffer.
...
A future CL will do the unref'ing of GrResources when converting a GrDrawState to a DeferredState.
Review URL: https://codereview.appspot.com/7181049
git-svn-id: http://skia.googlecode.com/svn/trunk@7342 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 18:29:21 +00:00
reed@google.com
1d6cff7293
add alias for MakeFromIRect (just Make)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7340 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 15:37:56 +00:00
bungeman@google.com
23c2939a4f
Use Skia style cast in SkDeviceProperties.
...
(Alternative to 7329.)
git-svn-id: http://skia.googlecode.com/svn/trunk@7339 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 15:31:43 +00:00
skia.committer@gmail.com
98ded84b80
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7332 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 07:06:17 +00:00
robertphillips@google.com
5133fc73fe
Speculative fix for cros_daisy compilation failure
...
include/core/SkDeviceProperties.h:82:51: error: narrowing conversion of '(((int)orientation) | ((int)layout))' from 'int' to 'uint8_t
unreviewed
git-svn-id: http://skia.googlecode.com/svn/trunk@7329 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-23 01:46:26 +00:00
bsalomon@google.com
730138c02b
Remove declaration of unimplemented function.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7327 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-22 22:04:13 +00:00
bsalomon@google.com
8a252f7962
Switch GrEffect::onIsEqual signature back to GrEffect from GrEffectRef.
...
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/7188046
git-svn-id: http://skia.googlecode.com/svn/trunk@7326 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-22 20:35:13 +00:00
bsalomon@google.com
6340a41108
Let them eat GrEffectRef.
...
Changes the remaining existing code that operates on naked GrEffects to GrEffectRef.
Review URL: https://codereview.appspot.com/7124058
git-svn-id: http://skia.googlecode.com/svn/trunk@7321 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-22 19:55:59 +00:00
bungeman@google.com
ba3284e7bb
Fix VC++ warning and Android only code for 7317.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7319 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-22 19:49:33 +00:00
bungeman@google.com
532470f34d
Expose geometry and gamma on device.
...
https://codereview.appspot.com/6499101/
git-svn-id: http://skia.googlecode.com/svn/trunk@7317 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-22 19:25:14 +00:00
robertphillips@google.com
b83b6b4f76
Added toString to SkXfermode-derived classes (for debugger)
...
https://codereview.appspot.com/7139058/
git-svn-id: http://skia.googlecode.com/svn/trunk@7308 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-22 14:32:09 +00:00
jvanverth@google.com
46d3d39e65
Add GPU support for axis-aligned ovals:
...
- Add drawOval base function to SkDevice, and override in SkGpuDevice
- Move isSimilarityMatrix to SkMatrix (renamed to isSimilarity) and fixed up unit test
- Since both SkGpuDevice::drawOval() and GrContext::drawPath() can try to draw ovals, added GrContext::canDrawOval() and GrContext::internalDrawOval() to avoid duplicate code
- Hooked in axis-aligned oval fill shader
- Enabled GPU stroked circles
- Added stroked circle bench test
Review URL: https://codereview.appspot.com/7137050
git-svn-id: http://skia.googlecode.com/svn/trunk@7304 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-22 13:34:01 +00:00
senorblanco@chromium.org
3f2d45aff6
(Relanding r7275 with assert fix, plus fixes from r7276, r7280, r7283.)
...
Implement a bicubic resampling image filter, with raster and GPU backends.
In order to get this to work on the GPU side, I had to modify the width and height of the drawn texture in drawSprite() and drawDevice() to use the filtered texture's dimensions, instead of the source texture. (This wasn't a problem before since all other image filters produce results the same dimensions as their input texture.)
For now, this implementation only does axis-aligned scaling (same as the Lanczos-3 implementation in Chrome). It's also done for correctness and clarity, not speed, so there are lots of opportunities for speedups.
Committed: https://code.google.com/p/skia/source/detail?r=7275
Review URL: https://codereview.appspot.com/7033049
git-svn-id: http://skia.googlecode.com/svn/trunk@7287 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-18 20:48:20 +00:00
robertphillips@google.com
c51f752554
Reverting chain of SkBicubicImageFilter changes (7275, 7276, 7280 & 7283)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7285 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-18 19:20:52 +00:00
senorblanco@chromium.org
744820e657
Implement a bicubic resampling image filter, with raster and GPU backends.
...
In order to get this to work on the GPU side, I had to modify the width and height of the drawn texture in drawSprite() and drawDevice() to use the filtered texture's dimensions, instead of the source texture. (This wasn't a problem before since all other image filters produce results the same dimensions as their input texture.)
For now, this implementation only does axis-aligned scaling (same as the Lanczos-3 implementation in Chrome). It's also done for correctness and clarity, not speed, so there are lots of opportunities for speedups.
Review URL: https://codereview.appspot.com/7033049
git-svn-id: http://skia.googlecode.com/svn/trunk@7275 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-18 17:29:15 +00:00
bsalomon@google.com
68b58c9538
Remove default implementation of GrEffect::isEqual. Make GrSingleTextureEffect abstract.
...
Review URL: https://codereview.appspot.com/7142049
git-svn-id: http://skia.googlecode.com/svn/trunk@7254 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-17 16:50:08 +00:00
tomhudson@google.com
7cfb9c7b61
Revert r7241, which broke tests on most platforms.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7245 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-17 13:29:35 +00:00
tomhudson@google.com
21e4322b92
Add SSE2 multiplication for SkMatrix44 on some platforms.
...
Original author whunt@chromium.org .
https://codereview.appspot.com/7058077/
git-svn-id: http://skia.googlecode.com/svn/trunk@7241 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-17 12:17:00 +00:00
skia.committer@gmail.com
4d28d9889b
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7240 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-17 07:06:06 +00:00
reed@google.com
edb7713cd5
mark default constructor for SkMatrix44 as deprecated, since it calls setIdentity()
...
and we have explicit (enum-based) constructors to distinguish that from uninitialized.
git-svn-id: http://skia.googlecode.com/svn/trunk@7228 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-16 16:28:58 +00:00
junov@chromium.org
4668e13c37
Adding SK_API to SkTileGridPicture class declaration
...
Unreviewed
git-svn-id: http://skia.googlecode.com/svn/trunk@7227 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-16 16:07:39 +00:00
bsalomon@google.com
a1ebbe447d
Change some function/vars from EffectPtr to EffectRef to reflect GrEffectPtr->GrEffectRef renaming.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7226 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-16 15:51:47 +00:00
bsalomon@google.com
87c472653b
Fix no-static-init (android) build.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7225 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-16 15:38:37 +00:00
bsalomon@google.com
64287c5ef7
Fix missing "class" in friend decls in GrEffect.h
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7223 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-16 15:25:55 +00:00
bsalomon@google.com
0ac6af4997
Wrap GrEffects in GrEffectPtr.
...
This is the first step towards automatic recycling of scratch resouces in the cache via ref-cnts.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/7092061
git-svn-id: http://skia.googlecode.com/svn/trunk@7222 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-16 15:16:18 +00:00
reed@google.com
6f54724c11
remove legacy build-flags for drawBitmapRect
...
add SkRect::isetWH()
Review URL: https://codereview.appspot.com/7127045
git-svn-id: http://skia.googlecode.com/svn/trunk@7221 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-16 15:15:24 +00:00
bsalomon@google.com
4e23068b37
Re-enable inst counting in debug builds.
...
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/7098066
git-svn-id: http://skia.googlecode.com/svn/trunk@7206 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-15 20:37:04 +00:00
robertphillips@google.com
76f9e938df
Added print out of SkShader information to debugger
...
https://codereview.appspot.com/7105045/
git-svn-id: http://skia.googlecode.com/svn/trunk@7201 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-15 20:17:47 +00:00
sugoi@google.com
781cc76e0f
Implementation of the displacement effect (both CPU and GPU)
...
TEST=Added new GM called "displacement"
Review URL: https://codereview.appspot.com/7058075
git-svn-id: http://skia.googlecode.com/svn/trunk@7182 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-15 15:40:19 +00:00
reed@google.com
d53025364a
To support alignment pragmas (for speed), we need to relax assumptions about
...
our sizeof. So rewrite operator= and copy-constructor to just copy individual
fields.
Review URL: https://codereview.appspot.com/7098063
git-svn-id: http://skia.googlecode.com/svn/trunk@7181 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-15 14:54:00 +00:00
skia.committer@gmail.com
fb830981f2
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7176 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-15 12:19:31 +00:00
humper@google.com
9b64cac7c8
fix warning on linux
...
BUG=
Review URL: https://codereview.appspot.com/7101058
git-svn-id: http://skia.googlecode.com/svn/trunk@7174 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-15 03:03:38 +00:00
skia.committer@gmail.com
7fc0e0a75a
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7173 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-15 02:01:40 +00:00
humper@google.com
810ae48f82
move template specializations to inline functions in the header to make windows happy again
...
BUG=
Review URL: https://codereview.appspot.com/7099053
git-svn-id: http://skia.googlecode.com/svn/trunk@7164 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-14 20:11:00 +00:00
humper@google.com
18a48c3c1c
replace getline with fgets for portability
...
BUG=
Review URL: https://codereview.appspot.com/7085058
git-svn-id: http://skia.googlecode.com/svn/trunk@7163 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-14 19:42:08 +00:00
humper@google.com
6d29eda491
remove dynamic_cast because rtti is disabled on some platforms (but not all??)
...
BUG=
Review URL: https://codereview.appspot.com/7102056
git-svn-id: http://skia.googlecode.com/svn/trunk@7161 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-14 19:20:28 +00:00
humper@google.com
61a972f11f
fix gcc build
...
BUG=
Review URL: https://codereview.appspot.com/7095055
git-svn-id: http://skia.googlecode.com/svn/trunk@7160 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-14 19:03:46 +00:00
humper@google.com
7af56bee17
Runtime configuration system for skia. This will allow developers to control settings at launch time without relying on compile-time flags or recompilation. It can be used to turn features on and off, as well as to control numeric quantities to 'tune' algorithms. Once I make sure it's working across all platforms I'll send out a quick tutorial on its use.
...
Review URL: https://codereview.appspot.com/7098051
git-svn-id: http://skia.googlecode.com/svn/trunk@7158 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-14 18:49:19 +00:00
bsalomon@google.com
e197cbf9a3
Change signature of SkShader::asNewEffect(), implement for SkBitmapProcShader.
...
Review URL: https://codereview.appspot.com/7086051
git-svn-id: http://skia.googlecode.com/svn/trunk@7153 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-14 16:46:26 +00:00
digit@google.com
47ebbcc7ab
Use the NDK's cpu-features library when building skia for Chromium/Android.
...
This patch ensures that when Skia is built for Chromium, it will
always use the Android NDK's cpu-features helper library to detect
NEON at runtime.
This is needed because sandboxed Chromium renderer processes cannot
access /proc, and the probing performed in SkUtilsArm.cpp will never
work. As such, the NEON code paths will never be used even when the
device supports them.
Chromium has special code that ensures that the browser process
passes the CPU features flags to every renderer process, but
Skia needs to use android_getCpuFeatures() to get them.
See http://crbug.com/164154 for full details.
Review URL: https://codereview.appspot.com/7102045
git-svn-id: http://skia.googlecode.com/svn/trunk@7149 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-14 14:58:22 +00:00
bsalomon@google.com
371e105da5
Add GrEffect::updateKnownColorComponents(). It is used to determine whether the output of an effect has a constant output value for r,g,b, or a.
...
Review URL: https://codereview.appspot.com/7064057
git-svn-id: http://skia.googlecode.com/svn/trunk@7144 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-11 21:08:55 +00:00
bsalomon@google.com
50db75c871
Make GrEffect::textureAccess non-virtual. Require subclasses to append their GrTAs.
...
Review URL: https://codereview.appspot.com/7062063
git-svn-id: http://skia.googlecode.com/svn/trunk@7129 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-11 13:54:30 +00:00
senorblanco@chromium.org
171f5c76b9
Rename onFilterImageGPU to filterImageGPU(), to match skia convention. No change in functionality.
...
(Note that this does mean that clients must override onFilterImage() to implement the raster path, but filterImageGPU() to implement the GPU path.)
Review URL: https://codereview.appspot.com/7058078
git-svn-id: http://skia.googlecode.com/svn/trunk@7123 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-10 19:55:18 +00:00