void SkGradientShaderBase::Descriptor::flatten(SkWriteBuffer& buffer) const { buffer.writeColorArray(fColors, fCount); if (fPos) { buffer.writeBool(true); buffer.writeScalarArray(fPos, fCount); } else { buffer.writeBool(false); } buffer.write32(fTileMode); buffer.write32(fGradFlags); if (fLocalMatrix) { buffer.writeBool(true); buffer.writeMatrix(*fLocalMatrix); } else { buffer.writeBool(false); } }
static void Write(SkWriteBuffer& writer, SkColor* data, uint32_t arraySize) { writer.writeColorArray(data, arraySize); }