73 lines
1.6 KiB
C++
Executable File
73 lines
1.6 KiB
C++
Executable File
/**
|
|
* @file GroundHandlingMonitor.h
|
|
* @author jinchao
|
|
* @brief 地操模型主题监控类
|
|
* @version 1.0
|
|
* @date 2025-03-10
|
|
*
|
|
* @copyright Copyright (c) 2025 COMAC
|
|
*
|
|
*/
|
|
#pragma once
|
|
#include "../TopicMonitorFactory/TopicMonitor.h"
|
|
#include "../../XNModels/XNGroundHandling/XNGroundHandlingInterface/XNGroundHandlingInterface.hpp"
|
|
#include <QMap>
|
|
|
|
/**
|
|
* @brief 地操模型主题监控类
|
|
*/
|
|
class GroundHandlingMonitor : public TopicMonitor
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
/**
|
|
* @brief 构造函数
|
|
* @param parent 父对象
|
|
*/
|
|
GroundHandlingMonitor(QObject *parent = nullptr);
|
|
/**
|
|
* @brief 析构函数
|
|
*/
|
|
virtual ~GroundHandlingMonitor();
|
|
/**
|
|
* @brief 开始监控
|
|
* @param topicName 主题名称
|
|
* @return 是否成功
|
|
*/
|
|
virtual bool startMonitoring(const QString &topicName) override;
|
|
/**
|
|
* @brief 停止监控
|
|
* @param topicName 主题名称
|
|
* @return 是否成功
|
|
*/
|
|
virtual void stopMonitoring(const QString &topicName) override;
|
|
/**
|
|
* @brief 注入数据
|
|
* @param varName 变量名称
|
|
* @param value 值
|
|
* @return 是否成功
|
|
*/
|
|
virtual bool injectData(const QString &varName, double value) override;
|
|
/**
|
|
* @brief 获取数据
|
|
* @param topicName 主题名称
|
|
* @param varName 变量名称
|
|
* @return 值
|
|
*/
|
|
virtual QString getData(const QString &topicName, const QString &varName) override;
|
|
|
|
private:
|
|
/**
|
|
* @brief 输入接口
|
|
*/
|
|
XNSim::ATA04::GroundHandling_input_Interface *inputInterface;
|
|
/**
|
|
* @brief 输出接口
|
|
*/
|
|
XNSim::ATA04::GroundHandling_output_Interface *outputInterface;
|
|
/**
|
|
* @brief 心跳接口
|
|
*/
|
|
XNSim::ATA04::GroundHandling_heartbeat_Interface *heartbeatInterface;
|
|
}; |