Flutter Engine Uber Docs
Docs for the entire Flutter Engine repo.
 
Loading...
Searching...
No Matches
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
12namespace flutter {
13
14enum class IOSRenderingAPI {
16 kMetal,
17};
18
20 kSkia,
22};
23
25
27
28} // namespace flutter
29
30// Flutter supports Metal on all devices with Apple A7 SoC or above that have
31// been updated to or past iOS 10.0. The processor was selected as it is the
32// first version at which Metal was supported. The iOS version floor was
33// selected due to the availability of features used by Skia.
34// Support for Metal on simulators was added by Apple in the SDK for iOS 13.
35#if TARGET_OS_SIMULATOR
36#define METAL_IOS_VERSION_BASELINE 13.0
37#else
38#define METAL_IOS_VERSION_BASELINE 10.0
39#endif // TARGET_OS_SIMULATOR
40
41#endif // FLUTTER_SHELL_PLATFORM_DARWIN_IOS_RENDERING_API_SELECTION_H_
IOSRenderingAPI GetRenderingAPIForProcess()
Class GetCoreAnimationLayerClassForRenderingAPI(IOSRenderingAPI rendering_api)