| Index: src/core/SkPicturePlayback.h
|
| ===================================================================
|
| --- src/core/SkPicturePlayback.h (revision 13850)
|
| +++ src/core/SkPicturePlayback.h (working copy)
|
| @@ -85,6 +85,8 @@
|
|
|
| virtual ~SkPicturePlayback();
|
|
|
| + const SkPicture::OperationList& getActiveOps(const SkIRect& queryRect);
|
| +
|
| void draw(SkCanvas& canvas, SkDrawPictureCallback*);
|
|
|
| void serialize(SkWStream*, SkPicture::EncodeBitmap) const;
|
| @@ -109,7 +111,7 @@
|
| virtual void postDraw(int opIndex);
|
| #endif
|
|
|
| - void preLoadBitmaps(const SkTDArray<void*>& results);
|
| + void preLoadBitmaps(const SkTDArray<void*>* results);
|
|
|
| private:
|
| class TextContainer {
|
| @@ -237,6 +239,29 @@
|
| SkBBoxHierarchy* fBoundingHierarchy;
|
| SkPictureStateTree* fStateTree;
|
|
|
| + class CachedOperationList : public SkPicture::OperationList {
|
| + public:
|
| + CachedOperationList() {
|
| + fCacheQueryRect.setEmpty();
|
| + }
|
| +
|
| + virtual bool valid() const { return true; }
|
| + virtual int numOps() const SK_OVERRIDE { return fOps.count(); }
|
| + virtual uint32_t offset(int index) const SK_OVERRIDE;
|
| + virtual const SkMatrix& matrix(int index) const SK_OVERRIDE;
|
| +
|
| + // The query rect for which the cached active ops are valid
|
| + SkIRect fCacheQueryRect;
|
| +
|
| + // The operations which are active within 'fCachedQueryRect'
|
| + SkTDArray<void*> fOps;
|
| +
|
| + private:
|
| + typedef SkPicture::OperationList INHERITED;
|
| + };
|
| +
|
| + CachedOperationList* fCachedActiveOps;
|
| +
|
| SkTypefacePlayback fTFPlayback;
|
| SkFactoryPlayback* fFactoryPlayback;
|
| #ifdef SK_BUILD_FOR_ANDROID
|
|
|