Flutter Engine
 
Loading...
Searching...
No Matches
flutter::DartIsolateGroupData Class Reference

#include <dart_isolate_group_data.h>

Inheritance diagram for flutter::DartIsolateGroupData:
flutter::PlatformMessageHandlerStorage

Public Member Functions

 DartIsolateGroupData (const Settings &settings, fml::RefPtr< const DartSnapshot > isolate_snapshot, std::string advisory_script_uri, std::string advisory_script_entrypoint, const ChildIsolatePreparer &child_isolate_preparer, const fml::closure &isolate_create_callback, const fml::closure &isolate_shutdown_callback, std::shared_ptr< NativeAssetsManager > native_assets_manager=nullptr)
 
 ~DartIsolateGroupData ()
 
const SettingsGetSettings () const
 
fml::RefPtr< const DartSnapshotGetIsolateSnapshot () const
 
const std::string & GetAdvisoryScriptURI () const
 
const std::string & GetAdvisoryScriptEntrypoint () const
 
ChildIsolatePreparer GetChildIsolatePreparer () const
 
const fml::closureGetIsolateCreateCallback () const
 
const fml::closureGetIsolateShutdownCallback () const
 
void SetChildIsolatePreparer (const ChildIsolatePreparer &value)
 
std::shared_ptr< NativeAssetsManagerGetNativeAssetsManager () const
 
void AddKernelBuffer (const std::shared_ptr< const fml::Mapping > &buffer)
 Adds a kernel buffer mapping to the kernels loaded for this isolate group.
 
std::vector< std::shared_ptr< const fml::Mapping > > GetKernelBuffers () const
 
void SetPlatformMessageHandler (int64_t root_isolate_token, std::weak_ptr< PlatformMessageHandler > handler) override
 
std::weak_ptr< PlatformMessageHandlerGetPlatformMessageHandler (int64_t root_isolate_token) const override
 
- Public Member Functions inherited from flutter::PlatformMessageHandlerStorage
virtual ~PlatformMessageHandlerStorage ()=default
 

Detailed Description

Definition at line 32 of file dart_isolate_group_data.h.

Constructor & Destructor Documentation

◆ DartIsolateGroupData()

flutter::DartIsolateGroupData::DartIsolateGroupData ( const Settings settings,
fml::RefPtr< const DartSnapshot isolate_snapshot,
std::string  advisory_script_uri,
std::string  advisory_script_entrypoint,
const ChildIsolatePreparer child_isolate_preparer,
const fml::closure isolate_create_callback,
const fml::closure isolate_shutdown_callback,
std::shared_ptr< NativeAssetsManager native_assets_manager = nullptr 
)

Definition at line 13 of file dart_isolate_group_data.cc.

22 : settings_(settings),
23 isolate_snapshot_(std::move(isolate_snapshot)),
24 advisory_script_uri_(std::move(advisory_script_uri)),
25 advisory_script_entrypoint_(std::move(advisory_script_entrypoint)),
26 child_isolate_preparer_(child_isolate_preparer),
27 isolate_create_callback_(isolate_create_callback),
28 isolate_shutdown_callback_(isolate_shutdown_callback),
29 native_assets_manager_(std::move(native_assets_manager)) {
30 FML_DCHECK(isolate_snapshot_) << "Must contain a valid isolate snapshot.";
31}
#define FML_DCHECK(condition)
Definition logging.h:122

References FML_DCHECK.

◆ ~DartIsolateGroupData()

flutter::DartIsolateGroupData::~DartIsolateGroupData ( )
default

Member Function Documentation

◆ AddKernelBuffer()

void flutter::DartIsolateGroupData::AddKernelBuffer ( const std::shared_ptr< const fml::Mapping > &  buffer)

Adds a kernel buffer mapping to the kernels loaded for this isolate group.

Definition at line 93 of file dart_isolate_group_data.cc.

94 {
95 kernel_buffers_.push_back(buffer);
96}

References flutter::buffer.

◆ GetAdvisoryScriptEntrypoint()

const std::string & flutter::DartIsolateGroupData::GetAdvisoryScriptEntrypoint ( ) const

Definition at line 48 of file dart_isolate_group_data.cc.

48 {
49 return advisory_script_entrypoint_;
50}

◆ GetAdvisoryScriptURI()

const std::string & flutter::DartIsolateGroupData::GetAdvisoryScriptURI ( ) const

Definition at line 44 of file dart_isolate_group_data.cc.

44 {
45 return advisory_script_uri_;
46}

◆ GetChildIsolatePreparer()

ChildIsolatePreparer flutter::DartIsolateGroupData::GetChildIsolatePreparer ( ) const

Definition at line 52 of file dart_isolate_group_data.cc.

52 {
53 std::scoped_lock lock(child_isolate_preparer_mutex_);
54 return child_isolate_preparer_;
55}

◆ GetIsolateCreateCallback()

const fml::closure & flutter::DartIsolateGroupData::GetIsolateCreateCallback ( ) const

Definition at line 57 of file dart_isolate_group_data.cc.

57 {
58 return isolate_create_callback_;
59}

Referenced by flutter::DartIsolate::PrepareForRunningFromKernel(), and flutter::DartIsolate::PrepareForRunningFromPrecompiledCode().

◆ GetIsolateShutdownCallback()

const fml::closure & flutter::DartIsolateGroupData::GetIsolateShutdownCallback ( ) const

Definition at line 61 of file dart_isolate_group_data.cc.

61 {
62 return isolate_shutdown_callback_;
63}

◆ GetIsolateSnapshot()

fml::RefPtr< const DartSnapshot > flutter::DartIsolateGroupData::GetIsolateSnapshot ( ) const

Definition at line 39 of file dart_isolate_group_data.cc.

40 {
41 return isolate_snapshot_;
42}

◆ GetKernelBuffers()

std::vector< std::shared_ptr< const fml::Mapping > > flutter::DartIsolateGroupData::GetKernelBuffers ( ) const

A copy of the mappings for all kernel buffer objects loaded into this isolate group.

Definition at line 99 of file dart_isolate_group_data.cc.

99 {
100 return kernel_buffers_;
101}

◆ GetNativeAssetsManager()

std::shared_ptr< NativeAssetsManager > flutter::DartIsolateGroupData::GetNativeAssetsManager ( ) const

Definition at line 72 of file dart_isolate_group_data.cc.

72 {
73 return native_assets_manager_;
74}

◆ GetPlatformMessageHandler()

std::weak_ptr< PlatformMessageHandler > flutter::DartIsolateGroupData::GetPlatformMessageHandler ( int64_t  root_isolate_token) const
overridevirtual

Implements flutter::PlatformMessageHandlerStorage.

Definition at line 84 of file dart_isolate_group_data.cc.

85 {
86 std::scoped_lock lock(platform_message_handlers_mutex_);
87 auto it = platform_message_handlers_.find(root_isolate_token);
88 return it == platform_message_handlers_.end()
89 ? std::weak_ptr<PlatformMessageHandler>()
90 : it->second;
91}

◆ GetSettings()

const Settings & flutter::DartIsolateGroupData::GetSettings ( ) const

Definition at line 35 of file dart_isolate_group_data.cc.

35 {
36 return settings_;
37}

◆ SetChildIsolatePreparer()

void flutter::DartIsolateGroupData::SetChildIsolatePreparer ( const ChildIsolatePreparer value)

Definition at line 65 of file dart_isolate_group_data.cc.

66 {
67 std::scoped_lock lock(child_isolate_preparer_mutex_);
68 child_isolate_preparer_ = value;
69}
int32_t value

References value.

Referenced by flutter::DartIsolate::PrepareForRunningFromKernel(), and flutter::DartIsolate::PrepareForRunningFromPrecompiledCode().

◆ SetPlatformMessageHandler()

void flutter::DartIsolateGroupData::SetPlatformMessageHandler ( int64_t  root_isolate_token,
std::weak_ptr< PlatformMessageHandler handler 
)
overridevirtual

Implements flutter::PlatformMessageHandlerStorage.

Definition at line 76 of file dart_isolate_group_data.cc.

78 {
79 std::scoped_lock lock(platform_message_handlers_mutex_);
80 platform_message_handlers_[root_isolate_token] = handler;
81}
const gchar FlBinaryMessengerMessageHandler handler

References handler.


The documentation for this class was generated from the following files: