Files
qt5-legatus-legacy/Lts/Plugins/OcSituationClient/Gui/System/osc_selftest.h
T
2026-08-13 18:33:10 +02:00

71 lines
1.6 KiB
C++
Executable File

/**
* @RDE_HEADER@
* HMI Plugin for Observer Controller - Selfcheck Dialog
* $Id$
* $HeadURL$
* $Author$
* Created by Patric Karwat, SLSE, 2018-01-17
*/
#pragma once
#include <LtsWidgets/lts_dialog.h>
#include <LtsSession/lts_session.h>
#include <OcSituationClient/logger.h>
#include <TrainingAreaBaseOC/taboc_data_plugin_interface.h>
#include <EffectShowClient/esc_data_plugin_interface.h>
class QTimer;
namespace Ui
{
class SelfTest;
}
namespace OcSituationClient
{
class SelfTest : public LtsWidgets::LtsDialog
{
Q_OBJECT
public:
explicit SelfTest(LtsSession::LtsSession *session, QWidget *parent = nullptr);
~SelfTest();
private Q_SLOTS:
void onStatusHDD();
void onSfmStatusChanged(const TrainingAreaBaseOC::TechnicalStateSfm &data, DataModification modType);
void onEscOperationConditionChanged(const EffectShowClient::OperatingConditionEntity &data, DataModification modType);
void onCheckLastCondition();
private:
void retranslate() override;
QString getTechStatError(u_char errorID) const;
QString readableSize(const quint64 bytes) const;
private:
static const quint64 BYTE = 1;
static const quint64 KB = 1024 * BYTE;
static const quint64 MB = 1024 * KB;
static const quint64 GB = 1024 * MB;
static const quint64 TB = 1024 * GB;
QTimer *m_timer;
qint64 m_lastStatesTime;
LtsSession::LtsSession *m_session;
std::shared_ptr<TrainingAreaBaseOC::Interface::Dtc> m_tabocDtc;
std::shared_ptr<EffectShowClient::Interface::Dtc> m_escDtc;
Ui::SelfTest *m_ui;
LOGGER_T m_logger;
};
} // namespace OcSituationClient