Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/Lts/Proxies/CombatNetRadio/positions_cnr.h
T

62 lines
1.4 KiB
C++
Executable File

#pragma once
#include "WebSocketInterface/Messages/reply_message.h"
#include <QVector>
#include <boost/optional.hpp>
namespace AudioVideoManagement
{
namespace Interface
{
class Dtc;
}
class CnrConfig;
class FrequencyPlanning;
}
namespace ParticipantManagement
{
namespace Interface
{
class Dtc;
}
class Participant;
}
namespace CombatNetRadio
{
class ExerciseManager;
class PositionsCnr
{
public:
explicit PositionsCnr(int exerciseId, ExerciseManager *exerciseManager, ParticipantManagement::Interface::Dtc *ppmDtc, AudioVideoManagement::Interface::Dtc *avmDtc);
WebSocketInterface::Messages::PositionsCnrMessage::PositionsCnrMessageData data() const;
QVector<WebSocketInterface::Messages::ReplyMessage::LonLatPoint> positionsForGlobal(const AudioVideoManagement::CnrConfig &config) const;
private:
QVector<WebSocketInterface::Messages::ReplyMessage::LonLatPoint> positionsFor(const AudioVideoManagement::CnrConfig &config) const;
QVector<WebSocketInterface::Messages::ReplyMessage::LonLatPoint> positionsForLocal(const AudioVideoManagement::CnrConfig &config) const;
boost::optional<AudioVideoManagement::FrequencyPlanning> activePlan() const;
int m_exerciseId;
ExerciseManager *m_exerciseManager;
ParticipantManagement::Interface::Dtc *m_ppmDtc;
AudioVideoManagement::Interface::Dtc *m_avmDtc;
};
}