| OLD | NEW |
| 1 | 1 |
| 2 /* | 2 /* |
| 3 * Copyright 2007 The Android Open Source Project | 3 * Copyright 2007 The Android Open Source Project |
| 4 * | 4 * |
| 5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
| 6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
| 7 */ | 7 */ |
| 8 | 8 |
| 9 | 9 |
| 10 #ifndef SkPicture_DEFINED | 10 #ifndef SkPicture_DEFINED |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 57 // This entry point allows user's to get a unique domain prefix | 57 // This entry point allows user's to get a unique domain prefix |
| 58 // for their keys | 58 // for their keys |
| 59 static Domain GenerateDomain(); | 59 static Domain GenerateDomain(); |
| 60 private: | 60 private: |
| 61 Key fKey; | 61 Key fKey; |
| 62 | 62 |
| 63 typedef SkRefCnt INHERITED; | 63 typedef SkRefCnt INHERITED; |
| 64 }; | 64 }; |
| 65 | 65 |
| 66 SkPicture(); | 66 SkPicture(); |
| 67 /** Make a copy of the contents of src. If src records more drawing after | |
| 68 this call, those elements will not appear in this picture. | |
| 69 */ | |
| 70 SkPicture(const SkPicture& src); | |
| 71 | 67 |
| 72 /** PRIVATE / EXPERIMENTAL -- do not call */ | 68 /** PRIVATE / EXPERIMENTAL -- do not call */ |
| 73 void EXPERIMENTAL_addAccelData(const AccelData*) const; | 69 void EXPERIMENTAL_addAccelData(const AccelData*) const; |
| 74 | 70 |
| 75 /** PRIVATE / EXPERIMENTAL -- do not call */ | 71 /** PRIVATE / EXPERIMENTAL -- do not call */ |
| 76 const AccelData* EXPERIMENTAL_getAccelData(AccelData::Key) const; | 72 const AccelData* EXPERIMENTAL_getAccelData(AccelData::Key) const; |
| 77 | 73 |
| 78 /** | 74 /** |
| 79 * Function signature defining a function that sets up an SkBitmap from enc
oded data. On | 75 * Function signature defining a function that sets up an SkBitmap from enc
oded data. On |
| 80 * success, the SkBitmap should have its Config, width, height, rowBytes an
d pixelref set. | 76 * success, the SkBitmap should have its Config, width, height, rowBytes an
d pixelref set. |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 171 void serialize(SkWStream*, EncodeBitmap encoder = NULL) const; | 167 void serialize(SkWStream*, EncodeBitmap encoder = NULL) const; |
| 172 | 168 |
| 173 /** | 169 /** |
| 174 * Serialize to a buffer. | 170 * Serialize to a buffer. |
| 175 */ | 171 */ |
| 176 void flatten(SkWriteBuffer&) const; | 172 void flatten(SkWriteBuffer&) const; |
| 177 | 173 |
| 178 /** | 174 /** |
| 179 * Returns true if any bitmaps may be produced when this SkPicture | 175 * Returns true if any bitmaps may be produced when this SkPicture |
| 180 * is replayed. | 176 * is replayed. |
| 181 * Returns false if called while still recording. | |
| 182 */ | 177 */ |
| 183 bool willPlayBackBitmaps() const; | 178 bool willPlayBackBitmaps() const; |
| 184 | 179 |
| 185 /** Return true if the SkStream/Buffer represents a serialized picture, and | 180 /** Return true if the SkStream/Buffer represents a serialized picture, and |
| 186 fills out SkPictInfo. After this function returns, the data source is no
t | 181 fills out SkPictInfo. After this function returns, the data source is no
t |
| 187 rewound so it will have to be manually reset before passing to | 182 rewound so it will have to be manually reset before passing to |
| 188 CreateFromStream or CreateFromBuffer. Note, CreateFromStream and | 183 CreateFromStream or CreateFromBuffer. Note, CreateFromStream and |
| 189 CreateFromBuffer perform this check internally so these entry points are | 184 CreateFromBuffer perform this check internally so these entry points are |
| 190 intended for stand alone tools. | 185 intended for stand alone tools. |
| 191 If false is returned, SkPictInfo is unmodified. | 186 If false is returned, SkPictInfo is unmodified. |
| (...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 248 mutable SkAutoTUnref<const AccelData> fAccelData; | 243 mutable SkAutoTUnref<const AccelData> fAccelData; |
| 249 | 244 |
| 250 void needsNewGenID() { fUniqueID = SK_InvalidGenID; } | 245 void needsNewGenID() { fUniqueID = SK_InvalidGenID; } |
| 251 | 246 |
| 252 // Create a new SkPicture from an existing SkPictureData. Ref count of | 247 // Create a new SkPicture from an existing SkPictureData. Ref count of |
| 253 // data is unchanged. | 248 // data is unchanged. |
| 254 SkPicture(SkPictureData* data, int width, int height); | 249 SkPicture(SkPictureData* data, int width, int height); |
| 255 | 250 |
| 256 SkPicture(int width, int height, const SkPictureRecord& record, bool deepCop
yOps); | 251 SkPicture(int width, int height, const SkPictureRecord& record, bool deepCop
yOps); |
| 257 | 252 |
| 258 static void WriteTagSize(SkWriteBuffer& buffer, uint32_t tag, size_t size); | |
| 259 static void WriteTagSize(SkWStream* stream, uint32_t tag, size_t size); | |
| 260 | |
| 261 // An OperationList encapsulates a set of operation offsets into the picture
byte | 253 // An OperationList encapsulates a set of operation offsets into the picture
byte |
| 262 // stream along with the CTMs needed for those operation. | 254 // stream along with the CTMs needed for those operation. |
| 263 class OperationList : ::SkNoncopyable { | 255 class OperationList : ::SkNoncopyable { |
| 264 public: | 256 public: |
| 265 // The following three entry points should only be accessed if | 257 // The following three entry points should only be accessed if |
| 266 // 'valid' returns true. | 258 // 'valid' returns true. |
| 267 int numOps() const { return fOps.count(); } | 259 int numOps() const { return fOps.count(); } |
| 268 // The offset in the picture of the operation to execute. | 260 // The offset in the picture of the operation to execute. |
| 269 uint32_t offset(int index) const; | 261 uint32_t offset(int index) const; |
| 270 // The CTM that must be installed for the operation to behave correctly | 262 // The CTM that must be installed for the operation to behave correctly |
| (...skipping 18 matching lines...) Expand all Loading... |
| 289 friend class SkPictureReplacementPlayback; // to access OperationList | 281 friend class SkPictureReplacementPlayback; // to access OperationList |
| 290 | 282 |
| 291 typedef SkRefCnt INHERITED; | 283 typedef SkRefCnt INHERITED; |
| 292 | 284 |
| 293 SkPicture(int width, int height, SkRecord*); // Takes ownership. | 285 SkPicture(int width, int height, SkRecord*); // Takes ownership. |
| 294 SkAutoTDelete<SkRecord> fRecord; | 286 SkAutoTDelete<SkRecord> fRecord; |
| 295 bool fRecordWillPlayBackBitmaps; // TODO: const | 287 bool fRecordWillPlayBackBitmaps; // TODO: const |
| 296 }; | 288 }; |
| 297 | 289 |
| 298 #endif | 290 #endif |
| OLD | NEW |