Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/Lts/Common/LtsLogin/lts_login.h
T

70 lines
1.3 KiB
C++
Executable File

#pragma once
#include <Common/LtsLogin/ltslogin_export.h>
#include <Plugins/OperatorManagement/opm_data_plugin_interface.h>
#include <Plugins/SituationReplayManagement/srm_data_plugin_interface.h>
#include <Plugins/AssetManagement/asm_data_plugin_interface.h>
#include <QObject>
namespace LtsPluginManager
{
class LtsPluginManager;
}
namespace LtsUtils
{
class RequestHelper;
}
namespace LtsSession
{
class LtsSession;
}
namespace DeveloperTools
{
class DevDialog;
}
namespace LtsLogin
{
class LTSLOGIN_EXPORT LtsLogin : public QObject
{
Q_OBJECT
public:
LtsLogin();
~LtsLogin();
void login();
void logoff();
void setLoginPlugin(const QString &loginPluginIid) { m_loginPluginIid = loginPluginIid; }
private:
friend class DeveloperTools::DevDialog;
LtsSession::LtsSession *getAdminSession();
void showLogoutInformationDialog(AssetManagement::ShutdownAction action);
LtsPluginManager::LtsPluginManager *m_loginApp;
AssetManagement::ShutdownAction m_shutdownAction;
std::shared_ptr<AssetManagement::Interface::Dtc> m_asmDtc;
QString m_loginPluginIid;
bool m_isInLogoutDialog;
private slots:
void slotLoginDone();
void slotLogoutShutdown(const AssetManagement::WorkstationLogout &data, DataModification modType);
signals:
void signalLogout();
void signalStopBlock();
void signalLoginDone();
void signalLogoffDone();
};
}