| Index: src/core/SkRecordDraw.h
|
| diff --git a/src/core/SkRecordDraw.h b/src/core/SkRecordDraw.h
|
| index fdf98824acf867f42836779dd6ceb3ab8abf7e50..e45f3e405ae3eb3251c213dea523516983df63b0 100644
|
| --- a/src/core/SkRecordDraw.h
|
| +++ b/src/core/SkRecordDraw.h
|
| @@ -13,9 +13,11 @@
|
| #include "SkCanvas.h"
|
| #include "SkMatrix.h"
|
| #include "SkRecord.h"
|
| +#include "SkDrawable.h"
|
|
|
| class SkDrawable;
|
| class SkLayerInfo;
|
| +struct DrawData;
|
|
|
| // Calculate conservative identity space bounds for each op in the record.
|
| void SkRecordFillBounds(const SkRect& cullRect, const SkRecord&, SkRect bounds[]);
|
| @@ -27,6 +29,11 @@ void SkRecordComputeLayers(const SkRect& cullRect, const SkRecord&, SkRect bound
|
| const SkBigPicture::SnapshotArray*, SkLayerInfo* data);
|
|
|
| // Draw an SkRecord into an SkCanvas. A convenience wrapper around SkRecords::Draw.
|
| +void SkRecordDrawPras(DrawData& data);
|
| +void SkRecordDrawPrasInit(DrawData& data);
|
| +bool SkRecordDrawPrasDo(DrawData& data);
|
| +void SkRecordDrawPrasDeInit(DrawData& data);
|
| +
|
| void SkRecordDraw(const SkRecord&, SkCanvas*, SkPicture const* const drawablePicts[],
|
| SkDrawable* const drawables[], int drawableCount,
|
| const SkBBoxHierarchy*, SkPicture::AbortCallback*);
|
| @@ -79,4 +86,30 @@ private:
|
|
|
| } // namespace SkRecords
|
|
|
| +struct DrawData {
|
| + DrawData(const SkRecord& r,
|
| + SkCanvas* c,
|
| + SkPicture const* const dp[],
|
| + SkDrawable* const dw[],
|
| + int dc,
|
| + const SkBBoxHierarchy* b,
|
| + SkPicture::AbortCallback* cb);
|
| +
|
| + // input
|
| + const SkRecord& record;
|
| + SkCanvas* canvas;
|
| + SkPicture const* const* drawablePicts;
|
| + SkDrawable* const* drawables;
|
| + int drawableCount;
|
| + const SkBBoxHierarchy* bbh;
|
| + SkPicture::AbortCallback* callback;
|
| +
|
| + // stack
|
| + SkTDArray<int> ops;
|
| + SkRecords::Draw draw;
|
| +
|
| + int ops_count;
|
| + int record_count;
|
| +};
|
| +
|
| #endif//SkRecordDraw_DEFINED
|
|
|