Chromium Code Reviews| Index: include/core/SkPicture.h |
| =================================================================== |
| --- include/core/SkPicture.h (revision 13762) |
| +++ include/core/SkPicture.h (working copy) |
| @@ -34,6 +34,27 @@ |
| public: |
| SK_DECLARE_INST_COUNT(SkPicture) |
| + // SkAccelData provides a base class for device-specific acceleration |
| + // data. It is added to the picture via a call to a device's optimize |
| + // method. |
| + class SkAccelData : public SkRefCnt { |
|
reed1
2014/03/13 16:28:10
nit: inner classes don't need Sk prefix.
robertphillips
2014/03/13 16:55:39
Done.
|
| + public: |
| + typedef uint8_t Domain; |
| + typedef uint32_t Key; |
| + |
| + SkAccelData(Key key) : fKey(key) { } |
| + |
| + const Key& getKey() const { return fKey; } |
| + |
| + // This entry point allows user's to get a unique domain prefix |
| + // for their keys |
| + static Domain GenerateDomain(); |
| + private: |
| + Key fKey; |
| + |
| + typedef SkRefCnt INHERITED; |
| + }; |
| + |
| /** The constructor prepares the picture to record. |
| @param width the width of the virtual device the picture records. |
| @param height the height of the virtual device the picture records. |
| @@ -44,6 +65,18 @@ |
| */ |
| SkPicture(const SkPicture& src); |
| + /** PRIVATE / EXPERIMENTAL -- do not call */ |
| + void EXPERIMENTAL_addAccelData(const SkAccelData* data) { |
| + SkRefCnt_SafeAssign(fAccelData, data); |
| + } |
| + /** PRIVATE / EXPERIMENTAL -- do not call */ |
| + const SkAccelData* EXPERIMENTAL_getAccelData(SkAccelData::Key key) const { |
| + if (NULL != fAccelData && fAccelData->getKey() == key) { |
| + return fAccelData; |
| + } |
| + return NULL; |
| + } |
| + |
| /** |
| * Function signature defining a function that sets up an SkBitmap from encoded data. On |
| * success, the SkBitmap should have its Config, width, height, rowBytes and pixelref set. |
| @@ -262,9 +295,10 @@ |
| // fPlayback, fRecord, fWidth & fHeight are protected to allow derived classes to |
| // install their own SkPicturePlayback-derived players,SkPictureRecord-derived |
| // recorders and set the picture size |
| - SkPicturePlayback* fPlayback; |
| - SkPictureRecord* fRecord; |
| - int fWidth, fHeight; |
| + SkPicturePlayback* fPlayback; |
| + SkPictureRecord* fRecord; |
| + int fWidth, fHeight; |
| + const SkAccelData* fAccelData; |
| // Create a new SkPicture from an existing SkPicturePlayback. Ref count of |
| // playback is unchanged. |