5#ifndef FLUTTER_FLOW_LAYERS_DISPLAY_LIST_RASTER_CACHE_ITEM_H_
6#define FLUTTER_FLOW_LAYERS_DISPLAY_LIST_RASTER_CACHE_ITEM_H_
16#include "third_party/skia/include/core/SkMatrix.h"
17#include "third_party/skia/include/core/SkPoint.h"
24 const SkPoint& offset,
25 bool is_complex =
true,
26 bool will_change =
false);
28 static std::unique_ptr<DisplayListRasterCacheItem>
Make(
29 const sk_sp<DisplayList>&,
30 const SkPoint& offset,
43 const DlPaint* paint)
const override;
46 bool parent_cached =
false)
const override;
55 SkMatrix transformation_matrix_;
56 sk_sp<DisplayList> display_list_;
66class DisplayListRasterCacheItem;
void PrerollSetup(PrerollContext *context, const DlMatrix &matrix) override
void PrerollFinalize(PrerollContext *context, const DlMatrix &matrix) override
bool TryToPrepareRasterCache(const PaintContext &context, bool parent_cached=false) const override
static std::unique_ptr< DisplayListRasterCacheItem > Make(const sk_sp< DisplayList > &, const SkPoint &offset, bool is_complex, bool will_change)
const DisplayList * display_list() const
void ModifyMatrix(SkPoint offset) const
bool Draw(const PaintContext &context, const DlPaint *paint) const override
Developer-facing API for rendering anything within the engine.
A 4x4 matrix using column-major storage.