Mission Planner 中的扩展系统提供了扩展应用程序核心功能之外的功能机制。本页面记录了开发人员可用的主要扩展机制,包括插件框架、视频流系统以及其他允许第三方代码与 Mission Planner 交互的集成点。
插件框架
插件框架允许开发者创建模块化扩展,无需修改核心代码库即可与 Mission Planner 集成。插件可以添加新的 UI 元素、处理遥测数据、与联网车辆交互,并以各种方式扩展功能。
插件架构

Mission Planner 中的插件继承自基础插件类(MissionPlannerPlugin如图所示),并重写关键方法以提供自定义功能。插件系统通过Host对象提供对主应用程序的访问,使插件能够修改 UI、访问遥测数据以及与 Mission Planner 的其他组件交互。
插件生命周期

插件遵循定义的生命周期:
- 初始化:
Init()插件首次加载时调用此方法。返回true以继续加载插件,或false中止加载。 - 设置:
Loaded()初始化后调用该方法来设置插件,包括 UI 元素和事件订阅。 - 运行时:该
Loop()方法被定期调用(以属性确定的速率loopratehz)来执行后台操作。 - Shutdown:
Exit()当应用程序关闭或插件卸载时调用该方法。
创建插件
要为 Mission Planner 创建插件:
- 创建一个新的 C# 类,继承自
MissionPlanner.Plugin.Plugin - 实现所需的属性和方法:
- 编译你的插件并将编译后的程序集放在 Mission Planner 的“plugins”文件夹中
public class MyPlugin : MissionPlanner.Plugin.Plugin
{
public override string Name
{
get { return "My Plugin"; }
}
public override string Version
{
get { return "1.0"; }
}
public ov

最低0.47元/天 解锁文章
119

被折叠的 条评论
为什么被折叠?



