Commit Graph

348 Commits

Author SHA1 Message Date
scroggo@google.com
39edf4cd94 Updates to skimage tool to use it for testing.
skimage_main.cpp:
More changes in the interest of testing our decoders.

force_all_opaque before writing PNG files.

Test reencoding the image to its original type (if possible), and
then test redecoding it (to make sure the encoding was successful).
Add an option to turn off this behavior.

Merge decodeFileAndWrite with decodeFile.

SkImageDecoder:
Add kUnknown_Type to SkImageEncoder::Types.

Add a static function to get the Format of an SkStream.

In getFormatName(), remove an incorrect assert.

When calling the flavor of DecodeStream that returns the Format,
check the stream if the decoder returns kUnknown_Format.

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

Review URL: https://codereview.chromium.org/14363003

git-svn-id: http://skia.googlecode.com/svn/trunk@8862 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-25 17:33:51 +00:00
skia.committer@gmail.com
83f0d302e8 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8851 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-25 07:01:04 +00:00
scroggo@google.com
d0419019de Fix the build.
Allow NULL for defaultValue in SkCommandLineFlags.

unreviewed.

Review URL: https://codereview.chromium.org/14472017

git-svn-id: http://skia.googlecode.com/svn/trunk@8847 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-24 19:37:52 +00:00
scroggo@google.com
58104a9c25 Treat default command line argument properly.
In SkCommandLineFlags, if the client sets a default value
of multiple arguments (e.g. "arg0 arg1 ..."), set
the actual defaults to all of those arguments separately
(i.e. an array with [0] == "arg0", [1] == "arg1", ...),
rather than as one string (i.e. [0] == "arg0 arg1 ...").

Remove the hack that worked around this bug.

Also move the increasingly complicated implementation of
SkFlagInfo::CreateStringFlag into the cpp file.

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

Review URL: https://codereview.chromium.org/14366034

git-svn-id: http://skia.googlecode.com/svn/trunk@8845 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-24 19:25:26 +00:00
edisonn@google.com
d9dfa18372 Encode images with DCTDecode (JPEG) in PDFs if it makes sense. Fallback to FlateDecode (zip) if it makes sense. Otherewise include uncompressed stream.
This change will reduce the size of PDFs to 50% (in the case of the existing SKPs, we reduce the total size of PDFs from 105MB to 50MB) 
Review URL: https://codereview.appspot.com/7068055

git-svn-id: http://skia.googlecode.com/svn/trunk@8835 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-24 13:01:01 +00:00
scroggo@google.com
b7dbf633a6 Fix an SkCommandLineFlags bug.
Previously I was storing an SkTDArray of const char*,
which fails if the strings go out of scope.

Instead, store an SkTArray of SkString, and copy the
strings, so we do not depend on the strings sticking
around. Using an SkTArray because it is smart enough
to call the destructors, so the copies can be destroyed
on program exit.

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

Review URL: https://codereview.chromium.org/14414008

git-svn-id: http://skia.googlecode.com/svn/trunk@8829 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-23 15:38:09 +00:00
scroggo@google.com
aaec851ad1 Link webp in skimage and debugger.
Review URL: https://codereview.chromium.org/14103020

git-svn-id: http://skia.googlecode.com/svn/trunk@8691 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-15 22:05:03 +00:00
scroggo@google.com
9c5f969e70 Include gif image decoding in images/ on linux.
Build SkImageDecoder_libgif in images project and link against
libgif on linux.

Ensure that the GIF decoder is used in skimage.

Requires a new dependency on libgif-dev when building on linux.

Review URL: https://codereview.chromium.org/14029011

git-svn-id: http://skia.googlecode.com/svn/trunk@8627 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-11 18:32:01 +00:00
scroggo@google.com
b41ff95cc0 Updates for the skimage tool.
Allow passing files or folders on the command line.

Group the output to show all successes together, all failures
together, etc.

When writing a new png, do not make its file type ".png.png"
if the original was a png.

Force linking for JPEG decoder.

Use SkCommandLineFlags.

Review URL: https://codereview.chromium.org/14089002

git-svn-id: http://skia.googlecode.com/svn/trunk@8615 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-11 15:53:35 +00:00
commit-bot@chromium.org
ae403b9496 Simplify bench pictures render target creation.
Author: bsalomon@google.com

Reviewed By: robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/13947016

git-svn-id: http://skia.googlecode.com/svn/trunk@8596 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-10 17:27:30 +00:00
scroggo@google.com
604e0c249e SkFlags now follows proper dashing convention.
Two dashes are used for flags with multiple characters, and one
dash is used for flags with single characters.

In GM, changed '-wp' to '-p' (the command to choose a directory
for writing SKPs) to fit with the convention.

In render_pictures and bench_pictures, changed the flag for
read and write path to have full names (which are consistent)
and use the old single character names as their shortcuts.

SkCommandLineFlags: Updated the documentation, and only allow
-h or --help for help (again, to match the convention).
Also enforce the single character limit for the short name, and
require the full name to be at least two characters.

Provide full names for skhello.

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

Review URL: https://codereview.chromium.org/12521019

git-svn-id: http://skia.googlecode.com/svn/trunk@8582 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-09 21:25:46 +00:00
rmistry@google.com
f5c4fc8523 Introduce aliases and regex in submit_try.
Adding the aliases 'compile' and 'cq'. Also adding a alias 'regex' that prompts the user for a regex, displays results and prompts again for confirmation.

Created to fix the feature request https://code.google.com/p/skia/issues/detail?id=1207 : replace hard-coded trybot lists with automated filtering.

(SkipBuildbotRuns)
Review URL: https://codereview.chromium.org/13493012

git-svn-id: http://skia.googlecode.com/svn/trunk@8569 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-09 11:46:46 +00:00
skia.committer@gmail.com
3284017a60 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8568 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-09 07:01:27 +00:00
robertphillips@google.com
2e87ba0c7c Add before and after command count to filter tool
https://codereview.chromium.org/13405003/



git-svn-id: http://skia.googlecode.com/svn/trunk@8562 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-08 15:45:30 +00:00
epoger@google.com
50d6862fdb Make submit_try accept space- or comma-separated list
(SkipBuildbotRuns)
Review URL: https://codereview.chromium.org/13535005

git-svn-id: http://skia.googlecode.com/svn/trunk@8521 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 18:35:35 +00:00
skia.committer@gmail.com
041e2dbc06 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8503 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 07:01:14 +00:00
robertphillips@google.com
c52570475f Expand filter 0 to handle transparent drawBitmapRect paints
https://codereview.chromium.org/13394014/



git-svn-id: http://skia.googlecode.com/svn/trunk@8486 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-02 15:30:03 +00:00
bungeman@google.com
07a69f848c Name table iterator.
https://codereview.appspot.com/8180043/


git-svn-id: http://skia.googlecode.com/svn/trunk@8480 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-02 14:12:38 +00:00
skia.committer@gmail.com
05a2ee052c Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8477 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-02 07:01:34 +00:00
commit-bot@chromium.org
3bdf16496f Taken together with the filter tool's new looping capabilities, these two optimizations can replace check_7 and apply_7.
Author: robertphillips@google.com

Reviewed By: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/13261019

git-svn-id: http://skia.googlecode.com/svn/trunk@8471 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-01 21:00:27 +00:00
robertphillips@google.com
d9c1853fb8 Add looping over optimizations to filter tool
https://codereview.chromium.org/13261018/



git-svn-id: http://skia.googlecode.com/svn/trunk@8465 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-01 19:10:21 +00:00
robertphillips@google.com
50c84da68b Add getDrawCommandAt and setDrawCommandAt to SkDebugCanvas
https://codereview.chromium.org/13393005/



git-svn-id: http://skia.googlecode.com/svn/trunk@8462 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-01 18:18:49 +00:00
borenet@google.com
02009c781d Add short option for --bot in submit_try
(SkipBuildbotRuns)
Review URL: https://codereview.chromium.org/13133011

git-svn-id: http://skia.googlecode.com/svn/trunk@8460 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-01 17:59:16 +00:00
skia.committer@gmail.com
6acd09e2b0 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8439 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-29 07:01:22 +00:00
robertphillips@google.com
c3410b8cbb New filter targeted at desk_googlespreadsheet overdraw issues
https://codereview.chromium.org/12918029/



git-svn-id: http://skia.googlecode.com/svn/trunk@8424 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-28 12:25:25 +00:00
scroggo@google.com
d9ba9a05d6 Change the name of SkFlags to SkCommandLineFlags.
This name is more specific to what it actually does.

Also move the code into tools/flags, to (slightly) better organize
the massive tools folder.

Update the programs that use it to use the new names.

No functionality changes.

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

Review URL: https://codereview.chromium.org/12440067

git-svn-id: http://skia.googlecode.com/svn/trunk@8304 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-21 19:43:15 +00:00
scroggo@google.com
5dc4ca1ce6 Allow more options for setting boolean flag values in SkFlags.
Now booleans can be set using
--boolean=true or --boolean true (as well as other options).

Review URL: https://codereview.chromium.org/12961003

git-svn-id: http://skia.googlecode.com/svn/trunk@8285 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-21 13:10:59 +00:00
scroggo@google.com
0f2cd172af When SkFlags encounters an invalid flag, quit.
This way the user knows to change their command line.

Review URL: https://codereview.chromium.org/12881014

git-svn-id: http://skia.googlecode.com/svn/trunk@8275 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-20 20:04:27 +00:00
scroggo@google.com
8366df025a Update help in SkFlags.
Print the short name in addition to the standard name.

Allow an option for getting help for a specific command.

Review URL: https://codereview.chromium.org/12411007

git-svn-id: http://skia.googlecode.com/svn/trunk@8273 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-20 19:50:41 +00:00
borenet@google.com
4bfbc7f88f Fix submit_try
Unreviewed
(SkipBuildbotRuns)

git-svn-id: http://skia.googlecode.com/svn/trunk@8270 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-20 18:00:09 +00:00
scroggo@google.com
09fd4d2169 Reland r8235 "Switch gm to use SkFlags."
This time, using #if guards for gpuCacheSize consistently.

Also fix some warnings.

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

Review URL: https://codereview.chromium.org/12440052

git-svn-id: http://skia.googlecode.com/svn/trunk@8254 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-20 14:20:18 +00:00
scroggo@google.com
0b735631b7 Revert "Make gm use SkFlags."
Fix the build.

This reverts commit 6f1fe2aee39308fc56854b062be244a904c209e7.

Review URL: https://codereview.chromium.org/12709005

git-svn-id: http://skia.googlecode.com/svn/trunk@8236 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-19 17:38:50 +00:00
scroggo@google.com
7d519305bb Make gm use SkFlags.
Make flag parser its own project. It is still in the tools folder,
but can now be used by other projects.

Some changes to behavior in order to work with SkFlags:
enable-missing-warning and disable-missing-warning have become
enableMissingWarning and noenableMissingWarning.

exclude-config is now excludeConfig

--config now can only be listed once, but all configs listed
after it will be included (same with excludeConfig and match).

In addition, writeJsonSummary has been changed to
writeJsonSummaryPath for consistency with other path flags.

Provide an option to SkFlags to provide a short name, and use
it for the flags which have short names.

--tileGridReplayScales now takes space separated arguments,
like other inputs.

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

Review URL: https://codereview.chromium.org/12632015

git-svn-id: http://skia.googlecode.com/svn/trunk@8235 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-19 17:28:10 +00:00
scroggo@google.com
bb281f7f96 Improvements/additions to SkImageCache/SkLazyPixelRef.
SkPurgeableImageCache:
New image cache that uses virtual memory to store the pixels. Combines
features of SkAshmemImageCache (which has been removed) with SkPurgeableMemoryBlock, which has android and Mac versions.

SkImageCache:
Modified the API. pinCache now returns a status out parameter which
states whether the pinned memory retained the old data. This allows
allocAndPinCache to only be used for allocations.
Add a new debug only interface to purge unpinned data.
Updates to documentation, clarifying behavior.
Changed CachedStatus to MemoryStatus

SkLruImageCache:
Implement the new function purgeAllUnpinnedCaches and change implementation
of pinCache for the new behavior.

SkLazyPixelRef:
Rewrite onLockPixels to account for the new behavior of pinCache.

BitmapFactoryTest:
Test the new SkPurgeableImageCache.
Write tests which directly test the SkImageCaches.
Create a larger bitmap, since some of the SkImageCaches are designed
to handle large bitmaps.

bench_ and render_pictures:
Consolidate lazy_decode_bitmap into one function.
Allow using a flag to specify using the purgeable image cache.
Clean up some #includes.

Review URL: https://codereview.chromium.org/12433020

git-svn-id: http://skia.googlecode.com/svn/trunk@8207 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-18 21:37:39 +00:00
borenet@google.com
a74302d628 Use "svn cat" in tools/submit_try
(SkipBuildbotRuns)
Review URL: https://codereview.chromium.org/12726006

git-svn-id: http://skia.googlecode.com/svn/trunk@8197 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-18 18:18:26 +00:00
robertphillips@google.com
9105ad0f85 Add translate & scale optimizations
https://codereview.appspot.com/7571045/



git-svn-id: http://skia.googlecode.com/svn/trunk@8182 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-17 18:46:16 +00:00
robertphillips@google.com
91217d0b0c Making SkDrawCommand more robust
https://codereview.appspot.com/7486052/



git-svn-id: http://skia.googlecode.com/svn/trunk@8181 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-17 18:33:46 +00:00
skia.committer@gmail.com
03682beb8c Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8143 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-14 07:02:51 +00:00
junov@chromium.org
d34fda187c Build fix: accessing uninitialized class member (not)
TBR=sugoi

git-svn-id: http://skia.googlecode.com/svn/trunk@8135 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-13 19:03:26 +00:00
junov@chromium.org
e286e84a6a Modifying the behavior of render_pictures --validate to test the effect of bbh.
The new behavior consists in using the same renderer, with bbh disabled, as a reference
renderer when the current renderer has a bbh.
Review URL: https://codereview.chromium.org/12801002

git-svn-id: http://skia.googlecode.com/svn/trunk@8132 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-13 17:27:16 +00:00
junov@chromium.org
c19c19111c Fixing crash in render_pictures when failing to create referenceBitmap for --validate
Review URL: https://codereview.chromium.org/12800002

git-svn-id: http://skia.googlecode.com/svn/trunk@8119 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-12 19:56:49 +00:00
robertphillips@google.com
febc0ec41b Add misc. optimizations to filter tool
https://codereview.appspot.com/7705043/



git-svn-id: http://skia.googlecode.com/svn/trunk@8087 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-11 22:53:11 +00:00
borenet@google.com
fe7533eebe Change submit_try to use checked-in master_host and master_port
(SkipBuildbotRuns)
Review URL: https://codereview.appspot.com/7719044

git-svn-id: http://skia.googlecode.com/svn/trunk@8072 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-11 20:09:40 +00:00
skia.committer@gmail.com
eed625df23 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8059 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-09 07:01:15 +00:00
borenet@google.com
2d137b6f8a Fix Windows build - revert r8056 and r8057
TBR=epoger,edisonn
Review URL: https://codereview.chromium.org/12421010

git-svn-id: http://skia.googlecode.com/svn/trunk@8058 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-08 23:13:33 +00:00
edisonn@google.com
184487c808 Collect minidump and print callstack if an app chrashes.
Review URL: https://codereview.chromium.org/12387018

git-svn-id: http://skia.googlecode.com/svn/trunk@8044 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-08 18:00:16 +00:00
robertphillips@google.com
d59cf7c360 Remove reset of SkTileGrid in PictureRenderer::init
https://codereview.appspot.com/7641044/



git-svn-id: http://skia.googlecode.com/svn/trunk@8042 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-08 16:27:19 +00:00
borenet@google.com
b8f0de176f Fix bench_pictures.cfg
- Add configs for Razr I
- Don't run multithreaded with --timeIndividualTiles
Review URL: https://codereview.chromium.org/12636002

git-svn-id: http://skia.googlecode.com/svn/trunk@8027 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-07 20:18:27 +00:00
skia.committer@gmail.com
075b089b1b Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@7976 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-05 07:09:08 +00:00
scroggo@google.com
a560d00ba5 Provide an option in bench_pictures to count pixel ram.
In SkLruImageCache, provide an option to keep all pixels, and document
the new behavior.

In gm/factory.cpp, set the budget for the Lru image cache to 1, to
retain (basically) the old behavior.

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

Review URL: https://codereview.chromium.org/12378075

git-svn-id: http://skia.googlecode.com/svn/trunk@7972 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-04 21:32:32 +00:00