| // Copyright 2013 The Flutter Authors. All rights reserved. | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| #ifndef FLUTTER_SHELL_PLATFORM_COMMON_PUBLIC_FLUTTER_PLUGIN_REGISTRAR_H_ | |
| #define FLUTTER_SHELL_PLATFORM_COMMON_PUBLIC_FLUTTER_PLUGIN_REGISTRAR_H_ | |
| #include <stddef.h> | |
| #include <stdint.h> | |
| #include "flutter_export.h" | |
| #include "flutter_messenger.h" | |
| #include "flutter_texture_registrar.h" | |
| #if defined(__cplusplus) | |
| extern "C" { | |
| #endif // defined(__cplusplus) | |
| // Opaque reference to a plugin registrar. | |
| typedef struct FlutterDesktopPluginRegistrar* FlutterDesktopPluginRegistrarRef; | |
| // Function pointer type for registrar destruction callback. | |
| typedef void (*FlutterDesktopOnPluginRegistrarDestroyed)( | |
| FlutterDesktopPluginRegistrarRef); | |
| // Returns the engine messenger associated with this registrar. | |
| FLUTTER_EXPORT FlutterDesktopMessengerRef | |
| FlutterDesktopPluginRegistrarGetMessenger( | |
| FlutterDesktopPluginRegistrarRef registrar); | |
| // Returns the texture registrar associated with this registrar. | |
| FLUTTER_EXPORT FlutterDesktopTextureRegistrarRef | |
| FlutterDesktopRegistrarGetTextureRegistrar( | |
| FlutterDesktopPluginRegistrarRef registrar); | |
| // Registers a callback to be called when the plugin registrar is destroyed. | |
| FLUTTER_EXPORT void FlutterDesktopPluginRegistrarSetDestructionHandler( | |
| FlutterDesktopPluginRegistrarRef registrar, | |
| FlutterDesktopOnPluginRegistrarDestroyed callback); | |
| #if defined(__cplusplus) | |
| } // extern "C" | |
| #endif | |
| #endif // FLUTTER_SHELL_PLATFORM_COMMON_PUBLIC_FLUTTER_PLUGIN_REGISTRAR_H_ |