tomhudson@google.com
d0c1a06cb9
Introduces new SingleTextureEffect base class for GrCustomStage objects.
...
This class tracks the texture that the object uses. A future commit will get rid of the
GrTexture pointer currenty stored in the GrDrawState, allowing us to have CustomStages
*without* textures.
Requires gyp change on next roll.
http://codereview.appspot.com/6306097/
git-svn-id: http://skia.googlecode.com/svn/trunk@4576 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-12 17:23:52 +00:00
junov@chromium.org
02662b7feb
Fixing bad assertion test that was trippin-up debug buildbots
...
TBR=http://codereview.appspot.com/6344109
git-svn-id: http://skia.googlecode.com/svn/trunk@4569 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-12 14:44:52 +00:00
junov@chromium.org
6fc5699e77
Fixing type mask computation in SkMatrix to make it faster and make it so that matrices have the same type masks as their inverses.
...
This patch also add bench tests that call invert() followed by mapRect() on various types of matrices. Performance of these tests was greatly affected by typemask computation
Review URL: http://codereview.appspot.com/6380043/
BUG=https://code.google.com/p/chromium/issues/detail?id=135259
git-svn-id: http://skia.googlecode.com/svn/trunk@4562 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-12 14:01:32 +00:00
reed@google.com
b0a34d80c5
idea: add annotation to SkPaint
...
Review URL: https://codereview.appspot.com/6355050
git-svn-id: http://skia.googlecode.com/svn/trunk@4555 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-11 19:57:55 +00:00
reed@google.com
19393dff0c
add flatten/unflatten to SkDataSet
...
Review URL: https://codereview.appspot.com/6374057
git-svn-id: http://skia.googlecode.com/svn/trunk@4548 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-11 18:48:37 +00:00
reed@google.com
91bd45967c
add SkDataSet class, so SkAnnotation can be more immutable-like
...
Review URL: https://codereview.appspot.com/6354091
git-svn-id: http://skia.googlecode.com/svn/trunk@4542 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-11 17:24:49 +00:00
senorblanco@chromium.org
894790d77c
This patch implements the diffuse and specular lighting filters in Ganesh.
...
There are three light types for each: distant, point and spot, whose code
generation lives in a GrGLLight class hierarchy. This similar to the CPU
implementation, where each light type provides a function to compute the vector
from the surface plane to the light (surfaceToLight) and to compute the light
colour (emitLightColour). Instead of templated member functions, as in the CPU
implementation, these are virtual functions to emit the light-specific GLSL
code.
All of the code for the GPU path lives in the same file as that for the CPU
path, SkLightingImageFilter.cpp. In order to provide Ganesh a hook to access
it, SkImageFilter now has a asNewCustomStage() virtual, which allows an image
filter to return a GrCustomStage representing that filter.
Note that this patch does not handle the border conditions correctly (the
[top|bottom][Left|Right]Normal() functions in the CPU implementation). That
will come in a future patch.
Review URL: http://codereview.appspot.com/6345081/
git-svn-id: http://skia.googlecode.com/svn/trunk@4535 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-11 16:01:22 +00:00
bsalomon@google.com
3a52d68b40
Revert SkNO_RETURN_HINT fix in favor of a simpler fix
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4529 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-11 13:30:08 +00:00
bsalomon@google.com
22f0761d78
Fix SkNO_RETURN_HINT warnings on mac/clang
...
Review URL: http://codereview.appspot.com/6392048/
git-svn-id: http://skia.googlecode.com/svn/trunk@4528 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-11 12:52:04 +00:00
mike@reedtribe.org
bad1b2ff1d
add SkPath::contains(x, y)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4526 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-11 01:51:33 +00:00
robertphillips@google.com
59f46b81f8
Fixed Windows compiler complaints
...
http://codereview.appspot.com/6392044
git-svn-id: http://skia.googlecode.com/svn/trunk@4511 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-10 17:30:58 +00:00
tomhudson@google.com
c377baf406
Add placement new macros to SkPostConfig, call SkNEW* from Ganesh.
...
TODO: unify with the placement new implementation in SkTemplatesPriv.h,
once various issues there are overcome. reed@ should be taking the lead
there.
http://codereview.appspot.com/6384043/
git-svn-id: http://skia.googlecode.com/svn/trunk@4492 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 20:17:56 +00:00
senorblanco@chromium.org
3a67a668db
Add an SK_PRINTF_LIKE macro, which declares a function to have printf-like
...
semantics, allowing gcc and clang to check the format string against the
arguments. Enable its use on SkString (printf, appendf, and prependf). Also
define an SK_SIZE_T_SPECIFIER macro so there's a cross-platform way of
printing a size_t.
Review URL: http://codereview.appspot.com/6375043/
git-svn-id: http://skia.googlecode.com/svn/trunk@4485 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 18:22:08 +00:00
reed@google.com
142e1fe7cf
restore 4478 w/ fixed assert (no long need 8-byte alignment)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4480 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 17:44:44 +00:00
reed@google.com
fc8581b2d8
revert 4478
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4479 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 17:40:48 +00:00
reed@google.com
f8affe5adf
switch callers to SkChecksum::Compute (no 32/64 preference)
...
Review URL: https://codereview.appspot.com/6377043
git-svn-id: http://skia.googlecode.com/svn/trunk@4478 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 17:05:51 +00:00
reed@google.com
b158a82bc1
fix 64bit warnings (use: GYP_DEFINES=skia_arch_width=64 make ... )
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4464 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 13:13:23 +00:00
reed@google.com
00aad94f01
define SK_CPU_SSE_LEVEL to a min of SSE2 if we're on 64bit x86
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4463 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-09 13:02:35 +00:00
reed@google.com
88db9ef0cd
add SkChecksum as a static class, for the replacement API
...
after this lands, plan to deprecate/remove the older APIs
Review URL: https://codereview.appspot.com/6356059
git-svn-id: http://skia.googlecode.com/svn/trunk@4457 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-03 19:44:20 +00:00
robertphillips@google.com
54823c227d
Rolling back r4034 (Proposed plumbing to propagate save & restore)
...
http://codereview.appspot.com/6346066/
git-svn-id: http://skia.googlecode.com/svn/trunk@4456 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-03 19:12:29 +00:00
bsalomon@google.com
44f7c4a6f8
Make SkTSearch variants with compare func as template param
...
Review URL: https://codereview.appspot.com/6345060/
git-svn-id: http://skia.googlecode.com/svn/trunk@4449 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-03 15:03:10 +00:00
rileya@google.com
3e33258cd1
Added GPU implementation of 2-point conical gradient.
...
Review URL: https://codereview.appspot.com/6354062
git-svn-id: http://skia.googlecode.com/svn/trunk@4442 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-03 13:43:35 +00:00
reed@google.com
8dbd5725c0
normalize names for SSE levels
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4440 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-03 12:08:39 +00:00
reed@google.com
fd59d12000
change NewWithCString to allocate room for the terminating NULL, so the data
...
can be treated as a cstring (duh).
git-svn-id: http://skia.googlecode.com/svn/trunk@4430 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-02 20:28:31 +00:00
reed@google.com
2e07942f42
add read/write SkData methods
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4427 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-02 19:35:13 +00:00
reed@google.com
126b4362be
detect SSE level in visual studio
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4424 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-02 19:00:27 +00:00
reed@google.com
5ccbe38285
undo accidental checkin
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4422 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-02 17:29:44 +00:00
reed@google.com
ab69788571
create symbols for the various SSE values
...
add GCC check for SSSE3, and assume it is ordered SSE3 < SSSE3 < SSE4
git-svn-id: http://skia.googlecode.com/svn/trunk@4421 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-02 17:27:51 +00:00
reed@google.com
4a2cb30acc
add SK_CPU_SSE_LEVEL, which may be defined to 2 or 3 (or 41 or 42 in the future)
...
to tell us at compile-time what SSE instructions are available. If none are
known to be available (though we still can check at runtime) SK_CPU_SSE_LEVEL
will be undefined.
git-svn-id: http://skia.googlecode.com/svn/trunk@4419 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-02 14:36:37 +00:00
robertphillips@google.com
23579275c7
Fixed memory deletion error in instance counting mechanism
...
http://codereview.appspot.com/6344057/
git-svn-id: http://skia.googlecode.com/svn/trunk@4399 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-28 21:30:45 +00:00
reed@google.com
dbc936dff3
add SkData::NewFromCString()
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4383 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-28 15:40:09 +00:00
robertphillips@google.com
fffc8d01b5
Added EOF marker to address clang++ error
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4381 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-28 00:29:23 +00:00
junov@chromium.org
ef76060cbf
Adding checksum to SkFlatData to accelerate SkPicture recording.
...
The checksum triggers an early exit in the mem compare use to search for duplicate flattened objects. Also, call to memcmp was replaced with 64-bit at a time comparison loop.
Review URL: http://codereview.appspot.com/6339046/
BUG=http://code.google.com/p/chromium/issues/detail?id=54079
TEST=Checksum and PictureRecord tests in bench.exe
git-svn-id: http://skia.googlecode.com/svn/trunk@4378 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-27 20:03:16 +00:00
robertphillips@google.com
97fafe1b5e
Altered SkInstCnt to print out atexit
...
http://codereview.appspot.com/6348043/
git-svn-id: http://skia.googlecode.com/svn/trunk@4377 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-27 19:52:20 +00:00
robertphillips@google.com
b74af872cc
Separated Inst counting from the SK_DEBUG #define (now SK_ENABLE_INST_COUNT)
...
http://codereview.appspot.com/6353047/
git-svn-id: http://skia.googlecode.com/svn/trunk@4376 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-27 19:41:42 +00:00
reed@google.com
c6faa5a0c4
add SkAlign8 and SkIsAlign8 macros
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4362 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-27 15:07:11 +00:00
robertphillips@google.com
0456e0b7b8
Added Inst counting to SkFlattenable-derived classes
...
http://codereview.appspot.com/6355043/
git-svn-id: http://skia.googlecode.com/svn/trunk@4359 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-27 14:03:26 +00:00
reed@google.com
73e19fb1ba
show # of unknown subclasses in dump
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4347 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-26 18:58:03 +00:00
reed@google.com
fcb57b5570
more SkInstCnt plumbing
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4344 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-26 17:55:30 +00:00
reed@google.com
82ce2b8afb
add more SkInstCnt plumbing
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4343 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-26 17:43:26 +00:00
reed@google.com
3b42998466
stick SkInstCnt in more classes, to help track down leaks
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4341 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-26 15:30:08 +00:00
reed@google.com
34342f6f51
export flags on the state of the world when a picture was serialized.
...
e.g. don't read/write functionptrs in that case (sizeof may be different for one)
Review URL: https://codereview.appspot.com/6331050
git-svn-id: http://skia.googlecode.com/svn/trunk@4318 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-25 14:36:28 +00:00
robertphillips@google.com
15c0fea699
AutoScratchTexture can now release its texture and it will return to the texture cache when freed
...
http://codereview.appspot.com/6262043/
git-svn-id: http://skia.googlecode.com/svn/trunk@4301 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-22 12:41:43 +00:00
robertphillips@google.com
15e9d3e66e
Expanded distribution of instance counting
...
http://codereview.appspot.com/6300114/
git-svn-id: http://skia.googlecode.com/svn/trunk@4291 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-21 20:25:03 +00:00
bsalomon@google.com
4da34e36cb
Add GrMemoryPool as a helper to override operators new/delete
...
Review URL: http://codereview.appspot.com/6306090/
git-svn-id: http://skia.googlecode.com/svn/trunk@4282 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-19 15:40:27 +00:00
robertphillips@google.com
4d73ac22a1
Version 2 of the Instance Counting system. This one simplifies the print out of information.
...
http://codereview.appspot.com/6296069/
git-svn-id: http://skia.googlecode.com/svn/trunk@4255 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-13 18:54:08 +00:00
reed@google.com
9a323c98f6
faster SkScalarIsFinite()
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4244 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-13 13:03:08 +00:00
robertphillips@google.com
4bdfb8c9d6
Compiler complaints + some minor cleanup
...
http://codereview.appspot.com/6295070/
git-svn-id: http://skia.googlecode.com/svn/trunk@4238 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-12 21:23:49 +00:00
reed@google.com
51c62a6cfa
add readPtr and writePtr to SkReader32 and SkWriter32
...
add template helper SkSWriter32, which allocates initial storage buffer
Review URL: https://codereview.appspot.com/6299075
git-svn-id: http://skia.googlecode.com/svn/trunk@4237 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-12 20:47:53 +00:00
djsollen@google.com
64a0ec3655
Move SkColorTable into its own header and reduce includes in SkFlattenable.h
...
Review URL: https://codereview.appspot.com/6299072
git-svn-id: http://skia.googlecode.com/svn/trunk@4236 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-06-12 15:17:27 +00:00