Initial commit
This commit is contained in:
commit
b7d90b9afe
16245 files changed
+3396666
No files matched your search
@@ -0,0 +1,96 @@
|
||||
/**
|
||||
* @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!
|
||||
|
||||
};
|
||||
}
|
||||
Reference in new issue
Block a user