commit-bot@chromium.org
0a2bf90dcc
Factory methods for heap-allocated SkPathEffect and SkXfermode objects.
...
This is part of an effort to ensure that all SkPaint effects can only be
allocated on the heap.
This patch makes the constructors of SkPathEffect, SkXfermode and
their subclasses non-public and instead provides factory methods for
creating these objects on the heap. We temporarily keep the constructors
of the following classes public to not break Chrome/Blink:
SkXfermode
SkCornerPathEffect
SkDashPathEffect
BUG=skia:2187
R=scroggo@google.com , reed@google.com , mtklein@google.com , bungeman@google.com
Author: dominikg@chromium.org
Review URL: https://codereview.chromium.org/166583002
git-svn-id: http://skia.googlecode.com/svn/trunk@13519 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-20 20:40:19 +00:00
commit-bot@chromium.org
3361471a35
Simplify benchmark internal API.
...
I'm not quite sure why I wrote such a convoluted API with setLoops()/getLoops().
This replaces it with a loops argument passed to onDraw().
This CL is largely mechanical translation from the old API to the new one.
MathBench used this->getLoops() outside onDraw(), which seems incorrect. I
fixed it.
BUG=
R=djsollen@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/99893003
git-svn-id: http://skia.googlecode.com/svn/trunk@12466 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-03 18:17:16 +00:00
mtklein@google.com
410e6e80f0
Refactoring: get rid of the SkBenchmark void* parameter.
...
While I was doing massive sed-ing, I also converted every bench to use DEF_BENCH instead of registering the ugly manual way.
BUG=
R=scroggo@google.com
Review URL: https://codereview.chromium.org/23876006
git-svn-id: http://skia.googlecode.com/svn/trunk@11263 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-13 19:52:27 +00:00
mtklein@google.com
c289743864
Major bench refactoring.
...
- Use FLAGS_.
- Remove outer repeat loop.
- Tune inner loop automatically.
BUG=skia:1590
R=epoger@google.com , scroggo@google.com
Review URL: https://codereview.chromium.org/23478013
git-svn-id: http://skia.googlecode.com/svn/trunk@11187 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-10 19:23:38 +00:00
djsollen@google.com
69feaca231
Fix Android bench bots for Xoom due to OOM errors.
...
BUG= 1422
BUG= 1430
R=borenet@google.com
Review URL: https://codereview.chromium.org/19672007
git-svn-id: http://skia.googlecode.com/svn/trunk@10147 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-18 17:22:30 +00:00
commit-bot@chromium.org
5d7ca957ed
Fix gyp files to allow ninja to build 64 bit on Mac.
...
Fix warnings that cropped up building as 64-bit.
BUG=
R=bsalomon@google.com , bungeman@google.com
Author: mtklein@google.com
Review URL: https://chromiumcodereview.appspot.com/13852013
git-svn-id: http://skia.googlecode.com/svn/trunk@8814 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-22 20:26:44 +00:00
sugoi@google.com
77472f06f8
Bench : Unused parameters cleanup
...
I removed unused parameters in bench wherever it was trivial to do so.
Review URL: https://codereview.appspot.com/7411046
git-svn-id: http://skia.googlecode.com/svn/trunk@7988 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-05 18:50:01 +00:00
skia.committer@gmail.com
4024f32d99
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7385 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-25 07:06:46 +00:00
reed@google.com
4bbdeac58c
add optional cull-rect to patheffects, so they can do less work if their results
...
lie outside of the current clip-bounds (the cull rect).
Review URL: https://codereview.appspot.com/7206044
git-svn-id: http://skia.googlecode.com/svn/trunk@7378 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-24 21:03:11 +00:00
reed@google.com
c270baf97a
change giantdashline test to use 4 intervals, to explicitly avoid the asPoints
...
special case code (which we may test separately later).
git-svn-id: http://skia.googlecode.com/svn/trunk@7375 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-24 18:43:32 +00:00
reed@google.com
e5ceea9232
update to emphasis the culling aspect of the test (making the line much longer,
...
and adding hairline and non-hairline cases.)
git-svn-id: http://skia.googlecode.com/svn/trunk@7371 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-24 17:33:21 +00:00
reed@google.com
996f64f8e7
add bench for giant dashed lines, to test future optimizations for culling
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7368 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-24 17:17:28 +00:00
reed@google.com
a8f23c7e1e
use DEF_BENCH for clarity
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7367 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-01-24 16:56:36 +00:00
robertphillips@google.com
ca47aae7ec
Minor cleanup
...
https://codereview.appspot.com/6927054/
git-svn-id: http://skia.googlecode.com/svn/trunk@6756 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-12 15:58:25 +00:00
skia.committer@gmail.com
0264fb4543
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@6687 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-06 02:01:25 +00:00
robertphillips@google.com
935ad02682
Add drawPoints dash bench
...
https://codereview.appspot.com/6866053/
git-svn-id: http://skia.googlecode.com/svn/trunk@6678 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-05 19:07:21 +00:00
skia.committer@gmail.com
73bb3bee93
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5399 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-05 02:01:29 +00:00
reed@google.com
5125d84433
add more cases to dashline: circle-vs-square, 0,1,2 stroke_width
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5397 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-04 20:19:35 +00:00
reed@google.com
31e9d64cb1
add bench for drawline + dashing
...
git-svn-id: http://skia.googlecode.com/svn/trunk@5396 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-09-04 20:07:23 +00:00
rmistry@google.com
fbfcd56021
Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/ )
...
This CL is part I of IV (I broke down the 1280 files into 4 CLs).
Review URL: https://codereview.appspot.com/6485054
git-svn-id: http://skia.googlecode.com/svn/trunk@5262 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-08-23 18:09:54 +00:00
reed@google.com
fd4be26c42
Change patheffect to take a (new) StrokeRec object, which encapsulates the fill
...
or stroke parameters for a path.
Today, the patheffect only sees if the caller was going to stroke or fill, and
if stroke, it just sees the width. With this change, the effect can see all of the
related parameters (e.g. cap/join/miter). No other change is intended at this
time.
After this change, I hope to use this additional data to allow SkDashPathEffect
to, at times, apply the stroke as part of its effect, which may be much more
efficient than first dashing, and then reading that and stroking it.
Most of these files changed just because of the new parameter to filterPath. The
key changes are in SkPathEffect.[h,cpp], SkPaint.cpp and SkScalerContext.cpp
Review URL: https://codereview.appspot.com/6250051
git-svn-id: http://skia.googlecode.com/svn/trunk@4048 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-25 01:04:12 +00:00
reed@google.com
d3521f1a8d
revert 4046 -- GM:pathfill failed on one bot, maybe uninitialized memory somewhere?
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4047 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-24 20:32:22 +00:00
reed@google.com
9797272edf
Change patheffect to take a (new) StrokeRec object, which encapsulates the fill
...
or stroke parameters for a path.
Today, the patheffect only sees if the caller was going to stroke or fill, and if
stroke, it just sees the width. With this change, the effect can see all of the
related parameters (e.g. cap/join/miter). No other change is intended at this
time.
After this change, I hope to use this additional data to allow SkDashPathEffect
to, at times, apply the stroke as part of its effect, which may be much more
efficient than first dashing, and then reading that and stroking it.
Most of these files changed just because of the new parameter to filterPath. The
key changes are in SkPathEffect.[h,cpp], SkPaint.cpp and SkScalerContext.cpp
Review URL: https://codereview.appspot.com/6249050
git-svn-id: http://skia.googlecode.com/svn/trunk@4046 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-24 20:13:57 +00:00
reed@google.com
ea6f6832dd
add makedash_ variants to measure applying the dash (not drawing it)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@4000 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-18 18:32:54 +00:00
reed@google.com
a584aed5f7
perform quickReject in drawPoints (which is called by drawLine) just like we
...
already did in drawRect and drawPath
git-svn-id: http://skia.googlecode.com/svn/trunk@3968 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-16 14:06:02 +00:00
reed@google.com
4ad2275350
add clipped case for dashing to exercise quickReject
...
git-svn-id: http://skia.googlecode.com/svn/trunk@3961 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-15 19:50:58 +00:00
reed@google.com
ef85e3c52c
add experimental variant of dashing, where we explicitly draw rects
...
git-svn-id: http://skia.googlecode.com/svn/trunk@3897 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-10 15:40:57 +00:00
mike@reedtribe.org
99a6ef48e3
add different stroke-widths to dash bench
...
git-svn-id: http://skia.googlecode.com/svn/trunk@3843 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-05 13:46:10 +00:00
reed@google.com
4aa1a70ab7
add initial bench for dashing (more work to do)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@3841 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-05-04 16:37:45 +00:00