Flutter iOS Embedder
FlutterFMLTaskRunners.mm
Go to the documentation of this file.
1 // Copyright 2013 The Flutter Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
6 
7 #include <memory>
8 
9 #include "flutter/common/task_runners.h"
11 
12 @interface FlutterFMLTaskRunners () {
13  std::unique_ptr<flutter::TaskRunners> _taskRunners;
14 }
15 @end
16 
17 @implementation FlutterFMLTaskRunners
18 
19 - (instancetype)initWithLabel:(nonnull NSString*)label
20  platformTaskRunner:(nonnull FlutterFMLTaskRunner*)platformTaskRunner
21  rasterTaskRunner:(nonnull FlutterFMLTaskRunner*)rasterTaskRunner
22  uiTaskRunner:(nonnull FlutterFMLTaskRunner*)uiTaskRunner
23  ioTaskRunner:(nonnull FlutterFMLTaskRunner*)ioTaskRunner {
24  self = [super init];
25  if (self) {
26  _label = label;
28  _rasterTaskRunner = rasterTaskRunner;
29  _uiTaskRunner = uiTaskRunner;
30  _ioTaskRunner = ioTaskRunner;
31 
32  _taskRunners = std::make_unique<flutter::TaskRunners>(
35  }
36  return self;
37 }
38 
39 - (const flutter::TaskRunners&)taskRunners {
40  return *_taskRunners;
41 }
42 
43 @end
FlutterFMLTaskRunner * _platformTaskRunner
std::unique_ptr< flutter::TaskRunners > _taskRunners
fml::RefPtr< fml::TaskRunner > taskRunner()
FlutterFMLTaskRunner * rasterTaskRunner
FlutterFMLTaskRunner * platformTaskRunner
FlutterFMLTaskRunner * ioTaskRunner
FlutterFMLTaskRunner * uiTaskRunner