// 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 #include #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_