ADD: added ownship sender to Sensorcontrol and fixed a bug in trackfusion

This commit is contained in:
hwinkel
2024-02-16 12:21:20 +01:00
parent f839ea4815
commit bf263b64f6
5 changed files with 58 additions and 13 deletions

View File

@@ -23,9 +23,12 @@ namespace Entities
{
public:
SensorManager(SimCore::Identifier OwnID,std::shared_ptr<kubecontrol::PodController> PodController, ushort sensorPort = 5557);
SensorManager(std::shared_ptr<SimCore::SimTrack> OwnShipTrack,std::shared_ptr<kubecontrol::PodController> PodController, ushort sensorPort = 5557);
/**
* @brief stops the sensor manager
*/
void stop();
/**
*@brief starts a Sensor based on a KubePod Object
*@param KubePod - a KubePod Item ready to start
@@ -116,10 +119,16 @@ namespace Entities
*/
std::unique_ptr<SimCore::TracklistUpdate> getTrackListUpdate();
/**
* @brief send the ownShipTrack to all connected Sensors
*/
void sendOwnShipTrackToSensors();
private:
const SimCore::Identifier OwnId_;
std::shared_ptr<SimCore::SimTrack> OwnShiptrack_;
ushort SensorPort_ = 5557;
std::map<std::string, std::shared_ptr<Sensor::SensorControl>> SensorStore;
@@ -128,6 +137,9 @@ namespace Entities
TrackList::Trackfusion Trackfusion_;
std::thread sensorUpdater_;
std::atomic_bool stopUpdater_;
std::shared_ptr<DirectCommunication::DirectCommunicationServer> SensorServer_ = nullptr;