Files

63 lines
1.8 KiB
C++
Executable File

#pragma once
#include <Services/SituationReplayManagement/srm_ftc.h>
#include <Plugins/SituationReplayManagement/srm_data_plugin_interface.h>
#include <Services/SituationReplayManagement/logger.h>
#include <DDS/Core/core_dtc.h>
#include <LtsSession/lts_session.h>
#include <LtsWidgets/lts_dialog.h>
#include <LtsUtils/LtsUtilsGui/LtsUtilsGuiDds/request_helper.h>
namespace Ui
{
class SituationReplayManagementDialog;
}
namespace SituationReplayManagement
{
class ReplayPartitionDialogModel;
class SituationReplayManagementDialog : public LtsWidgets::LtsDialog
, protected Interface::Ftc::ReplayPartitionCreateReplyHandler
, protected Interface::Ftc::ReplayPartitionRemoveReplyHandler
{
Q_OBJECT
public:
explicit SituationReplayManagementDialog(LtsSession::LtsSession *session, QWidget *parent = nullptr);
~SituationReplayManagementDialog();
bool init(const std::shared_ptr<Core::Interface::Dtc> &dtc,
const std::shared_ptr<SituationReplayManagement::ForeignDataInterface> &srmForeign);
void onReplayPartitionCreateReply(const Core::FunctionReplyObject &replyObject) override final { m_requestHelper->requestReply(replyObject); }
void onReplayPartitionRemoveReply(const Core::FunctionReplyObject &replyObject) override final { m_requestHelper->requestReply(replyObject); }
private slots:
void enaDisa();
void onAddReplayPartition();
void onRemoveReplayPartition();
void onPrint();
void slotStartReplay();
private:
NGL::INGLLogger &m_logger;
void retranslate() override;
void tableColumnOrganiserSetting() override;
LtsSession::LtsSession *m_session;
ReplayPartitionDialogModel *m_model;
Ui::SituationReplayManagementDialog *m_ui;
std::shared_ptr<SituationReplayManagement::ForeignDataInterface> m_srmForeign;
LtsUtils::RequestHelper *m_requestHelper;
};
}