- cmake/FindRTI.cmake: Add INTERFACE placeholder targets when RTI not found - cmake/FindRTI.cmake: Force BUILD_RTI=OFF when RTI not installed - Lts/Common/LtsSession/CMakeLists.txt: Make LtsSessionDataDds conditional on BUILD_RTI - Lts/Viewer/CMakeLists.txt: Make LtsDataView conditional on BUILD_RTI - Lts/Plugins/*/CMakeLists.txt: 97 plugin files wrapped in BUILD_RTI conditionals - cmake/NGLMacros.cmake: Fix NGL_ADD_BIG_RESOURCES macro (removed premature return()) - Multiple Qt6 API fixes: QLinkedList→std::list, QStringRef→QStringView, etc. - BUILD_RTI_FIXES_SUMMARY.md: Comprehensive documentation of all fixes Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
90 lines
2.3 KiB
C++
Executable File
90 lines
2.3 KiB
C++
Executable File
|
|
|
|
|
|
#pragma once
|
|
|
|
#include <InfrastructureManagement/ism.hpp>
|
|
#include <InfrastructureManagement/ism_dtc.h>
|
|
#include <InfrastructureManagement/ism_ftc.h>
|
|
#include <ParticipantManagement/ppm.hpp>
|
|
#include <Services/AreaEffectSimulation/aes.hpp>
|
|
|
|
#include <QObject>
|
|
#include <QSet>
|
|
#include <PluginInterfaces/data_plugin_interface.h>
|
|
|
|
#ifndef ISMDATAPLUGININTERFACE_EXPORT
|
|
# ifdef BUILD_STATIC_LIBRARIES
|
|
# define ISMDATAPLUGININTERFACE_EXPORT
|
|
# else
|
|
# if defined(MAKE_ISMDATAPLUGININTERFACE_LIB)
|
|
# define ISMDATAPLUGININTERFACE_EXPORT Q_DECL_EXPORT
|
|
# else
|
|
# define ISMDATAPLUGININTERFACE_EXPORT Q_DECL_IMPORT
|
|
# endif
|
|
# endif
|
|
#endif
|
|
|
|
namespace InfrastructureManagement
|
|
{
|
|
class ForeignDataInterface;
|
|
class MountingPoint;
|
|
|
|
// Forward declaration for MainSchedule from ParticipantManagement
|
|
using ParticipantManagement::MainSchedule;
|
|
|
|
|
|
class ISMDATAPLUGININTERFACE_EXPORT DataInterface : public DataPluginBase::Interface
|
|
{
|
|
public:
|
|
using DataPluginBase::Interface::Interface;
|
|
|
|
virtual std::shared_ptr<InfrastructureManagement::Interface::Dtc> getDtc() = 0;
|
|
virtual std::shared_ptr<InfrastructureManagement::Interface::Ftc> getFtc() = 0;
|
|
virtual std::shared_ptr<ForeignDataInterface> getForeignDataInterface() = 0;
|
|
};
|
|
|
|
|
|
|
|
class ISMDATAPLUGININTERFACE_EXPORT ForeignDataInterface : public QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
ForeignDataInterface() = default;
|
|
virtual ~ForeignDataInterface() = default;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
virtual bool mountingPoints(const std::function<void(const MountingPoint &data)> &cb) = 0;
|
|
virtual bool mountingPoints(const std::function<bool(const MountingPoint &data)> &cb) = 0;
|
|
virtual QHash<int32_t, MountingPoint> mountingPoints() const = 0;
|
|
virtual MountingPoint mountingPoint(int32_t mountingPointId) const = 0;
|
|
|
|
|
|
virtual MainSchedule mainSchedule(int32_t scheduleId) = 0;
|
|
|
|
|
|
|
|
virtual void setScheduleId(int32_t scheduleId) = 0;
|
|
virtual int32_t scheduleId() const = 0;
|
|
|
|
|
|
|
|
|
|
virtual QSet<int> buildingsInCurrentExercise() = 0;
|
|
virtual const QSet<int>& buildingsInCurrentExercise() const = 0;
|
|
virtual bool isBuildingsInCurrentExercise(int buildingId) const = 0;
|
|
|
|
|
|
|
|
Q_SIGNALS:
|
|
void mountingPointChanged(const InfrastructureManagement::MountingPoint &data, ParticipantManagement::DataModification modType);
|
|
void scheduleIdChanged(int32_t newScheduleId);
|
|
void buildingsInCurrentExerciseChanged();
|
|
};
|
|
|
|
}
|