#ifndef MAINWINDOW_H #define MAINWINDOW_H #include #include #include QT_BEGIN_NAMESPACE namespace Ui { class MainWindow; } QT_END_NAMESPACE class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(QWidget* parent = nullptr); ~MainWindow(); public slots: void connectCan(); void disconnectCan(); private slots: void handlePackage(int index); void updateDateTime(); void updateCanStatus(); private: void setupDrivers(); void setupTables(); QString statusToString(quint8 status); QString statusToDescription(quint8 status); qint16 adcToTemperature(quint16 adc); Ui::MainWindow* ui = nullptr; QStandardItemModel* parameterModel_ = nullptr; QStandardItemModel* statusModel_ = nullptr; QTimer* dateTimeTimer_ = nullptr; QTimer* canStatusTimer_ = nullptr; QDateTime lastPackageDateTime_; quint8 lastStatus_ = std::numeric_limits::max(); }; #endif // MAINWINDOW_H