SkRect sourceBounds() const
const gpu::SubRunContainerOwner & subRuns() const
void doFlatten(SkWriteBuffer &buffer) const override
SlugImpl(SubRunAllocator &&alloc, gpu::SubRunContainerOwner subRuns, SkRect sourceBounds, SkPoint origin)
SkRect sourceBounds() const override
static sk_sp< SlugImpl > Make(const SkMatrix &viewMatrix, const sktext::GlyphRunList &glyphRunList, const SkPaint &paint, SkStrikeDeviceInfo strikeDeviceInfo, sktext::StrikeForGPUCacheInterface *strikeCache)
static sk_sp< Slug > MakeFromBuffer(SkReadBuffer &buffer, const SkStrikeClient *client)
static void AddDeserialProcs(SkDeserialProcs *procs, const SkStrikeClient *client=nullptr)
static SubRunContainerOwner MakeInAlloc(const GlyphRunList &glyphRunList, const SkMatrix &positionMatrix, const SkPaint &runPaint, SkStrikeDeviceInfo strikeDeviceInfo, StrikeForGPUCacheInterface *strikeCache, sktext::gpu::SubRunAllocator *alloc, SubRunCreationBehavior creationBehavior, const char *tag)
static size_t EstimateAllocSize(const GlyphRunList &glyphRunList)
static SubRunContainerOwner MakeFromBufferInAlloc(SkReadBuffer &buffer, const SkStrikeClient *client, SubRunAllocator *alloc)
static int AllocSizeHintFromBuffer(SkReadBuffer &buffer)
static const uint8_t buffer[]
std::unique_ptr< SubRunContainer, SubRunAllocator::Destroyer > SubRunContainerOwner
SkMatrix position_matrix(const SkMatrix &drawMatrix, SkPoint drawOrigin)