Lines Matching refs:reader
45 DrawType SkPicturePlayback::ReadOpAndSize(SkReadBuffer* reader, uint32_t* size) { in ReadOpAndSize() argument
46 uint32_t temp = reader->readInt(); in ReadOpAndSize()
55 *size = reader->readInt(); in ReadOpAndSize()
62 static const SkRect* get_rect_ptr(SkReadBuffer* reader, SkRect* storage) { in get_rect_ptr() argument
63 if (reader->readBool()) { in get_rect_ptr()
64 reader->readRect(storage); in get_rect_ptr()
77 SkReadBuffer reader(fPictureData->opData()->bytes(), in draw() local
85 while (!reader.eof()) { in draw()
90 fCurOffset = reader.offset(); in draw()
92 DrawType op = ReadOpAndSize(&reader, &size); in draw()
93 if (!reader.validate(op > UNUSED && op <= LAST_DRAWTYPE_ENUM)) { in draw()
97 this->handleOp(&reader, op, size, canvas, initialMatrix); in draw()
102 buffer->validate(reader.isValid()); in draw()
106 static void validate_offsetToRestore(SkReadBuffer* reader, size_t offsetToRestore) { in validate_offsetToRestore() argument
108 reader->validate(SkIsAlign4(offsetToRestore) && offsetToRestore >= reader->offset()); in validate_offsetToRestore()
112 void SkPicturePlayback::handleOp(SkReadBuffer* reader, in handleOp() argument
122 reader->skip(size - 4); in handleOp()
128 const SkPath& path = fPictureData->getPath(reader); in handleOp()
129 uint32_t packed = reader->readInt(); in handleOp()
130 SkClipOp clipOp = ClipParams_unpackRegionOp(reader, packed); in handleOp()
132 size_t offsetToRestore = reader->readInt(); in handleOp()
133 validate_offsetToRestore(reader, offsetToRestore); in handleOp()
134 BREAK_ON_READ_ERROR(reader); in handleOp()
138 reader->skip(offsetToRestore - reader->offset()); in handleOp()
143 reader->readRegion(®ion); in handleOp()
144 uint32_t packed = reader->readInt(); in handleOp()
145 SkClipOp clipOp = ClipParams_unpackRegionOp(reader, packed); in handleOp()
146 size_t offsetToRestore = reader->readInt(); in handleOp()
147 validate_offsetToRestore(reader, offsetToRestore); in handleOp()
148 BREAK_ON_READ_ERROR(reader); in handleOp()
152 reader->skip(offsetToRestore - reader->offset()); in handleOp()
157 reader->readRect(&rect); in handleOp()
158 uint32_t packed = reader->readInt(); in handleOp()
159 SkClipOp clipOp = ClipParams_unpackRegionOp(reader, packed); in handleOp()
161 size_t offsetToRestore = reader->readInt(); in handleOp()
162 validate_offsetToRestore(reader, offsetToRestore); in handleOp()
163 BREAK_ON_READ_ERROR(reader); in handleOp()
167 reader->skip(offsetToRestore - reader->offset()); in handleOp()
172 reader->readRRect(&rrect); in handleOp()
173 uint32_t packed = reader->readInt(); in handleOp()
174 SkClipOp clipOp = ClipParams_unpackRegionOp(reader, packed); in handleOp()
176 size_t offsetToRestore = reader->readInt(); in handleOp()
177 validate_offsetToRestore(reader, offsetToRestore); in handleOp()
178 BREAK_ON_READ_ERROR(reader); in handleOp()
182 reader->skip(offsetToRestore - reader->offset()); in handleOp()
189 reader->readMatrix(&matrix); in handleOp()
190 BREAK_ON_READ_ERROR(reader); in handleOp()
197 reader->readRect(&rect); in handleOp()
199 reader->readString(&key); in handleOp()
200 sk_sp<SkData> data = reader->readByteArrayAsData(); in handleOp()
201 BREAK_ON_READ_ERROR(reader); in handleOp()
207 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
209 reader->readRect(&rect); in handleOp()
210 SkScalar startAngle = reader->readScalar(); in handleOp()
211 SkScalar sweepAngle = reader->readScalar(); in handleOp()
212 int useCenter = reader->readInt(); in handleOp()
213 BREAK_ON_READ_ERROR(reader); in handleOp()
220 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
221 const SkImage* atlas = fPictureData->getImage(reader); in handleOp()
222 const uint32_t flags = reader->readUInt(); in handleOp()
223 const int count = reader->readUInt(); in handleOp()
224 const SkRSXform* xform = (const SkRSXform*)reader->skip(count, sizeof(SkRSXform)); in handleOp()
225 const SkRect* tex = (const SkRect*)reader->skip(count, sizeof(SkRect)); in handleOp()
229 colors = (const SkColor*)reader->skip(count, sizeof(SkColor)); in handleOp()
230 mode = (SkBlendMode)reader->readUInt(); in handleOp()
234 cull = (const SkRect*)reader->skip(sizeof(SkRect)); in handleOp()
236 BREAK_ON_READ_ERROR(reader); in handleOp()
241 auto c = reader->readInt(); in handleOp()
242 BREAK_ON_READ_ERROR(reader); in handleOp()
248 size_t length = reader->readInt(); in handleOp()
249 (void)reader->skip(length); in handleOp()
253 auto* d = fPictureData->getDrawable(reader); in handleOp()
254 BREAK_ON_READ_ERROR(reader); in handleOp()
260 reader->readMatrix(&matrix); in handleOp()
261 SkDrawable* drawable = fPictureData->getDrawable(reader); in handleOp()
262 BREAK_ON_READ_ERROR(reader); in handleOp()
267 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
269 reader->readRRect(&outer); in handleOp()
270 reader->readRRect(&inner); in handleOp()
271 BREAK_ON_READ_ERROR(reader); in handleOp()
279 reader->readRect(&rect); in handleOp()
280 SkCanvas::QuadAAFlags aaFlags = static_cast<SkCanvas::QuadAAFlags>(reader->read32()); in handleOp()
281 SkColor color = reader->read32(); in handleOp()
282 SkBlendMode blend = static_cast<SkBlendMode>(reader->read32()); in handleOp()
283 BREAK_ON_READ_ERROR(reader); in handleOp()
288 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
289 const SkImage* image = fPictureData->getImage(reader); in handleOp()
291 reader->readPoint(&loc); in handleOp()
292 BREAK_ON_READ_ERROR(reader); in handleOp()
297 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
298 const SkImage* image = fPictureData->getImage(reader); in handleOp()
300 (void)SkCanvasPriv::ReadLattice(*reader, &lattice); in handleOp()
301 const SkRect* dst = reader->skipT<SkRect>(); in handleOp()
302 BREAK_ON_READ_ERROR(reader); in handleOp()
307 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
308 const SkImage* image = fPictureData->getImage(reader); in handleOp()
310 reader->readIRect(¢er); in handleOp()
312 reader->readRect(&dst); in handleOp()
313 BREAK_ON_READ_ERROR(reader); in handleOp()
318 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
319 const SkImage* image = fPictureData->getImage(reader); in handleOp()
321 const SkRect* src = get_rect_ptr(reader, &storage); // may be null in handleOp()
323 reader->readRect(&dst); // required in handleOp()
328 constraint = (SkCanvas::SrcRectConstraint)reader->readInt(); in handleOp()
330 BREAK_ON_READ_ERROR(reader); in handleOp()
335 int cnt = reader->readInt(); in handleOp()
336 if (!reader->validate(cnt >= 0)) { in handleOp()
339 SkFilterQuality filterQuality = (SkFilterQuality)reader->readUInt(); in handleOp()
340 SkBlendMode mode = (SkBlendMode)reader->readUInt(); in handleOp()
343 set[i].fImage = sk_ref_sp(fPictureData->getImage(reader)); in handleOp()
344 reader->readRect(&set[i].fSrcRect); in handleOp()
345 reader->readRect(&set[i].fDstRect); in handleOp()
346 set[i].fAlpha = reader->readScalar(); in handleOp()
347 set[i].fAAFlags = reader->readUInt(); in handleOp()
349 BREAK_ON_READ_ERROR(reader); in handleOp()
354 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
356 reader->readRect(&rect); in handleOp()
357 BREAK_ON_READ_ERROR(reader); in handleOp()
364 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
365 BREAK_ON_READ_ERROR(reader); in handleOp()
372 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
374 const SkPoint* cubics = (const SkPoint*)reader->skip(SkPatchUtils::kNumCtrlPts, in handleOp()
376 uint32_t flag = reader->readInt(); in handleOp()
379 colors = (const SkColor*)reader->skip(SkPatchUtils::kNumCorners, sizeof(SkColor)); in handleOp()
383 texCoords = (const SkPoint*)reader->skip(SkPatchUtils::kNumCorners, in handleOp()
388 unsigned mode = reader->readInt(); in handleOp()
393 BREAK_ON_READ_ERROR(reader); in handleOp()
400 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
401 const auto& path = fPictureData->getPath(reader); in handleOp()
402 BREAK_ON_READ_ERROR(reader); in handleOp()
409 const auto* pic = fPictureData->getPicture(reader); in handleOp()
410 BREAK_ON_READ_ERROR(reader); in handleOp()
415 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
417 reader->readMatrix(&matrix); in handleOp()
418 const SkPicture* pic = fPictureData->getPicture(reader); in handleOp()
419 BREAK_ON_READ_ERROR(reader); in handleOp()
424 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
425 SkCanvas::PointMode mode = (SkCanvas::PointMode)reader->readInt(); in handleOp()
426 size_t count = reader->readInt(); in handleOp()
427 const SkPoint* pts = (const SkPoint*)reader->skip(count, sizeof(SkPoint)); in handleOp()
428 BREAK_ON_READ_ERROR(reader); in handleOp()
435 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
437 reader->readRect(&rect); in handleOp()
438 BREAK_ON_READ_ERROR(reader); in handleOp()
445 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
447 reader->readRegion(®ion); in handleOp()
448 BREAK_ON_READ_ERROR(reader); in handleOp()
455 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
457 reader->readRRect(&rrect); in handleOp()
458 BREAK_ON_READ_ERROR(reader); in handleOp()
465 const auto& path = fPictureData->getPath(reader); in handleOp()
467 reader->readPoint3(&rec.fZPlaneParams); in handleOp()
468 reader->readPoint3(&rec.fLightPos); in handleOp()
469 rec.fLightRadius = reader->readScalar(); in handleOp()
470 if (reader->isVersionLT(SkReadBuffer::kTwoColorDrawShadow_Version)) { in handleOp()
471 SkScalar ambientAlpha = reader->readScalar(); in handleOp()
472 SkScalar spotAlpha = reader->readScalar(); in handleOp()
473 SkColor color = reader->read32(); in handleOp()
477 rec.fAmbientColor = reader->read32(); in handleOp()
478 rec.fSpotColor = reader->read32(); in handleOp()
480 rec.fFlags = reader->read32(); in handleOp()
481 BREAK_ON_READ_ERROR(reader); in handleOp()
486 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
487 const SkTextBlob* blob = fPictureData->getTextBlob(reader); in handleOp()
488 SkScalar x = reader->readScalar(); in handleOp()
489 SkScalar y = reader->readScalar(); in handleOp()
490 BREAK_ON_READ_ERROR(reader); in handleOp()
497 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
498 const SkVertices* vertices = fPictureData->getVertices(reader); in handleOp()
499 const int boneCount = reader->readInt(); in handleOp()
501 (const SkVertices::Bone*) reader->skip(boneCount, sizeof(SkVertices::Bone)) : in handleOp()
503 SkBlendMode bmode = reader->read32LE(SkBlendMode::kLastMode); in handleOp()
504 BREAK_ON_READ_ERROR(reader); in handleOp()
514 auto deg = reader->readScalar(); in handleOp()
521 uint32_t flags = reader->readInt(); in handleOp()
525 reader->readRect(&storage); in handleOp()
532 const SkRect* boundsPtr = get_rect_ptr(reader, &storage); in handleOp()
533 const SkPaint* paint = fPictureData->getPaint(reader); in handleOp()
534 auto flags = SkCanvasPriv::LegacySaveFlagsToSaveLayerFlags(reader->readInt()); in handleOp()
535 BREAK_ON_READ_ERROR(reader); in handleOp()
542 const uint32_t flatFlags = reader->readInt(); in handleOp()
545 reader->readRect(&bounds); in handleOp()
549 rec.fPaint = fPictureData->getPaint(reader); in handleOp()
552 if (const auto* paint = fPictureData->getPaint(reader)) { in handleOp()
557 rec.fSaveLayerFlags = reader->readInt(); in handleOp()
560 rec.fClipMask = fPictureData->getImage(reader); in handleOp()
563 reader->readMatrix(&clipMatrix); in handleOp()
566 BREAK_ON_READ_ERROR(reader); in handleOp()
571 SkScalar sx = reader->readScalar(); in handleOp()
572 SkScalar sy = reader->readScalar(); in handleOp()
577 reader->readMatrix(&matrix); in handleOp()
582 SkScalar sx = reader->readScalar(); in handleOp()
583 SkScalar sy = reader->readScalar(); in handleOp()
587 SkScalar dx = reader->readScalar(); in handleOp()
588 SkScalar dy = reader->readScalar(); in handleOp()
592 reader->validate(false); // unknown op in handleOp()