5#ifndef FLUTTER_SHELL_PLATFORM_EMBEDDER_EMBEDDER_ENGINE_H_
6#define FLUTTER_SHELL_PLATFORM_EMBEDDER_EMBEDDER_ENGINE_H_
9#include <unordered_map>
11#include "flutter/fml/macros.h"
12#include "flutter/shell/common/shell.h"
13#include "flutter/shell/common/thread_host.h"
14#include "flutter/shell/platform/embedder/embedder.h"
15#include "flutter/shell/platform/embedder/embedder_external_texture_resolver.h"
16#include "flutter/shell/platform/embedder/embedder_thread_host.h"
26 std::unique_ptr<EmbedderThreadHost> thread_host,
32 std::unique_ptr<EmbedderExternalTextureResolver>
33 external_texture_resolver);
55 std::unique_ptr<flutter::PointerDataPacket> packet);
91 const std::unique_ptr<EmbedderThreadHost> thread_host_;
94 std::unique_ptr<ShellArgs> shell_args_;
95 std::unique_ptr<Shell> shell_;
96 std::unique_ptr<EmbedderExternalTextureResolver> external_texture_resolver_;
bool MarkTextureFrameAvailable(int64_t texture)
bool PostTaskOnEngineManagedNativeThreads(const std::function< void(FlutterNativeThreadType)> &closure) const
EmbedderEngine(std::unique_ptr< EmbedderThreadHost > thread_host, const TaskRunners &task_runners, const Settings &settings, RunConfiguration run_configuration, const Shell::CreateCallback< PlatformView > &on_create_platform_view, const Shell::CreateCallback< Rasterizer > &on_create_rasterizer, std::unique_ptr< EmbedderExternalTextureResolver > external_texture_resolver)
bool RegisterTexture(int64_t texture)
bool PostRenderThreadTask(const fml::closure &task)
bool SetAccessibilityFeatures(int32_t flags)
bool SetViewportMetrics(int64_t view_id, const flutter::ViewportMetrics &metrics)
bool RunTask(const FlutterTask *task)
bool DispatchPointerDataPacket(std::unique_ptr< flutter::PointerDataPacket > packet)
const TaskRunners & GetTaskRunners() const
bool DispatchSemanticsAction(int node_id, flutter::SemanticsAction action, fml::MallocMapping args)
bool UnregisterTexture(int64_t texture)
bool SendPlatformMessage(std::unique_ptr< PlatformMessage > message)
bool SetSemanticsEnabled(bool enabled)
bool OnVsyncEvent(intptr_t baton, fml::TimePoint frame_start_time, fml::TimePoint frame_target_time)
Specifies all the configuration required by the runtime library to launch the root isolate....
std::function< std::unique_ptr< T >(Shell &)> CreateCallback
A Mapping like NonOwnedMapping, but uses Free as its release proc.
FlutterSemanticsFlag flags
G_BEGIN_DECLS G_MODULE_EXPORT FlValue * args
Dart_NativeFunction function
std::function< void()> closure