Files
RCiRoot e3f7733316 V20260829-2.6.1
完成框架目录和模块重构;新增核心、单例、工具、加密及框架 SDK;统一任务、相机和 RPC 接口,并增加离线检测、相机标定、备份恢复、版本管理、崩溃守护和心跳监控功能。
2026-09-20 16:01:09 +08:00

57 lines
2.0 KiB
C

#pragma once
#include <eui_frameworkSdk/IMissionConfig.h>
#include <eui_frameworkSdk/IMissionAlgo.h>
#include <eui_frameworkSdk/FrameworkSdkVersion.h>
#include <QtCore/qglobal.h>
extern "C"
{
// 编排/config 工厂(V1)。
// 创建 mission 配置实例。
using CreateMissionConfigV1Func = eui_frameworkSdk::IMissionConfig* (*)();
// 销毁 mission 配置实例。
using DestroyMissionConfigV1Func = void (*)(eui_frameworkSdk::IMissionConfig* mission);
// 算法工厂(V1,可选——仅拆分算法的 mission 导出)。
// 创建 mission 算法实例。
using CreateMissionAlgoV1Func = eui_frameworkSdk::IMissionAlgo* (*)();
// 销毁 mission 算法实例。
using DestroyMissionAlgoV1Func = void (*)(eui_frameworkSdk::IMissionAlgo* algo);
// 获取插件使用的 SDK ABI 版本。
using FrameworkSdkAbiVersionFunc = int (*)();
}
// 导出编排 mission 的完整符号集:abi 版本 + config 工厂。
#define FRAMEWORK_SDK_EXPORT_MISSION_V1(ConfigType) \
/* 返回插件使用的 SDK ABI 版本。 */ \
extern "C" Q_DECL_EXPORT int frameworkSdkAbiVersion() \
{ \
return eui_frameworkSdk::kFrameworkSdkAbiVersion; \
} \
/* 创建 mission 配置实例。 */ \
extern "C" Q_DECL_EXPORT eui_frameworkSdk::IMissionConfig* createMissionConfigV1() \
{ \
return new ConfigType(); \
} \
/* 销毁 mission 配置实例。 */ \
extern "C" Q_DECL_EXPORT void destroyMissionConfigV1(eui_frameworkSdk::IMissionConfig* mission) \
{ \
delete mission; \
}
// 导出可独立热重载的算法单元(可选,与上面的宏配合使用)。
#define FRAMEWORK_SDK_EXPORT_MISSION_ALGO_V1(AlgoType) \
/* 创建 mission 算法实例。 */ \
extern "C" Q_DECL_EXPORT eui_frameworkSdk::IMissionAlgo* createMissionAlgoV1() \
{ \
return new AlgoType(); \
} \
/* 销毁 mission 算法实例。 */ \
extern "C" Q_DECL_EXPORT void destroyMissionAlgoV1(eui_frameworkSdk::IMissionAlgo* algo) \
{ \
delete algo; \
}