public void HandleNewData(FormattedData currentData) { if (_seperationCalculator.IsAircraftInAirspace(currentData) == true) { foreach (FormattedData aircraft in _seperationCalculator.GetAircraftList()) { if (currentData.Tag == aircraft.Tag) { oldData = aircraft; } } currentData.Speed = _speedCalculator.CalculateSpeed(currentData, oldData); currentData.CompassCourse = _positionCalculator.CalculatePosition(currentData); _seperationCalculator.Remove(oldData); _seperationCalculator.Add(currentData); if (_seperationCalculator.IsThereConflict(currentData) == true) { IsThereConflicts = true; _render = new RenderWithSeperation(_clear); _render.PrintData(_seperationCalculator.GetAircraftList(), _seperationCalculator.GetConflicts()); } else { IsThereConflicts = false; _render = new RenderData(_clear); _render.PrintData(_seperationCalculator.GetAircraftList(), _seperationCalculator.GetConflicts()); } } else { _seperationCalculator.Add(currentData); _seperationCalculator.IsThereConflict(currentData); if (_seperationCalculator.IsThereConflict(currentData) == true) { IsThereConflicts = true; _render = new RenderWithSeperation(_clear); _render.PrintData(_seperationCalculator.GetAircraftList(), _seperationCalculator.GetConflicts()); } else { IsThereConflicts = false; _render = new RenderData(_clear); _render.PrintData(_seperationCalculator.GetAircraftList(), _seperationCalculator.GetConflicts()); } } }