start with the interpretation of the position updates of aircrafts

This commit is contained in:
Sven Czarnian
2021-08-14 15:03:21 +02:00
parent 24f2ab45e3
commit d94e85b748

View File

@@ -72,5 +72,26 @@ EuroScopePlugIn::CRadarScreen* PlugIn::OnRadarScreenCreated(const char* displayN
} }
void PlugIn::OnRadarTargetPositionUpdate(EuroScopePlugIn::CRadarTarget radarTarget) { void PlugIn::OnRadarTargetPositionUpdate(EuroScopePlugIn::CRadarTarget radarTarget) {
/* ignore invalid targets */
if (false == radarTarget.IsValid())
return;
auto flightPlan = radarTarget.GetCorrelatedFlightPlan();
/* ignore invalid flightplans */
if (false == flightPlan.IsValid())
return;
/* ignore flights that are not tracked by the current controller */
if (false == flightPlan.GetTrackingControllerIsMe())
return;
/* ignore non-IFR flights */
if (nullptr == flightPlan.GetFlightPlanData().GetPlanType() || 'I' != *flightPlan.GetFlightPlanData().GetPlanType())
return;
/* TODO filter by distance to destination */
/* TODO filter by airborne identifier */
/* TODO generate protobuf message */
/* TODO send aircraft update */
} }