| Flutter Linux Embedder |

fl_engine.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_LINUX_PUBLIC_FLUTTER_LINUX_FL_ENGINE_H_
6 #define FLUTTER_SHELL_PLATFORM_LINUX_PUBLIC_FLUTTER_LINUX_FL_ENGINE_H_
7
8 #if !defined(__FLUTTER_LINUX_INSIDE__) && !defined(FLUTTER_LINUX_COMPILATION)
9 #error "Only <flutter_linux/flutter_linux.h> can be included directly."
10 #endif
11
12 #include <glib-object.h>
13 #include <gmodule.h>
14
15 #include "fl_binary_messenger.h"
16 #include "fl_dart_project.h"
17 #include "fl_texture_registrar.h"
18
19 G_BEGIN_DECLS
20
21 G_MODULE_EXPORT
22 G_DECLARE_FINAL_TYPE(FlEngine, fl_engine, FL, ENGINE, GObject)
23
24 /**
25 * FlEngine:
26 *
27 * #FlEngine is an object that contains a running Flutter engine.
28 */
29
30 /**
31 * fl_engine_new:
32 * @project: an #FlDartProject.
33 *
34 * Creates new Flutter engine.
35 *
36 * Returns: a new #FlEngine.
37 */
38 FlEngine* fl_engine_new(FlDartProject* project);
39
40 /**
41 * fl_engine_new_headless:
42 * @project: an #FlDartProject.
43 *
44 * Creates new Flutter engine running in headless mode.
45 *
46 * Returns: a new #FlEngine.
47 */
48 FlEngine* fl_engine_new_headless(FlDartProject* project);
49
50 /**
51 * fl_engine_get_binary_messenger:
52 * @engine: an #FlEngine.
53 *
54 * Gets the messenger to communicate with this engine.
55 *
56 * Returns: an #FlBinaryMessenger.
57 */
58 FlBinaryMessenger* fl_engine_get_binary_messenger(FlEngine* engine);
59
60 /**
61 * fl_engine_get_texture_registrar:
62 * @engine: an #FlEngine.
63 *
64 * Gets the texture registrar for registering textures.
65 *
66 * Returns: an #FlTextureRegistrar.
67 */
68 FlTextureRegistrar* fl_engine_get_texture_registrar(FlEngine* engine);
69
70 G_END_DECLS
71
72 #endif // FLUTTER_SHELL_PLATFORM_LINUX_PUBLIC_FLUTTER_LINUX_FL_ENGINE_H_
G_DECLARE_FINAL_TYPE
G_BEGIN_DECLS G_DECLARE_FINAL_TYPE(FlAccessibilityChannel, fl_accessibility_channel, FL, ACCESSIBILITY_CHANNEL, GObject)
FL
FL
Definition: fl_binary_messenger.cc:27
fl_binary_messenger.h
fl_dart_project.h
fl_engine_get_binary_messenger
FlBinaryMessenger * fl_engine_get_binary_messenger(FlEngine *engine)
Definition: fl_engine.cc:1451
fl_engine_get_texture_registrar
FlTextureRegistrar * fl_engine_get_texture_registrar(FlEngine *engine)
Definition: fl_engine.cc:1469
fl_engine_new_headless
FlEngine * fl_engine_new_headless(FlDartProject *project)
Definition: fl_engine.cc:707
fl_engine_new
G_BEGIN_DECLS G_MODULE_EXPORT FlEngine * fl_engine_new(FlDartProject *project)
Definition: fl_engine.cc:697
fl_texture_registrar.h