Flutter iOS Embedder
rendering_api_selection.h
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
5
#ifndef FLUTTER_SHELL_PLATFORM_DARWIN_IOS_RENDERING_API_SELECTION_H_
6
#define FLUTTER_SHELL_PLATFORM_DARWIN_IOS_RENDERING_API_SELECTION_H_
7
8
#include <objc/runtime.h>
9
10
#include "flutter/fml/macros.h"
11
12
namespace
flutter
{
13
14
enum class
IOSRenderingAPI
{
15
kSoftware
,
16
kMetal
,
17
};
18
19
enum class
IOSRenderingBackend
{
20
kSkia
,
21
kImpeller
,
22
};
23
24
// Pass force_software to force software rendering. This is only respected on
25
// simulators.
26
IOSRenderingAPI
GetRenderingAPIForProcess
(
bool
force_software);
27
28
Class
GetCoreAnimationLayerClassForRenderingAPI
(
IOSRenderingAPI
rendering_api);
29
30
}
// namespace flutter
31
32
// Flutter supports Metal on all devices with Apple A7 SoC or above that have
33
// been updated to or past iOS 10.0. The processor was selected as it is the
34
// first version at which Metal was supported. The iOS version floor was
35
// selected due to the availability of features used by Skia.
36
// Support for Metal on simulators was added by Apple in the SDK for iOS 13.
37
#if TARGET_OS_SIMULATOR
38
#define METAL_IOS_VERSION_BASELINE 13.0
39
#else
40
#define METAL_IOS_VERSION_BASELINE 10.0
41
#endif // TARGET_OS_SIMULATOR
42
43
#endif // FLUTTER_SHELL_PLATFORM_DARWIN_IOS_RENDERING_API_SELECTION_H_
flutter::IOSRenderingBackend::kSkia
@ kSkia
flutter::GetCoreAnimationLayerClassForRenderingAPI
Class GetCoreAnimationLayerClassForRenderingAPI(IOSRenderingAPI rendering_api)
Definition:
rendering_api_selection.mm:59
flutter::IOSRenderingBackend
IOSRenderingBackend
Definition:
rendering_api_selection.h:19
flutter::GetRenderingAPIForProcess
IOSRenderingAPI GetRenderingAPIForProcess(bool force_software)
Definition:
rendering_api_selection.mm:31
flutter::IOSRenderingBackend::kImpeller
@ kImpeller
flutter
Definition:
accessibility_bridge.h:28
flutter::IOSRenderingAPI
IOSRenderingAPI
Definition:
rendering_api_selection.h:14
flutter::IOSRenderingAPI::kMetal
@ kMetal
flutter::IOSRenderingAPI::kSoftware
@ kSoftware
shell
platform
darwin
ios
rendering_api_selection.h
Generated by
1.8.17