History log of /external/skia/src/pipe/SkGPipeRead.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
1f64a21df960293a9d6a9b50c4575d0a9f0bffdc 24-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix build: these asserts are always now true, which GCC warns about

R=mtklein@google.com
TBR=reed
NOTRY=true
NOTREECHECKS=true

BUG=skia:

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14359 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
b45bd1f7fd60dbaa38340359f14e96b6a475d12d 24-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> fix int/size_t warnings in pipe

BUG=skia:
R=scroggo@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14357 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
85faf50875fcf6008880a98aaa05d12ae8dad343 16-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove legacy filter-flags, and store FilterLevel directly

BUG=skia:
R=robertphillips@google.com, humper@google.com, jvanverth@google.com, mtklein@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14217 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
d957984c1efbd18f3b2bbeca78d282837c5a2ae1 27-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Factory methods for heap-allocated SkAnnotation 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 SkAnnotation non-public and instead
provides factory methods for creating these objects on the heap.

BUG=skia:2187
R=reed@google.com, mtklein@google.com, scroggo@google.com

Author: dominikg@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13605 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
ed9806f5c972513d4141c9d1b5a04ab78b3af4cb 21-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkCanvas::drawDRRect

BUG=skia:
R=bsalomon@google.com, robertphillips@google.com, humper@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13524 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
8b0e8ac5f582de80356019406e2975079bf0829d 30-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Refactor read and write buffers.

Eliminates SkFlattenable{Read,Write}Buffer, promoting SkOrdered{Read,Write}Buffer
a step each in the hierarchy.

What used to be this:

SkFlattenableWriteBuffer -> SkOrderedWriteBuffer
SkFlattenableReadBuffer -> SkOrderedReadBuffer
SkFlattenableReadBuffer -> SkValidatingReadBuffer

is now

SkWriteBuffer
SkReadBuffer -> SkValidatingReadBuffer

Benefits:
- code is simpler, names are less wordy
- the generic SkFlattenableFooBuffer code in SkPaint was incorrect; removed
- write buffers are completely devirtualized, important for record speed

This refactoring was mostly mechanical. You aren't going to find anything
interesting in files with less than 10 lines changed.

BUG=skia:
R=reed@google.com, scroggo@google.com, djsollen@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13245 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
85e143c33c214e54187aa28146aa7666961a0d17 30-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> reenable vertices gm, adding picture support

BUG=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12845 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
89ff3dd5af99fb31931a63298617d9a91bff2ca6 29-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Little changes to SkAnnotation in pipe:
- store size in the op data field rather than separately (saves 4 bytes);
- trim out a malloc/memcpy in each of read and write;
- remove unused enum value;
- use the right _unpackOp function;
- make sure we call needOpBytes().

BUG=
R=reed@google.com, scroggo@google.com

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12007 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
c0b7e10c6a68f59e1653e6c18e6bc954b3c3f0cf 23-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Initial error handling code

I made it as simple as possible. The impact seems minimal and it should do what's necessary to make this code secure.

BUG=

Committed: http://code.google.com/p/skia/source/detail?r=11247

R=reed@google.com, scroggo@google.com, djsollen@google.com, sugoi@google.com, bsalomon@google.com, mtklein@google.com, senorblanco@google.com, senorblanco@chromium.org

Author: sugoi@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11922 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
4677acc75915ebd32ee0efed5c7b41da2a9d047c 17-Oct-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11834 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
353482251e61971a8cf3a60bbb6910f482be634f 16-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> force readbuffer clients to use specialized readFoo for flattenables

BUG=
R=mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11803 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
fbc58a305518fe611113a51649bf557c991ac8cf 15-Oct-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11769 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
0cd2ac6c721120a2628524dad91798aa3e7ec41d 14-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> change SkAnnotation to not inherit from SkFlattenable (does not need dynamic factories)

BUG=
R=scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11762 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
31acc11977815402e4ef2681350f8559285bec97 20-Aug-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix name of "bleed" flag

https://codereview.chromium.org/22812014/



git-svn-id: http://skia.googlecode.com/svn/trunk@10805 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
7475811143e190e172bf83d13c4bdba85704b604 17-Aug-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10790 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
eed779d866e1e239bfb9ebc6a225b7345a41adf9 16-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> This CL plumbs in the drawBitmapRectToRect "bleed" flag and makes it live on the simplest GPU path.

R=bsalomon@google.com, reed@google.com, edisonn@google.com, scroggo@google.com, jvanverth@google.com, mtklein@google.com

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@10765 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
74b7ffda687c66d46ac3cfa4f2baedd4c62e3fbe 30-Apr-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixes for piping bitmaps with encoded data.

Similar goals as https://codereview.chromium.org/14437012.

Builds on patch set 1 from that issue
(https://codereview.chromium.org/14437012/#ps1).

Instead of the changes in patch set 2 from that issue, this
changes SkOrderedWriteBuffer::writeBitmap to store whether an
SkBitmapHeap was used when to store the index of the SkBitmap.
SkOrderedReadBuffer::readBitmap now uses that information to
distinguish between using the heap and unflattening.

In addition, writeBitmap now records the width/height first in
all cases. If now SkBitmapHeapReader is attached, but an
SkBitmapHeap was used to record the bitmap, reading will fail
and provide the same red SkBitmap as in the case where the
SkBitmap was encoded but could not be decoded.

Updates the PICTURE_VERSION as well.

The key differences in this CL to look at are in:
SkOrderedWriteBuffer,
SkOrderedReadBuffer,
and SkPicture.

BUG=
R=djsollen@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@8917 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
b58772f86659cfe0e8d9247fcee878dddd8fdad9 08-Mar-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> PDF: add support for named destinations.

Landing patchset 7 from https://codereview.appspot.com/7374052 for dml@google.com
Review URL: https://codereview.chromium.org/12533009

git-svn-id: http://skia.googlecode.com/svn/trunk@8034 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
812b6f59fafc213260a56a4a4264ebf23646f662 06-Mar-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r8000 due to failures on some buildbots

git-svn-id: http://skia.googlecode.com/svn/trunk@8001 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
1cad898916c9e4a21429b5325c834a51fa6f361e 06-Mar-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> PDF: add support for named destinations

Imported from https://codereview.appspot.com/7374052/ on behalf of dml@google.com
Review URL: https://codereview.chromium.org/12466008

git-svn-id: http://skia.googlecode.com/svn/trunk@8000 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
e16efc1882ab34a0bb3ae361a2d37f840044cf87 26-Jan-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7406 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
4ed0fb768409bf97b79899c3990d8c15f5e9d784 12-Dec-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> revert 6766, thereby re-landing 6762-6763 now that the bots are ready



git-svn-id: http://skia.googlecode.com/svn/trunk@6770 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
25c1408c3da9ca90509b84f21a1161ef40052bd1 12-Dec-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> revert 6762-6763, since those require new skps to be generated, and we can't
do that immediately right now... will re-submit when we can.



git-svn-id: http://skia.googlecode.com/svn/trunk@6766 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
68d61ed83ec7b6e98e9623c2f5c9e7b1a32d25bb 12-Dec-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> make RRect and Oval first-class drawing primitives in SkCanvas.
add RRect as a first-class clip primitive.
Review URL: https://codereview.appspot.com/6923058

git-svn-id: http://skia.googlecode.com/svn/trunk@6762 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
fb10389403cf1cc771e103016207fde84c5f4825 20-Sep-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding a silent playback option to SkGPipeRead
Testing state consistency after silent playback in CanvasTest indirectly
through SkDeferredCanvas.

BUG=http://code.google.com/p/chromium/issues/detail?id=146178
TEST=CanvasTest unit test, and bench with --mode deferredSilent
Review URL: https://codereview.appspot.com/6542047

git-svn-id: http://skia.googlecode.com/svn/trunk@5619 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
7112173c3c4cd1b1e7da8cdf971d71f01dd91299 18-Sep-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> re-re-land 5578

will follow w/ new .skp files to keep the waterfall green (I hope)



git-svn-id: http://skia.googlecode.com/svn/trunk@5584 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
10f9f4a844c8d5260c0a02df94b940b6abf66b0d 18-Sep-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> revert 5580



git-svn-id: http://skia.googlecode.com/svn/trunk@5581 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
eab16dea1ce249dc8e4dc635cd76b6b1b7d0cc98 18-Sep-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> re-land 5578 w/ pipe fix



git-svn-id: http://skia.googlecode.com/svn/trunk@5580 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
58b4ead36c62d8c0256ee4da554f3df2744d904c 31-Aug-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> 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
/external/skia/src/pipe/SkGPipeRead.cpp
d6176b0dcacb124539e0cfd051e6d93a9782f020 23-Aug-2012 rmistry@google.com <rmistry@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> 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
/external/skia/src/pipe/SkGPipeRead.cpp
460a23e6fd6b71c80d5515300c6b989cd3383029 16-Aug-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix a parenthesis bug.

SkGPipeCanvas::needOpBytes was being called with the wrong value due to a misplaced
parens in clipRect and clipPath. This can cause a crash if clip is called at just
the right (wrong) time. Instead of writing a boolean to the stream, I have added a
flag, which helps to avoid the parens problem.

Also renamed some flags from _DrawOpsFlag to _DrawOpFlag for consistency.

Lastly, added an assert that the size provided by the SkGPipeController is a multiple
of four.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5134 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
d9d2967ce1cca98c7992ac034a6b6e0707c56051 14-Aug-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> In SkGPipeCanvas, rename fSharedHeap to fBitmapHeap

to reflect the fact that it is only used for storing bitmaps.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5085 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
7ca24437c71af06fc06ab5f6f261b185882fa440 14-Aug-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use SkBitmapHeap for shaders in SkGPipe.

Required adding a new feature to SkBitmapHeap, allowing it to defer
adding owners, since sometimes we flatten a shader, but then do not
unflatten it, since we already had a copy in the heap, so the owners
never get removed.

Reviewed at https://codereview.appspot.com/6464053/

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5082 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
3e26bd0c357d849ff40b092decd7a5c46ec2ada4 14-Aug-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Check in r5063 again, along with fix for tests.

Thank you to Android build, for catching the problem, which would
show up elsewhere. Now we access entry->fStorageSlot before
deleting entry.

(Original message:)
Use the SkBitmapHeap to handle SkBitmaps in SkGPipe cross process.

Required moving the LRU handles from SkBitmapHeapEntry to LookupEntry.

Allows simplification of drawBitmap* calls in SkGPipeCanvas.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5081 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
8afae61a57f87e4a50578effce6c428031499301 14-Aug-2012 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Clean up most clang warnings outside animator/

http://codereview.appspot.com/6464058/



git-svn-id: http://skia.googlecode.com/svn/trunk@5079 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
fdb9b212a8590204e99d49d08b8b9bf19f0b2f67 13-Aug-2012 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r5063 until unit tests can be fixed.



git-svn-id: http://skia.googlecode.com/svn/trunk@5067 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
92967e9677ac0416c9c858ed19e4883aa1726046 13-Aug-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use the SkBitmapHeap to handle SkBitmaps in SkGPipe cross process.

Required moving the LRU handles from SkBitmapHeapEntry to LookupEntry.

Allows simplification of drawBitmap* calls in SkGPipeCanvas.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@5063 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
10dccde54a769b8d472bccf8c1993034b93ef58d 08-Aug-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> 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
/external/skia/src/pipe/SkGPipeRead.cpp
c73dd5c6880739f26216f198c757028fd28df1a4 07-Aug-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> 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
/external/skia/src/pipe/SkGPipeRead.cpp
0c3e5fe728ce4b8606819ee919a4b82f4d9efc85 01-Aug-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> 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
/external/skia/src/pipe/SkGPipeRead.cpp
58be682c77c76d9a0caf23337f9b357798179b6c 30-Jul-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> 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
/external/skia/src/pipe/SkGPipeRead.cpp
3cb969f27de56df0d9116c13f18bd31ee0715f1a 27-Jul-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> 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
/external/skia/src/pipe/SkGPipeRead.cpp
4dffc596aa9fabd3104e66bc1f9957e8de4cb65d 17-Jul-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use SkFlatDictionary in SkGPipe to take advantage of its new features.

Add a controller class to perform the allocation/unallocation for the dictionary and to provide an entry to be replaced, if replacements are allowed.

TODO:
Use LRU caching in my custom controller so replacements will be done less often.
More refactoring on SkFlatDictionary so picture recording's use of the dictionary does not require going through the path to replace.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4639 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
284bf502c086d8fd4285f475a02e69d500c40219 17-Jul-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Purge bitmaps from SkGPipe's shared heap.

BitmapInfo:
Now in SkGPipePriv so it can be accessed by SkGPipeRead.

Add the ability to essentially ref count BitmapInfos so that they can
be purged to make room in the shared heap for a new one.

SkGPipeWrite:
Purge the least recently used bitmap if it has already been drawn by
all readers.

SkGPipeRead:
Read the BitmapInfo (instead of the SkBitmap) and decrement its count
after drawing.

SkGPipeController:
Added a method to tell how many readers will be used, so that when
purging bitmaps each reader can be accounted for.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4638 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
d3ba5cc85e24896f980ed1ba6e3f4495973baeb3 09-Jul-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> In SkGPipe, set a limit on the amount of flattenables cached.

Also fix a type in gmmain.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4473 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
565254bc9343d0befdfbbb97a3dc6d44c6e18658 28-Jun-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix SkGPipe drawing, and turn it on by default.

A recent change broke SkGPipe. Fix it, and turn on pipe drawing
in GM by default so we will catch these in the future.

We already had a bug where SkGPipeWriter had to use its Cross Process
flag to work, so for a quick fix, force the reader to use the Cross
Process flag as well. The bug to allow both cross and non cross process
is http://code.google.com/p/skia/issues/detail?id=663

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

git-svn-id: http://skia.googlecode.com/svn/trunk@4384 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
8ae3c7f67eb3721bb656cffeadc1442332f10159 13-Jun-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> For SkGPipe, store bitmaps in a common location.

Also make a change to SkBitmap::copyTo() so that we do not
crash.
Review URL: https://codereview.appspot.com/6296066

git-svn-id: http://skia.googlecode.com/svn/trunk@4249 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
94e75ee46a569cbcdf61fb7f04ee3a69d3ca0896 08-Jun-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Rename the existing flatten(void*) methods.

This change avoids naminc confusion with the SkFlattenable flatten methods and
also changes SkPath to use the void* model instead of taking a SkReader32.
Review URL: https://codereview.appspot.com/6299062

git-svn-id: http://skia.googlecode.com/svn/trunk@4215 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
72c9672ce274a3b6cb40800d66374edf25b157a3 06-Jun-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add tiled rendering as an option to GM.

Use an SkGPipe to play back drawing into tiles.
This will help us to debug differences in drawing
while tiled.

Pass --tiledPipe to gm to use the tiled pipe.
Review URL: https://codereview.appspot.com/6295050

git-svn-id: http://skia.googlecode.com/svn/trunk@4199 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
920901da539ed8fca76d372abbef872d2cb31be5 06-Jun-2012 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix warnings on Mac in src/pipe

Fix these class of warnings:
- unused functions
- unused locals
- sign mismatch
- missing function prototypes
- missing newline at end of file
- 64 to 32 bit truncation

The changes prefer to link in dead code in the debug build
with 'if (false)' than to comment it out, but trivial cases
are commented out or sometimes deleted if it appears to be
a copy/paste error.
Review URL: https://codereview.appspot.com/6302045

git-svn-id: http://skia.googlecode.com/svn/trunk@4177 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
691703cdd4ab51b23c59798e7018dd7920a34be3 05-Jun-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix an issue where Pipe did not draw correctly
on all platforms.

Since parameters can be evaluated in any order,
we can't call buffer.read() inline for multiple
parameters. The fix is to read the stream (in
the correct order) before we call the function.
Review URL: https://codereview.appspot.com/6277046

git-svn-id: http://skia.googlecode.com/svn/trunk@4160 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
16d1d0b39a78fa4ab4fbd6ed3296cf010ea9a61c 02-May-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Updates for SkGPipe.

Keep track of SkBitmaps which have been flattened by
the PipeWriter so we can reuse them.

Implement other flavors of drawBitmap (except
drawBitmapMatrix).

Flatten SkImageFilters in SkPaints.

Do not notify if no new data has been written.
Review URL: https://codereview.appspot.com/6128062

git-svn-id: http://skia.googlecode.com/svn/trunk@3826 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
5a2e879ef8a3720ac3f06fbc13dcdaeb179f30c3 20-Apr-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixes for drawing through an SkGPipe.

Implement SkGPipeCanvas::drawBitmap.

Fix a bug where needOpBytes did not necessarily provide as
many bytes as requested.

Fix a bug where needOpBytes would wipe old data without
calling notify.

Register SkEmbossMaskFilter so it can be flattened.

Override drawBitmapNine (currently unimplemented) so an
SkGPipeCanvas does not call its base class' method (which
would fail).
Review URL: https://codereview.appspot.com/6071045

git-svn-id: http://skia.googlecode.com/svn/trunk@3741 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
3b45cd53f0c4c9b810b6383f529a72ecfa4e6e7f 18-Apr-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix bug where SkGPipe'ed clips do not happen.

Modify SkGPipeCanvas::clipRect and ::clipPath so they correctly
override the SkCanvas versions, and therefore get called. Also use
SK_OVERRIDE for its virtual functions to help catch this in the
future.

BUG=572
Review URL: https://codereview.appspot.com/6055050

git-svn-id: http://skia.googlecode.com/svn/trunk@3718 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
2b2ede3e713065e1bac461787b0aafb03eaf871f 12-Apr-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Decouple the SkFlattenable from SkReader32/SkWriter32.

The current impl for SkFlattenable read/write buffers is
that they extend from SkReader32 and SkWriter32, but that
dependency must be abstract if we are to add any other
serialization format.
Review URL: https://codereview.appspot.com/5999045

git-svn-id: http://skia.googlecode.com/svn/trunk@3654 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
0c00f21fee3f5cfa3aa7e5d46ff94cb8cf340451 28-Dec-2011 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkDEBUGFAIL to clean up use of SkASSERT(!"text");
catch a couple of latent SkASSERT("text") bugs.

http://codereview.appspot.com/5504090/



git-svn-id: http://skia.googlecode.com/svn/trunk@2926 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976e 28-Jul-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Automatic update of all copyright notices to reflect new license terms.

I have manually examined all of these diffs and restored a few files that
seem to require manual adjustment.

The following files still need to be modified manually, in a separate CL:

android_sample/SampleApp/AndroidManifest.xml
android_sample/SampleApp/res/layout/layout.xml
android_sample/SampleApp/res/menu/sample.xml
android_sample/SampleApp/res/values/strings.xml
android_sample/SampleApp/src/com/skia/sampleapp/SampleApp.java
android_sample/SampleApp/src/com/skia/sampleapp/SampleView.java
experimental/CiCarbonSampleMain.c
experimental/CocoaDebugger/main.m
experimental/FileReaderApp/main.m
experimental/SimpleCocoaApp/main.m
experimental/iOSSampleApp/Shared/SkAlertPrompt.h
experimental/iOSSampleApp/Shared/SkAlertPrompt.m
experimental/iOSSampleApp/SkiOSSampleApp-Base.xcconfig
experimental/iOSSampleApp/SkiOSSampleApp-Debug.xcconfig
experimental/iOSSampleApp/SkiOSSampleApp-Release.xcconfig
gpu/src/android/GrGLDefaultInterface_android.cpp
gyp/common.gypi
gyp_skia
include/ports/SkHarfBuzzFont.h
include/views/SkOSWindow_wxwidgets.h
make.bat
make.py
src/opts/memset.arm.S
src/opts/memset16_neon.S
src/opts/memset32_neon.S
src/opts/opts_check_arm.cpp
src/ports/SkDebug_brew.cpp
src/ports/SkMemory_brew.cpp
src/ports/SkOSFile_brew.cpp
src/ports/SkXMLParser_empty.cpp
src/utils/ios/SkImageDecoder_iOS.mm
src/utils/ios/SkOSFile_iOS.mm
src/utils/ios/SkStream_NSData.mm
tests/FillPathTest.cpp
Review URL: http://codereview.appspot.com/4816058

git-svn-id: http://skia.googlecode.com/svn/trunk@1982 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
67908f2faee17a8bce4d074980617cc0d15fabf1 27-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix warnings (signed/unsigned, initialization order, parens)



git-svn-id: http://skia.googlecode.com/svn/trunk@1724 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
5667afc5cb4a8cd15a27667f222b6d9c94d61c38 27-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove drawShape from canvas api



git-svn-id: http://skia.googlecode.com/svn/trunk@1723 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
6bac947cd5bc460dd9166ada6310d678fd2e39f8 21-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add option in flattening to write factory names inline, as we are recording.
SkGPipe needs this, since it cannot (unlike SkPicture) see all of the factories
before it hands its data to the reader.

In this mode, the writer embedds the factory name the first time it sees it,
and then after that writes an index (referencing the fFactorySet). The reader
installs an empty array, and as it encounters names, appends them to that array
so that subsequent indices can be used to retrieve the previously named factory.

Some of the existing patheffects did not register their factory names, so those
changes are also part of this CL. Annoyingly, to register your factory using the
current scheme, it has to be in the public section of the class definition.




git-svn-id: http://skia.googlecode.com/svn/trunk@1663 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
1bce0a585733a3e4e5cc1b79eae12b15deee122d 16-Jun-2011 yangsu@google.com <yangsu@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Modified Pipe Reader to read an atom at a time
http://codereview.appspot.com/4636043/


git-svn-id: http://skia.googlecode.com/svn/trunk@1623 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
ac45f00d5a2d2bbb065efbe67a786efc5ddb60c5 24-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> return the bytes read, not the total provided



git-svn-id: http://skia.googlecode.com/svn/trunk@1404 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
80b09de87fadfa1fe45860124b157a01e03f760b 23-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add optoinal bytesRead argument (output) to playback()



git-svn-id: http://skia.googlecode.com/svn/trunk@1400 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
dde0956375e87027df2fdd80d430dd819c217aac 23-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add cross-process option to gpipe
add unittests for reader32 and writer32



git-svn-id: http://skia.googlecode.com/svn/trunk@1397 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
31891584fef10c88b39f6bf19ac5cde0a862b8c4 12-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> cleanup previous array of paints



git-svn-id: http://skia.googlecode.com/svn/trunk@1310 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
0faac1e8579088a39f38d02ff675f14d7deb608d 11-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove some dead code in pipes
inherit from SampleView for more samples
add L key to toggle using SkGPipe



git-svn-id: http://skia.googlecode.com/svn/trunk@1296 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
b55d118e32062b1ddd88e7fcf8fa86303f887d8f 11-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check-point for pipe: flatten/unflatten objects for single paint
still need replacement policy



git-svn-id: http://skia.googlecode.com/svn/trunk@1294 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
bb6793bd7751f7a4e48c942567cd6c5270661a2f 05-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update



git-svn-id: http://skia.googlecode.com/svn/trunk@1257 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
f5842f773b7e8612a52784b3c35c7455e67cb90a 04-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add typeface flattening



git-svn-id: http://skia.googlecode.com/svn/trunk@1245 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
acd471f47ccfb97cf2f2f00dc01cd1fd45bc1ef2 03-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> updated pipe



git-svn-id: http://skia.googlecode.com/svn/trunk@1231 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp
bb6992a9d6e21b3f28068765de0a41c6f2508dfd 26-Apr-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add experimental canvas pipe



git-svn-id: http://skia.googlecode.com/svn/trunk@1187 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/pipe/SkGPipeRead.cpp