public void LogVehicleData(object sender, FormattedTransponderDataEventArgs args) { var vehicles = args.vehicles; Console.Clear(); AirplanesInAirSpace = "Current Airplanes in Airspace: \n"; foreach (var plane in vehicles) { AirplanesInAirSpace += Formatter.VehicleToString(plane); } Console.Write(AirplanesInAirSpace + SeperationConditions); SeperationConditions = ""; //Clear string for sep. cond. every tick }
public void OnRemoveAirPlainRecievedEvent(object sender, FormattedTransponderDataEventArgs e) { foreach (var vehicleAfter in e.vehicles) { foreach (var vehicleBefore in AirCrafts) { if (vehicleBefore.Tag == vehicleAfter.Tag) { AirCrafts.Remove(vehicleBefore); break; } } } }
public void LogVehicleData(object sender, FormattedTransponderDataEventArgs args) { var vehicles = args.vehicles; string path = @"C:\Temp\SeparationCondition.txt"; /*var myFile = new System.IO.StreamWriter(path, append:true); * myFile.Write("Seperation Condition between: \n"); * foreach (var plane in vehicles) * { * myFile.Write(Formatter.VehicleToString(plane)); * } * myFile.Close(); */ }
public void UpdateSeparationDetection(object sender, FormattedTransponderDataEventArgs e) { List <IVehicle> vehicles = e.vehicles; for (int i = 0; i < vehicles.Count - 1; i++) { for (int j = i + 1; j < vehicles.Count; j++) { if (SeparationDetection(vehicles[i], vehicles[j])) { EventHandler <FormattedTransponderDataEventArgs> handler = SeparationConditionEvent; List <IVehicle> confVehicles = new List <IVehicle>(); confVehicles.Add(vehicles[i]); confVehicles.Add(vehicles[j]); if (handler != null) { handler(this, new FormattedTransponderDataEventArgs(confVehicles)); } } } } }
public void OnTrackDataRecieved(object sender, FormattedTransponderDataEventArgs e) { foreach (var vehicleAfter in e.vehicles) { bool inList = false; foreach (var vehicleBefore in AirCrafts) { if (vehicleBefore.Tag == vehicleAfter.Tag) { inList = true; } vehicleBefore.Update(vehicleAfter); } if (!inList) { AirCrafts.Add(vehicleAfter); } } ATMMonitorEvent?.Invoke(this, new FormattedTransponderDataEventArgs(AirCrafts)); }
public void LogSeperationCondition(object sender, FormattedTransponderDataEventArgs args) { var vehicles = args.vehicles; SeperationConditions += "\nSeperation Condition between: " + vehicles[0].Tag + " and " + vehicles[1].Tag; }
public void TrackFilter_FormattedTransponderDataEventArgs_Get() { var data = new FormattedTransponderDataEventArgs(_aircraftlist); Assert.That(data.vehicles, Is.EqualTo(_aircraftlist)); }