Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(575)

Issue 6509043: Add helper for maintaining clip/matrix state in non-contiguous picture playback. (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
12 years, 2 months ago by rileya
Modified:
12 years, 2 months ago
CC:
skia-review_googlegroups.com
Base URL:
http://skia.googlecode.com/svn/trunk/
Visibility:
Public.

Description

Add helper for maintaining clip/matrix state in non-contiguous picture playback. Committed: https://code.google.com/p/skia/source/detail?r=5483

Patch Set 1 #

Patch Set 2 : Remove unnecessary parameter. #

Patch Set 3 : Various fixes. #

Patch Set 4 : Some more cleanup/fixes. #

Patch Set 5 : Remove extraneous appendTransform overload. #

Total comments: 13

Patch Set 6 : Make it ref-counted. #

Patch Set 7 : Add instance counting. #

Patch Set 8 : Add missing INHERITED typedef. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+307 lines, -0 lines) Patch
M gyp/core.gypi View 1 2 3 4 5 6 1 chunk +2 lines, -0 lines 0 comments Download
A src/core/SkPictureStateTree.h View 1 2 3 4 5 6 7 1 chunk +129 lines, -0 lines 0 comments Download
A src/core/SkPictureStateTree.cpp View 1 2 3 4 5 6 1 chunk +176 lines, -0 lines 0 comments Download

Messages

Total messages: 6
rileya
This is the logic for keeping the matrix/clip state correct in R-Tree playback. Currently I ...
12 years, 2 months ago (2012-09-07 12:09:55 UTC) #1
rileya
12 years, 2 months ago (2012-09-10 12:08:08 UTC) #2
bsalomon
https://codereview.appspot.com/6509043/diff/6003/src/core/SkPictureStateTree.cpp File src/core/SkPictureStateTree.cpp (right): https://codereview.appspot.com/6509043/diff/6003/src/core/SkPictureStateTree.cpp#newcode98 src/core/SkPictureStateTree.cpp:98: if (fCurrentNode->fFlags & Node::kSave_Flag) { fCanvas.restore(); } Can one ...
12 years, 2 months ago (2012-09-10 17:26:24 UTC) #3
rileya
https://codereview.appspot.com/6509043/diff/6003/src/core/SkPictureStateTree.cpp File src/core/SkPictureStateTree.cpp (right): https://codereview.appspot.com/6509043/diff/6003/src/core/SkPictureStateTree.cpp#newcode98 src/core/SkPictureStateTree.cpp:98: if (fCurrentNode->fFlags & Node::kSave_Flag) { fCanvas.restore(); } On 2012/09/10 ...
12 years, 2 months ago (2012-09-10 18:57:40 UTC) #4
bsalomon
LGTM. Not crazy about the name, couldn't come up with anything better. https://codereview.appspot.com/6509043/diff/6003/src/core/SkPictureStateTree.h File src/core/SkPictureStateTree.h ...
12 years, 2 months ago (2012-09-11 13:43:43 UTC) #5
rileya
12 years, 2 months ago (2012-09-11 14:58:17 UTC) #6
On 2012/09/11 13:43:43, bsalomon wrote:
> LGTM. Not crazy about the name, couldn't come up with anything better.
> 
> https://codereview.appspot.com/6509043/diff/6003/src/core/SkPictureStateTree.h
> File src/core/SkPictureStateTree.h (right):
> 
>
https://codereview.appspot.com/6509043/diff/6003/src/core/SkPictureStateTree....
> src/core/SkPictureStateTree.h:28: struct Draw;
> On 2012/09/10 18:57:40, rileya wrote:
> > On 2012/09/10 17:26:24, bsalomon wrote:
> > > Why not just declare here?
> > 
> > Good call, declared Draw here; Iterator is a big declaration (and I'm
looking
> > into inlining its draw() function, so it may get even larger...) though, so
> does
> > it make sense to define it below so as not to clutter up the beginning of
the
> > file, or does it really matter?
> 
> I think its ok as is. The draw seemed small (and not totally obvious what it
was
> just from just the name in the forward decl).
> 
> Also, if you're going to inline a large function you can still declare it with
> "inline" and then put it at the bottom of the .h file.

Landed as r5483.

After talking with Mike, I think it makes sense to just make the transforms into
nodes as well, rather than storing matrices explicitly (since we have to set the
matrices for each clip anyways, I don't think it really gains us much, and it
would also allow this class to be simplified *a lot*). It's functional as-is,
and I want to get the more pressing stuff in first, but I'll clean this up
afterwards.
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b