Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/Lts/Services/InfrastructureManagement/handler_main_structure_element.h
T
torstenandCopilot d5af8b9764 Session 026: Lts/Services Qt5:: to Qt6:: migration
- Migrated all 104 CMakeLists.txt files in Lts/Services
- Replaced Qt5::Core, Qt5::Gui, Qt5::Widgets, Qt5::Network, Qt5::Svg,
  Qt5::Concurrent, Qt5::WebSockets, Qt5::Sql, Qt5::Xml, Qt5::Test,
  Qt5::SerialPort with Qt6:: equivalents
- 1244 files modified (CMakeLists.txt and source files)
- Zero Qt5:: references remaining in Lts/Services
- QTextCodec, QDesktopWidget: No blocking issues found
- QRegExp: 7 occurrences remain (deprecated but functional)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-25 19:23:30 +02:00

97 lines
4.1 KiB
C++
Executable File

/**
* @RDE_HEADER@
* ISM Handler Main Structure Elements
* $Id$
* $HeadURL$
* $Author$
* Created by Iuliana Ojog, SLSE, 2016-11-26
*/
#pragma once
#include <QMap>
#include <QSet>
#include "main_handler.h"
#include "base.h"
//-------------------------------------------------------------------------------------------------------------
namespace InfrastructureManagement
{
class ObjectMainStructureElement;
class ObjectStructureElement;
class MainHandler;
class HandlerMainStructureElement : public Base
, protected Interface::Fts::MainStructureElementModifyRequestHandler
, protected Interface::Fts::MainStructureElementModifyBridgeStatusRequestHandler
, protected Interface::Fts::MainStructureElementModifyPositionRequestHandler
, protected Interface::Fts::MainStructureElementRemoveRequestHandler
, protected Interface::Fts::StructureElementModifyRequestHandler
, protected Interface::Fts::StructureElementUpdateEffectOverrideRequestHandler
{
public:
explicit HandlerMainStructureElement(MainHandler *mainHandler);
~HandlerMainStructureElement();
bool init();
QHash<int, ObjectMainStructureElement *> getMainStructureElementsMap() const
{
return m_objectMainStructureElementMap;
}
ObjectMainStructureElement *getMainStructureElement(int mseId)
{
return m_objectMainStructureElementMap.value(mseId, nullptr);
}
QMap<int, ObjectStructureElement *> getStructureElementMap() const
{
return m_objectStructureElementMap;
}
ObjectStructureElement *getStructureElement(int seId)
{
return m_objectStructureElementMap.value(seId, nullptr);
}
void publishMainStructureElement(int buildingId);
void removedStructureElements(const QMap<int, ObjectStructureElement *> &removedElements);
void addedStructureElements(const QMap<int, ObjectStructureElement *> &addedElements);
public slots:
void onExerciseStateChanged(const ExerciseManagement::Exercise &data, DataModification mod);
private:
void onMainStructureElementModifyRequest(const rti::core::SampleIdentity &cookie,
const MainStructureElementModifyRequest &request) override;
Core::FunctionReplyObject onMainStructureElementCreate(const MainStructureElementModifyRequest &request);
Core::FunctionReplyObject onMainStructureElementModify(const MainStructureElementModifyRequest &request);
Core::FunctionReplyObject onStructureElementUpdateEffectOverrideModify(const StructureElementUpdateEffectOverrideRequest &request);
void onMainStructureElementRemoveRequest(const rti::core::SampleIdentity &cookie,
const MainStructureElementRemoveRequest &request) override;
void onMainStructureElementModifyPositionRequest(const rti::core::SampleIdentity &cookie,
const MainStructureElementModifyPositionRequest &request) override;
void onMainStructureElementModifyBridgeStatusRequest(const rti::core::SampleIdentity &cookie,
const MainStructureElementModifyBridgeStatusRequest &request) override;
void onStructureElementModifyRequest(const rti::core::SampleIdentity &cookie,
const StructureElementModifyRequest &request) override;
void onStructureElementUpdateEffectOverrideRequest(const rti::core::SampleIdentity &cookie,
const StructureElementUpdateEffectOverrideRequest &request) override;
Core::FunctionReplyObject onStructureElementModify(const StructureElementModifyRequest &request);
void changeBuildingNameinMountingPoints(const StructureElement &se, MainStructureElementModifyRequest &mseData);
static void udpatePropertiesForRelayOverride(const int relay,
const InfrastructureManagement::EffectOverride state,
InfrastructureManagement::StructureElement &se);
private:
QHash<int, ObjectMainStructureElement *> m_objectMainStructureElementMap;
QMap<int, ObjectStructureElement *> m_objectStructureElementMap; // all structure element of all buildings, must be sorted!
};
}