Files

125 lines
2.0 KiB
C++
Raw Permalink Normal View History

2023-05-15 13:56:25 +08:00
#ifndef POWERSYSTEM_H
2020-10-06 15:18:29 +08:00
#define POWERSYSTEM_H
#include <QWidget>
2020-10-06 17:11:59 +08:00
#include "QMouseEvent"
#include "QDebug"
#include "QAction"
#include "QContextMenuEvent"
#include "QMenu"
2020-10-07 12:24:23 +08:00
#include "QColor"
#include "QLabel"
#include "mavlink.h"
2020-10-11 19:10:57 +08:00
#include "QStyle"
2020-10-08 16:13:38 +08:00
#include "QDebug"
2020-10-10 15:25:17 +08:00
#include "QScreen"
#include <QtGlobal>
2022-08-15 18:35:06 +08:00
#include <QTime>
#include <QDateTime>
#include <QTimer>
2020-10-10 12:12:30 +08:00
2020-10-24 20:07:28 +08:00
#include "Scope.h"
2020-10-24 11:21:24 +08:00
2020-10-24 20:07:28 +08:00
//#include "QChart"
2020-10-10 12:12:30 +08:00
2023-05-15 13:56:25 +08:00
#include "QDateTime"
2020-10-06 15:18:29 +08:00
namespace Ui {
class PowerSystem;
}
2022-08-15 18:35:06 +08:00
struct TimeRPM
{
QDateTime time;
uint16_t rpm;
};
2020-10-06 15:18:29 +08:00
class PowerSystem : public QWidget
{
Q_OBJECT
public:
2020-10-07 12:24:23 +08:00
enum state{
success = 0,
failure,
};
2020-10-06 15:18:29 +08:00
explicit PowerSystem(QWidget *parent = nullptr);
~PowerSystem();
2020-10-06 17:11:59 +08:00
void mousePressEvent(QMouseEvent *event);
2020-10-07 12:24:23 +08:00
void closeEvent(QCloseEvent *event);
2020-10-06 17:11:59 +08:00
void contextMenuEvent(QContextMenuEvent *event);
2020-10-07 12:24:23 +08:00
void setTurbineState(mavlink_turbinestate_t *t);
2020-10-15 22:21:38 +08:00
void setCCMState(mavlink_ccmstate_t *t);
2020-11-21 18:19:28 +08:00
2022-03-10 11:22:25 +08:00
void updateUI();
2020-10-10 12:12:30 +08:00
private:
void resizeEvent(QResizeEvent *event);
2020-10-07 12:24:23 +08:00
2020-10-06 17:11:59 +08:00
private slots:
2020-10-07 12:24:23 +08:00
void setColor(QWidget *w, state s);
void setValue(QLabel *w,QString s);
2020-10-06 17:11:59 +08:00
2020-10-07 19:50:45 +08:00
2020-10-06 17:11:59 +08:00
public slots:
void setFloat(void);
2023-05-17 16:27:12 +08:00
void setMa(qint64 time, QVariant Ma);
void setAlt(QVariant Alt);
void setFuel(QVariant press,QVariant value);
2020-10-06 17:11:59 +08:00
2020-10-06 15:18:29 +08:00
private:
2022-08-16 13:11:25 +08:00
QTimer timer2;
2022-08-15 18:35:06 +08:00
QTimer timer;
2022-08-16 13:11:25 +08:00
QTime time = QTime(0, 0);
2020-10-15 22:21:38 +08:00
QHash<int,QString> cmdList;
2020-10-07 19:50:45 +08:00
QWidget *m_parent;
2020-10-06 17:11:59 +08:00
2020-10-06 15:18:29 +08:00
Ui::PowerSystem *ui;
2020-10-10 12:12:30 +08:00
2020-10-24 20:07:28 +08:00
Chart *ScopeRPM = nullptr;
Chart *ScopeTemp = nullptr;
Chart *ScopeAlt = nullptr;
Chart *ScopeMa = nullptr;
2020-10-24 11:21:24 +08:00
2020-10-30 21:23:32 +08:00
2023-05-15 13:56:25 +08:00
QVector<double> averageMa;
QVector<qint64> averageTime;
2023-05-15 13:56:25 +08:00
QMap<quint64,double> MaMap;
QTimer *AMaTimer = nullptr;
2020-10-24 20:07:28 +08:00
/*
2020-10-24 11:21:24 +08:00
QtCharts::QChart *ScopeRPM = nullptr;
QtCharts::QChart *ScopeTemp = nullptr;
QtCharts::QChart *ScopeAlt = nullptr;
QtCharts::QChart *ScopeMa = nullptr;
2020-10-24 20:07:28 +08:00
*/
2020-10-24 11:21:24 +08:00
2020-10-10 12:12:30 +08:00
2020-10-06 15:18:29 +08:00
};
#endif // POWERSYSTEM_H