void SkPixelRef::flatten(SkFlattenableWriteBuffer& buffer) const { this->INHERITED::flatten(buffer); buffer.writeBool(fIsImmutable); // We write the gen ID into the picture for within-process recording. This // is safe since the same genID will never refer to two different sets of // pixels (barring overflow). However, each process has its own "namespace" // of genIDs. So for cross-process recording we write a zero which will // trigger assignment of a new genID in playback. if (buffer.isCrossProcess()) { buffer.writeUInt(0); } else { buffer.writeUInt(fGenerationID); } }
void SkGradientShaderBase::flatten(SkFlattenableWriteBuffer& buffer) const { this->INHERITED::flatten(buffer); buffer.writeFlattenable(fMapper); buffer.writeColorArray(fOrigColors, fColorCount); buffer.writeUInt(fTileMode); if (fColorCount > 2) { Rec* recs = fRecs; for (int i = 1; i < fColorCount; i++) { buffer.writeInt(recs[i].fPos); buffer.writeUInt(recs[i].fScale); } } buffer.writeMatrix(fPtsToUnit); }
void SkBitmapProcShader::flatten(SkFlattenableWriteBuffer& buffer) const { this->INHERITED::flatten(buffer); buffer.writeBitmap(fRawBitmap); buffer.writeUInt(fState.fTileModeX); buffer.writeUInt(fState.fTileModeY); }
void SkBlurDrawLooper::flatten(SkFlattenableWriteBuffer& buffer) const { this->INHERITED::flatten(buffer); buffer.writeScalar(fDx); buffer.writeScalar(fDy); buffer.writeColor(fBlurColor); buffer.writeFlattenable(fBlur); buffer.writeFlattenable(fColorFilter); buffer.writeUInt(fBlurFlags); }
void SkImageRef::flatten(SkFlattenableWriteBuffer& buffer) const { this->INHERITED::flatten(buffer); buffer.writeUInt(fConfig); buffer.writeInt(fSampleSize); buffer.writeBool(fDoDither); fStream->rewind(); buffer.writeStream(fStream, fStream->getLength()); }
void SkImageFilter::flatten(SkFlattenableWriteBuffer& buffer) const { buffer.writeInt(fInputCount); for (int i = 0; i < fInputCount; i++) { SkImageFilter* input = getInput(i); buffer.writeBool(input != NULL); if (input != NULL) { buffer.writeFlattenable(input); } } buffer.writeRect(fCropRect.rect()); buffer.writeUInt(fCropRect.flags()); }
void SkAnnotation::flatten(SkFlattenableWriteBuffer& buffer) const { buffer.writeUInt(fFlags); buffer.writeFlattenable(fDataSet); }
void SkLumaMaskXfermode::flatten(SkFlattenableWriteBuffer& buffer) const { INHERITED::flatten(buffer); buffer.writeUInt(fMode); }