5#ifndef FLUTTER_SHELL_PLATFORM_EMBEDDER_EMBEDDER_EXTERNAL_VIEW_H_
6#define FLUTTER_SHELL_PLATFORM_EMBEDDER_EMBEDDER_EXTERNAL_VIEW_H_
9#include <unordered_map>
10#include <unordered_set>
75 std::unique_ptr<EmbedderExternalView>,
80 const DlMatrix& surface_transformation);
83 const DlMatrix& surface_transformation,
85 std::unique_ptr<EmbeddedViewParams>
params);
106 bool clear_surface =
true);
113 void TryEndRecording()
const;
115 const DlISize render_surface_size_;
116 const DlMatrix surface_transformation_;
118 std::unique_ptr<EmbeddedViewParams> embedded_view_params_;
119 std::unique_ptr<DisplayListEmbedderViewSlice> slice_;
120 std::optional<bool> has_engine_rendered_contents_;
Developer-facing API for rendering anything within the engine.
const EmbeddedViewParams * GetEmbeddedViewParams() const
RenderTargetDescriptor CreateRenderTargetDescriptor() const
bool Render(const EmbedderRenderTarget &render_target, bool clear_surface=true)
std::unordered_set< ViewIdentifier, ViewIdentifier::Hash, ViewIdentifier::Equal > ViewIdentifierSet
const DlRegion & GetDlRegion() const
bool HasPlatformView() const
ViewIdentifier GetViewIdentifier() const
DlISize GetRenderSurfaceSize() const
bool HasEngineRenderedContents()
std::unordered_map< ViewIdentifier, std::unique_ptr< EmbedderExternalView >, ViewIdentifier::Hash, ViewIdentifier::Equal > PendingViews
Describes a surface whose backing store is managed by the embedder. The type of surface depends on th...
EmbedderExternalView::ViewIdentifier view_identifier
const EmbeddedViewParams * params
G_BEGIN_DECLS FlutterViewId view_id
#define FML_DISALLOW_COPY_AND_ASSIGN(TypeName)
constexpr std::size_t HashCombine()
bool operator()(const RenderTargetDescriptor &lhs, const RenderTargetDescriptor &rhs) const
constexpr std::size_t operator()(const RenderTargetDescriptor &desc) const
RenderTargetDescriptor(const DlISize &p_surface_size)
constexpr bool operator()(const ViewIdentifier &lhs, const ViewIdentifier &rhs) const
constexpr std::size_t operator()(const ViewIdentifier &desc) const
ViewIdentifier(PlatformViewID view_id)
std::optional< PlatformViewID > platform_view_id
A 4x4 matrix using column-major storage.