5#ifndef FLUTTER_FLOW_LAYERS_LAYER_TREE_H_
6#define FLUTTER_FLOW_LAYERS_LAYER_TREE_H_
11#include "flutter/common/graphics/texture.h"
12#include "flutter/flow/compositor_context.h"
13#include "flutter/flow/layers/layer.h"
14#include "flutter/flow/raster_cache.h"
15#include "flutter/fml/macros.h"
16#include "flutter/fml/time/time_delta.h"
41 bool ignore_raster_cache =
false,
45 const std::vector<RasterCacheItem*>& raster_cached_entries,
47 bool ignore_raster_cache =
false);
50 bool ignore_raster_cache =
false)
const;
54 const std::shared_ptr<TextureRegistry>& texture_registry =
nullptr,
67 return rasterizer_tracing_threshold_;
77 enable_leaf_layer_tracing_ = enable;
81 return enable_leaf_layer_tracing_;
85 std::shared_ptr<Layer> root_layer_;
87 uint32_t rasterizer_tracing_threshold_;
88 bool checkerboard_raster_cache_images_;
89 bool checkerboard_offscreen_layers_;
90 bool enable_leaf_layer_tracing_ =
false;
94 std::vector<RasterCacheItem*> raster_cache_items_;
Layer * root_layer() const
bool Preroll(CompositorContext::ScopedFrame &frame, bool ignore_raster_cache=false, SkRect cull_rect=kGiantRect)
uint32_t rasterizer_tracing_threshold() const
const SkISize & frame_size() const
void enable_leaf_layer_tracing(bool enable)
const PaintRegionMap & paint_region_map() const
bool is_leaf_layer_tracing_enabled() const
sk_sp< DisplayList > Flatten(const SkRect &bounds, const std::shared_ptr< TextureRegistry > &texture_registry=nullptr, GrDirectContext *gr_context=nullptr)
static void TryToRasterCache(const std::vector< RasterCacheItem * > &raster_cached_entries, const PaintContext *paint_context, bool ignore_raster_cache=false)
PaintRegionMap & paint_region_map()
#define FML_DISALLOW_COPY_AND_ASSIGN(TypeName)
std::map< uint64_t, PaintRegion > PaintRegionMap
static constexpr SkRect kGiantRect
static constexpr SkISize MakeEmpty()
std::unique_ptr< LayerTree > layer_tree
The target layer tree to be drawn.
int64_t view_id
The target view to draw to.
float device_pixel_ratio
The pixel ratio of the target view.
LayerTreeTask(int64_t view_id, std::unique_ptr< LayerTree > layer_tree, float device_pixel_ratio)
bool checkerboard_raster_cache_images
bool checkerboard_offscreen_layers
std::shared_ptr< Layer > root_layer
uint32_t rasterizer_tracing_threshold