Flutter Engine
The Flutter Engine
WindowContextFactory_ios.h
Go to the documentation of this file.
1
2/*
3 * Copyright 2017 Google Inc.
4 *
5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file.
7 */
8
9#ifndef WindowContextFactory_ios_DEFINED
10#define WindowContextFactory_ios_DEFINED
11
13
14#import <UIKit/UIKit.h>
15
17
18#include <memory>
19
20namespace skwindow {
21
22struct DisplayParams;
23
26 UIViewController* fViewController;
27};
28
29#ifdef SK_VULKAN
30inline std::unique_ptr<WindowContext> MakeVulkanForIOS(const IOSWindowInfo&, const DisplayParams&) {
31 // No Vulkan support on iOS yet.
32 return nullptr;
33}
34#endif
35
36#ifdef SK_METAL
37std::unique_ptr<WindowContext> MakeMetalForIOS(const IOSWindowInfo&, const DisplayParams&);
38#if defined(SK_GRAPHITE)
39std::unique_ptr<WindowContext> MakeGraphiteMetalForIOS(const IOSWindowInfo&, const DisplayParams&);
40#endif
41#endif
42
43#ifdef SK_GL
44std::unique_ptr<WindowContext> MakeGLForIOS(const IOSWindowInfo&, const DisplayParams&);
45std::unique_ptr<WindowContext> MakeRasterForIOS(const IOSWindowInfo&, const DisplayParams&);
46#endif
47
48} // namespace skwindow
49
50#endif
std::unique_ptr< WindowContext > MakeMetalForIOS(const IOSWindowInfo &info, const DisplayParams &params)
std::unique_ptr< WindowContext > MakeRasterForIOS(const IOSWindowInfo &info, const DisplayParams &params)
std::unique_ptr< WindowContext > MakeGLForIOS(const IOSWindowInfo &info, const DisplayParams &params)
std::unique_ptr< WindowContext > MakeGraphiteMetalForIOS(const IOSWindowInfo &info, const DisplayParams &params)
UIViewController * fViewController