Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/build4/Lts/Proxies/TrainingAreaBase/tab_ftc.h
T
torstenandCopilot 7173785915 Qt6 Migration: Complete migration with DDS/RTI support and build validation
Major Changes:
- Merged latest Qt5 devel content from dlbo (292 files changed, 7 new dirs)
- Consolidated forward-declarations and include folders
- Removed unneeded modules per Niklas' repo check list

Build System Fixes:
- Fixed CMake VERSION_GREATER syntax in ParticipantManagement/CMakeLists.txt
- Added VLC packages (libvlc-dev, vlc-plugin-base) to docker_build.sh
- Added PostgreSQL dev packages (libpq-dev, postgresql-server-dev-all) to Dockerfile
- Fixed locale warnings (ANSI_X3.4-1968 → C.UTF-8)
- Fixed ArcGIS SDK path warnings when BUILD_ARCGIS=OFF

Code Generation Fixes:
- Fixed IDL enum collisions (PortType→CorePortType/DdsutPortType, PdmEventType)
- Fixed Grantlee template svc_translation.cpp.grantlee:
  - Changed {{ idl_enum.name }}_def:: to {{ idl_enum.name }}::
  - Fixed .underlying() calls for C++11 scoped enums (enum class)
- Removed generated files from repo (moc_*, *_dtc.h, *_ftc.h)

Validation:
- BUILD_RTI=ON: SUCCESS
- BUILD_RTI=OFF: SUCCESS
- C++17 standard maintained for RTI 7.7 compatibility
- Ubuntu 26.04 Docker environment verified

Remaining Warnings (expected):
- BgViewer, KDChart, KDReports, Poppler-Qt6 not found (optional features)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-09-15 18:20:26 +00:00

690 lines
32 KiB
C++

/**
* TrainingAreaBase Function Topic Client interface
* $Id$
* $HeadURL$
* $Author$
*/
// filename: tab_ftc.h
#pragma once
#include <TrainingAreaBase/tab_export.h>
#include <TrainingAreaBase/tab.hpp>
#include <DDS/Core/function_reply_object.h>
namespace DDSConnector
{
class DdsConnector;
}
namespace TrainingAreaBase
{
namespace Interface
{
class Ftc
{
protected:
Ftc() = default;
public:
virtual ~Ftc() = default;
/**
* Create a new instance for TrainingAreaBase::Interface::Ftc.
* The caller takes ownership of the returned instance!
*/
TAB_CLIENT_EXPORT static std::shared_ptr<Ftc> create(const std::shared_ptr<DDSConnector::DdsConnector> &ddsConnector, bool forceCreate = false);
/**
* A unique identifier for this FTC
*/
TAB_CLIENT_EXPORT static inline const char *identifier() { return "TrainingAreaBase.Interface.Ftc"; }
/**
* initialize this Ftc instance with all function topic clients
*/
virtual bool enableAll(bool enable = true) = 0;
/**
* only initialize the specific function topic client (can be called instead enableAll())
*/
virtual bool enableDemandBite(bool enable = true) = 0;
virtual bool isDemandBiteEnabled() const = 0;
virtual bool enableDemandInit(bool enable = true) = 0;
virtual bool isDemandInitEnabled() const = 0;
virtual bool enableDemandVulnerabilityStateChange(bool enable = true) = 0;
virtual bool isDemandVulnerabilityStateChangeEnabled() const = 0;
virtual bool enableSendCesHit(bool enable = true) = 0;
virtual bool isSendCesHitEnabled() const = 0;
virtual bool enableAdlerCalculateTrajectory(bool enable = true) = 0;
virtual bool isAdlerCalculateTrajectoryEnabled() const = 0;
virtual bool enableAdlerFqFb(bool enable = true) = 0;
virtual bool isAdlerFqFbEnabled() const = 0;
virtual bool enableAdlerFqAf(bool enable = true) = 0;
virtual bool isAdlerFqAfEnabled() const = 0;
virtual bool enableAdlerFqVm(bool enable = true) = 0;
virtual bool isAdlerFqVmEnabled() const = 0;
virtual bool enableSendEquipmentMessage(bool enable = true) = 0;
virtual bool isSendEquipmentMessageEnabled() const = 0;
virtual bool enableSendFireSmokeMarkerData(bool enable = true) = 0;
virtual bool isSendFireSmokeMarkerDataEnabled() const = 0;
virtual bool enableSendGeopairingData(bool enable = true) = 0;
virtual bool isSendGeopairingDataEnabled() const = 0;
virtual bool enableSendParticipantBeStillWarning(bool enable = true) = 0;
virtual bool isSendParticipantBeStillWarningEnabled() const = 0;
virtual bool enableSendTargetData(bool enable = true) = 0;
virtual bool isSendTargetDataEnabled() const = 0;
virtual bool enableSendResetAllDusMines(bool enable = true) = 0;
virtual bool isSendResetAllDusMinesEnabled() const = 0;
virtual bool enableSetDevicePower(bool enable = true) = 0;
virtual bool isSetDevicePowerEnabled() const = 0;
virtual bool enableDemandConfigurationReport(bool enable = true) = 0;
virtual bool isDemandConfigurationReportEnabled() const = 0;
virtual bool enableDemandParticipantConfiguration(bool enable = true) = 0;
virtual bool isDemandParticipantConfigurationEnabled() const = 0;
virtual bool enableDemandParticipantMode(bool enable = true) = 0;
virtual bool isDemandParticipantModeEnabled() const = 0;
virtual bool enableSendCesHitInformation(bool enable = true) = 0;
virtual bool isSendCesHitInformationEnabled() const = 0;
virtual bool enableSendLanguageSelection(bool enable = true) = 0;
virtual bool isSendLanguageSelectionEnabled() const = 0;
virtual bool enableSendOcData(bool enable = true) = 0;
virtual bool isSendOcDataEnabled() const = 0;
virtual bool enableSendParticipantBlockedArea(bool enable = true) = 0;
virtual bool isSendParticipantBlockedAreaEnabled() const = 0;
virtual bool enableSendParticipantConfiguration(bool enable = true) = 0;
virtual bool isSendParticipantConfigurationEnabled() const = 0;
virtual bool enableSendParticipantMode(bool enable = true) = 0;
virtual bool isSendParticipantModeEnabled() const = 0;
virtual bool enableSendParticipantSwVerions(bool enable = true) = 0;
virtual bool isSendParticipantSwVerionsEnabled() const = 0;
virtual bool enableSendSetSanitation(bool enable = true) = 0;
virtual bool isSendSetSanitationEnabled() const = 0;
virtual bool enableSendSetVulnerabilityModel(bool enable = true) = 0;
virtual bool isSendSetVulnerabilityModelEnabled() const = 0;
virtual bool enableSendSelectiveReammunition(bool enable = true) = 0;
virtual bool isSendSelectiveReammunitionEnabled() const = 0;
virtual bool enableSendControlData(bool enable = true) = 0;
virtual bool isSendControlDataEnabled() const = 0;
virtual bool enableSendOcCommand(bool enable = true) = 0;
virtual bool isSendOcCommandEnabled() const = 0;
virtual bool enableSendUasWaypoint(bool enable = true) = 0;
virtual bool isSendUasWaypointEnabled() const = 0;
virtual bool enableSendModifyUasState(bool enable = true) = 0;
virtual bool isSendModifyUasStateEnabled() const = 0;
virtual bool enableSendExFireReadiness(bool enable = true) = 0;
virtual bool isSendExFireReadinessEnabled() const = 0;
virtual bool enableSendExFiredReport(bool enable = true) = 0;
virtual bool isSendExFiredReportEnabled() const = 0;
virtual bool enableSendExConfirmationReport(bool enable = true) = 0;
virtual bool isSendExConfirmationReportEnabled() const = 0;
//
// Function Topic 'DemandBite'
//
class DemandBiteReplyHandler
{
public:
DemandBiteReplyHandler() = default;
virtual ~DemandBiteReplyHandler() = default;
virtual void onDemandBiteReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t demandBiteRequest(const DemandBiteRequest &request, DemandBiteReplyHandler *handler) = 0;
virtual int64_t demandBiteRequest(const DemandBiteRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t demandBiteRequest(const DemandBiteRequest &request) noexcept(false) = 0; // await
virtual int64_t lastDemandBiteRequestUniqueId() const = 0;
//
// Function Topic 'DemandInit'
//
class DemandInitReplyHandler
{
public:
DemandInitReplyHandler() = default;
virtual ~DemandInitReplyHandler() = default;
virtual void onDemandInitReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t demandInitRequest(const DemandInitRequest &request, DemandInitReplyHandler *handler) = 0;
virtual int64_t demandInitRequest(const DemandInitRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t demandInitRequest(const DemandInitRequest &request) noexcept(false) = 0; // await
virtual int64_t lastDemandInitRequestUniqueId() const = 0;
//
// Function Topic 'DemandVulnerabilityStateChange'
//
class DemandVulnerabilityStateChangeReplyHandler
{
public:
DemandVulnerabilityStateChangeReplyHandler() = default;
virtual ~DemandVulnerabilityStateChangeReplyHandler() = default;
virtual void onDemandVulnerabilityStateChangeReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t demandVulnerabilityStateChangeRequest(const DemandVulnerabilityStateChangeRequest &request, DemandVulnerabilityStateChangeReplyHandler *handler) = 0;
virtual int64_t demandVulnerabilityStateChangeRequest(const DemandVulnerabilityStateChangeRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t demandVulnerabilityStateChangeRequest(const DemandVulnerabilityStateChangeRequest &request) noexcept(false) = 0; // await
virtual int64_t lastDemandVulnerabilityStateChangeRequestUniqueId() const = 0;
//
// Function Topic 'SendCesHit'
//
class SendCesHitReplyHandler
{
public:
SendCesHitReplyHandler() = default;
virtual ~SendCesHitReplyHandler() = default;
virtual void onSendCesHitReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendCesHitRequest(const SendCesHitRequest &request, SendCesHitReplyHandler *handler) = 0;
virtual int64_t sendCesHitRequest(const SendCesHitRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendCesHitRequest(const SendCesHitRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendCesHitRequestUniqueId() const = 0;
//
// Function Topic 'AdlerCalculateTrajectory'
//
class AdlerCalculateTrajectoryReplyHandler
{
public:
AdlerCalculateTrajectoryReplyHandler() = default;
virtual ~AdlerCalculateTrajectoryReplyHandler() = default;
virtual void onAdlerCalculateTrajectoryReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t adlerCalculateTrajectoryRequest(const AdlerCalculateTrajectoryRequest &request, AdlerCalculateTrajectoryReplyHandler *handler) = 0;
virtual int64_t adlerCalculateTrajectoryRequest(const AdlerCalculateTrajectoryRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t adlerCalculateTrajectoryRequest(const AdlerCalculateTrajectoryRequest &request) noexcept(false) = 0; // await
virtual int64_t lastAdlerCalculateTrajectoryRequestUniqueId() const = 0;
//
// Function Topic 'AdlerFqFb'
//
class AdlerFqFbReplyHandler
{
public:
AdlerFqFbReplyHandler() = default;
virtual ~AdlerFqFbReplyHandler() = default;
virtual void onAdlerFqFbReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t adlerFqFbRequest(const AdlerFqFbRequest &request, AdlerFqFbReplyHandler *handler) = 0;
virtual int64_t adlerFqFbRequest(const AdlerFqFbRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t adlerFqFbRequest(const AdlerFqFbRequest &request) noexcept(false) = 0; // await
virtual int64_t lastAdlerFqFbRequestUniqueId() const = 0;
//
// Function Topic 'AdlerFqAf'
//
class AdlerFqAfReplyHandler
{
public:
AdlerFqAfReplyHandler() = default;
virtual ~AdlerFqAfReplyHandler() = default;
virtual void onAdlerFqAfReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t adlerFqAfRequest(const AdlerFqAfRequest &request, AdlerFqAfReplyHandler *handler) = 0;
virtual int64_t adlerFqAfRequest(const AdlerFqAfRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t adlerFqAfRequest(const AdlerFqAfRequest &request) noexcept(false) = 0; // await
virtual int64_t lastAdlerFqAfRequestUniqueId() const = 0;
//
// Function Topic 'AdlerFqVm'
//
class AdlerFqVmReplyHandler
{
public:
AdlerFqVmReplyHandler() = default;
virtual ~AdlerFqVmReplyHandler() = default;
virtual void onAdlerFqVmReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t adlerFqVmRequest(const AdlerFqVmRequest &request, AdlerFqVmReplyHandler *handler) = 0;
virtual int64_t adlerFqVmRequest(const AdlerFqVmRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t adlerFqVmRequest(const AdlerFqVmRequest &request) noexcept(false) = 0; // await
virtual int64_t lastAdlerFqVmRequestUniqueId() const = 0;
//
// Function Topic 'SendEquipmentMessage'
//
class SendEquipmentMessageReplyHandler
{
public:
SendEquipmentMessageReplyHandler() = default;
virtual ~SendEquipmentMessageReplyHandler() = default;
virtual void onSendEquipmentMessageReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendEquipmentMessageRequest(const SendEquipmentMessageRequest &request, SendEquipmentMessageReplyHandler *handler) = 0;
virtual int64_t sendEquipmentMessageRequest(const SendEquipmentMessageRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendEquipmentMessageRequest(const SendEquipmentMessageRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendEquipmentMessageRequestUniqueId() const = 0;
//
// Function Topic 'SendFireSmokeMarkerData'
//
class SendFireSmokeMarkerDataReplyHandler
{
public:
SendFireSmokeMarkerDataReplyHandler() = default;
virtual ~SendFireSmokeMarkerDataReplyHandler() = default;
virtual void onSendFireSmokeMarkerDataReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendFireSmokeMarkerDataRequest(const SendFireSmokeMarkerDataRequest &request, SendFireSmokeMarkerDataReplyHandler *handler) = 0;
virtual int64_t sendFireSmokeMarkerDataRequest(const SendFireSmokeMarkerDataRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendFireSmokeMarkerDataRequest(const SendFireSmokeMarkerDataRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendFireSmokeMarkerDataRequestUniqueId() const = 0;
//
// Function Topic 'SendGeopairingData'
//
class SendGeopairingDataReplyHandler
{
public:
SendGeopairingDataReplyHandler() = default;
virtual ~SendGeopairingDataReplyHandler() = default;
virtual void onSendGeopairingDataReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendGeopairingDataRequest(const SendGeopairingDataRequest &request, SendGeopairingDataReplyHandler *handler) = 0;
virtual int64_t sendGeopairingDataRequest(const SendGeopairingDataRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendGeopairingDataRequest(const SendGeopairingDataRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendGeopairingDataRequestUniqueId() const = 0;
//
// Function Topic 'SendParticipantBeStillWarning'
//
class SendParticipantBeStillWarningReplyHandler
{
public:
SendParticipantBeStillWarningReplyHandler() = default;
virtual ~SendParticipantBeStillWarningReplyHandler() = default;
virtual void onSendParticipantBeStillWarningReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendParticipantBeStillWarningRequest(const SendParticipantBeStillWarningRequest &request, SendParticipantBeStillWarningReplyHandler *handler) = 0;
virtual int64_t sendParticipantBeStillWarningRequest(const SendParticipantBeStillWarningRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendParticipantBeStillWarningRequest(const SendParticipantBeStillWarningRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendParticipantBeStillWarningRequestUniqueId() const = 0;
//
// Function Topic 'SendTargetData'
//
class SendTargetDataReplyHandler
{
public:
SendTargetDataReplyHandler() = default;
virtual ~SendTargetDataReplyHandler() = default;
virtual void onSendTargetDataReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendTargetDataRequest(const SendTargetDataRequest &request, SendTargetDataReplyHandler *handler) = 0;
virtual int64_t sendTargetDataRequest(const SendTargetDataRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendTargetDataRequest(const SendTargetDataRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendTargetDataRequestUniqueId() const = 0;
//
// Function Topic 'SendResetAllDusMines'
//
class SendResetAllDusMinesReplyHandler
{
public:
SendResetAllDusMinesReplyHandler() = default;
virtual ~SendResetAllDusMinesReplyHandler() = default;
virtual void onSendResetAllDusMinesReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendResetAllDusMinesRequest(const SendResetAllDusMinesRequest &request, SendResetAllDusMinesReplyHandler *handler) = 0;
virtual int64_t sendResetAllDusMinesRequest(const SendResetAllDusMinesRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendResetAllDusMinesRequest(const SendResetAllDusMinesRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendResetAllDusMinesRequestUniqueId() const = 0;
//
// Function Topic 'SetDevicePower'
//
class SetDevicePowerReplyHandler
{
public:
SetDevicePowerReplyHandler() = default;
virtual ~SetDevicePowerReplyHandler() = default;
virtual void onSetDevicePowerReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t setDevicePowerRequest(const SetDevicePowerRequest &request, SetDevicePowerReplyHandler *handler) = 0;
virtual int64_t setDevicePowerRequest(const SetDevicePowerRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t setDevicePowerRequest(const SetDevicePowerRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSetDevicePowerRequestUniqueId() const = 0;
//
// Function Topic 'DemandConfigurationReport'
//
class DemandConfigurationReportReplyHandler
{
public:
DemandConfigurationReportReplyHandler() = default;
virtual ~DemandConfigurationReportReplyHandler() = default;
virtual void onDemandConfigurationReportReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t demandConfigurationReportRequest(const DemandConfigurationReportRequest &request, DemandConfigurationReportReplyHandler *handler) = 0;
virtual int64_t demandConfigurationReportRequest(const DemandConfigurationReportRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t demandConfigurationReportRequest(const DemandConfigurationReportRequest &request) noexcept(false) = 0; // await
virtual int64_t lastDemandConfigurationReportRequestUniqueId() const = 0;
//
// Function Topic 'DemandParticipantConfiguration'
//
class DemandParticipantConfigurationReplyHandler
{
public:
DemandParticipantConfigurationReplyHandler() = default;
virtual ~DemandParticipantConfigurationReplyHandler() = default;
virtual void onDemandParticipantConfigurationReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t demandParticipantConfigurationRequest(const DemandParticipantConfigurationRequest &request, DemandParticipantConfigurationReplyHandler *handler) = 0;
virtual int64_t demandParticipantConfigurationRequest(const DemandParticipantConfigurationRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t demandParticipantConfigurationRequest(const DemandParticipantConfigurationRequest &request) noexcept(false) = 0; // await
virtual int64_t lastDemandParticipantConfigurationRequestUniqueId() const = 0;
//
// Function Topic 'DemandParticipantMode'
//
class DemandParticipantModeReplyHandler
{
public:
DemandParticipantModeReplyHandler() = default;
virtual ~DemandParticipantModeReplyHandler() = default;
virtual void onDemandParticipantModeReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t demandParticipantModeRequest(const DemandParticipantModeRequest &request, DemandParticipantModeReplyHandler *handler) = 0;
virtual int64_t demandParticipantModeRequest(const DemandParticipantModeRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t demandParticipantModeRequest(const DemandParticipantModeRequest &request) noexcept(false) = 0; // await
virtual int64_t lastDemandParticipantModeRequestUniqueId() const = 0;
//
// Function Topic 'SendCesHitInformation'
//
class SendCesHitInformationReplyHandler
{
public:
SendCesHitInformationReplyHandler() = default;
virtual ~SendCesHitInformationReplyHandler() = default;
virtual void onSendCesHitInformationReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendCesHitInformationRequest(const SendCesHitInformation &request, SendCesHitInformationReplyHandler *handler) = 0;
virtual int64_t sendCesHitInformationRequest(const SendCesHitInformation &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendCesHitInformationRequest(const SendCesHitInformation &request) noexcept(false) = 0; // await
virtual int64_t lastSendCesHitInformationRequestUniqueId() const = 0;
//
// Function Topic 'SendLanguageSelection'
//
class SendLanguageSelectionReplyHandler
{
public:
SendLanguageSelectionReplyHandler() = default;
virtual ~SendLanguageSelectionReplyHandler() = default;
virtual void onSendLanguageSelectionReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendLanguageSelectionRequest(const SendLanguageSelectionRequest &request, SendLanguageSelectionReplyHandler *handler) = 0;
virtual int64_t sendLanguageSelectionRequest(const SendLanguageSelectionRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendLanguageSelectionRequest(const SendLanguageSelectionRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendLanguageSelectionRequestUniqueId() const = 0;
//
// Function Topic 'SendOcData'
//
class SendOcDataReplyHandler
{
public:
SendOcDataReplyHandler() = default;
virtual ~SendOcDataReplyHandler() = default;
virtual void onSendOcDataReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendOcDataRequest(const SendOcDataRequest &request, SendOcDataReplyHandler *handler) = 0;
virtual int64_t sendOcDataRequest(const SendOcDataRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendOcDataRequest(const SendOcDataRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendOcDataRequestUniqueId() const = 0;
//
// Function Topic 'SendParticipantBlockedArea'
//
class SendParticipantBlockedAreaReplyHandler
{
public:
SendParticipantBlockedAreaReplyHandler() = default;
virtual ~SendParticipantBlockedAreaReplyHandler() = default;
virtual void onSendParticipantBlockedAreaReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendParticipantBlockedAreaRequest(const SendParticipantBlockedAreaRequest &request, SendParticipantBlockedAreaReplyHandler *handler) = 0;
virtual int64_t sendParticipantBlockedAreaRequest(const SendParticipantBlockedAreaRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendParticipantBlockedAreaRequest(const SendParticipantBlockedAreaRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendParticipantBlockedAreaRequestUniqueId() const = 0;
//
// Function Topic 'SendParticipantConfiguration'
//
class SendParticipantConfigurationReplyHandler
{
public:
SendParticipantConfigurationReplyHandler() = default;
virtual ~SendParticipantConfigurationReplyHandler() = default;
virtual void onSendParticipantConfigurationReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendParticipantConfigurationRequest(const SendParticipantConfigurationRequest &request, SendParticipantConfigurationReplyHandler *handler) = 0;
virtual int64_t sendParticipantConfigurationRequest(const SendParticipantConfigurationRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendParticipantConfigurationRequest(const SendParticipantConfigurationRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendParticipantConfigurationRequestUniqueId() const = 0;
//
// Function Topic 'SendParticipantMode'
//
class SendParticipantModeReplyHandler
{
public:
SendParticipantModeReplyHandler() = default;
virtual ~SendParticipantModeReplyHandler() = default;
virtual void onSendParticipantModeReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendParticipantModeRequest(const SendParticipantModeRequest &request, SendParticipantModeReplyHandler *handler) = 0;
virtual int64_t sendParticipantModeRequest(const SendParticipantModeRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendParticipantModeRequest(const SendParticipantModeRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendParticipantModeRequestUniqueId() const = 0;
//
// Function Topic 'SendParticipantSwVerions'
//
class SendParticipantSwVerionsReplyHandler
{
public:
SendParticipantSwVerionsReplyHandler() = default;
virtual ~SendParticipantSwVerionsReplyHandler() = default;
virtual void onSendParticipantSwVerionsReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendParticipantSwVerionsRequest(const SendParticipantSwVerionsRequest &request, SendParticipantSwVerionsReplyHandler *handler) = 0;
virtual int64_t sendParticipantSwVerionsRequest(const SendParticipantSwVerionsRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendParticipantSwVerionsRequest(const SendParticipantSwVerionsRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendParticipantSwVerionsRequestUniqueId() const = 0;
//
// Function Topic 'SendSetSanitation'
//
class SendSetSanitationReplyHandler
{
public:
SendSetSanitationReplyHandler() = default;
virtual ~SendSetSanitationReplyHandler() = default;
virtual void onSendSetSanitationReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendSetSanitationRequest(const SendSetSanitationRequest &request, SendSetSanitationReplyHandler *handler) = 0;
virtual int64_t sendSetSanitationRequest(const SendSetSanitationRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendSetSanitationRequest(const SendSetSanitationRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendSetSanitationRequestUniqueId() const = 0;
//
// Function Topic 'SendSetVulnerabilityModel'
//
class SendSetVulnerabilityModelReplyHandler
{
public:
SendSetVulnerabilityModelReplyHandler() = default;
virtual ~SendSetVulnerabilityModelReplyHandler() = default;
virtual void onSendSetVulnerabilityModelReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendSetVulnerabilityModelRequest(const SendSetVulnerabilityModelRequest &request, SendSetVulnerabilityModelReplyHandler *handler) = 0;
virtual int64_t sendSetVulnerabilityModelRequest(const SendSetVulnerabilityModelRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendSetVulnerabilityModelRequest(const SendSetVulnerabilityModelRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendSetVulnerabilityModelRequestUniqueId() const = 0;
//
// Function Topic 'SendSelectiveReammunition'
//
class SendSelectiveReammunitionReplyHandler
{
public:
SendSelectiveReammunitionReplyHandler() = default;
virtual ~SendSelectiveReammunitionReplyHandler() = default;
virtual void onSendSelectiveReammunitionReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendSelectiveReammunitionRequest(const SendSelectiveReammunitionRequest &request, SendSelectiveReammunitionReplyHandler *handler) = 0;
virtual int64_t sendSelectiveReammunitionRequest(const SendSelectiveReammunitionRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendSelectiveReammunitionRequest(const SendSelectiveReammunitionRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendSelectiveReammunitionRequestUniqueId() const = 0;
//
// Function Topic 'SendControlData'
//
class SendControlDataReplyHandler
{
public:
SendControlDataReplyHandler() = default;
virtual ~SendControlDataReplyHandler() = default;
virtual void onSendControlDataReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendControlDataRequest(const SendControlDataRequest &request, SendControlDataReplyHandler *handler) = 0;
virtual int64_t sendControlDataRequest(const SendControlDataRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendControlDataRequest(const SendControlDataRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendControlDataRequestUniqueId() const = 0;
//
// Function Topic 'SendOcCommand'
//
class SendOcCommandReplyHandler
{
public:
SendOcCommandReplyHandler() = default;
virtual ~SendOcCommandReplyHandler() = default;
virtual void onSendOcCommandReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendOcCommandRequest(const SendOcCommandRequest &request, SendOcCommandReplyHandler *handler) = 0;
virtual int64_t sendOcCommandRequest(const SendOcCommandRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendOcCommandRequest(const SendOcCommandRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendOcCommandRequestUniqueId() const = 0;
//
// Function Topic 'SendUasWaypoint'
//
class SendUasWaypointReplyHandler
{
public:
SendUasWaypointReplyHandler() = default;
virtual ~SendUasWaypointReplyHandler() = default;
virtual void onSendUasWaypointReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendUasWaypointRequest(const SendUasWaypointRequest &request, SendUasWaypointReplyHandler *handler) = 0;
virtual int64_t sendUasWaypointRequest(const SendUasWaypointRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendUasWaypointRequest(const SendUasWaypointRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendUasWaypointRequestUniqueId() const = 0;
//
// Function Topic 'SendModifyUasState'
//
class SendModifyUasStateReplyHandler
{
public:
SendModifyUasStateReplyHandler() = default;
virtual ~SendModifyUasStateReplyHandler() = default;
virtual void onSendModifyUasStateReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendModifyUasStateRequest(const SendModifyUasStateRequest &request, SendModifyUasStateReplyHandler *handler) = 0;
virtual int64_t sendModifyUasStateRequest(const SendModifyUasStateRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendModifyUasStateRequest(const SendModifyUasStateRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendModifyUasStateRequestUniqueId() const = 0;
//
// Function Topic 'SendExFireReadiness'
//
class SendExFireReadinessReplyHandler
{
public:
SendExFireReadinessReplyHandler() = default;
virtual ~SendExFireReadinessReplyHandler() = default;
virtual void onSendExFireReadinessReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendExFireReadinessRequest(const SendExFireReadinessRequest &request, SendExFireReadinessReplyHandler *handler) = 0;
virtual int64_t sendExFireReadinessRequest(const SendExFireReadinessRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendExFireReadinessRequest(const SendExFireReadinessRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendExFireReadinessRequestUniqueId() const = 0;
//
// Function Topic 'SendExFiredReport'
//
class SendExFiredReportReplyHandler
{
public:
SendExFiredReportReplyHandler() = default;
virtual ~SendExFiredReportReplyHandler() = default;
virtual void onSendExFiredReportReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendExFiredReportRequest(const SendExFiredReportRequest &request, SendExFiredReportReplyHandler *handler) = 0;
virtual int64_t sendExFiredReportRequest(const SendExFiredReportRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendExFiredReportRequest(const SendExFiredReportRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendExFiredReportRequestUniqueId() const = 0;
//
// Function Topic 'SendExConfirmationReport'
//
class SendExConfirmationReportReplyHandler
{
public:
SendExConfirmationReportReplyHandler() = default;
virtual ~SendExConfirmationReportReplyHandler() = default;
virtual void onSendExConfirmationReportReply(const Core::FunctionReplyObject &reply) = 0;
};
virtual int64_t sendExConfirmationReportRequest(const SendExConfirmationReportRequest &request, SendExConfirmationReportReplyHandler *handler) = 0;
virtual int64_t sendExConfirmationReportRequest(const SendExConfirmationReportRequest &request, const std::function<void(const Core::FunctionReplyObject&)> &cb) = 0;
virtual int32_t sendExConfirmationReportRequest(const SendExConfirmationReportRequest &request) noexcept(false) = 0; // await
virtual int64_t lastSendExConfirmationReportRequestUniqueId() const = 0;
};
} // namespace Interface
} // namespace TrainingAreaBase