Commit Graph

605 Commits

Author SHA1 Message Date
borenet@google.com
de938a496c Fix Android build of render_pictures
Review URL: https://codereview.appspot.com/6501113

git-svn-id: http://skia.googlecode.com/svn/trunk@5462 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-10 14:41:26 +00:00
reed@google.com
3d1a9963bc add techtalk slide for now (can remove it tomorrow)
git-svn-id: http://skia.googlecode.com/svn/trunk@5461 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-10 14:27:37 +00:00
bsalomon@google.com
69aca79b5c SkPathRef: one allocation for pts+verbs, path GenID, copy-on-write
Review URL: https://codereview.appspot.com/6488063/



git-svn-id: http://skia.googlecode.com/svn/trunk@5433 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-07 15:35:06 +00:00
scroggo@google.com
9a4125283a Report data from bench_pictures in the same fashion as bench.
Move SkBenchLogger into separate files and make bench_pictures use it.
Remove sk_tools::print_msg, since SkBenchLogger is now used instead.

Combine picture_benchmark with bench_pictures, since that is the
only project that uses it.

Refactor the aggregator for bench timer data into its own class and
make bench_pictures use it.

Consolidate the various virtual PictureBenchmark::run functions
into one for reuse.

BUG=https://code.google.com/p/skia/issues/detail?id=822

Review URL: https://codereview.appspot.com/6488086

git-svn-id: http://skia.googlecode.com/svn/trunk@5432 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-07 15:21:18 +00:00
rileya@google.com
e0201a4448 Add SkPictureRecord subclass that computes bounding boxes.
Review URL: https://codereview.appspot.com/6506082

git-svn-id: http://skia.googlecode.com/svn/trunk@5423 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-06 20:50:11 +00:00
robertphillips@google.com
8b62c60e96 Added 4.6.2 prefix to existing debugger moc files
http://codereview.appspot.com/6488090/



git-svn-id: http://skia.googlecode.com/svn/trunk@5416 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-06 18:04:07 +00:00
edisonn@google.com
d966ab9906 Add efffects to the list of dependencies for bench_pictures. Required on Android.
Review URL: http://codereview.appspot.com/6489078

git-svn-id: http://skia.googlecode.com/svn/trunk@5406 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-05 19:43:46 +00:00
rileya@google.com
981b33abc6 Add R-Tree bench.
Review URL: https://codereview.appspot.com/6497086

git-svn-id: http://skia.googlecode.com/svn/trunk@5404 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-05 18:36:17 +00:00
rileya@google.com
1f45e934b6 Add R-Tree data structure.
Review URL: https://codereview.appspot.com/6489055

git-svn-id: http://skia.googlecode.com/svn/trunk@5401 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-05 16:10:59 +00:00
borenet@google.com
a98eb919a2 Add NaCl port of Skia
Initial commit. This is far from done.
Review URL: https://codereview.appspot.com/6428064

git-svn-id: http://skia.googlecode.com/svn/trunk@5398 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-04 21:09:40 +00:00
borenet@google.com
623ff0a5f7 Add ANGLE to DEPS, integrate build
Review URL: https://codereview.appspot.com/6494052

git-svn-id: http://skia.googlecode.com/svn/trunk@5387 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-04 16:45:05 +00:00
bsalomon@google.com
202a51b335 Add effects/core.gypi to 'sources' to make them appear in VS projects
Review URL: https://codereview.appspot.com/6493075/



git-svn-id: http://skia.googlecode.com/svn/trunk@5384 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-04 14:37:12 +00:00
robertphillips@google.com
6806bdaca8 Added bench to test multiple readPixels case
https://codereview.appspot.com/6501081/



git-svn-id: http://skia.googlecode.com/svn/trunk@5381 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-04 13:39:01 +00:00
scroggo@google.com
58b4ead36c Perform multi core rendering in bench_pictures.
Add a flag in SkGPipeWriter for threadsafe drawing.

Add a deferred pipe controller to SamplePipeControllers, which can
be called to play back in multiple threads.

Depends on http://codereview.appspot.com/6459105/

Review URL: https://codereview.appspot.com/6482068

git-svn-id: http://skia.googlecode.com/svn/trunk@5371 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-31 16:15:22 +00:00
robertphillips@google.com
1fcc1b8099 Moved GrClipMaskCache to its own files
https://codereview.appspot.com/6496055/



git-svn-id: http://skia.googlecode.com/svn/trunk@5331 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-29 12:52:05 +00:00
reed@google.com
97af1a64ae Add caching of the snapshot image form a surface
Notify the surface when the canvas draws into it, so it can invalidate the
cached image, and (if needed) perform a copy-on-write on the surface if it
was being shared with the image.
Review URL: https://codereview.appspot.com/6441115

git-svn-id: http://skia.googlecode.com/svn/trunk@5306 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-28 12:19:02 +00:00
caryclark@google.com
9e49fb63d3 shape ops work in progress
add copyrights everywhere
start working on quadratic line segments (for quad intersection)

git-svn-id: http://skia.googlecode.com/svn/trunk@5286 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-27 14:11:33 +00:00
bsalomon@google.com
a04e8e8424 Do premul and r/b swap conversions in a custom effect
Review URL: https://codereview.appspot.com/6473060/



git-svn-id: http://skia.googlecode.com/svn/trunk@5284 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-27 12:53:13 +00:00
bungeman@google.com
fd668cfffe Fix greenish text rendering on Linux.
https://codereview.appspot.com/6484048/


git-svn-id: http://skia.googlecode.com/svn/trunk@5280 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-24 17:46:11 +00:00
bsalomon@google.com
ac4b86cdcf Make gpu.gypi show up in IDE projects
Review URL: http://codereview.appspot.com/6481053/


git-svn-id: http://skia.googlecode.com/svn/trunk@5270 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-23 19:18:29 +00:00
rmistry@google.com
d6176b0dca Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/)
This CL is part II of IV (I broke down the 1280 files into 4 CLs).
Review URL: https://codereview.appspot.com/6474054

git-svn-id: http://skia.googlecode.com/svn/trunk@5263 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-23 18:14:13 +00:00
bsalomon@google.com
2080635ce0 Add gpu.gypi to ease skia->chrome rolls
http://codereview.appspot.com/6486043/


git-svn-id: http://skia.googlecode.com/svn/trunk@5250 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-23 12:55:01 +00:00
robertphillips@google.com
2ea0a231a8 Refactored GrDLinkedList into SkTDLinkedList
http://codereview.appspot.com/6484045/



git-svn-id: http://skia.googlecode.com/svn/trunk@5247 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-23 11:13:48 +00:00
george@mozilla.com
c59b5dac90 Split out SkFontHost_FreeType into common files
Review URL: https://codereview.appspot.com/6442092

git-svn-id: http://skia.googlecode.com/svn/trunk@5246 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-23 00:39:08 +00:00
senorblanco@chromium.org
84207c4278 Move the code for the GPU implementation of morphology effects from GrContext
and GrMorphologyEffect.* into SkMorphologyImageFilter.cpp.

Review URL:  https://codereview.appspot.com/6458065/



git-svn-id: http://skia.googlecode.com/svn/trunk@5241 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-22 20:51:19 +00:00
senorblanco@chromium.org
b2ee33c535 Implements the non-Porter-Duff compositing modes required for SVG's feBlend
element.  This filter has two inputs, since normal blending can't be used.  The
GPU side uses two filter stages to accomplish this:  one to sample the
background, and one to sample the foreground and blend it.

Review URL:  https://codereview.appspot.com/6463081/



git-svn-id: http://skia.googlecode.com/svn/trunk@5231 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-22 16:24:44 +00:00
scroggo@google.com
d5764e8ab7 When copying a bitmap, copy the generation ID.
Review URL: https://codereview.appspot.com/6462084

git-svn-id: http://skia.googlecode.com/svn/trunk@5227 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-22 15:00:05 +00:00
keyar@chromium.org
9299eded38 Images are written by PictureRenderer and not render_pictures_main.
Review URL: https://codereview.appspot.com/6448174

git-svn-id: http://skia.googlecode.com/svn/trunk@5216 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-21 19:05:08 +00:00
caryclark@google.com
03f970652e shape ops work in progress
working demo of old vs. new

git-svn-id: http://skia.googlecode.com/svn/trunk@5209 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-21 13:13:52 +00:00
senorblanco@chromium.org
436411b013 Fix typo in r5202, preventing include files from showing up.
Build fix; unreviewed.



git-svn-id: http://skia.googlecode.com/svn/trunk@5205 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 21:35:00 +00:00
senorblanco@chromium.org
f6100c3ac3 Extract list of source files from effects.gyp into effects.gypi, as was done for
core.gyp.  This should make our lives easier when rolling DEPS.

Review URL:  https://codereview.appspot.com/6454172/



git-svn-id: http://skia.googlecode.com/svn/trunk@5202 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 20:56:26 +00:00
senorblanco@chromium.org
44888c66d4 Move SkColorFilterImageFilter into its own file.
Review URL:  https://codereview.appspot.com/6463072/



git-svn-id: http://skia.googlecode.com/svn/trunk@5197 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 19:23:24 +00:00
borenet@google.com
b7961193a3 Enable 64-bit builds on Windows
Encountered compile errors passing 64-bit size_t to
SkIntToScalar and needed to make adjustments to
gm/gradients.cpp and bench/PicturePlaybackBench.cpp.

Verified on my local Linux, Mac, and Windows machines.

As of this change, the skia_arch_width gyp define
actually forces a 32/64-bit build on Linux, Mac, and
Windows.
Review URL: https://codereview.appspot.com/6460112

git-svn-id: http://skia.googlecode.com/svn/trunk@5195 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 18:58:26 +00:00
keyar@chromium.org
b00a85b7f3 Fixed no GPU build. Not reviewed.
git-svn-id: http://skia.googlecode.com/svn/trunk@5189 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 15:49:47 +00:00
senorblanco@chromium.org
bf2768bab9 Refactor SkImageFilter into its own .cpp file.
Review URL:  https://codereview.appspot.com/6465073/



git-svn-id: http://skia.googlecode.com/svn/trunk@5188 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 15:43:14 +00:00
keyar@chromium.org
81058469d5 Changed the gyp file to handle dpendencies via exports.
git-svn-id: http://skia.googlecode.com/svn/trunk@5174 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 15:03:38 +00:00
keyar@chromium.org
0612564bb7 The GrContext and the GrFactoryContext are now kept around.
git-svn-id: http://skia.googlecode.com/svn/trunk@5172 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 15:03:33 +00:00
keyar@chromium.org
4ea96c5e54 Dirty commit so Brian can see changes.
git-svn-id: http://skia.googlecode.com/svn/trunk@5171 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 15:03:29 +00:00
senorblanco@chromium.org
f1369ce607 Implements a new class, SkSingleInputImageFilter, to handle DAG connectivity
for filters with a single image input.  This provides functionality to store,
flatten and unflatten a single SkImageFilter input, as well as to recursively
evaluate it on the CPU or GPU.  The following classes were re-parented to 
implement DAG connectivity:  SkBlurImageFilter, SkDilateImageFilter,
SkErodeImageFilter, SkColorFilterImageFilter.  The constructors for each
have been appended with a new parameter, representing the input filter
(default NULL).

This change also implements an arbitrary SkBitmap input source for filtering,
SkBitmapSource.

NOTE:  This CL will require gyp file changes when rolling past this revision.

Review URL:  https://codereview.appspot.com/6462071/



git-svn-id: http://skia.googlecode.com/svn/trunk@5170 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-20 14:53:21 +00:00
bungeman@google.com
b49d989997 Remove SK_FONTHOST_WIN_DW define.
git-svn-id: http://skia.googlecode.com/svn/trunk@5132 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-16 17:35:58 +00:00
bungeman@google.com
6ca0a5da6c Don't try to build SkFontHost_win_dw.cpp on non-Windows platforms.
git-svn-id: http://skia.googlecode.com/svn/trunk@5129 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-16 16:23:09 +00:00
bungeman@google.com
e8f0592ae8 DirectWrite font host for skia.
https://codereview.appspot.com/5417063/


git-svn-id: http://skia.googlecode.com/svn/trunk@5128 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-16 16:13:40 +00:00
keyar@chromium.org
5bdef29ae0 GrContextFactory can now expose the GLContext it is using.
Review URL: https://codereview.appspot.com/6461081

git-svn-id: http://skia.googlecode.com/svn/trunk@5105 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-14 22:02:48 +00:00
reed@google.com
c0f1dfb4ed privatize SkScalerContext.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5096 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-14 19:45:58 +00:00
reed@google.com
fe8765c82a privatize SkDescriptor.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5086 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-14 17:41:34 +00:00
junov@chromium.org
9ed02b9da2 Augmenting SkDeferredCanvas notification interface to signal flushes and memory allocations
Renamed SkDeferredCanvas::DeviceContext to SkDeferredCanvas::NotificationClient

BUG=http://code.google.com/p/chromium/issues/detail?id=136828
TEST=Added coverage for new API to DeferredCanvas unit test. Added DeferredCanvas bench test to track deferred canvas overhead cost.
Review URL: https://codereview.appspot.com/6442108

git-svn-id: http://skia.googlecode.com/svn/trunk@5078 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-14 13:36:26 +00:00
rileya@google.com
2e2aedc204 Added GrTextureStripAtlas object.
Review URL: https://codereview.appspot.com/6457099

git-svn-id: http://skia.googlecode.com/svn/trunk@5070 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-13 20:28:48 +00:00
robertphillips@google.com
3c4121e812 Updated gpu.gyp to move GrCacheID.h from src\gpu to include\gpu
git-svn-id: http://skia.googlecode.com/svn/trunk@5060 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-13 14:46:35 +00:00
chudy@google.com
bbad34de3b Effects Bug Fix
Certain compilers in an effort to optimize code chop off files that are never
used. By adding a flag to common conditions and variables we can force skia to
recompile with global static initializers off. By making a call to
SkGraphics::Init we now register all those functions that had been previously
automatically excluded by the compiler.

Review URL: https://codereview.appspot.com/6443112

git-svn-id: http://skia.googlecode.com/svn/trunk@5057 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-13 14:26:36 +00:00
bsalomon@google.com
82aa7482cb Add a zoom filter to Skia. This will be used on ChromeOS to implement the screen magnifier.
Committed on behalf of zork@chromium.org

Review URL: http://codereview.appspot.com/6354065/


git-svn-id: http://skia.googlecode.com/svn/trunk@5056 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-13 14:22:17 +00:00
digit@google.com
3ada0efdc8 arm: dynamic NEON support for SkBitmapProcState functions.
This patch does the following:

  - Move the NEON-specific code from src/core/SkBitmapProcState_filter.h
    to src/opts/SkBitmapProcState_filter_neon.h

  - Implement the NEON-specific functions in the new source file
    src/opts/SkBitmapProcState_opts_arm_neon.cpp, added to the "opts_neon"
    static library target. All functions now use the _neon suffix, even
    in full-NEON builds.

  - Move most of the content of src/core/SkBitmapProcState.cpp to a
    new header: src/core/SkBitmapProcState_procs.h

This header is included by two source files:

  src/core/SkBitmapProcState.cpp, to define the regular functions.
  src/opts/SkBitmapProcState_opts_arm_neon.cpp to define NEON ones.

This is to deal with the fact that all NEON functions now
use the _neon suffix, even in SK_ARM_NEON_IS_ALWAYS mode,
and to be able to include the same header twice in the
SK_ARM_NEON_IS_DYNAMIC case.
Review URL: https://codereview.appspot.com/6449117

git-svn-id: http://skia.googlecode.com/svn/trunk@5055 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-13 14:06:34 +00:00
mike@reedtribe.org
3d1cb97240 move texteffects from Sample to gm
git-svn-id: http://skia.googlecode.com/svn/trunk@5051 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-13 00:52:07 +00:00
mike@reedtribe.org
56d5bfa90e privatize SkBuffer.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5050 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-13 00:01:39 +00:00
mike@reedtribe.org
65be881c83 privatize SkRefDict.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5049 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-12 23:45:04 +00:00
mike@reedtribe.org
d02d4fffad privatize SkGlyph.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5048 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-12 19:43:52 +00:00
mike@reedtribe.org
2bc1689dbd privatize SkPtrRecorder.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5047 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-12 19:34:07 +00:00
borenet@google.com
a37a517b54 Enable 32/64-bit gyp switch on Linux
Linux defaults to 64, other platforms 32.  As of this change, only Mac and
Linux are affected by the skia_arch_width flag.  Next step is to make Win
work as well.
Review URL: https://codereview.appspot.com/6460066

git-svn-id: http://skia.googlecode.com/svn/trunk@5041 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-09 20:44:32 +00:00
reed@google.com
aaa3aec09b privatize SkBlitter.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5040 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-09 20:32:43 +00:00
reed@google.com
cabe48af63 privatize SkScan.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5038 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-09 20:08:13 +00:00
reed@google.com
d74e710c00 remove SkShape (unused)
Review URL: https://codereview.appspot.com/6461069

git-svn-id: http://skia.googlecode.com/svn/trunk@5033 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-09 18:05:33 +00:00
borenet@google.com
af73091b56 Set bench/gm/tests as explicit dependencies of SkiaAndroidApp (trunk)
Hopefully this fixes the flaky Android build.
Review URL: https://codereview.appspot.com/6461067

git-svn-id: http://skia.googlecode.com/svn/trunk@5032 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-09 15:54:28 +00:00
mike@reedtribe.org
e012e0a341 privatize SkEdgeClipper.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5027 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-09 01:26:07 +00:00
mike@reedtribe.org
620aebb4d7 removed SkPerspIter.h
git-svn-id: http://skia.googlecode.com/svn/trunk@5026 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-09 01:05:35 +00:00
digit@google.com
1407a4861a Fix the Android build.
Sorry, the offending line should have been part of a different patch.
Review URL: https://codereview.appspot.com/6448129

git-svn-id: http://skia.googlecode.com/svn/trunk@5023 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-08 22:58:40 +00:00
digit@google.com
a8dd1ce930 arm: dynamic NEON support for SkBlitRow_opts_arm.cpp
This patch moves all NEON-specific code from the source
src/opts/SkBlitRow_opts_arm.cpp into a new file that is
built as part of the 'opts_arm_neon' static library.
Review URL: https://codereview.appspot.com/6449110

git-svn-id: http://skia.googlecode.com/svn/trunk@5016 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-08 22:06:29 +00:00
scroggo@google.com
10dccde54a Make SkGPipe use SkBitmapHeap.
In the single process (or hypothetical cross process/shared address
space) mode, SkGPipe now uses SkBitmapHeap instead of SharedHeap.

Still need to use the shared heap for shaders as well as for cross
process.

TEST=PipeTest

Review URL: https://codereview.appspot.com/6461059

git-svn-id: http://skia.googlecode.com/svn/trunk@5008 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-08 20:43:22 +00:00
reed@google.com
baa5d94ee3 split out src file names into core.gypi, with an eye towards sharing that
file with chrome...
Review URL: https://codereview.appspot.com/6446103

git-svn-id: http://skia.googlecode.com/svn/trunk@5007 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-08 20:39:17 +00:00
robertphillips@google.com
46a8600405 Refactored cacheID in preparation for clip mask caching changes
http://codereview.appspot.com/6458089/



git-svn-id: http://skia.googlecode.com/svn/trunk@5002 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-08 10:42:44 +00:00
reed@google.com
66e51608f1 Privatize SkAutoKern.h
git-svn-id: http://skia.googlecode.com/svn/trunk@4998 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 21:41:42 +00:00
djsollen@google.com
21830d9009 Refactor Bitmap Storage for SkPicture using SkPipe's design.
Refactor Picture and Pipe bitmap storage into common data structure

Update SkFlattenable buffers to be more modular.

This CL is an effort to stage the conversion to named
parameters for all SkFlattenable commands. This particular
stage only does the following two things...

1. Move flattenable buffers from SkFlattenable.h into
   their own header.
2. Update and Add new read write methods for better clarity
   and convenience.

BUG=

Review URL: https://codereview.appspot.com/6445079

git-svn-id: http://skia.googlecode.com/svn/trunk@4994 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 19:49:41 +00:00
chudy@google.com
607357fde8 Refactoring into a public facing facing SkDebugger class first pass.
Review URL: https://codereview.appspot.com/6450096

git-svn-id: http://skia.googlecode.com/svn/trunk@4986 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 16:12:23 +00:00
djsollen@google.com
c73dd5c688 Update SkFlattenable buffers to be more modular.
This CL is an effort to stage the conversion to named
parameters for all SkFlattenable commands. This particular
stage only does the following two things...

1. Move flattenable buffers from SkFlattenable.h into
   their own header.
2. Update and Add new read write methods for better clarity
   and convenience.

BUG=

Review URL: https://codereview.appspot.com/6448095

git-svn-id: http://skia.googlecode.com/svn/trunk@4980 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 15:54:32 +00:00
reed@google.com
7eb3a2653b add gm for very large bitmaps (>32K >64K)
raster expected to fail when scaling >64K (for now)



git-svn-id: http://skia.googlecode.com/svn/trunk@4967 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-07 14:05:14 +00:00
bsalomon@google.com
2e40173c95 revert gpu-less mac sample app, remove busted sample (that has equivalent gm)
Review URL: https://codereview.appspot.com/6450088/



git-svn-id: http://skia.googlecode.com/svn/trunk@4954 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-03 19:25:10 +00:00
chudy@google.com
a9e937c7b7 Moved the ownership of the current clip and current matrix into the debug canvas as part of the upcoming general refactor to everything living in debug canvas.
Review URL: https://codereview.appspot.com/6447077

git-svn-id: http://skia.googlecode.com/svn/trunk@4950 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-03 17:32:05 +00:00
bsalomon@google.com
d472620458 Registry-based unit test for custom effects
Review URL: http://codereview.appspot.com/6447085/



git-svn-id: http://skia.googlecode.com/svn/trunk@4946 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-03 14:34:46 +00:00
bsalomon@google.com
c3841b927b Move GL programs unit test code to tests project.
Review URL: http://codereview.appspot.com/6453079/



git-svn-id: http://skia.googlecode.com/svn/trunk@4927 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-02 18:11:43 +00:00
bsalomon@google.com
cf8fb1f6f0 Create GPU-less build of Skia.
git-svn-id: http://skia.googlecode.com/svn/trunk@4912 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-02 14:03:32 +00:00
robertphillips@google.com
a2d71482db Removed GrClip & related classes
http://codereview.appspot.com/6450071/



git-svn-id: http://skia.googlecode.com/svn/trunk@4899 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-01 20:08:47 +00:00
scroggo@google.com
0c3e5fe728 Pipe factory names independently from the flattenables using them.
Avoids an issue where a flattenable written twice might be written
differently (the first time the flat data may have a name, whereas
the second time it will have an index).

Also add a test which confirms that identical flattenables will have
the same SkFlatData representation.

BUG=https://code.google.com/p/skia/issues/detail?id=721
TEST=FlatDataTest.cpp

Review URL: https://codereview.appspot.com/6431057

git-svn-id: http://skia.googlecode.com/svn/trunk@4896 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-01 19:34:20 +00:00
keyar@chromium.org
163b56734f Merged bench_pictures and render_pictures rendering methods.
bench_pictures now uses a class based method for choosing the benchmark type as well.

Review URL: https://codereview.appspot.com/6452070

git-svn-id: http://skia.googlecode.com/svn/trunk@4894 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-01 17:53:29 +00:00
digit@google.com
fbf31949ac arm: Move SkUtilsArm.h from include/core to src/core
There is no reason to make this visible to client code.
Review URL: https://codereview.appspot.com/6441082

git-svn-id: http://skia.googlecode.com/svn/trunk@4892 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-01 15:58:41 +00:00
digit@google.com
fce02aca62 arm: dynamic NEON support for SkBitmapProcState matrix operations.
This patch implements dynamic ARM NEON support for the functions
implemented by src/core/SkBitmapProcState_matrixProcs.cpp.

 - Because the SkBitmapProcState_matrix_{clamp,repeat}.h headers
   are NEON-specific, they are renamed with a _neon.h suffix, and
   moved to src/opts/ (from src/core/)

 - Add a new file src/opts/SkBitmapProcState_matrixProcs_neon.cpp
   which implements the NEON code paths for all builds, and add
   it to the 'opts_neon' static library.

 - Modify SkBitmapProcState_matrixProcs.cpp to select the right
   code-path depending on our build configuration. Note that in
   the case where 'arm_neon == 1', we do not embed regular ARM
   code paths in the final binary. Only 'arm_neon_optional == 1'
   builds will contain both regular and NEON code paths at the
   same time.

Note that there doesn't seem to be a simple way to put the
NEON-specific selection from that currently is in
SkBitmapProcState_matrixProcs.cpp into src/opts/. Doing so
would require much more drastic restructuring. This is also
true of the other SkBitmapProcState source files that will
be touched in a future patch.
Review URL: https://codereview.appspot.com/6453065

git-svn-id: http://skia.googlecode.com/svn/trunk@4888 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-01 14:25:07 +00:00
chudy@google.com
0b5bbb0f82 Optimized hit testing feature, refactored into seperate function from canvas draw calls
Review URL: https://codereview.appspot.com/6443068

git-svn-id: http://skia.googlecode.com/svn/trunk@4867 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 19:55:32 +00:00
reed@google.com
a7ffb956cb remove '../gm/image.cpp',
git-svn-id: http://skia.googlecode.com/svn/trunk@4855 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 15:01:57 +00:00
reed@google.com
076f4c9791 fix LayerDrawLooper to record its fFlagsMask
convert SampleDrawLooper to a GM



git-svn-id: http://skia.googlecode.com/svn/trunk@4854 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-31 14:32:38 +00:00
bungeman@google.com
97efada074 Gamma correcting masks.
https://codereview.appspot.com/6244068/


git-svn-id: http://skia.googlecode.com/svn/trunk@4841 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-30 20:40:50 +00:00
scroggo@google.com
58be682c77 Share code in various SkGPipeCanvas::drawBitmap_ calls.
Also implement SkGPipeCanvas::drawBitmapMatrix, and
create a GM to make sure it works properly.

Use a flag instead of writing a bool for determining whether
drawBitmap_ has a paint and whether drawBitmapRect has a source
rectangle.

BUG=
TEST=drawbitmapmatrix GM

Review URL: https://codereview.appspot.com/6450053

git-svn-id: http://skia.googlecode.com/svn/trunk@4828 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-30 14:40:01 +00:00
scroggo@google.com
3cb969f27d In SkGPipe, only serialize SkTypefaces in cross process mode.
Also make SkGPipeController ref the recording canvas to ensure that
objects used by SkGPipeCanvas (e.g. SharedHeap and fTypefaceSet, which
hold references to objects to which pointers are written to the stream)
survive to be played back even if SkGPipeWriter.endRecording() is called.

BUG=
TEST=TypefaceGM

Review URL: https://codereview.appspot.com/6447055

git-svn-id: http://skia.googlecode.com/svn/trunk@4817 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 20:39:19 +00:00
rileya@google.com
d7cc651b8d Move GPU gradients into src/effects/gradients.
Review URL: https://codereview.appspot.com/6453055

git-svn-id: http://skia.googlecode.com/svn/trunk@4805 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-27 14:00:39 +00:00
rileya@google.com
589708bf7c Split SkGradientShader into separate files for each gradient subclass.
Review URL: https://codereview.appspot.com/6447049

git-svn-id: http://skia.googlecode.com/svn/trunk@4792 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 20:04:23 +00:00
bsalomon@google.com
1c31f63323 Remove texture/mask setters on GrPaint
Review URL: http://codereview.appspot.com/6446052/



git-svn-id: http://skia.googlecode.com/svn/trunk@4790 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 19:39:06 +00:00
chudy@google.com
ea5488b965 GL Widget Alpha
Review URL: https://codereview.appspot.com/6422060

git-svn-id: http://skia.googlecode.com/svn/trunk@4789 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 19:38:22 +00:00
keyar@chromium.org
451bb9f801 Changed to a class based method in passing around the rendering method for render_pictures.
This is based on a comment for https://codereview.appspot.com/6427061/

Review URL: https://codereview.appspot.com/6405080

git-svn-id: http://skia.googlecode.com/svn/trunk@4786 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-26 17:27:57 +00:00
bsalomon@google.com
dbbc4e2da9 Add GL uniform manager
Review URL: http://codereview.appspot.com/6423066/



git-svn-id: http://skia.googlecode.com/svn/trunk@4758 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 17:48:39 +00:00
borenet@google.com
de9ac1446c Fix Android build for new toolchain
The new toolchain (r8b) does not automatically include
the necessary directories
(http://code.google.com/p/android/issues/detail?id=35279).
Add them manually until this is fixed.
Review URL: https://codereview.appspot.com/6419076

git-svn-id: http://skia.googlecode.com/svn/trunk@4749 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-25 15:17:03 +00:00
scroggo@google.com
dd39488997 Avoid a loop in writeString and writePad by zeroing padding first.
Also add a benchmark to time the new improved writeString. Before
my change the bench took ~1.23ms and afterwards it takes ~.95ms.

Add some testing to ensure that writePad works properly.

TEST=Writer32Test, WriterBench

Review URL: https://codereview.appspot.com/6438045

git-svn-id: http://skia.googlecode.com/svn/trunk@4742 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 20:47:55 +00:00
bungeman@google.com
bbe5013141 Split SkGlyph into its own header.
https://codereview.appspot.com/6434049/


git-svn-id: http://skia.googlecode.com/svn/trunk@4741 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 20:33:21 +00:00
bungeman@google.com
0eec2d0486 Remove SkSfntUtils, as it is not longer used.
git-svn-id: http://skia.googlecode.com/svn/trunk@4735 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-24 17:50:25 +00:00
reed@google.com
ca0062ee5e add SkPaint::getPosTextPath(), with gm to test it
Review URL: https://codereview.appspot.com/6427055

git-svn-id: http://skia.googlecode.com/svn/trunk@4684 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-07-20 11:20:32 +00:00