Qt6 Migration: BUILD_RTI Guards, Export-Header und Include-Pfade korrigiert

- BUILD_RTI Guards in LtsSession implementiert (6 Dateien)
- LtsSessionDataDds Stub für BUILD_RTI=OFF erstellt
- Export-Header Stubs erstellt (GuezNasat, AlarmManagement, MarkerManagement)
- Include-Pfade korrigiert (resource_path.h, logger.h, Proxies)
- QStringRef → QString migriert (Qt6 Kompatibilität)
- Qt6::Gui Dependencies hinzugefügt (LtsElevation, AdvancedSymbology)
- FilterManagement-Plugins temporär vom Build ausgeschlossen
- MOC-Probleme gefixt (staticMetaObject, override final)
- Build erfolgreich: 1940 Targets mit BUILD_RTI=OFF im Docker-Container

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
torstenandCopilot committed 2026-08-20 12:26:22 +02:00
1 parent cac1dd809e
commit 734a5e5315
46 files changed
+2487 -110

No files matched your search

@@ -10,8 +10,20 @@
#include "lts_session.h"
#ifdef BUILD_RTI
#include "lts_session_data_dds.h"
#include "lts_session_lock_handler.h"
#endif
// Stub logging macros when BUILD_RTI=OFF
#ifndef BUILD_RTI
// Logging deaktivieren - qDebug() wird verwendet weil es operator<< für QString unterstützt
#define DEBUG_LOG(logger) if (false) qDebug()
#define WARNING_LOG(logger) if (false) qDebug()
#define ERROR_LOG(logger) if (false) qDebug()
#define INFO_LOG(logger) if (false) qDebug()
#define TRACE_LOG(logger) if (false) qDebug()
#define LOGFUNCTION ""
#endif
#include "lts_session_manager.h"
#include <LtsMultiMonitor/lts_multi_monitor.h>
@@ -28,9 +40,10 @@
#include <LtsWidgets/lts_tab_widget.h>
#include <PluginInterfaces/data_plugin_interface.h>
#include <PluginInterfaces/gui_plugin_interface.h>
#include <Plugins/OnlineHelp/ohp_online_help_viewer_gui_plugin_interface.h> // XXX: grrr..
#ifdef BUILD_FILTERMANAGEMENT
#include <Lts/Plugins/OnlineHelp/ohp_online_help_viewer_gui_plugin_interface.h> // XXX: grrr..
#endif
#include <QApplication>
#include <QDesktopWidget>
#include <QHostInfo>
#include <QLabel>
#include <QMessageBox>
@@ -50,12 +63,21 @@ namespace LtsSession
bool LtsSession::s_valgrind = false;
int LtsSession::s_nextSessionId = 0;
#ifdef BUILD_RTI
LtsSession::LtsSession(LtsSessionManager* sessionManager)
: m_sessionManager(sessionManager), m_mainBackground(nullptr), m_hasBaseLayout(false), m_baseLayout(nullptr),
m_markedForDeletion(false), m_payloads(false), m_initDone(false), m_menuVisible(true), m_firstActionsFetch(true),
m_exerciseData(new LtsWidgets::ExerciseData), m_currentInitIfc(nullptr), m_slotPluginInitDoneMutex(false),
m_pluginInitDone(false), m_hidden(false), m_loadedFromSavegame(false), m_foreverInvisible(false),
m_exerciseData(new LtsWidgets::ExerciseData),
m_currentInitIfc(nullptr), m_slotPluginInitDoneMutex(false), m_pluginInitDone(false),
m_hidden(false), m_loadedFromSavegame(false), m_foreverInvisible(false),
m_id(s_nextSessionId++)
#else
LtsSession::LtsSession()
: m_mainBackground(nullptr), m_hasBaseLayout(false), m_baseLayout(nullptr),
m_markedForDeletion(false), m_payloads(false), m_initDone(false), m_menuVisible(true), m_firstActionsFetch(true),
m_exerciseData(nullptr), m_hidden(false), m_loadedFromSavegame(false), m_foreverInvisible(false),
m_id(s_nextSessionId++)
#endif
{
LtsWidgets::LtsGlobalWaitDialog::getInstance()->wait();
@@ -81,17 +103,23 @@ LtsSession::LtsSession(LtsSessionManager* sessionManager)
// [Qatar MNQ-474] Crash open Script Editor application Hack
if (strcmp(PROJECTBUILD, "qatarmout") == 0 || strcmp(PROJECTBUILD, "qatar") == 0)
{
#ifdef BUILD_RTI
DEBUG_LOG(m_logger) << "qatarmout Timer = 4000";
#endif
m_scriptEditorTimer->setInterval(4000);
}
else
{
#ifdef BUILD_RTI
DEBUG_LOG(m_logger) << "qatarmout Timer = 0";
#endif
m_scriptEditorTimer->setInterval(0);
}
m_scriptEditorTimer->setSingleShot(true);
#ifdef BUILD_RTI
connect(m_scriptEditorTimer, &QTimer::timeout, this, &LtsSession::delayScriptEditorStart);
#endif
}
LtsSession::~LtsSession()
@@ -99,63 +127,70 @@ LtsSession::~LtsSession()
// qCritical() << "~LtsSession";
// delete m_mainBackground; parented on hiddenWidget!
#ifdef BUILD_RTI
delete m_baseLayout; // TODO: deleteLater? problem: clear interfaces!
// qWarning() << this << "deleted" << m_baseLayout;
#endif
// Don't: qDeleteAll(m_notiCtlList);
// make sure to unref the data plugins, as they carry this LtsSession, and the erase method would not delete the
// Session (avoid circular dependencies)
#ifdef BUILD_RTI
clearGuiPluginInterfaces();
clearDataPluginInterfaces();
#endif
#ifdef BUILD_RTI
delete m_exerciseData;
#endif
}
QString LtsSession::toString() const
{
std::ostringstream stream;
stream << "LtsSession:"
<< " this=" << this << ", domainId=" << this->domainId() << ", partitionId=" << this->partitionId()
<< ", partitionType=" << this->partitionType() << ", exerciseId='" << this->exerciseId() << "'"
<< ", workspaceId='" << this->workspaceId() << "'"
<< ", appToString='" << this->appToString(this->app()) << "'"
<< ", LtsSessionDataDds=" << LtsSessionDataDds::toString();
return QString::fromStdString(stream.str());
// QString str;
// str.append(QStringLiteral(" domainId='%1'").arg()));
// str.append(QStringLiteral(", ='%1'").arg(this->partitionId()));
// str.append(QStringLiteral(", partitionType='%1'").arg(this->partitionType()));
// str.append(QStringLiteral(", exerciseId='%1'").arg(this->exerciseId()));
// str.append(QStringLiteral(", workspaceId='%1'").arg(this->workspaceId()));
// return str;
QString str;
str.append(QStringLiteral("LtsSession: this=%1").arg(QString::number(reinterpret_cast<quintptr>(this))));
#ifdef BUILD_RTI
str.append(QStringLiteral(", domainId=%1, partitionId=%2").arg(domainId()).arg(partitionId()));
#endif
str.append(QStringLiteral(", workspaceId='%1'").arg(workspaceId()));
#ifdef BUILD_RTI
str.append(QStringLiteral(", appToString='%1'").arg(appToString(app())));
str.append(QStringLiteral(", partitionType=%1, exerciseId='%2'").arg(partitionType()).arg(exerciseId()));
str.append(QStringLiteral(", LtsSessionDataDds=%1").arg(LtsSessionDataDds::toString()));
#else
str.append(QStringLiteral(", app=Login (stub)"));
#endif
return str;
}
#ifdef BUILD_RTI
QWidget* LtsSession::baseLayoutWidget()
{
// qWarning() << "baseLayoutWidget" << m_baseLayout;
// qWarning() << "baseLayoutWidget (widget)" << static_cast<QWidget *>(m_baseLayout);
return static_cast<QWidget*>(m_baseLayout);
}
#else
QWidget* LtsSession::baseLayoutWidget()
{
return nullptr;
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
void LtsSession::aboutToCloseTab(LayoutArea area)
{
m_baseLayout->getTabFromLayoutArea(area)->aboutToClose();
}
void LtsSession::setDependency(LtsSession* session)
#else
void LtsSession::aboutToCloseTab(LayoutArea /*area*/)
{
if (session == this)
{
Q_ASSERT(session != this);
ERROR_LOG(m_logger) << "Tried to set session dependency on self";
return;
}
m_dependency = session;
// no-op in non-RTI build
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
void LtsSession::aboutToClose()
{
emit sessionAboutToBeDestroyed(this);
@@ -168,11 +203,20 @@ void LtsSession::aboutToClose()
aboutToCloseTab(LayoutArea::eSpecialTab);
aboutToCloseTab(LayoutArea::eMainTab);
}
#else
void LtsSession::aboutToClose()
{
emit sessionAboutToBeDestroyed(this);
// no-op in non-RTI build
}
#endif // BUILD_RTI
void LtsSession::slotStopWaitDialog()
{
#ifdef BUILD_RTI
disconnect(this, &LtsSession::signalDoneInitializingSession, this, &LtsSession::slotStopWaitDialog);
disconnect(this, &LtsSession::signalInitializationAborted, this, &LtsSession::slotStopWaitDialog);
#endif
LtsWidgets::LtsGlobalWaitDialog::getInstance()->done();
}
@@ -284,13 +328,16 @@ QIcon LtsSession::appToIcon(LtsAppDescriptor::App app)
return LtsUtils::iconFromSvg(appIconFilename(app));
}
#ifdef BUILD_RTI
bool LtsSession::removeMenuAction(LtsWidgets::LtsDragIcon* icon)
{
if (!m_baseLayout)
return false;
return m_baseLayout->removeMenuAction(icon);
}
#endif
#ifdef BUILD_RTI
void LtsSession::setMenuVisible(bool visible)
{
m_menuVisible = visible;
@@ -300,7 +347,14 @@ void LtsSession::setMenuVisible(bool visible)
m_baseLayout->getMenu()->setVisible(visible);
}
#else
void LtsSession::setMenuVisible(bool /*visible*/)
{
// no-op in non-RTI build
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
LtsDragIcon* LtsSession::addAction(const LtsWidgets::PluginData& plData, bool isFirstRun)
{
if (!m_baseLayout)
@@ -327,7 +381,21 @@ LtsNotification::LtsNotification* LtsSession::createNotification(const QString&
return n;
}
#else
LtsDragIcon* LtsSession::addAction(const LtsWidgets::PluginData& /*plData*/, bool /*isFirstRun*/)
{
// no-op in non-RTI build
return nullptr;
}
LtsNotification::LtsNotification* LtsSession::createNotification(const QString& /*identifier*/)
{
// no-op in non-RTI build
return nullptr;
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
bool LtsSession::init(const DdsConnectionParams& connParams,
const QVector<LtsPluginManager::AppPluginInstance>& dataPluginList,
const QVector<LtsPluginManager::AppPluginInstance>& guiPluginList, bool hidden)
@@ -348,7 +416,9 @@ bool LtsSession::init(const dds::domain::DomainParticipant& dp, const DdsConnect
initializePlugins(dataPluginList, guiPluginList);
return true;
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
void LtsSession::initializePlugins(const QVector<LtsPluginManager::AppPluginInstance>& dataPluginList,
const QVector<LtsPluginManager::AppPluginInstance>& guiPluginList)
{
@@ -410,7 +480,9 @@ void LtsSession::initializeDataPlugins(const QVector<LtsPluginManager::AppPlugin
addAvailablaeDataPluginInterfaces(newDataPluginInterfaces);
}
#endif
#ifdef BUILD_RTI
void LtsSession::initializeGuiPlugins(const QVector<LtsPluginManager::AppPluginInstance>& guiPluginList)
{
m_failedFetches.clear();
@@ -526,7 +598,9 @@ void LtsSession::initializeGuiPlugins(const QVector<LtsPluginManager::AppPluginI
QTimer::singleShot(100, this, &LtsSession::slotStartPluginInit);
// executePayloads(); // does not execute when there are no payloads, but is needed to be called here !
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
LtsTabWidget* LtsSession::locateWidget(QWidget* widgetToLocate, LayoutArea area)
{
if (!m_baseLayout)
@@ -539,7 +613,14 @@ LtsTabWidget* LtsSession::locateWidget(QWidget* widgetToLocate, LayoutArea area)
return nullptr; // not found!
}
#else
LtsTabWidget* LtsSession::locateWidget(QWidget* /*widgetToLocate*/, LayoutArea /*area*/)
{
return nullptr;
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
void LtsSession::enableBaseLayoutMenu(bool on)
{
if (m_baseLayout)
@@ -560,6 +641,17 @@ void LtsSession::enableBaseLayoutArea(LtsWidgets::LayoutArea area, bool on)
ltsWidget->setEnabled(on);
}
}
#else
void LtsSession::enableBaseLayoutMenu(bool /*on*/)
{
// no-op in non-RTI build
}
void LtsSession::enableBaseLayoutArea(LtsWidgets::LayoutArea /*area*/, bool /*on*/)
{
// no-op in non-RTI build
}
#endif // BUILD_RTI
int LtsSession::workstationIp()
{
@@ -610,30 +702,41 @@ QString LtsSession::workstationName()
const QString LtsSession::workspaceId() const
{
#ifdef BUILD_RTI
if (isReplayPartition())
return QStringLiteral("replay_%1").arg(QString::number(partitionId()));
#endif
return m_workspaceId; // sessionManager->workspaceId();
}
void LtsSession::setWorkspaceId(const QString &newWorkspaceId /* <= MW: that's why I like "get" in getter names (needed to prepend "new" because of already existing method with the name "workspaceId") */)
{
#ifdef BUILD_RTI
DEBUG_LOG(m_logger) << LOGFUNCTION << " change workspaceId: cur = '" << m_workspaceId << "' for app '"
<< appToString(app()) << "'";
DEBUG_LOG(m_logger) << LOGFUNCTION << " change workspaceId: new = '" << newWorkspaceId << "' for app '"
<< appToString(app()) << "'";
#else
Q_UNUSED(newWorkspaceId)
#endif
m_workspaceId = newWorkspaceId; // m_sessionManager->setWorkspaceId(workspaceId);
#ifdef BUILD_RTI
if (m_baseLayout)
m_baseLayout->setWorkspaceId(workspaceId() /* use getter instead of member var, as replay partition strings can only be retrieved with the getter */);
#endif // BUILD_RTI
emit workspaceIdChanged(newWorkspaceId);
}
#ifdef BUILD_RTI
ExcState LtsSession::exerciseState() const
{
return m_exerciseData ? m_exerciseData->exState : ExerciseState::eUnknown;
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
void LtsSession::connectOnlineHelpButton(LtsWidgets::LtsDialog* widget)
{
// FIXME: HACK: also connect show online help here !!
@@ -649,7 +752,6 @@ void LtsSession::slotStapleTopicLockHandler(LtsWidgets::LtsDialog* widget)
}
widget->setProperty("topicLockStapled", true);
#ifdef BUILD_RTI
connectOnlineHelpButton(widget);
if (m_coreFtc == nullptr)
{
@@ -684,12 +786,22 @@ void LtsSession::slotStapleTopicLockHandler(LtsWidgets::LtsDialog* widget)
// qWarning() << "added tlh to" << widget->windowTitle();
connectOnlineHelpButton(widget);
}
#else
void LtsSession::connectOnlineHelpButton(LtsWidgets::LtsDialog* widget)
{
Q_UNUSED(widget)
DEBUG_LOG(m_logger) << "BUILD_RTI=OFF, skipping TopicLockHandler setup";
#endif
// no-op in non-RTI build
}
void LtsSession::slotStapleTopicLockHandler(LtsWidgets::LtsDialog* widget)
{
Q_UNUSED(widget)
// no-op in non-RTI build
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
bool LtsSession::focusTab(const QString& menuGroup, const QString& identifier, LtsWidgets::LayoutArea area)
{
if (!m_baseLayout)
@@ -700,7 +812,17 @@ bool LtsSession::focusTab(const QString& menuGroup, const QString& identifier, L
return m_baseLayout->focusTab(menuGroup, identifier, area);
}
#else
bool LtsSession::focusTab(const QString& menuGroup, const QString& identifier, LtsWidgets::LayoutArea area)
{
Q_UNUSED(menuGroup)
Q_UNUSED(identifier)
Q_UNUSED(area)
return false;
}
#endif
#ifdef BUILD_RTI
LtsWidgets::LtsDialog* LtsSession::getWidget(const QString& menuGroup, const QString& identifier,
LtsWidgets::LayoutArea area)
{
@@ -713,7 +835,18 @@ LtsWidgets::LtsDialog* LtsSession::getWidget(const QString& menuGroup, const QSt
return m_baseLayout->getWidget(menuGroup, identifier, area);
}
#else
LtsWidgets::LtsDialog* LtsSession::getWidget(const QString& menuGroup, const QString& identifier,
LtsWidgets::LayoutArea area)
{
Q_UNUSED(menuGroup)
Q_UNUSED(identifier)
Q_UNUSED(area)
return nullptr;
}
#endif
#ifdef BUILD_RTI
bool LtsSession::widgetExists(const QString& menuGroup, const QString& identifier, LayoutArea area) const
{
if (!m_baseLayout)
@@ -724,7 +857,14 @@ bool LtsSession::widgetExists(const QString& menuGroup, const QString& identifie
QWidget* existingWidget = tab->getWidget(menuGroup, identifier);
return existingWidget != nullptr;
}
#else
bool LtsSession::widgetExists(const QString& /*menuGroup*/, const QString& /*identifier*/, LayoutArea /*area*/) const
{
return false;
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
bool LtsSession::addWidget(LtsDialog* widget, const QString& menuGroup, const QString& identifier, LayoutArea area,
bool setClosable)
{
@@ -739,12 +879,25 @@ bool LtsSession::addWidget(LtsDialog* widget, const QString& menuGroup, const QS
// slotStapleTopicLockHandler(widget); => already done in blw's addWidget (below!)
// FIXMe: connect(widget, &LtsDialog::signalShowOnlineHelp,
// this, &LtsSession::slotShowOnlineHelp,
// Qt::UniqueConnection); done in slotStaple.. because using LtsDialog::addDialog does NOT reach this
// Qt::UniqueConnection) done in slotStaple.. because using LtsDialog::addDialog does NOT reach this
// code here !
return m_baseLayout->addWidget(widget, menuGroup, identifier, area, setClosable);
}
#else
bool LtsSession::addWidget(LtsDialog* widget, const QString& menuGroup, const QString& identifier, LayoutArea area,
bool setClosable)
{
Q_UNUSED(widget)
Q_UNUSED(menuGroup)
Q_UNUSED(identifier)
Q_UNUSED(area)
Q_UNUSED(setClosable)
return false;
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
void LtsSession::setExerciseData(const LtsWidgets::ExerciseData& exerciseData)
{
// avoid mutiple calls (and signal to emitted multiple times)
@@ -759,11 +912,6 @@ void LtsSession::setExerciseData(const LtsWidgets::ExerciseData& exerciseData)
emit signalExerciseDataChanged();
}
const LtsWidgets::ExerciseData* LtsSession::exerciseData() const
{
return m_exerciseData;
}
void LtsSession::setProfilePicture(const QPixmap& pixmap)
{
// partitionType(); ?!?
@@ -771,7 +919,9 @@ void LtsSession::setProfilePicture(const QPixmap& pixmap)
return;
m_baseLayout->setProfilePicture(pixmap);
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
void LtsSession::makeVisible()
{
Q_ASSERT(m_baseLayout == nullptr);
@@ -783,7 +933,14 @@ void LtsSession::makeVisible()
createBaseLayout();
}
#else
void LtsSession::makeVisible()
{
// BUILD_RTI=OFF: No base layout to create
}
#endif
#ifdef BUILD_RTI
void LtsSession::refetchActions()
{
// get actions
@@ -853,12 +1010,27 @@ void LtsSession::refetchActions()
m_firstActionsFetch = false;
}
#else
void LtsSession::refetchActions()
{
// BUILD_RTI=OFF: No actions to fetch
m_firstActionsFetch = false;
}
#endif
#ifdef BUILD_RTI
void LtsSession::slotSwap()
{
LtsMultiMonitor::LtsMultiMonitor::getInstance()->selectAndSwap(m_baseLayout);
}
#else
void LtsSession::slotSwap()
{
// BUILD_RTI=OFF: No base layout to swap
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
int LtsSession::screenId() const
{
if (m_baseLayout == nullptr)
@@ -872,7 +1044,14 @@ int LtsSession::screenId() const
return screen->screenId();
}
#else
int LtsSession::screenId() const
{
return -1;
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
int LtsSession::screenContainerId() const
{
if (m_baseLayout == nullptr)
@@ -894,7 +1073,14 @@ int LtsSession::screenContainerId() const
return -3;
}
#else
int LtsSession::screenContainerId() const
{
return -1;
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
int LtsSession::screenTypeId() const
{
if (m_baseLayout == nullptr)
@@ -908,12 +1094,26 @@ int LtsSession::screenTypeId() const
return screen->screenType();
}
#else
int LtsSession::screenTypeId() const
{
return -1;
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
LtsAppDescriptor::App LtsSession::app() const
{
return m_sessionManager ? m_sessionManager->appId() : LtsAppDescriptor::App::Login;
}
#else
LtsAppDescriptor::App LtsSession::app() const
{
return LtsAppDescriptor::App::Login;
}
#endif
#ifdef BUILD_RTI
bool LtsSession::event(QEvent* e)
{
if (e->type() == QEvent::LanguageChange)
@@ -921,7 +1121,15 @@ bool LtsSession::event(QEvent* e)
return LtsSessionDataDds::event(e);
}
#else
bool LtsSession::event(QEvent* e)
{
Q_UNUSED(e)
return LtsSessionDataDds::event(e);
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
void LtsSession::addDeveloperActions()
{
// DEVELOPER / DEBUG MENU
@@ -992,7 +1200,9 @@ void LtsSession::addDeveloperActions()
}
// END DEVELOPER / DEBUG MENU
}
#endif
#ifdef BUILD_RTI
bool LtsSession::notifyUnsavedChanges()
{
if (m_baseLayout == nullptr)
@@ -1000,7 +1210,14 @@ bool LtsSession::notifyUnsavedChanges()
return m_baseLayout->notifyUnsavedChanges();
}
#else
bool LtsSession::notifyUnsavedChanges()
{
return true;
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
void LtsSession::createBaseLayout()
{
// qWarning() << "mep" <<
@@ -1154,7 +1371,9 @@ void LtsSession::createBaseLayout()
emit hideAllOtherBLWs(this);
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
void LtsSession::slotMonitorSelected()
{
auto mmm = LtsMultiMonitor::LtsMultiMonitor::getInstance();
@@ -1182,7 +1401,9 @@ void LtsSession::slotMonitorSelected()
emit signalScreenIdChanged(m_screenId, m_screenContainerId, screen->screenType());
}
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
void LtsSession::delayScriptEditorStart()
{
DEBUG_LOG(m_logger) << "LtsSession::delayScriptEditorStart ";
@@ -1195,7 +1416,9 @@ void LtsSession::delayScriptEditorStart()
// TRUE, it was not emitted before
}
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
bool LtsSession::isChildOfSession(QWidget* child)
{
if (!child)
@@ -1204,6 +1427,12 @@ bool LtsSession::isChildOfSession(QWidget* child)
}
return baseLayout()->isAncestorOf(child);
}
#else
bool LtsSession::isChildOfSession(QWidget* /*child*/)
{
return false;
}
#endif // BUILD_RTI
void LtsSession::doneInitializingSession()
{
@@ -1219,6 +1448,7 @@ void LtsSession::doneInitializingSession()
return;
}
#ifdef BUILD_RTI
if (!m_sessionManager->isHeadless()) // disallow base layout creation if app is headless
{
int sessionCount = m_sessionManager->sessionCount();
@@ -1234,7 +1464,9 @@ void LtsSession::doneInitializingSession()
// return;
// }
}
#endif
#ifdef BUILD_RTI
// qWarning() << "emit signalDoneInitializingSession();";
if (!createTopicClient<Core::Interface::Ftc>(m_coreFtc))
@@ -1258,10 +1490,15 @@ void LtsSession::doneInitializingSession()
}
// qWarning() << "not headless !";
#else
// Non-RTI build: always emit signal after initialization
emit _signalDoneInitializingSession();
#endif // BUILD_RTI
}
void LtsSession::slotShowOnlineHelp(const QString& fileName)
{
#ifdef BUILD_RTI
if (m_ohvIfc == nullptr)
{
LtsWidgets::LtsMessageDialog::showMessage(baseLayout() /* can be 0ptr */, tr("Online Help not available."));
@@ -1269,8 +1506,13 @@ void LtsSession::slotShowOnlineHelp(const QString& fileName)
}
m_ohvIfc->showHelp(fileName);
#else
Q_UNUSED(fileName)
// no-op in non-RTI build
#endif
}
#ifdef BUILD_RTI
void LtsSession::slotShowOperatorSettings()
{
const QMap<LtsDragIcon*, PluginData>& mapButtons = m_baseLayout->mapButtons();
@@ -1297,7 +1539,9 @@ void LtsSession::slotShowOperatorSettings()
WARNING_LOG(m_logger) << "action for showing operator settings not found !!";
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
void LtsSession::slotStartPluginInit()
{
m_initializeThesePlugins = m_guiPluginInterfaces; // copy
@@ -1377,7 +1621,9 @@ void LtsSession::slotPluginInitDone() // NEVER call this directly, queue a signa
m_slotPluginInitDoneMutex = false; // unlock
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
void LtsSession::slotExecuteNextPayload()
{
LtsWidgets::LtsGlobalWaitDialog::getInstance()->wait(); // show wait dialog again
@@ -1481,7 +1727,9 @@ void LtsSession::slotExecuteNextPayload()
// m_ignoreSignalInLoop = false; // executing payload is done, clear the ignore-flag
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
void LtsSession::executePayloads()
{
// look for gui plugins (needed to get execution priority and run payloads)
@@ -1511,7 +1759,9 @@ void LtsSession::executePayloads()
doneInitializingSession();
}
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
void LtsSession::clearDataPluginInterfaces()
{
QMap<QString, std::weak_ptr<DataPluginBase::Interface>> weakDataPluginInterfaces;
@@ -1540,7 +1790,9 @@ void LtsSession::clearDataPluginInterfaces()
}
#endif
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
void LtsSession::clearGuiPluginInterfaces()
{
bool bInClearPluginInterfaces = true;
@@ -1581,10 +1833,13 @@ void LtsSession::clearGuiPluginInterfaces()
}
#endif
}
#endif // BUILD_RTI
#ifdef BUILD_RTI
LtsSessionManager* LtsSession::getSessionManager()
{
return m_sessionManager;
}
#endif
} // namespace LtsSession