From 40038b02ce651958ae703c8ecfe5f5578e1f7f09 Mon Sep 17 00:00:00 2001 From: Arturs Artamonovs Date: Sat, 26 Sep 2026 21:53:06 +0100 Subject: create adsbdecoder as UI, and renmae adsbdecoder to adsbdecodercli for terminal version --- ADSBDecoder/AirplaneTracker.swift | 134 -------------------------------------- 1 file changed, 134 deletions(-) delete mode 100644 ADSBDecoder/AirplaneTracker.swift (limited to 'ADSBDecoder/AirplaneTracker.swift') diff --git a/ADSBDecoder/AirplaneTracker.swift b/ADSBDecoder/AirplaneTracker.swift deleted file mode 100644 index 3c1edcf..0000000 --- a/ADSBDecoder/AirplaneTracker.swift +++ /dev/null @@ -1,134 +0,0 @@ -// -// AirplaneTracker.swift -// ADSBDecoder -// -// Created by Jacky Jack on 20/06/2024. -// - -import Foundation - -struct Airplane { - var addressReady:Bool = false - var Address:Int - var ICAOready:Bool = false - var ICAOname:String = "" - var locationReady:Bool = false - var lat:Double = 0.0 - var long:Double = 0.0 - var altitudeReady:Bool = false - var altitude:Int = 0 - var altitudeCount:Int = 0 - var positionDecoder:PositionDecoder = PositionDecoder() -} - -class AirPlaneTracker { - - var airplanes:[Int:Airplane] = [:] - - init () { - - } - - func addDF17Indentification(_ address: Int, _ ICAOname: String) { - if (airplanes[address] == nil) { - airplanes[address] = Airplane(addressReady: true, Address: address,ICAOready: true, ICAOname: ICAOname) - - } else { - if (airplanes[address]?.ICAOname == "") { - airplanes[address]?.ICAOname = ICAOname - airplanes[address]?.ICAOready = true - } - } - } - - func addDF17AirBornPosition(_ address: Int, _ cpr_lat: Int, _ cpr_long: Int, _ alt: Int, _ even: Bool) { - - if airplanes[address] == nil { - return - } - - //deal with altitude - //if airplanes[address] != nil { - if (airplanes[address]?.altitudeReady != true) { - airplanes[address]?.altitudeReady = true - airplanes[address]?.altitude = alt - airplanes[address]?.altitudeCount += 1 - } else { - airplanes[address]?.altitude = alt - airplanes[address]?.altitudeCount += 1 - } - //} - //do the airborn position - if (even) { - airplanes[address]?.positionDecoder.addEvenPosition(UInt32(cpr_lat), UInt32(cpr_long), mstime()) - } else { - - airplanes[address]?.positionDecoder.addOddPosition(UInt32(cpr_lat), UInt32(cpr_long), mstime()) - } - - } - - func getPosition(_ address: Int) -> (Double,Double)? { - if (airplanes[address] == nil) { - return nil - } - - if let airplane = airplanes[address] { - if (airplane.positionDecoder.calcPosition()) { - return airplane.positionDecoder.getPosition() - } - } - - return nil - } - - func getAltitude(_ address: Int) -> Int? { - if (airplanes[address] == nil) { - return nil - } - if let airplane = airplanes[address] { - if airplane.altitudeReady { - return airplane.altitude - } else { - return nil - } - } else { - return nil - } - } - - func getICAOname(_ address: Int) -> String? { - if (airplanes[address] == nil) { - return nil - } - if let airplane = airplanes[address] { - if airplane.ICAOready { - return airplane.ICAOname - } else { - return nil - } - } else { - return nil - } - } - - func printAllICAOnames() { - let extra = false - var once=false - for (address,plane) in airplanes { - if plane.ICAOready { - print(String("\(plane.ICAOname) "), terminator: "") - } - if (extra) { - print("Alitude \(plane.altitudeCount) Positions \(plane.positionDecoder.queue.count)") - } - //if (!once) { - // for i in plane.positionDecoder.queue { - // print("\(i.cpr_lat) \(i.cpr_long) \(i.even)") - // } - // once = true - //} - } - } - -} -- cgit v1.2.3