Flutter Engine
FlutterEngine.mm File Reference
#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterEngine_Internal.h"
#include <memory>
#include "flutter/fml/message_loop.h"
#include "flutter/fml/platform/darwin/platform_version.h"
#include "flutter/fml/trace_event.h"
#include "flutter/runtime/ptrace_check.h"
#include "flutter/shell/common/engine.h"
#include "flutter/shell/common/platform_view.h"
#include "flutter/shell/common/shell.h"
#include "flutter/shell/common/switches.h"
#include "flutter/shell/common/thread_host.h"
#import "flutter/shell/platform/darwin/common/command_line.h"
#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterBinaryMessengerRelay.h"
#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterDartProject_Internal.h"
#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterObservatoryPublisher.h"
#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterPlatformPlugin.h"
#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterTextInputDelegate.h"
#import "flutter/shell/platform/darwin/ios/framework/Source/FlutterViewController_Internal.h"
#import "flutter/shell/platform/darwin/ios/framework/Source/connection_collection.h"
#import "flutter/shell/platform/darwin/ios/framework/Source/platform_message_response_darwin.h"
#import "flutter/shell/platform/darwin/ios/framework/Source/profiler_metrics_ios.h"
#import "flutter/shell/platform/darwin/ios/framework/Source/vsync_waiter_ios.h"
#import "flutter/shell/platform/darwin/ios/ios_surface.h"
#import "flutter/shell/platform/darwin/ios/platform_view_ios.h"
#import "flutter/shell/platform/darwin/ios/rendering_api_selection.h"
#include "flutter/shell/profiling/sampling_profiler.h"

Go to the source code of this file.

Classes

class  FlutterEngineRegistrar
 

Macros

#define FML_USED_ON_EMBEDDER
 

Variables

NSString *const FlutterDefaultDartEntrypoint = nil
 
NSString *const FlutterDefaultInitialRoute = nil
 
static constexpr int kNumProfilerSamplesPerSec = 5
 
flutter::ThreadHost _threadHost
 
std::unique_ptr< flutter::Shell_shell
 
NSString * _labelPrefix
 
std::unique_ptr< fml::WeakPtrFactory< FlutterEngine > > _weakFactory
 
fml::WeakPtr< FlutterViewController_viewController
 
fml::scoped_nsobject< FlutterObservatoryPublisher_publisher
 
std::unique_ptr< flutter::FlutterPlatformViewsController_platformViewsController
 
std::unique_ptr< flutter::ProfilerMetricsIOS_profiler_metrics
 
std::unique_ptr< flutter::SamplingProfiler_profiler
 
fml::scoped_nsobject< FlutterPlatformPlugin_platformPlugin
 
fml::scoped_nsobject< FlutterTextInputPlugin_textInputPlugin
 
fml::scoped_nsobject< FlutterMethodChannel_localizationChannel
 
fml::scoped_nsobject< FlutterMethodChannel_navigationChannel
 
fml::scoped_nsobject< FlutterMethodChannel_platformChannel
 
fml::scoped_nsobject< FlutterMethodChannel_platformViewsChannel
 
fml::scoped_nsobject< FlutterMethodChannel_textInputChannel
 
fml::scoped_nsobject< FlutterBasicMessageChannel_lifecycleChannel
 
fml::scoped_nsobject< FlutterBasicMessageChannel_systemChannel
 
fml::scoped_nsobject< FlutterBasicMessageChannel_settingsChannel
 
fml::scoped_nsobject< FlutterBasicMessageChannel_keyEventChannel
 
int64_t _nextTextureId
 
BOOL _allowHeadlessExecution
 
FlutterBinaryMessengerRelay_binaryMessenger
 
std::unique_ptr< flutter::ConnectionCollection_connections
 

Macro Definition Documentation

◆ FML_USED_ON_EMBEDDER

#define FML_USED_ON_EMBEDDER

Definition at line 5 of file FlutterEngine.mm.

Variable Documentation

◆ _allowHeadlessExecution

BOOL _allowHeadlessExecution

◆ _binaryMessenger

FlutterBinaryMessengerRelay* _binaryMessenger

Definition at line 86 of file FlutterEngine.mm.

Referenced by FlutterEngine::initWithName:, and FlutterEngine::run.

◆ _connections

std::unique_ptr<flutter::ConnectionCollection> _connections

Definition at line 87 of file FlutterEngine.mm.

Referenced by FlutterEngine::initWithName:, and FlutterEngine::run.

◆ _keyEventChannel

Definition at line 81 of file FlutterEngine.mm.

Referenced by FlutterEngine::destroyContext.

◆ _labelPrefix

NSString* _labelPrefix

Definition at line 60 of file FlutterEngine.mm.

Referenced by FlutterEngine::initWithName:.

◆ _lifecycleChannel

Definition at line 78 of file FlutterEngine.mm.

Referenced by FlutterEngine::destroyContext.

◆ _localizationChannel

Definition at line 73 of file FlutterEngine.mm.

Referenced by FlutterEngine::destroyContext.

◆ _navigationChannel

Definition at line 74 of file FlutterEngine.mm.

Referenced by FlutterEngine::destroyContext.

◆ _nextTextureId

int64_t _nextTextureId

Definition at line 83 of file FlutterEngine.mm.

Referenced by FlutterEngine::run.

◆ _platformChannel

Definition at line 75 of file FlutterEngine.mm.

Referenced by FlutterEngine::destroyContext.

◆ _platformPlugin

Definition at line 71 of file FlutterEngine.mm.

Referenced by FlutterEngine::destroyContext.

◆ _platformViewsChannel

Definition at line 76 of file FlutterEngine.mm.

Referenced by FlutterEngine::destroyContext.

◆ _platformViewsController

◆ _profiler

std::unique_ptr<flutter::SamplingProfiler> _profiler

Definition at line 68 of file FlutterEngine.mm.

Referenced by FlutterEngine::destroyContext.

◆ _profiler_metrics

std::unique_ptr<flutter::ProfilerMetricsIOS> _profiler_metrics

Definition at line 67 of file FlutterEngine.mm.

Referenced by FlutterEngine::destroyContext.

◆ _publisher

◆ _settingsChannel

Definition at line 80 of file FlutterEngine.mm.

Referenced by FlutterEngine::destroyContext.

◆ _shell

std::unique_ptr<flutter::Shell> _shell

◆ _systemChannel

Definition at line 79 of file FlutterEngine.mm.

Referenced by FlutterEngine::destroyContext.

◆ _textInputChannel

Definition at line 77 of file FlutterEngine.mm.

Referenced by FlutterEngine::destroyContext.

◆ _textInputPlugin

Definition at line 72 of file FlutterEngine.mm.

Referenced by FlutterEngine::destroyContext.

◆ _threadHost

flutter::ThreadHost _threadHost
Initial value:

Definition at line 56 of file FlutterEngine.mm.

Referenced by FlutterEngine::destroyContext.

◆ _viewController

◆ _weakFactory

◆ FlutterDefaultDartEntrypoint

NSString* const FlutterDefaultDartEntrypoint = nil

The dart entrypoint that is associated with main(). This is to be used as an argument to the runWithEntrypoint* methods.

Definition at line 36 of file FlutterEngine.mm.

◆ FlutterDefaultInitialRoute

NSString* const FlutterDefaultInitialRoute = nil

The default Flutter initial route ("/").

Definition at line 37 of file FlutterEngine.mm.

◆ kNumProfilerSamplesPerSec

constexpr int kNumProfilerSamplesPerSec = 5
static

Definition at line 38 of file FlutterEngine.mm.

Referenced by FlutterEngine::destroyContext.