summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ADSBDecoder.xcodeproj/project.pbxproj467
-rw-r--r--ADSBDecoder.xcodeproj/xcuserdata/jackyjack.xcuserdatad/xcschemes/xcschememanagement.plist16
-rw-r--r--ADSBDecoder/main.swift1
-rw-r--r--ADSBDecoderFramework/ADSBDecoderFramework.docc/ADSBDecoderFramework.md13
-rw-r--r--ADSBDecoderFramework/ADSBDecoderFramework.swift9
-rw-r--r--ADSBDecoderFramework/ADSBRegEx.swift (renamed from ADSBDecoder/ADSBRegEx.swift)0
-rw-r--r--ADSBDecoderFramework/Configs.swift (renamed from ADSBDecoder/Configs.swift)0
-rw-r--r--ADSBDecoderFramework/Decoder.swift (renamed from ADSBDecoder/Decoder.swift)0
-rw-r--r--ADSBDecoderFramework/PositionDecoder.swift (renamed from ADSBDecoder/PositionDecoder.swift)0
-rw-r--r--ADSBDecoderFramework/Query.swift (renamed from ADSBDecoder/Query.swift)0
-rw-r--r--ADSBDecoderFrameworkTests/ADSBDecoderFrameworkTests.swift21
-rw-r--r--LearnMapKit/ADSBNetRunner.swift16
-rw-r--r--LearnMapKit/NetworkConfigure.swift4
-rw-r--r--Utils/FileUtils.swift (renamed from ADSBDecoder/Utils.swift)0
14 files changed, 468 insertions, 79 deletions
diff --git a/ADSBDecoder.xcodeproj/project.pbxproj b/ADSBDecoder.xcodeproj/project.pbxproj
index 06c5a00..fbca833 100644
--- a/ADSBDecoder.xcodeproj/project.pbxproj
+++ b/ADSBDecoder.xcodeproj/project.pbxproj
@@ -3,33 +3,23 @@
archiveVersion = 1;
classes = {
};
- objectVersion = 56;
+ objectVersion = 70;
objects = {
/* Begin PBXBuildFile section */
+ 8D4F383A3065267F00EA3890 /* ADSBDecoderFramework.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8D4F382F3065267E00EA3890 /* ADSBDecoderFramework.framework */; };
+ 8D4F38443065267F00EA3890 /* ADSBDecoderFramework.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8D4F382F3065267E00EA3890 /* ADSBDecoderFramework.framework */; };
+ 8D4F38453065267F00EA3890 /* ADSBDecoderFramework.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 8D4F382F3065267E00EA3890 /* ADSBDecoderFramework.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
+ 8D4F3852306528DE00EA3890 /* ADSBDecoderFramework.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8D4F382F3065267E00EA3890 /* ADSBDecoderFramework.framework */; };
+ 8D4F385F30652A9200EA3890 /* Collections in Frameworks */ = {isa = PBXBuildFile; productRef = 8D4F385E30652A9200EA3890 /* Collections */; };
+ 8D4F386030652B4A00EA3890 /* AirplaneTracker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DB347C42C242BAC00F3C020 /* AirplaneTracker.swift */; };
8D8480EF2C56344B007ACD95 /* ArgumentParser in Frameworks */ = {isa = PBXBuildFile; productRef = 8D8480EE2C56344B007ACD95 /* ArgumentParser */; };
8D8480F12C60C79E007ACD95 /* ADSBDataQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D8480F02C60C79E007ACD95 /* ADSBDataQueue.swift */; };
8D8480F32C60C7E6007ACD95 /* ADSBNetRunner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D8480F22C60C7E6007ACD95 /* ADSBNetRunner.swift */; };
- 8D93B64C2C32030B00C91865 /* Utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D93B64B2C32030B00C91865 /* Utils.swift */; };
- 8D93B64F2C3206DD00C91865 /* AirplaneTracker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DB347C42C242BAC00F3C020 /* AirplaneTracker.swift */; };
- 8D93B6502C3206E700C91865 /* PositionDecoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DB347BE2C1C501200F3C020 /* PositionDecoder.swift */; };
- 8D93B6512C3206EB00C91865 /* Decoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DF756782C05A3D7008E8DFF /* Decoder.swift */; };
- 8D93B6532C32095300C91865 /* ADSBRegEx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D93B6522C32095300C91865 /* ADSBRegEx.swift */; };
- 8D93B6542C32095800C91865 /* ADSBRegEx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D93B6522C32095300C91865 /* ADSBRegEx.swift */; };
- 8D93B6552C32099B00C91865 /* Utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D93B64B2C32030B00C91865 /* Utils.swift */; };
- 8D93B6572C3D27A000C91865 /* Configs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D93B6562C3D27A000C91865 /* Configs.swift */; };
- 8D93B6582C3D290C00C91865 /* Configs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D93B6562C3D27A000C91865 /* Configs.swift */; };
8D93B6792C3FE6F400C91865 /* main.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D93B6782C3FE6F400C91865 /* main.swift */; };
8D93B67F2C3FEA0000C91865 /* NIO in Frameworks */ = {isa = PBXBuildFile; productRef = 8D93B67E2C3FEA0000C91865 /* NIO */; };
8D93B6812C3FEA5600C91865 /* NIO in Frameworks */ = {isa = PBXBuildFile; productRef = 8D93B6802C3FEA5600C91865 /* NIO */; };
- 8D93B6822C412C0A00C91865 /* Configs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D93B6562C3D27A000C91865 /* Configs.swift */; };
8D93B68A2C45986700C91865 /* main.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D93B6892C45986700C91865 /* main.swift */; };
- 8D93B68E2C4598A500C91865 /* Configs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D93B6562C3D27A000C91865 /* Configs.swift */; };
- 8D93B68F2C4598A900C91865 /* ADSBRegEx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D93B6522C32095300C91865 /* ADSBRegEx.swift */; };
- 8D93B6902C4598AC00C91865 /* Utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D93B64B2C32030B00C91865 /* Utils.swift */; };
- 8D93B6912C4598B300C91865 /* PositionDecoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DB347BE2C1C501200F3C020 /* PositionDecoder.swift */; };
- 8D93B6922C4598B800C91865 /* Decoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DF756782C05A3D7008E8DFF /* Decoder.swift */; };
- 8D93B6932C4598D900C91865 /* Query.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DF7567B2C09B7F7008E8DFF /* Query.swift */; };
8D93B6942C4598E300C91865 /* AirplaneTracker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DB347C42C242BAC00F3C020 /* AirplaneTracker.swift */; };
8D93B6962C45992F00C91865 /* ArgumentParser in Frameworks */ = {isa = PBXBuildFile; productRef = 8D93B6952C45992F00C91865 /* ArgumentParser */; };
8D93B6982C45993600C91865 /* Collections in Frameworks */ = {isa = PBXBuildFile; productRef = 8D93B6972C45993600C91865 /* Collections */; };
@@ -37,7 +27,6 @@
8D93B69C2C4A727300C91865 /* NetworkConfigure.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D93B69B2C4A727300C91865 /* NetworkConfigure.swift */; };
8D93B69E2C4A788F00C91865 /* NetADSBDecoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D93B69D2C4A788F00C91865 /* NetADSBDecoder.swift */; };
8D93B69F2C4A7A0700C91865 /* NetADSBDecoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D93B69D2C4A788F00C91865 /* NetADSBDecoder.swift */; };
- 8DB347BF2C1C501200F3C020 /* PositionDecoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DB347BE2C1C501200F3C020 /* PositionDecoder.swift */; };
8DB347C32C1C53ED00F3C020 /* Collections in Frameworks */ = {isa = PBXBuildFile; productRef = 8DB347C22C1C53ED00F3C020 /* Collections */; };
8DB347C52C242BAC00F3C020 /* AirplaneTracker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DB347C42C242BAC00F3C020 /* AirplaneTracker.swift */; };
8DEC6F2E2C2E9C3000AC6209 /* ADSBFileRunner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DEC6F2D2C2E9C3000AC6209 /* ADSBFileRunner.swift */; };
@@ -46,9 +35,6 @@
8DF756632C0595AA008E8DFF /* main.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DF756622C0595AA008E8DFF /* main.swift */; };
8DF7566C2C0595F6008E8DFF /* ArgumentParser in Frameworks */ = {isa = PBXBuildFile; productRef = 8DF7566B2C0595F6008E8DFF /* ArgumentParser */; };
8DF756742C059969008E8DFF /* main.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DF756732C059969008E8DFF /* main.swift */; };
- 8DF756792C05A3D7008E8DFF /* Decoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DF756782C05A3D7008E8DFF /* Decoder.swift */; };
- 8DF7567A2C06F550008E8DFF /* Decoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DF756782C05A3D7008E8DFF /* Decoder.swift */; };
- 8DF7567C2C09B7F7008E8DFF /* Query.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DF7567B2C09B7F7008E8DFF /* Query.swift */; };
8DF756852C10556A008E8DFF /* LearnMapKitApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DF756842C10556A008E8DFF /* LearnMapKitApp.swift */; };
8DF756872C10556A008E8DFF /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DF756862C10556A008E8DFF /* ContentView.swift */; };
8DF756892C10556C008E8DFF /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 8DF756882C10556C008E8DFF /* Assets.xcassets */; };
@@ -59,6 +45,27 @@
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
+ 8D4F383B3065267F00EA3890 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = 8DF756572C0595AA008E8DFF /* Project object */;
+ proxyType = 1;
+ remoteGlobalIDString = 8D4F382E3065267E00EA3890;
+ remoteInfo = ADSBDecoderFramework;
+ };
+ 8D4F383D3065267F00EA3890 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = 8DF756572C0595AA008E8DFF /* Project object */;
+ proxyType = 1;
+ remoteGlobalIDString = 8DF756812C10556A008E8DFF;
+ remoteInfo = LearnMapKit;
+ };
+ 8D4F38423065267F00EA3890 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = 8DF756572C0595AA008E8DFF /* Project object */;
+ proxyType = 1;
+ remoteGlobalIDString = 8D4F382E3065267E00EA3890;
+ remoteInfo = ADSBDecoderFramework;
+ };
8DF756932C10556C008E8DFF /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 8DF756572C0595AA008E8DFF /* Project object */;
@@ -76,6 +83,17 @@
/* End PBXContainerItemProxy section */
/* Begin PBXCopyFilesBuildPhase section */
+ 8D4F38493065267F00EA3890 /* Embed Frameworks */ = {
+ isa = PBXCopyFilesBuildPhase;
+ buildActionMask = 2147483647;
+ dstPath = "";
+ dstSubfolderSpec = 10;
+ files = (
+ 8D4F38453065267F00EA3890 /* ADSBDecoderFramework.framework in Embed Frameworks */,
+ );
+ name = "Embed Frameworks";
+ runOnlyForDeploymentPostprocessing = 0;
+ };
8D93B6742C3FE6F400C91865 /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
@@ -115,11 +133,10 @@
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
+ 8D4F382F3065267E00EA3890 /* ADSBDecoderFramework.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ADSBDecoderFramework.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ 8D4F38393065267F00EA3890 /* ADSBDecoderFrameworkTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ADSBDecoderFrameworkTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
8D8480F02C60C79E007ACD95 /* ADSBDataQueue.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ADSBDataQueue.swift; sourceTree = "<group>"; };
8D8480F22C60C7E6007ACD95 /* ADSBNetRunner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ADSBNetRunner.swift; sourceTree = "<group>"; };
- 8D93B64B2C32030B00C91865 /* Utils.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Utils.swift; sourceTree = "<group>"; };
- 8D93B6522C32095300C91865 /* ADSBRegEx.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ADSBRegEx.swift; sourceTree = "<group>"; };
- 8D93B6562C3D27A000C91865 /* Configs.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Configs.swift; sourceTree = "<group>"; };
8D93B6762C3FE6F400C91865 /* Net1090 */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = Net1090; sourceTree = BUILT_PRODUCTS_DIR; };
8D93B6782C3FE6F400C91865 /* main.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = main.swift; sourceTree = "<group>"; };
8D93B6872C45986700C91865 /* ADSBStats */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = ADSBStats; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -127,7 +144,6 @@
8D93B6992C4A665B00C91865 /* NetConfigView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NetConfigView.swift; sourceTree = "<group>"; };
8D93B69B2C4A727300C91865 /* NetworkConfigure.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NetworkConfigure.swift; sourceTree = "<group>"; };
8D93B69D2C4A788F00C91865 /* NetADSBDecoder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NetADSBDecoder.swift; sourceTree = "<group>"; };
- 8DB347BE2C1C501200F3C020 /* PositionDecoder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PositionDecoder.swift; sourceTree = "<group>"; };
8DB347C42C242BAC00F3C020 /* AirplaneTracker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AirplaneTracker.swift; sourceTree = "<group>"; };
8DEC6F2D2C2E9C3000AC6209 /* ADSBFileRunner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ADSBFileRunner.swift; sourceTree = "<group>"; };
8DEC6F312C31530C00AC6209 /* FlighState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FlighState.swift; sourceTree = "<group>"; };
@@ -135,8 +151,6 @@
8DF756622C0595AA008E8DFF /* main.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = main.swift; sourceTree = "<group>"; };
8DF756712C059969008E8DFF /* Test */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = Test; sourceTree = BUILT_PRODUCTS_DIR; };
8DF756732C059969008E8DFF /* main.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = main.swift; sourceTree = "<group>"; };
- 8DF756782C05A3D7008E8DFF /* Decoder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Decoder.swift; sourceTree = "<group>"; };
- 8DF7567B2C09B7F7008E8DFF /* Query.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Query.swift; sourceTree = "<group>"; };
8DF756822C10556A008E8DFF /* LearnMapKit.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = LearnMapKit.app; sourceTree = BUILT_PRODUCTS_DIR; };
8DF756842C10556A008E8DFF /* LearnMapKitApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LearnMapKitApp.swift; sourceTree = "<group>"; };
8DF756862C10556A008E8DFF /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = "<group>"; };
@@ -150,7 +164,100 @@
8DF756A22C10556C008E8DFF /* LearnMapKitUITestsLaunchTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LearnMapKitUITestsLaunchTests.swift; sourceTree = "<group>"; };
/* End PBXFileReference section */
+/* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */
+ 8D4F384E306528A200EA3890 /* PBXFileSystemSynchronizedBuildFileExceptionSet */ = {
+ isa = PBXFileSystemSynchronizedBuildFileExceptionSet;
+ membershipExceptions = (
+ FileUtils.swift,
+ );
+ target = 8DF7565E2C0595AA008E8DFF /* ADSBDecoder */;
+ };
+ 8D4F384F306528A200EA3890 /* PBXFileSystemSynchronizedBuildFileExceptionSet */ = {
+ isa = PBXFileSystemSynchronizedBuildFileExceptionSet;
+ membershipExceptions = (
+ FileUtils.swift,
+ );
+ target = 8DF756812C10556A008E8DFF /* LearnMapKit */;
+ };
+ 8D4F3850306528A200EA3890 /* PBXFileSystemSynchronizedBuildFileExceptionSet */ = {
+ isa = PBXFileSystemSynchronizedBuildFileExceptionSet;
+ membershipExceptions = (
+ FileUtils.swift,
+ );
+ target = 8D93B6862C45986700C91865 /* ADSBStats */;
+ };
+ 8D4F3851306528A200EA3890 /* PBXFileSystemSynchronizedBuildFileExceptionSet */ = {
+ isa = PBXFileSystemSynchronizedBuildFileExceptionSet;
+ membershipExceptions = (
+ FileUtils.swift,
+ );
+ target = 8D4F382E3065267E00EA3890 /* ADSBDecoderFramework */;
+ };
+ 8D4F38533065291400EA3890 /* PBXFileSystemSynchronizedBuildFileExceptionSet */ = {
+ isa = PBXFileSystemSynchronizedBuildFileExceptionSet;
+ membershipExceptions = (
+ ADSBRegEx.swift,
+ Configs.swift,
+ Decoder.swift,
+ PositionDecoder.swift,
+ Query.swift,
+ );
+ target = 8DF7565E2C0595AA008E8DFF /* ADSBDecoder */;
+ };
+ 8D4F38543065291400EA3890 /* PBXFileSystemSynchronizedBuildFileExceptionSet */ = {
+ isa = PBXFileSystemSynchronizedBuildFileExceptionSet;
+ membershipExceptions = (
+ Configs.swift,
+ Decoder.swift,
+ );
+ target = 8DF756702C059969008E8DFF /* Test */;
+ };
+ 8D4F38553065291400EA3890 /* PBXFileSystemSynchronizedBuildFileExceptionSet */ = {
+ isa = PBXFileSystemSynchronizedBuildFileExceptionSet;
+ membershipExceptions = (
+ ADSBRegEx.swift,
+ Configs.swift,
+ Decoder.swift,
+ PositionDecoder.swift,
+ );
+ target = 8DF756812C10556A008E8DFF /* LearnMapKit */;
+ };
+ 8D4F38563065291400EA3890 /* PBXFileSystemSynchronizedBuildFileExceptionSet */ = {
+ isa = PBXFileSystemSynchronizedBuildFileExceptionSet;
+ membershipExceptions = (
+ ADSBRegEx.swift,
+ Configs.swift,
+ Decoder.swift,
+ PositionDecoder.swift,
+ Query.swift,
+ );
+ target = 8D93B6862C45986700C91865 /* ADSBStats */;
+ };
+/* End PBXFileSystemSynchronizedBuildFileExceptionSet section */
+
+/* Begin PBXFileSystemSynchronizedRootGroup section */
+ 8D4F38303065267E00EA3890 /* ADSBDecoderFramework */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (8D4F38533065291400EA3890 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, 8D4F38543065291400EA3890 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, 8D4F38553065291400EA3890 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, 8D4F38563065291400EA3890 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = ADSBDecoderFramework; sourceTree = "<group>"; };
+ 8D4F383F3065267F00EA3890 /* ADSBDecoderFrameworkTests */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = ADSBDecoderFrameworkTests; sourceTree = "<group>"; };
+ 8D4F384D3065289B00EA3890 /* Utils */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (8D4F384E306528A200EA3890 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, 8D4F384F306528A200EA3890 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, 8D4F3850306528A200EA3890 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, 8D4F3851306528A200EA3890 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = Utils; sourceTree = "<group>"; };
+/* End PBXFileSystemSynchronizedRootGroup section */
+
/* Begin PBXFrameworksBuildPhase section */
+ 8D4F382C3065267E00EA3890 /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 8D4F385F30652A9200EA3890 /* Collections in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 8D4F38363065267F00EA3890 /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 8D4F383A3065267F00EA3890 /* ADSBDecoderFramework.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
8D93B6732C3FE6F400C91865 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
@@ -172,6 +279,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
+ 8D4F3852306528DE00EA3890 /* ADSBDecoderFramework.framework in Frameworks */,
8DB347C32C1C53ED00F3C020 /* Collections in Frameworks */,
8DF7566C2C0595F6008E8DFF /* ArgumentParser in Frameworks */,
);
@@ -188,6 +296,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
+ 8D4F38443065267F00EA3890 /* ADSBDecoderFramework.framework in Frameworks */,
8D8480EF2C56344B007ACD95 /* ArgumentParser in Frameworks */,
8DEC6F302C2E9F0E00AC6209 /* Collections in Frameworks */,
8D93B6812C3FEA5600C91865 /* NIO in Frameworks */,
@@ -238,6 +347,7 @@
8DF756562C0595AA008E8DFF = {
isa = PBXGroup;
children = (
+ 8D4F384D3065289B00EA3890 /* Utils */,
8DF756692C0595BB008E8DFF /* Data */,
8DF756612C0595AA008E8DFF /* ADSBDecoder */,
8DF756722C059969008E8DFF /* Test */,
@@ -246,6 +356,8 @@
8DF7569F2C10556C008E8DFF /* LearnMapKitUITests */,
8D93B6772C3FE6F400C91865 /* Net1090 */,
8D93B6882C45986700C91865 /* ADSBStats */,
+ 8D4F38303065267E00EA3890 /* ADSBDecoderFramework */,
+ 8D4F383F3065267F00EA3890 /* ADSBDecoderFrameworkTests */,
8DF756602C0595AA008E8DFF /* Products */,
8DB347C12C1C53ED00F3C020 /* Frameworks */,
);
@@ -261,6 +373,8 @@
8DF7569C2C10556C008E8DFF /* LearnMapKitUITests.xctest */,
8D93B6762C3FE6F400C91865 /* Net1090 */,
8D93B6872C45986700C91865 /* ADSBStats */,
+ 8D4F382F3065267E00EA3890 /* ADSBDecoderFramework.framework */,
+ 8D4F38393065267F00EA3890 /* ADSBDecoderFrameworkTests.xctest */,
);
name = Products;
sourceTree = "<group>";
@@ -269,13 +383,7 @@
isa = PBXGroup;
children = (
8DF756622C0595AA008E8DFF /* main.swift */,
- 8DF756782C05A3D7008E8DFF /* Decoder.swift */,
- 8DF7567B2C09B7F7008E8DFF /* Query.swift */,
- 8DB347BE2C1C501200F3C020 /* PositionDecoder.swift */,
8DB347C42C242BAC00F3C020 /* AirplaneTracker.swift */,
- 8D93B64B2C32030B00C91865 /* Utils.swift */,
- 8D93B6522C32095300C91865 /* ADSBRegEx.swift */,
- 8D93B6562C3D27A000C91865 /* Configs.swift */,
);
path = ADSBDecoder;
sourceTree = "<group>";
@@ -340,7 +448,66 @@
};
/* End PBXGroup section */
+/* Begin PBXHeadersBuildPhase section */
+ 8D4F382A3065267E00EA3890 /* Headers */ = {
+ isa = PBXHeadersBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXHeadersBuildPhase section */
+
/* Begin PBXNativeTarget section */
+ 8D4F382E3065267E00EA3890 /* ADSBDecoderFramework */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 8D4F38463065267F00EA3890 /* Build configuration list for PBXNativeTarget "ADSBDecoderFramework" */;
+ buildPhases = (
+ 8D4F382A3065267E00EA3890 /* Headers */,
+ 8D4F382B3065267E00EA3890 /* Sources */,
+ 8D4F382C3065267E00EA3890 /* Frameworks */,
+ 8D4F382D3065267E00EA3890 /* Resources */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ fileSystemSynchronizedGroups = (
+ 8D4F38303065267E00EA3890 /* ADSBDecoderFramework */,
+ 8D4F384D3065289B00EA3890 /* Utils */,
+ );
+ name = ADSBDecoderFramework;
+ packageProductDependencies = (
+ 8D4F385E30652A9200EA3890 /* Collections */,
+ );
+ productName = ADSBDecoderFramework;
+ productReference = 8D4F382F3065267E00EA3890 /* ADSBDecoderFramework.framework */;
+ productType = "com.apple.product-type.framework";
+ };
+ 8D4F38383065267F00EA3890 /* ADSBDecoderFrameworkTests */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 8D4F384A3065267F00EA3890 /* Build configuration list for PBXNativeTarget "ADSBDecoderFrameworkTests" */;
+ buildPhases = (
+ 8D4F38353065267F00EA3890 /* Sources */,
+ 8D4F38363065267F00EA3890 /* Frameworks */,
+ 8D4F38373065267F00EA3890 /* Resources */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ 8D4F383C3065267F00EA3890 /* PBXTargetDependency */,
+ 8D4F383E3065267F00EA3890 /* PBXTargetDependency */,
+ );
+ fileSystemSynchronizedGroups = (
+ 8D4F383F3065267F00EA3890 /* ADSBDecoderFrameworkTests */,
+ );
+ name = ADSBDecoderFrameworkTests;
+ packageProductDependencies = (
+ );
+ productName = ADSBDecoderFrameworkTests;
+ productReference = 8D4F38393065267F00EA3890 /* ADSBDecoderFrameworkTests.xctest */;
+ productType = "com.apple.product-type.bundle.unit-test";
+ };
8D93B6752C3FE6F400C91865 /* Net1090 */ = {
isa = PBXNativeTarget;
buildConfigurationList = 8D93B67A2C3FE6F400C91865 /* Build configuration list for PBXNativeTarget "Net1090" */;
@@ -427,10 +594,12 @@
8DF7567E2C10556A008E8DFF /* Sources */,
8DF7567F2C10556A008E8DFF /* Frameworks */,
8DF756802C10556A008E8DFF /* Resources */,
+ 8D4F38493065267F00EA3890 /* Embed Frameworks */,
);
buildRules = (
);
dependencies = (
+ 8D4F38433065267F00EA3890 /* PBXTargetDependency */,
);
name = LearnMapKit;
packageProductDependencies = (
@@ -485,9 +654,16 @@
isa = PBXProject;
attributes = {
BuildIndependentTargetsInParallel = 1;
- LastSwiftUpdateCheck = 1540;
+ LastSwiftUpdateCheck = 2700;
LastUpgradeCheck = 1530;
TargetAttributes = {
+ 8D4F382E3065267E00EA3890 = {
+ CreatedOnToolsVersion = 27.0;
+ };
+ 8D4F38383065267F00EA3890 = {
+ CreatedOnToolsVersion = 27.0;
+ TestTargetID = 8DF756812C10556A008E8DFF;
+ };
8D93B6752C3FE6F400C91865 = {
CreatedOnToolsVersion = 15.4;
};
@@ -538,11 +714,27 @@
8DF7569B2C10556C008E8DFF /* LearnMapKitUITests */,
8D93B6752C3FE6F400C91865 /* Net1090 */,
8D93B6862C45986700C91865 /* ADSBStats */,
+ 8D4F382E3065267E00EA3890 /* ADSBDecoderFramework */,
+ 8D4F38383065267F00EA3890 /* ADSBDecoderFrameworkTests */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
+ 8D4F382D3065267E00EA3890 /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 8D4F38373065267F00EA3890 /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
8DF756802C10556A008E8DFF /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
@@ -569,6 +761,20 @@
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
+ 8D4F382B3065267E00EA3890 /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 8D4F38353065267F00EA3890 /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
8D93B6722C3FE6F400C91865 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
@@ -583,13 +789,7 @@
buildActionMask = 2147483647;
files = (
8D93B6942C4598E300C91865 /* AirplaneTracker.swift in Sources */,
- 8D93B6912C4598B300C91865 /* PositionDecoder.swift in Sources */,
- 8D93B6932C4598D900C91865 /* Query.swift in Sources */,
8D93B68A2C45986700C91865 /* main.swift in Sources */,
- 8D93B68F2C4598A900C91865 /* ADSBRegEx.swift in Sources */,
- 8D93B68E2C4598A500C91865 /* Configs.swift in Sources */,
- 8D93B6922C4598B800C91865 /* Decoder.swift in Sources */,
- 8D93B6902C4598AC00C91865 /* Utils.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -598,13 +798,7 @@
buildActionMask = 2147483647;
files = (
8DB347C52C242BAC00F3C020 /* AirplaneTracker.swift in Sources */,
- 8D93B6572C3D27A000C91865 /* Configs.swift in Sources */,
- 8DF756792C05A3D7008E8DFF /* Decoder.swift in Sources */,
- 8DF7567C2C09B7F7008E8DFF /* Query.swift in Sources */,
8DF756632C0595AA008E8DFF /* main.swift in Sources */,
- 8D93B6532C32095300C91865 /* ADSBRegEx.swift in Sources */,
- 8DB347BF2C1C501200F3C020 /* PositionDecoder.swift in Sources */,
- 8D93B64C2C32030B00C91865 /* Utils.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -612,9 +806,7 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
- 8DF7567A2C06F550008E8DFF /* Decoder.swift in Sources */,
8DF756742C059969008E8DFF /* main.swift in Sources */,
- 8D93B6822C412C0A00C91865 /* Configs.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -622,20 +814,15 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
- 8D93B64F2C3206DD00C91865 /* AirplaneTracker.swift in Sources */,
8D93B69C2C4A727300C91865 /* NetworkConfigure.swift in Sources */,
8DF756872C10556A008E8DFF /* ContentView.swift in Sources */,
- 8D93B6552C32099B00C91865 /* Utils.swift in Sources */,
8DEC6F2E2C2E9C3000AC6209 /* ADSBFileRunner.swift in Sources */,
8D93B69F2C4A7A0700C91865 /* NetADSBDecoder.swift in Sources */,
8D8480F32C60C7E6007ACD95 /* ADSBNetRunner.swift in Sources */,
- 8D93B6502C3206E700C91865 /* PositionDecoder.swift in Sources */,
- 8D93B6582C3D290C00C91865 /* Configs.swift in Sources */,
- 8D93B6512C3206EB00C91865 /* Decoder.swift in Sources */,
8DEC6F322C31530C00AC6209 /* FlighState.swift in Sources */,
+ 8D4F386030652B4A00EA3890 /* AirplaneTracker.swift in Sources */,
8DF756852C10556A008E8DFF /* LearnMapKitApp.swift in Sources */,
8D8480F12C60C79E007ACD95 /* ADSBDataQueue.swift in Sources */,
- 8D93B6542C32095800C91865 /* ADSBRegEx.swift in Sources */,
8D93B69A2C4A665B00C91865 /* NetConfigView.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
@@ -660,6 +847,21 @@
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
+ 8D4F383C3065267F00EA3890 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ target = 8D4F382E3065267E00EA3890 /* ADSBDecoderFramework */;
+ targetProxy = 8D4F383B3065267F00EA3890 /* PBXContainerItemProxy */;
+ };
+ 8D4F383E3065267F00EA3890 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ target = 8DF756812C10556A008E8DFF /* LearnMapKit */;
+ targetProxy = 8D4F383D3065267F00EA3890 /* PBXContainerItemProxy */;
+ };
+ 8D4F38433065267F00EA3890 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ target = 8D4F382E3065267E00EA3890 /* ADSBDecoderFramework */;
+ targetProxy = 8D4F38423065267F00EA3890 /* PBXContainerItemProxy */;
+ };
8DF756942C10556C008E8DFF /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 8DF756812C10556A008E8DFF /* LearnMapKit */;
@@ -673,11 +875,127 @@
/* End PBXTargetDependency section */
/* Begin XCBuildConfiguration section */
+ 8D4F38473065267F00EA3890 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ BUILD_LIBRARY_FOR_DISTRIBUTION = YES;
+ CODE_SIGN_STYLE = Automatic;
+ COMBINE_HIDPI_IMAGES = YES;
+ CURRENT_PROJECT_VERSION = 1;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ ENABLE_MODULE_VERIFIER = YES;
+ GENERATE_INFOPLIST_FILE = YES;
+ INFOPLIST_KEY_NSHumanReadableCopyright = "";
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/../Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACOSX_DEPLOYMENT_TARGET = 26.6;
+ MARKETING_VERSION = 1.0;
+ MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++";
+ MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++20";
+ PRODUCT_BUNDLE_IDENTIFIER = RadioTeam.ADSBDecoderFramework;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ SKIP_INSTALL = YES;
+ STRING_CATALOG_GENERATE_SYMBOLS = YES;
+ SWIFT_APPROACHABLE_CONCURRENCY = YES;
+ SWIFT_EMIT_LOC_STRINGS = YES;
+ SWIFT_INSTALL_MODULE = YES;
+ SWIFT_INSTALL_OBJC_HEADER = NO;
+ SWIFT_UPCOMING_FEATURE_MEMBER_IMPORT_VISIBILITY = YES;
+ SWIFT_VERSION = 5.0;
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = Debug;
+ };
+ 8D4F38483065267F00EA3890 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ BUILD_LIBRARY_FOR_DISTRIBUTION = YES;
+ CODE_SIGN_STYLE = Automatic;
+ COMBINE_HIDPI_IMAGES = YES;
+ CURRENT_PROJECT_VERSION = 1;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ ENABLE_MODULE_VERIFIER = YES;
+ GENERATE_INFOPLIST_FILE = YES;
+ INFOPLIST_KEY_NSHumanReadableCopyright = "";
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/../Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACOSX_DEPLOYMENT_TARGET = 26.6;
+ MARKETING_VERSION = 1.0;
+ MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++";
+ MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++20";
+ PRODUCT_BUNDLE_IDENTIFIER = RadioTeam.ADSBDecoderFramework;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ SKIP_INSTALL = YES;
+ STRING_CATALOG_GENERATE_SYMBOLS = YES;
+ SWIFT_APPROACHABLE_CONCURRENCY = YES;
+ SWIFT_EMIT_LOC_STRINGS = YES;
+ SWIFT_INSTALL_MODULE = YES;
+ SWIFT_INSTALL_OBJC_HEADER = NO;
+ SWIFT_UPCOMING_FEATURE_MEMBER_IMPORT_VISIBILITY = YES;
+ SWIFT_VERSION = 5.0;
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = Release;
+ };
+ 8D4F384B3065267F00EA3890 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CODE_SIGN_STYLE = Automatic;
+ CURRENT_PROJECT_VERSION = 1;
+ GENERATE_INFOPLIST_FILE = YES;
+ MACOSX_DEPLOYMENT_TARGET = 26.6;
+ MARKETING_VERSION = 1.0;
+ PRODUCT_BUNDLE_IDENTIFIER = RadioTeam.ADSBDecoderFrameworkTests;
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ STRING_CATALOG_GENERATE_SYMBOLS = NO;
+ SWIFT_APPROACHABLE_CONCURRENCY = YES;
+ SWIFT_EMIT_LOC_STRINGS = NO;
+ SWIFT_UPCOMING_FEATURE_MEMBER_IMPORT_VISIBILITY = YES;
+ SWIFT_VERSION = 5.0;
+ TEST_HOST = "$(BUILT_PRODUCTS_DIR)/LearnMapKit.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/LearnMapKit";
+ };
+ name = Debug;
+ };
+ 8D4F384C3065267F00EA3890 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CODE_SIGN_STYLE = Automatic;
+ CURRENT_PROJECT_VERSION = 1;
+ GENERATE_INFOPLIST_FILE = YES;
+ MACOSX_DEPLOYMENT_TARGET = 26.6;
+ MARKETING_VERSION = 1.0;
+ PRODUCT_BUNDLE_IDENTIFIER = RadioTeam.ADSBDecoderFrameworkTests;
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ STRING_CATALOG_GENERATE_SYMBOLS = NO;
+ SWIFT_APPROACHABLE_CONCURRENCY = YES;
+ SWIFT_EMIT_LOC_STRINGS = NO;
+ SWIFT_UPCOMING_FEATURE_MEMBER_IMPORT_VISIBILITY = YES;
+ SWIFT_VERSION = 5.0;
+ TEST_HOST = "$(BUILT_PRODUCTS_DIR)/LearnMapKit.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/LearnMapKit";
+ };
+ name = Release;
+ };
8D93B67B2C3FE6F400C91865 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
- DEVELOPMENT_TEAM = 53B26AJZ4Z;
+ DEVELOPMENT_TEAM = "";
ENABLE_HARDENED_RUNTIME = YES;
MACOSX_DEPLOYMENT_TARGET = 14.5;
PRODUCT_NAME = "$(TARGET_NAME)";
@@ -689,7 +1007,7 @@
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
- DEVELOPMENT_TEAM = 53B26AJZ4Z;
+ DEVELOPMENT_TEAM = "";
ENABLE_HARDENED_RUNTIME = YES;
MACOSX_DEPLOYMENT_TARGET = 14.5;
PRODUCT_NAME = "$(TARGET_NAME)";
@@ -700,8 +1018,9 @@
8D93B68C2C45986700C91865 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ "CODE_SIGN_IDENTITY[sdk=macosx*]" = "-";
CODE_SIGN_STYLE = Automatic;
- DEVELOPMENT_TEAM = 53B26AJZ4Z;
+ DEVELOPMENT_TEAM = "";
ENABLE_HARDENED_RUNTIME = YES;
MACOSX_DEPLOYMENT_TARGET = 14.5;
PRODUCT_NAME = "$(TARGET_NAME)";
@@ -712,8 +1031,9 @@
8D93B68D2C45986700C91865 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ "CODE_SIGN_IDENTITY[sdk=macosx*]" = "-";
CODE_SIGN_STYLE = Automatic;
- DEVELOPMENT_TEAM = 53B26AJZ4Z;
+ DEVELOPMENT_TEAM = "";
ENABLE_HARDENED_RUNTIME = YES;
MACOSX_DEPLOYMENT_TARGET = 14.5;
PRODUCT_NAME = "$(TARGET_NAME)";
@@ -887,7 +1207,7 @@
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_ASSET_PATHS = "\"LearnMapKit/Preview Content\"";
- DEVELOPMENT_TEAM = 53B26AJZ4Z;
+ DEVELOPMENT_TEAM = "";
ENABLE_PREVIEWS = YES;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.utilities";
@@ -914,7 +1234,7 @@
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_ASSET_PATHS = "\"LearnMapKit/Preview Content\"";
- DEVELOPMENT_TEAM = 53B26AJZ4Z;
+ DEVELOPMENT_TEAM = "";
ENABLE_PREVIEWS = YES;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.utilities";
@@ -934,7 +1254,6 @@
8DF756A82C10556C008E8DFF /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
- ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
@@ -952,7 +1271,6 @@
8DF756A92C10556C008E8DFF /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
- ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
@@ -970,7 +1288,6 @@
8DF756AB2C10556C008E8DFF /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
- ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
GENERATE_INFOPLIST_FILE = YES;
@@ -986,7 +1303,6 @@
8DF756AC2C10556C008E8DFF /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
- ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
GENERATE_INFOPLIST_FILE = YES;
@@ -1002,6 +1318,24 @@
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
+ 8D4F38463065267F00EA3890 /* Build configuration list for PBXNativeTarget "ADSBDecoderFramework" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 8D4F38473065267F00EA3890 /* Debug */,
+ 8D4F38483065267F00EA3890 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+ 8D4F384A3065267F00EA3890 /* Build configuration list for PBXNativeTarget "ADSBDecoderFrameworkTests" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 8D4F384B3065267F00EA3890 /* Debug */,
+ 8D4F384C3065267F00EA3890 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
8D93B67A2C3FE6F400C91865 /* Build configuration list for PBXNativeTarget "Net1090" */ = {
isa = XCConfigurationList;
buildConfigurations = (
@@ -1104,6 +1438,11 @@
/* End XCRemoteSwiftPackageReference section */
/* Begin XCSwiftPackageProductDependency section */
+ 8D4F385E30652A9200EA3890 /* Collections */ = {
+ isa = XCSwiftPackageProductDependency;
+ package = 8DB347C02C1C53CB00F3C020 /* XCRemoteSwiftPackageReference "swift-collections" */;
+ productName = Collections;
+ };
8D8480EE2C56344B007ACD95 /* ArgumentParser */ = {
isa = XCSwiftPackageProductDependency;
package = 8DF7566A2C0595F6008E8DFF /* XCRemoteSwiftPackageReference "swift-argument-parser" */;
diff --git a/ADSBDecoder.xcodeproj/xcuserdata/jackyjack.xcuserdatad/xcschemes/xcschememanagement.plist b/ADSBDecoder.xcodeproj/xcuserdata/jackyjack.xcuserdatad/xcschemes/xcschememanagement.plist
index 70a9ecd..2b937de 100644
--- a/ADSBDecoder.xcodeproj/xcuserdata/jackyjack.xcuserdatad/xcschemes/xcschememanagement.plist
+++ b/ADSBDecoder.xcodeproj/xcuserdata/jackyjack.xcuserdatad/xcschemes/xcschememanagement.plist
@@ -9,10 +9,15 @@
<key>orderHint</key>
<integer>0</integer>
</dict>
+ <key>ADSBDecoderFramework.xcscheme_^#shared#^_</key>
+ <dict>
+ <key>orderHint</key>
+ <integer>4</integer>
+ </dict>
<key>ADSBStats.xcscheme_^#shared#^_</key>
<dict>
<key>orderHint</key>
- <integer>3</integer>
+ <integer>5</integer>
</dict>
<key>LearnMapKit.xcscheme_^#shared#^_</key>
<dict>
@@ -22,16 +27,21 @@
<key>Net1090.xcscheme_^#shared#^_</key>
<dict>
<key>orderHint</key>
- <integer>4</integer>
+ <integer>2</integer>
</dict>
<key>Test.xcscheme_^#shared#^_</key>
<dict>
<key>orderHint</key>
- <integer>2</integer>
+ <integer>3</integer>
</dict>
</dict>
<key>SuppressBuildableAutocreation</key>
<dict>
+ <key>8D4F382E3065267E00EA3890</key>
+ <dict>
+ <key>primary</key>
+ <true/>
+ </dict>
<key>8DF7565E2C0595AA008E8DFF</key>
<dict>
<key>primary</key>
diff --git a/ADSBDecoder/main.swift b/ADSBDecoder/main.swift
index 91ba97b..ace377f 100644
--- a/ADSBDecoder/main.swift
+++ b/ADSBDecoder/main.swift
@@ -11,7 +11,6 @@ import RegexBuilder
import SQLite3
-
struct CommandLineArgs: ParsableCommand {
@Option(name: .shortAndLong) var inputfile: String
@Flag(name: .shortAndLong) var debug:Bool = false
diff --git a/ADSBDecoderFramework/ADSBDecoderFramework.docc/ADSBDecoderFramework.md b/ADSBDecoderFramework/ADSBDecoderFramework.docc/ADSBDecoderFramework.md
new file mode 100644
index 0000000..588e73d
--- /dev/null
+++ b/ADSBDecoderFramework/ADSBDecoderFramework.docc/ADSBDecoderFramework.md
@@ -0,0 +1,13 @@
+# ``ADSBDecoderFramework``
+
+<!--@START_MENU_TOKEN@-->Summary<!--@END_MENU_TOKEN@-->
+
+## Overview
+
+<!--@START_MENU_TOKEN@-->Text<!--@END_MENU_TOKEN@-->
+
+## Topics
+
+### <!--@START_MENU_TOKEN@-->Group<!--@END_MENU_TOKEN@-->
+
+- <!--@START_MENU_TOKEN@-->``Symbol``<!--@END_MENU_TOKEN@--> \ No newline at end of file
diff --git a/ADSBDecoderFramework/ADSBDecoderFramework.swift b/ADSBDecoderFramework/ADSBDecoderFramework.swift
new file mode 100644
index 0000000..c2407a0
--- /dev/null
+++ b/ADSBDecoderFramework/ADSBDecoderFramework.swift
@@ -0,0 +1,9 @@
+//
+// ADSBDecoderFramework.swift
+// ADSBDecoderFramework
+//
+// Created by Jacky Jack on 24/09/2026.
+//
+
+import Foundation
+
diff --git a/ADSBDecoder/ADSBRegEx.swift b/ADSBDecoderFramework/ADSBRegEx.swift
index 2841467..2841467 100644
--- a/ADSBDecoder/ADSBRegEx.swift
+++ b/ADSBDecoderFramework/ADSBRegEx.swift
diff --git a/ADSBDecoder/Configs.swift b/ADSBDecoderFramework/Configs.swift
index a42e745..a42e745 100644
--- a/ADSBDecoder/Configs.swift
+++ b/ADSBDecoderFramework/Configs.swift
diff --git a/ADSBDecoder/Decoder.swift b/ADSBDecoderFramework/Decoder.swift
index a9724b6..a9724b6 100644
--- a/ADSBDecoder/Decoder.swift
+++ b/ADSBDecoderFramework/Decoder.swift
diff --git a/ADSBDecoder/PositionDecoder.swift b/ADSBDecoderFramework/PositionDecoder.swift
index 85b9d49..85b9d49 100644
--- a/ADSBDecoder/PositionDecoder.swift
+++ b/ADSBDecoderFramework/PositionDecoder.swift
diff --git a/ADSBDecoder/Query.swift b/ADSBDecoderFramework/Query.swift
index a92d919..a92d919 100644
--- a/ADSBDecoder/Query.swift
+++ b/ADSBDecoderFramework/Query.swift
diff --git a/ADSBDecoderFrameworkTests/ADSBDecoderFrameworkTests.swift b/ADSBDecoderFrameworkTests/ADSBDecoderFrameworkTests.swift
new file mode 100644
index 0000000..1e0c27b
--- /dev/null
+++ b/ADSBDecoderFrameworkTests/ADSBDecoderFrameworkTests.swift
@@ -0,0 +1,21 @@
+//
+// ADSBDecoderFrameworkTests.swift
+// ADSBDecoderFrameworkTests
+//
+// Created by Jacky Jack on 24/09/2026.
+//
+
+import Testing
+@testable import ADSBDecoderFramework
+
+struct ADSBDecoderFrameworkTests {
+
+ @Test("Decoder dataformat 17") func example() async throws {
+ // Write your test here and use APIs like `#expect(...)` to check expected conditions.
+ // Swift Testing Documentation
+ // https://developer.apple.com/documentation/testing
+ let decoder = Decoder("8d3c664c580d014ae16024650e6c")
+ #expect(decoder.DataFormat == 17)
+ }
+
+}
diff --git a/LearnMapKit/ADSBNetRunner.swift b/LearnMapKit/ADSBNetRunner.swift
index 21b8fd8..8634a72 100644
--- a/LearnMapKit/ADSBNetRunner.swift
+++ b/LearnMapKit/ADSBNetRunner.swift
@@ -32,14 +32,14 @@ class ADSBNetRunner {
) { _ in
//print("Timer drain queue")
//print("\(adsb_net_decoder.msgarray.message_array.count)")
- if adsb_net_decoder.msgarray.message_array.count > 0 {
+ //if adsb_net_decoder.msgarray.message_array.count > 0 {
+
//print(adsb_net_decoder.msgarray.message_array.count)
- for _ in 0..<adsb_net_decoder.msgarray.message_array.count-1 {
+ //for _ in 0..<adsb_net_decoder.msgarray.message_array.count-1 {
+ while let msg = adsb_net_decoder.msgarray.pop() {
found = false
//print(adsb_net_decoder.msgarray.message_array.popLast()!,terminator: "")
- if let msg = adsb_net_decoder.msgarray.message_array.popLast() {
//print("msg:[\(msg)]")
- do {
let matchADSBLong = MatchADSBLong()
if let tokenMatch = matchADSBLong.prefixMatch(msg) {
//print("token output \(String(tokenMatch.output))")
@@ -73,11 +73,9 @@ class ADSBNetRunner {
}
}
}
- }
- };
- } catch {
- print("Error")
- }
+ //}
+ //};
+ //}
if (found == false) {
//print("Unknown adsb data line [\(msg)]")
diff --git a/LearnMapKit/NetworkConfigure.swift b/LearnMapKit/NetworkConfigure.swift
index 270da38..14545f0 100644
--- a/LearnMapKit/NetworkConfigure.swift
+++ b/LearnMapKit/NetworkConfigure.swift
@@ -9,8 +9,8 @@ import Foundation
import SwiftUI
class NetworkConfigure {
- var servername: String = "64.226.23.78"
- var serverport: Int = 30003
+ var servername: String = "192.168.7.61"
+ var serverport: Int = 12345
var default_values: Bool = true
diff --git a/ADSBDecoder/Utils.swift b/Utils/FileUtils.swift
index 7a7f177..7a7f177 100644
--- a/ADSBDecoder/Utils.swift
+++ b/Utils/FileUtils.swift