From c3d5435ce7cdca0637b468c21814fcbdcb2b9d36 Mon Sep 17 00:00:00 2001 From: lkasso Date: Mon, 22 Mar 2021 11:19:31 -0700 Subject: [PATCH 1/2] Bumped version number to 4.0.0 --- CHANGELOG.md | 7 + MetaWear/MetaWear-SDK-Cpp | 2 +- MetaWear/Podfile.lock | 2 +- MetaWear/Pods/Manifest.lock | 2 +- MetaWear/Pods/Pods.xcodeproj/project.pbxproj | 4264 +++++++++-------- StarterProject/Podfile.lock | 2 +- StarterProject/Pods/Manifest.lock | 2 +- .../Pods/Pods.xcodeproj/project.pbxproj | 2463 +++++----- 8 files changed, 3643 insertions(+), 3101 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 15abab9..6b05882 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,13 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). +## [4.0.0] - 2021-03-22 +### Update +- Update pods and new CPP SDK 0.20.0 +- Update tests +- Update for MMS +- Update some helper functions (processors) + ## [3.4.3] - 2021-01-04 ### Update - Update pods and new CPP SDK 0.19.1 diff --git a/MetaWear/MetaWear-SDK-Cpp b/MetaWear/MetaWear-SDK-Cpp index 5e12451..184cf5a 160000 --- a/MetaWear/MetaWear-SDK-Cpp +++ b/MetaWear/MetaWear-SDK-Cpp @@ -1 +1 @@ -Subproject commit 5e12451816ccf5bde773d36f8bbf8672533603d9 +Subproject commit 184cf5a4da56e46f6556a7f3433f206e01daf15d diff --git a/MetaWear/Podfile.lock b/MetaWear/Podfile.lock index 9082a7f..01a0dde 100644 --- a/MetaWear/Podfile.lock +++ b/MetaWear/Podfile.lock @@ -40,4 +40,4 @@ SPEC CHECKSUMS: PODFILE CHECKSUM: 76e04bf9dc0046e22c1dba696e3f5f4f09862e8f -COCOAPODS: 1.10.0 +COCOAPODS: 1.10.1 diff --git a/MetaWear/Pods/Manifest.lock b/MetaWear/Pods/Manifest.lock index 9082a7f..01a0dde 100644 --- a/MetaWear/Pods/Manifest.lock +++ b/MetaWear/Pods/Manifest.lock @@ -40,4 +40,4 @@ SPEC CHECKSUMS: PODFILE CHECKSUM: 76e04bf9dc0046e22c1dba696e3f5f4f09862e8f -COCOAPODS: 1.10.0 +COCOAPODS: 1.10.1 diff --git a/MetaWear/Pods/Pods.xcodeproj/project.pbxproj b/MetaWear/Pods/Pods.xcodeproj/project.pbxproj index aa43266..e771d21 100644 --- a/MetaWear/Pods/Pods.xcodeproj/project.pbxproj +++ b/MetaWear/Pods/Pods.xcodeproj/project.pbxproj @@ -7,1120 +7,1237 @@ objects = { /* Begin PBXBuildFile section */ - 00E32AA029E165EFEBF1149B0B1B23D8 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE1E0DEFFE017C0C2E2985A366A992F9 /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 01C38E14055D12DBA754BA5F537ABD9F /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35DF09B838AFE914ED26D06CCF9A534A /* MetaWear+LED.swift */; }; + 00A82355034F26A4E7961A3AF89E1E45 /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D1BEC515335A4A180470B94CAF11CDB7 /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 00ECB95D9E1BE0B3A6969D10E551FD83 /* PythonGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3EC1C6520D805971B93CEE5E29C7C7B8 /* PythonGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 012B01012542A4CBB87158298D49A506 /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEF0743B28C3D9777CDD2245E75150D7 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 032AD90C350C65248D85DD7B25E5EB6E /* DFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBC0B44C8FB29FE5F9CAA480D7FC5222 /* DFUServiceInitiator.swift */; }; + 03351672B147CBDEFCFD62387D16B043 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1055045CA95BD2B47B08BD783A980121 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 03CFA0B8079E6576425F4835DDE77ED0 /* JavaScriptGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC74A8C206ABDA0979899B483C9DD1AA /* JavaScriptGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 041123E8BDF49911B13644D05184CA05 /* TaskCompletionSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = E43893E60AA833FD5CE59855FFBCA9CF /* TaskCompletionSource.swift */; }; - 04207C8E94AB38EB8B9A199E0C5F389C /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 34053E679B634F86E79B0EA7A85D3463 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 044AE2CABFFA31952B87AEFCE95093A3 /* DFUControlPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6271165BB2AE86465A9943D2EF112D11 /* DFUControlPoint.swift */; }; - 04835D90097AA6593E95A8334BDD41A8 /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC05B55C8E50D3344CC11348925701D7 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 045BA212BE52B8EDE106B91E414DB964 /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D79846913C5C3DB9B906408EA67CDBE4 /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 04CFB049951BFA1C1CA79493922CF400 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A4E0213149863042429885F1816E57F1 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-dummy.m */; }; - 05098827647E9C8D9EF0DB0684F8462B /* MetaWear+Firmware.swift in Sources */ = {isa = PBXBuildFile; fileRef = 718E68D5B9B0F507C9C5DAB63E0926F4 /* MetaWear+Firmware.swift */; }; - 05C38057BBC7DC7B906AE940C965C9C5 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1899A2B7831D2DEABC5102099AD9E6E0 /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 087928801293830146E469DD10BCFD0F /* DFUStreamZip.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F8DDE74839FCA2D7300179DBCB4FC0F /* DFUStreamZip.swift */; }; - 09811DA092D67D596A28A36D57646478 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 87859CACBA3B3EAD7779E437E2108045 /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 09D89182D85C100D55500D36243A1580 /* DFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBC0B44C8FB29FE5F9CAA480D7FC5222 /* DFUServiceInitiator.swift */; }; - 0A25F5DC4BF3CD15ACE5118ED41C3829 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2D8FA78546C4335D20357CC4567FD305 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 0ACE818B427AD61CA6AE6681A2F9C523 /* Archive+Reading.swift in Sources */ = {isa = PBXBuildFile; fileRef = 085E4CB728B2A20CE1F1A3E86A7E6BF7 /* Archive+Reading.swift */; }; - 0B5195A0520A3479381DFE79CEA0AD06 /* ButtonlessDFU.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F2F9B8E65A9F447C9A12C27A37C2C8F /* ButtonlessDFU.swift */; }; - 0BB6F9961E0820C9F6F2A9099CE04C19 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F0F46F4797EDE9ACBCC6734FBB4699A /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 0BC46EDDA306B2C3606C9A8C20115542 /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6815A76152D2B6E658D68110E116BF9A /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0581438223EEBD568ADA85ACD5FF8778 /* Data+Serialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = C84784ABFBF917BB22BF2077A55A8FAA /* Data+Serialization.swift */; }; + 05DA9279F033674F3AD45EAA20C12B06 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1FEAD48A2DC9006470AEA6A870085C76 /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 064CE382AE40C174C1DC8BA796B5AE05 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5B2809F72B0544508607C4E1AD38065 /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 06709CCD489C7FDE4DE94255D49DE405 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82D6BB676A3452CF143E065E861A4B89 /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 069EAE37E2606DE282CD5FAD098BCB58 /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7D0FDF991487027613374C0F7701226 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 07F7F397A569ABA0B41AB17F699C0312 /* ZIPFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 310CE7870B01D5B716AC8334A7A0D3D8 /* ZIPFoundation.framework */; }; + 080AF0D1D25D654E04B7B5A1891C52E5 /* SecureDFUPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8A925FEACFBE227CEDCF7149D4EF12F9 /* SecureDFUPacket.swift */; }; + 0936DDEF5A4B9650C5ECD5C663515D2B /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 07D8C4BF82FC47746C3493658B1DAC84 /* CoreBluetooth.framework */; }; + 093DA195BCD14D219407DA9BCE156938 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A6F258AF5B520A69684A5F72D7F51E17 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m */; }; + 093FC2EF5E8C383EC4AF8679223C2119 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FCF2F5A5C94712F9BAE705347593E4A /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0B27031AAACDA81E8E849E219A1F4CDE /* CSharpGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DB1185C771E66593125CF8CDD0EB8DB0 /* CSharpGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 0BEFDFD1AD7C3D5C5736F8A438F170FA /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FB77A25C245095329AF91D690A2BE70A /* Foundation.framework */; }; - 0C31DB07E9004E396E3C7DBA62C60B71 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = CA02E0EC039FEBB54570073617E3F3A3 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m */; }; - 0CB888E0514B852F57B603DE8F24464C /* FirmwareBuild.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F6551260609078AA629619C9CCEC4AA /* FirmwareBuild.swift */; }; - 0F61F361940815407E660A41D66A7DF4 /* DFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5A0D8FB52AF6316B11FB61560858335 /* DFUPeripheral.swift */; }; - 10C302FE9F397742CE5464FD8F5D3AC5 /* ManifestFirmwareInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = F50536BAD847A62129397161AB3353B0 /* ManifestFirmwareInfo.swift */; }; - 10CC0242408FF9C1C16B6CAC5332338C /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = B86D8D46F4B973EF1E0D5D66A6B9B56D /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1138F2DBE851211F15E0EDF7F780086D /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C8C2558A12ABD13B44687E76729580A3 /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 11A3D5E6268E628BEB094E0F862B9B17 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B44C98BF6416042DDD7BB9563F79641F /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1250784C2A6D54AD90DF20F8943AF3D9 /* DFUStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B7BBB487AAC8C4468FD0CFD70FBC0C8 /* DFUStream.swift */; }; - 129FD75C4CD6A7A0348AD29515B323D9 /* DFUUuidHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = F85B983DE4FFFAFAF0F7E87BB5CE2FF9 /* DFUUuidHelper.swift */; }; - 13097D4B5C8BFF3FD3CFF46CB873719A /* Double.swift in Sources */ = {isa = PBXBuildFile; fileRef = 035E0D2F7DDEC194A3C14B7536168D1E /* Double.swift */; }; - 13856ABA4F83D632AEAFE91C34D8594D /* SecureDFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3278B1D6E8FB851C63599138931CEC3F /* SecureDFUServiceInitiator.swift */; }; - 13B9FD12101B587CAF54A71590C56D7A /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3950A3826BAA4FD2F305A186CD1B5F75 /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0C88FBBCF68DBA46CCB126C90BD75594 /* DFUServiceDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8C525780CB40473CE06F0E9500FE182 /* DFUServiceDelegate.swift */; }; + 0E29E57AF6AC1AD2248240AB57A012EB /* DFUPeripheralSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9059A703233CE911E22855733F6AFEB /* DFUPeripheralSelector.swift */; }; + 0EDEAD15EA76CF20CC0CF0E1A767568C /* IntelHex2BinConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AE8742872C84BB77BE446ECCB5F2089 /* IntelHex2BinConverter.swift */; }; + 0FBBDCB27DF56346CC85D9E88F62CB52 /* Archive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57E06254CA848BA44D929B9100D93F9C /* Archive.swift */; }; + 0FE210F8580B0064D862A9029568F087 /* SecureDFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC664CACE8271F6C72F9F07D47468A39 /* SecureDFUService.swift */; }; + 117E14EB164B7AF6F08D59EE5CA9F5F3 /* FirmwareBuild.swift in Sources */ = {isa = PBXBuildFile; fileRef = B69D599AAFD0A9D835E0CEF64BE9814D /* FirmwareBuild.swift */; }; + 11E33FD9ACC6CF62AE80A452494679D9 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 07774B397919BA3B2A371F29C47F646E /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m */; }; + 121CE3D082190454BE774638A91B9043 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C22749D2B8E00599A0F94B486EEAF752 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 12570F94509FE8973817A526E54481D6 /* SecureDFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = A27370D863F0F27023F575D449AFBB9A /* SecureDFUPeripheral.swift */; }; + 126B864FD5B9D3B79BA674EEBF8131E8 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; + 135DD576FCB7F363D39568A049B0AFBB /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 004F2B2F88E223F15641B8434DF89667 /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 1487CDA55700F066A6F326E5AD450FD4 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B8FCB726B5BF324DE5E3DBF04E36E12E /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-dummy.m */; }; - 153DD0AA266D78BA7F4CDC359702E993 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 34053E679B634F86E79B0EA7A85D3463 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1594F90575CC6B6CE520E590AACF5CA1 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 96C187B8B764C5AEB4EC2F301BBE940B /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 14AF0B18A01840828ED5089E3379B526 /* DFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 920B7554281F1A16BF53CD2B6B7089FD /* DFUPeripheralDelegate.swift */; }; + 15D53A1770AA72CF04FF651B94F63545 /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D1BEC515335A4A180470B94CAF11CDB7 /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 16B508B61B48E8DF6907A90F93B9A048 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; + 16E1904BB69FE6FD2073EAC3988F1721 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CFD843C82D19CF619F26E922A6612134 /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 1713D10F393973A8851D6AAD37C2C081 /* Task+ContinueWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78CD9B634A9BABA2318BE06485DDB6AF /* Task+ContinueWith.swift */; }; - 176C6C44C5D906F5C8EEAE3AC94349DE /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B3B544A8CA50CA8E1AF96A0582DE5218 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 172113A26B091458004E8C76139B865F /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73948BE2C0569FB3BF68F6A4A189B95F /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 17A2DFBBB983925803335F35C3CFDDE7 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FE4DE47D314987E0F452D7DCD0416DB2 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 17A4A4D8C600CB7DC5794D87C33EA580 /* Bolts-Swift-watchOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = F7B8882026B8D908567C13E297BD6436 /* Bolts-Swift-watchOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 17C0653B080B861ACBD6C6078FC8B5AD /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F69F488242700F24D60C5C01A27E5F9C /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 17EEFEFFC71F0AC6D1D8B82606F976B2 /* Task+Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2DE5AFD8F526047908EF1A6F8FDAE4E9 /* Task+Delay.swift */; }; - 1828A674642F9601D3EE9DF8349F906A /* gyro_bmi160.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6948E117F8C4ABF920FD4BD166D6F08B /* gyro_bmi160.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 18409AAD5C7E82D5049A2610FABD7FD9 /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9481942C645F5AF023E048963705B7E7 /* CoreBluetooth.framework */; }; - 18911D8F9D18B8C0F580060AEFE19972 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 151AE9FA75AEEAF352A67C395BAE1AD7 /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 18B3536F76AA6D5805A3D54FB293A9BA /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EABC01310722C277D019E6C2DB9517E7 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 19155E6CE340324EC4B2CB23B5186C49 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2D8FA78546C4335D20357CC4567FD305 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 198C920283F48BF1E567D61BBA50C0EB /* gyro_bmi160.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6948E117F8C4ABF920FD4BD166D6F08B /* gyro_bmi160.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 188275890C0D3FCCD5A67D9DD8CC65B2 /* DFUPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21E0B5E72AE22F9985373E6D5A602217 /* DFUPacket.swift */; }; + 18D1A8C4E85B6FBBB2079E8C5183FF3E /* LegacyDFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDF52030FE274FEC72DE7FD300FE48D3 /* LegacyDFUPeripheral.swift */; }; + 19432894F6F393BF6771768267E52499 /* DFUVersion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AFE0686F81066118B61F4F390340CB1 /* DFUVersion.swift */; }; + 1A28AB5C7E329BE1AB1AC09F80307C29 /* PythonGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3EC1C6520D805971B93CEE5E29C7C7B8 /* PythonGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1A7B4E7FC45FA90D0DD30F0D940FBB4E /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 028E0B50105A41869AE9683AA8EF087F /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 1A85E25520CBEB05A133319ACEA5A56C /* Task+WhenAny.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88D9DEE679B18E5C458D4795D10E1890 /* Task+WhenAny.swift */; }; - 1B09635D62697DA6999C83F10B697764 /* Manifest.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2F403E27DBF07E56940860662756CB3 /* Manifest.swift */; }; - 1B2BC0BEF4CA1068B94161312E332B28 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8BD4D50909896D979EFF9650C009BFF /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1CDE0B11B612BD4F89155727AEF40AB5 /* SecureDFUPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8A925FEACFBE227CEDCF7149D4EF12F9 /* SecureDFUPacket.swift */; }; - 1D2752827AE095A857F2F96F85CA951F /* DFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD54ED09D15C9FCDAB012469BA87074 /* DFUExecutor.swift */; }; - 1D38CBD7FCE2DB3E753E23A78258D235 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FF9550C9A8C8656880258CF8CD98C53 /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1ED7AD14E2DAE13E034B34D10F937241 /* gyro_bmi160.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6948E117F8C4ABF920FD4BD166D6F08B /* gyro_bmi160.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1A98E01F9B9D25C199A6BF3CBCA8557A /* FirmwareServer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80C496E7C90E9994CC0590530ADB9D9C /* FirmwareServer.swift */; }; + 1B259F8D638758507076CF53E0D5F385 /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */; }; + 1B3C6EDA792A5929A9D79A718B93CB20 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 48D266E399A4AD8C456953D262CD9B0E /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1C2D4B3CD377BE734D743D0037859335 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BF6180B8C72293B7BA5EB27B28FA560 /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1C42D298B1810B38EF8942B962BD20B9 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F69F488242700F24D60C5C01A27E5F9C /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1C5D66653EB9C9204FAB73D5DB0F3EFD /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61374778F4B640C23FAAD145DB6958F2 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1CADD7A896823EF5185631C6D57635F1 /* ButtonlessDFU.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F2F9B8E65A9F447C9A12C27A37C2C8F /* ButtonlessDFU.swift */; }; + 1CB7EF48662BF5C27BDE484D646E0191 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E0362A7CDF8C01C9D967F8417265F7C /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1E952BF9706F06DFB81D9EAB50CF6177 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 150D817BA455C92B497629C15EB2969A /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1ECAE15DEE3FD1676A8943959E89504C /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1055045CA95BD2B47B08BD783A980121 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 1EDB8323EBC82C8A31DFA333E0A9AD8A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F7D4003C2F97282E3C82E5711C7F8C46 /* Foundation.framework */; }; + 1EE2372DC27AA0C43FEC83A5C1E13963 /* LegacyDFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1381FD8CC75E8C4F6F506D2A5535FB9E /* LegacyDFUPeripheralDelegate.swift */; }; 1EFD82B98118369A8821D338DC1E85B2 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 225DB3D8DBC28CCF0A73CEFF033FFE1C /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-dummy.m */; }; - 1F53B49C2588587431798F94B8E535C6 /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA4615841E2C1E8157D02E95B64E71C4 /* MetaWear+Async.swift */; }; - 1F5E15976D948FEBBE265FC121F0BE7A /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 278588D3780F675E87F91A89D50D9BBA /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 1FBA290F317A5157880F484D889FB2BD /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B3B544A8CA50CA8E1AF96A0582DE5218 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 1FC046B9C2C69BDD0CB06413583C42A6 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 998509386935A1962593008EF42F79F9 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 204947F04739C6681887B98456BB600D /* Pods-MetaWearIntegrationTests-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = AE0358D314C8BEEE6DF294E6CFBE3DCC /* Pods-MetaWearIntegrationTests-macOS-dummy.m */; }; - 21BA78FE24694377400B24863A53215D /* DFUPeripheralSelectorDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A26C1C50C1866FDC9FA4437D526F6038 /* DFUPeripheralSelectorDelegate.swift */; }; - 2221EF07AD9EA07D21AB339401CBF99A /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 63637A0110ACD81470E07A8160E1A6BC /* CoreBluetooth.framework */; }; - 225E119D952C1EBBAA5B3229B45F27DE /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F69D9DEEAEF7D7E9568EE5C30A0AB5FA /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 20591D483411BD8648DF767C557D51DE /* ZipArchive.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDAB73F304877FD4585F078B919261FC /* ZipArchive.swift */; }; + 20864E5EE9812F5F3E0BC8EED1F520D3 /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = BFAA633966C968BF70362AFA2B44336F /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 20BAA558AF83D38B7956AB017E79D089 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C0FFFB6700BEC9C36BFFEFCA6F08B772 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 20DD8171D33AE77417653D045FD65319 /* FileManager+ZIP.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60BEE52C89C924410FA20A8C8FDEFDA7 /* FileManager+ZIP.swift */; }; + 21CC738C0902AC17332D3AE2731C3029 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F7D4003C2F97282E3C82E5711C7F8C46 /* Foundation.framework */; }; + 21CEE4FD5D05B2A684D87854BEA96076 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8BC482C61CBAE6CB05B493775955BDE /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 22419F8867C810F51EF0CC7AF432FB83 /* MetaWear+Firmware.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD76483586B514A5C673056B7A731FE8 /* MetaWear+Firmware.swift */; }; + 2342BB1503FC3BE2631E0ECB2B4CEE63 /* LoggerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BD2DBCCF615B8BBB6F900E4540C8EF5 /* LoggerDelegate.swift */; }; + 23717EDBDE66946CC5ABD25186F96940 /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 262B515345D9A281E9DB178889EAB01F /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 23A0B9D741DA0D1FA0ECE34D63CA5057 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; - 23E61B3D2DD95D47CFCA5048B6442456 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B8D3D8E73DE294535A22E4052635474 /* MblMwEvent+Async.swift */; }; 23F582A77E601903F5D0ED4C9F4003C4 /* Pods-MetaWearIntegrationTests-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 3ADC0D7C3B1D964CF4DF6C520CF6DD63 /* Pods-MetaWearIntegrationTests-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 242F7A73F641AF5D1BA454BC32186F62 /* DFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBC0B44C8FB29FE5F9CAA480D7FC5222 /* DFUServiceInitiator.swift */; }; + 247DF9AD5289D103B7F22A2F5A930A27 /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7D0FDF991487027613374C0F7701226 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 24A23AB2F7913D2EB87D6FD27603B43E /* DFUStreamBin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1170D3A9194D58C03AC23B4BD8B40D36 /* DFUStreamBin.swift */; }; 24FA742C4FAC73CBA8E64B0913612E40 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CA99C2A255521A7E4969446E2550F350 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 24FAC638583F5C110B37457A5FEF1009 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6BCFD5EC59A041BE47D94C79D15215C9 /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 2575109DD723D9A21749C10103DEBEC5 /* Task+ContinueWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78CD9B634A9BABA2318BE06485DDB6AF /* Task+ContinueWith.swift */; }; - 25818D8E29482D465A586C059BD64323 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F5A0A0E96458AC5D9A29D4B38AC875F /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 25AAC3038012569529CDFE0CCFD37FA9 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6A33FF544CA30169E9B6900CC8263EBE /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 25FA3F46BC4F73D6AFDF4B1826B7D8E1 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8EF759174C33810CE720C98CAB60552 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 262BD614CCF0F3F1D29AB9ABFDEEF898 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 357E5635098F2378732DB33A5AE27106 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2641A220BB2C96304F65E60C357F1DE0 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B44C98BF6416042DDD7BB9563F79641F /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 26B396BE2D2944159A7DCE3235F4DA7F /* DFUController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E83FA47CA9F4A746A08313BB59BC889 /* DFUController.swift */; }; - 26D3D26ECBE79A53740D7C45161ACCA8 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 156218A27163C74F4FF3A8B88B84FDB0 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 260059DF33C18038565B57D41636D093 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 687FF210AC568843A9F8C1CDA491ECC7 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 261E2F3792214C4D434F1E826BFF268B /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 262B515345D9A281E9DB178889EAB01F /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2674F1682601B71874AE8D8CC995E2F8 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8BC482C61CBAE6CB05B493775955BDE /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 26B93A39DB6DBB7AD878332626A0B876 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C0FFFB6700BEC9C36BFFEFCA6F08B772 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 2707350FDCEED6E2032F8415D4A47217 /* Bolts-Swift-watchOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A3FAF8D54517745664357BCB15561320 /* Bolts-Swift-watchOS-dummy.m */; }; - 27CE81CBE47F1F2BBFA60340F9BF2595 /* ZIPFoundation-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D35F2A88DC0477C6B52780CE08C435D /* ZIPFoundation-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 27D6816E5AD6D9D126B26717651A45A5 /* gyro_bmi160.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6948E117F8C4ABF920FD4BD166D6F08B /* gyro_bmi160.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2AB34B8AFFA74307998D5E1E2C730DC2 /* Manifest.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2F403E27DBF07E56940860662756CB3 /* Manifest.swift */; }; - 2B0C0DDB69A91BB85292877FC981AF35 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 24A13113E387EC83E9B0377DA7C515D0 /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2BE90797E4BF39D5BAD13E8E8DF5D5CD /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 357E5635098F2378732DB33A5AE27106 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2C232B6EFA1870117100CD09CC516CFC /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D478768EE86CA3C5F1C572EAC53FAF90 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 27E5E1FB12794AE58BCC10FE671B3FB5 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C0FFFB6700BEC9C36BFFEFCA6F08B772 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 27FC097670EF6169E41D06FAE06F663F /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7B6FF697AF15FAD5B996B730D32226F /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 28165A59FF99E7B34602554A862862FD /* SwiftGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B2DFE15A0E62BE06D2CF9D4AE53F927D /* SwiftGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 28AA1948C15F28A8B93DD71122D901EB /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2EFE9D6C87239704BBC5413982E2438 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 29132300AE6148203E0C2729AA2C8BB3 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 20B0727D623002B7F4C82B61F2E53BCE /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 292D328A092F8BFEDF5AAB807F193EBD /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AB700AD1E77526C1584F3E4CA6A880C /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2968BC36D6BD17ED1B3473B365EFF462 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FF2AA8233135C47CC5AC6C25FBD6A516 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2B3093F48320EE09AAC65B70C3F78A19 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60E262EDBD11C805D5B628157982C484 /* MblMwEvent+Async.swift */; }; + 2C1907D0785CFB6C1FC5C2C0071EFA28 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; + 2D0F244586918C3F6A39CCA821E0C0AF /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CFD843C82D19CF619F26E922A6612134 /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 2D2440F7B4FA277B9D9C5789257A8902 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; - 2D73F130E5B5F0785ACEA9950C6DA9F6 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7630F0709266D733990F496E97069A68 /* ScannerModel.swift */; }; - 2DC628F682D49792191510A7778E1F8B /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D478768EE86CA3C5F1C572EAC53FAF90 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2E8F91FFA759077621E70121A16366E7 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 357E5635098F2378732DB33A5AE27106 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2FCD92D9BA257E932BEC9EF414126396 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 34053E679B634F86E79B0EA7A85D3463 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2D30E37BBB05F6E5EE52C864109DB47A /* FirmwareBuild.swift in Sources */ = {isa = PBXBuildFile; fileRef = B69D599AAFD0A9D835E0CEF64BE9814D /* FirmwareBuild.swift */; }; + 2E2C24531F94DA5B766F87CA8B1BB4F3 /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2C439C24DEA34C216997BFDB48274C53 /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2F22343EC96BC393C5FA93697BBAE4E7 /* LegacyDFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A61E82795569E9BA7E8CC6376F61A26 /* LegacyDFUExecutor.swift */; }; + 2F5B3DDDDE2CE882B690B114B82955E5 /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 028E0B50105A41869AE9683AA8EF087F /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 2FF24404FE5B2EB0AAF24C6CC239A360 /* Task+Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2DE5AFD8F526047908EF1A6F8FDAE4E9 /* Task+Delay.swift */; }; - 30538FCE4B6ADDF689A5CE895EAC342B /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 42397083F482953900FFDC203831BB02 /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m */; }; - 3088C7CD20C8B7BB1906C39B08B6577D /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6A33FF544CA30169E9B6900CC8263EBE /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3094EB7CAB4FAFDE84808789C9F59DA7 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 32BC530DD23022E2E1B595E7AF36B83F /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3249EC0194A22DF7DDD1B1853F576ACC /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35DF09B838AFE914ED26D06CCF9A534A /* MetaWear+LED.swift */; }; - 32C083C864B1F136CA2B39B172F3DEB2 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 628908291910B17BE8A3DC6FD29A7CF9 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 33061445861134D6DA1C0153992EB665 /* iOSDFULibrary-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = EE3D0F73A6653041193A830938A672A5 /* iOSDFULibrary-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 3312E10704D574542E267ECA909C3416 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 24A13113E387EC83E9B0377DA7C515D0 /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 33AB882F9A7265FEA30B0D419A0431AB /* DFUPeripheralSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9059A703233CE911E22855733F6AFEB /* DFUPeripheralSelector.swift */; }; - 3462C96F20729079AEB8BEDA081F25F0 /* MetaWear+Firmware.swift in Sources */ = {isa = PBXBuildFile; fileRef = 718E68D5B9B0F507C9C5DAB63E0926F4 /* MetaWear+Firmware.swift */; }; - 347C773436F0CB0B1372BA87ABBC346C /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 508B72A1332DB45B29517F8C078A5B9F /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 355E1C7794CCB9F67EEC12F03FDBEAE8 /* Double.swift in Sources */ = {isa = PBXBuildFile; fileRef = 035E0D2F7DDEC194A3C14B7536168D1E /* Double.swift */; }; - 35EB122A9477D982A48040BD7B186071 /* MetaWear+Mock.swift in Sources */ = {isa = PBXBuildFile; fileRef = D74FEE9457637D85A707A2FADECBCD12 /* MetaWear+Mock.swift */; }; - 35FF54F26D73BF450F05CC92BFBD1C2F /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EC74BD0C5E76033B10A5D6EB416F031B /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 308B17F7F30282DF493B081CC6A5FD8A /* DFUFirmware.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DB01C7B4CE59D18C6D04EB428451795 /* DFUFirmware.swift */; }; + 30B1037AEE08E9DFF03B5458E5D9AEE3 /* iOSDFULibrary-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = EE3D0F73A6653041193A830938A672A5 /* iOSDFULibrary-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 31B3118D1630004A69B06C8287AEB8B6 /* ManifestFirmwareInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = F50536BAD847A62129397161AB3353B0 /* ManifestFirmwareInfo.swift */; }; + 31B350AF75DC001266B48EC6C6993119 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3AF105819F0CF98F677510BD677E9C91 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 330A63C562FA1E5B405D7E923242BA00 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B4ECB2BFD9EC71AEC3128B318A9BA8CB /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 33100723B5271F7198C07886C025E42A /* Archive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57E06254CA848BA44D929B9100D93F9C /* Archive.swift */; }; + 336FEFCF9EE2E66243E6A6278ED6EB8C /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AB700AD1E77526C1584F3E4CA6A880C /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 337ABFE1F4D627B5183D0E4F51EA5C4C /* LegacyDFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1381FD8CC75E8C4F6F506D2A5535FB9E /* LegacyDFUPeripheralDelegate.swift */; }; + 342787FC1F70B003C274C5B33794B812 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C116B2146C21545E9C6286225384C304 /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 347BB2B062D84D6B7C9B09AFBC09FB91 /* DFUServiceController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE1BFCB3F1461B4BFBEB3D809F511712 /* DFUServiceController.swift */; }; + 35595B3C00C29CE6E079A0E81C17E1F7 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 004F2B2F88E223F15641B8434DF89667 /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 3611004D23F30DCBD3C8247A2AF37FDA /* Pods-MetaWearIntegrationTests-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2BA85EFA3BF15A9489343A185CEA6A26 /* Pods-MetaWearIntegrationTests-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 365FB5651784725D7257C0DF986FB82A /* IntelHex2BinConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AE8742872C84BB77BE446ECCB5F2089 /* IntelHex2BinConverter.swift */; }; - 3708B5CA484C247C59E70582EF4CC155 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE1E0DEFFE017C0C2E2985A366A992F9 /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 37BFEB91EF5B1138FF008EBF481723FC /* DFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7ECD3097C2FDB03555157378AE408FC1 /* DFUService.swift */; }; + 36EB6DF354242389CF80833E6E8193F2 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 871C3E184118A1C65B2DAEAA3016D788 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 385ACA3C7FEE0EDD7DD83B25128433E7 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C7D96C1FB9ED1E49325F6E92F2AE4F33 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3888442616EB83A0FB442B67A69805C2 /* SecureDFUControlPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F84DDC719FC0880B153F57CEF28B283 /* SecureDFUControlPoint.swift */; }; 38AA5C3ADAAB8085BA56AFE8782B345E /* Task+Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2DE5AFD8F526047908EF1A6F8FDAE4E9 /* Task+Delay.swift */; }; - 38D674D4E1EEB4DE001F2AF085786DFB /* MockModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = A3932A0E4D8A7E610C888E51B1A2166B /* MockModule.swift */; }; - 38E4A0CD6FFD3039A7F6CD1D0A29EC27 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1899A2B7831D2DEABC5102099AD9E6E0 /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 39C3496F4681C3698BEA2F2B673B591A /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F5A0A0E96458AC5D9A29D4B38AC875F /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3A39F0244C5A1E3E49D7BDBEA7DF0E93 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 156218A27163C74F4FF3A8B88B84FDB0 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3B054A7BB18AA2DA031669506836F84B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; - 3B39ACF181EF9960F0AE8C0A6CE190AD /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA4615841E2C1E8157D02E95B64E71C4 /* MetaWear+Async.swift */; }; + 3A8706725957E819D8DC3615F70A46C1 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = 326C7A13414F85997D21C1DB7AF746AC /* MetaWear+LED.swift */; }; + 3ADDAF25F52F7F8AE55FEBA3951FBC8E /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC4B70F9F0E4EAAE94860B390EEC84A5 /* MetaWear+Async.swift */; }; 3B8192DDEB643B6066EE1E5156ADD514 /* Task+WhenAny.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88D9DEE679B18E5C458D4795D10E1890 /* Task+WhenAny.swift */; }; - 3CAF76BC10F474CA9855523B81A06D45 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 43AC3751B2F2988747E79D26B073C548 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3CC98CBCE74994DFD1154697E65582C8 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C60154A98FA6CA33BA0AECEC621F8FEA /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3E0EEE6166C8F8BB4A25D87D5141FBB6 /* DFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7ECD3097C2FDB03555157378AE408FC1 /* DFUService.swift */; }; + 3C2AE8F311EB26FD27E7E2C7A67D53BB /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BF6180B8C72293B7BA5EB27B28FA560 /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3C8E28CCF6A9BA8C16E4C5A41AB0A363 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB77385D74E1D2C5ED9DF53F991E41CA /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3C965716FF953D89F35CF59126237A50 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B63F9B9F7BDAE3C2D1A99017A48D4C8E /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3CCE7FE57D2900872C671C3C89299B68 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 20B0727D623002B7F4C82B61F2E53BCE /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3CF4CEF79C228EB2A435E35AAA64FABC /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B63F9B9F7BDAE3C2D1A99017A48D4C8E /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 3E5FE1D46EFDF0BCCFADEC040C4C0BA7 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F7D4003C2F97282E3C82E5711C7F8C46 /* Foundation.framework */; }; - 3E7721697FDEEC862326383F08C73726 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = B86D8D46F4B973EF1E0D5D66A6B9B56D /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3E88A6098213BF5B25DC9C3336F486DA /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 628908291910B17BE8A3DC6FD29A7CF9 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3E98B9EC7A351CDCA1C4EFBF62B90C81 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 357E5635098F2378732DB33A5AE27106 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3EC94834ED682D28A126011CD9785B0B /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 62ADBF1A253BFDC62623319DA3174DCC /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3F3144431C4F7DE30C700044B8290B79 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 32BC530DD23022E2E1B595E7AF36B83F /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3FCAAC39D3C466AD413438AAAD56C760 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B3F29D4C5BD9B02000722D3D5FCF208 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 4004C74D08F648421683BFB4F88436BE /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 62ADBF1A253BFDC62623319DA3174DCC /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 4141395478FF86165B425DA9DD2BAF0B /* DFUFirmware.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DB01C7B4CE59D18C6D04EB428451795 /* DFUFirmware.swift */; }; - 428179FEBEDC98B766752F98E061ADF0 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 40D28FBC8418308A8188AE6A59CCA5BA /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3F66629C41DD84033EC1806492DC139F /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D79846913C5C3DB9B906408EA67CDBE4 /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3F9A7A995F700B220AC36AA42F260A75 /* DFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBC0B44C8FB29FE5F9CAA480D7FC5222 /* DFUServiceInitiator.swift */; }; + 40229AB80A82AAC04915D9E7158D22C4 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 92A6AEE6F244210ACF8B60C22AFA8B6C /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 40B56B448EC6A6EAD2EE9DB98160B66B /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEF0743B28C3D9777CDD2245E75150D7 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 410F5DFCFD4E62BCF79717F6687AD971 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C6E0959E06A9BC6D49824DCEC497E3B /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 411855DB839A2FA0F451F55F4FFDFE9D /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 70F6B686369511CDB37017E366F11DFA /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 41295ECCE911F0108FEA0CB75D6F27D6 /* DFUStarterPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65F2AB5D288A5BC41E69EFE924EE0C37 /* DFUStarterPeripheral.swift */; }; + 417668ECDFFE05C356D2F2C98E6FCF2E /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2C439C24DEA34C216997BFDB48274C53 /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 42D282A333A0D042BD3A0B33D5567B7C /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82D6BB676A3452CF143E065E861A4B89 /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4372F9E0D0AD29E55CDCF6C48016A505 /* ZIPFoundation-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = F2EE0CC34C014504301CE5D84714CE4E /* ZIPFoundation-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 43C9A6DE352D1908736E7F0AAFD22A83 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; - 43F84EBFD25FF7692EA9C8271E48016C /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B8C303105C8F0BE828799CFB61EF6037 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 443958B53F59B8176F18F52F5A7D60C8 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D478768EE86CA3C5F1C572EAC53FAF90 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 44DCE155A511B8796548473EDFE2596F /* DFUPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21E0B5E72AE22F9985373E6D5A602217 /* DFUPacket.swift */; }; - 45188555A3FD996EF0ED1890967BA787 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDFACC6AF305A7494159DF42B26EB163 /* MblMwDataSignal+Async.swift */; }; - 451FB510939E8D5E3DAF8837A433759A /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C8C2558A12ABD13B44687E76729580A3 /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 4620AFE130D8087075260610DB3BCF97 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 87859CACBA3B3EAD7779E437E2108045 /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 465A06C1F1470EA1D2892397CDE8D4A1 /* LoggerHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 301FE6ECD82EE6FB8E3F50AAA7F50766 /* LoggerHelper.swift */; }; - 467289BD1F01461746D2FC6578933868 /* DFUController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E83FA47CA9F4A746A08313BB59BC889 /* DFUController.swift */; }; - 46B107827D5816D059853CC05EFFF608 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C60154A98FA6CA33BA0AECEC621F8FEA /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 4734DE71E9177A673F9210807D7CA53C /* SecureDFUControlPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F84DDC719FC0880B153F57CEF28B283 /* SecureDFUControlPoint.swift */; }; + 43E82F86E8A7615D81CFCD92A5CB798B /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 827E9F987EB8540D345C89BCCF2B194C /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 441CDA6387C0EEF565E8B8F28331DC75 /* ManifestFirmwareInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = F50536BAD847A62129397161AB3353B0 /* ManifestFirmwareInfo.swift */; }; + 44231CFA2D62E08A5696662CB8B566F9 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FE4DE47D314987E0F452D7DCD0416DB2 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 44285E104F9F75358A972F911E17CF03 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CB6950BDD7E3014E744A1D82DCD7D8F /* ScannerModel.swift */; }; + 44EAA1152D17331DC98B1641AC153A2B /* LoggerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BD2DBCCF615B8BBB6F900E4540C8EF5 /* LoggerDelegate.swift */; }; + 4694B1C1CFE06D6715FA86553E59BB2B /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 028E0B50105A41869AE9683AA8EF087F /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 46EACB73E7AA6910B55E4F2B1E2DCF8D /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 48D266E399A4AD8C456953D262CD9B0E /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 472BC998AD8EF60986351D1BD2CB31CB /* PythonGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3EC1C6520D805971B93CEE5E29C7C7B8 /* PythonGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 4764D5E483C101E8D22FE2C0DDA84E34 /* Pods-MetaWearIntegrationTests-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F7724217436B9FE484B879ACC362C63 /* Pods-MetaWearIntegrationTests-iOS-dummy.m */; }; - 477355B2E241649335E42FB788ECAFC3 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FF46D6EFAB8DAD5E788925F8871905B2 /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 48A80D29A5184F6E0D03C46D72AFE632 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 40D28FBC8418308A8188AE6A59CCA5BA /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 48F03C15261EB26E4DCCBA1FDB7B5F32 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 43AC3751B2F2988747E79D26B073C548 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 4950E2A09827C947066B01B3EFA2C6F0 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1D32438A3E37C2538BCEF7DEF8B76D91 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 49E00F58A94BCC95DEEE7FDA74E281BA /* Archive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57E06254CA848BA44D929B9100D93F9C /* Archive.swift */; }; - 49E1FA0316DEAB59F1662F30FFE403CF /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; - 4A3979DE1CC7B8878DB73DCE53E1FB6F /* LegacyDFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1381FD8CC75E8C4F6F506D2A5535FB9E /* LegacyDFUPeripheralDelegate.swift */; }; - 4B99B8ADEB41211944CB809FEF064163 /* ZipArchive.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDAB73F304877FD4585F078B919261FC /* ZipArchive.swift */; }; - 4C94AB58FE80412DB72B7F703D7A53BA /* SecureDFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC664CACE8271F6C72F9F07D47468A39 /* SecureDFUService.swift */; }; - 4CCCAC704214F2678F15F5369C0A26CE /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C8C2558A12ABD13B44687E76729580A3 /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 4CEBB04BFAF443819C7CFD2CE0C774E6 /* crc32.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3448F7A74DD00F5CC447008E69AB4CED /* crc32.swift */; }; + 477DCCCFDEC5D3D2169E45B8264D6C76 /* DFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 920B7554281F1A16BF53CD2B6B7089FD /* DFUPeripheralDelegate.swift */; }; + 47D4B15ED860746F0CD77E274445ABA2 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82D6BB676A3452CF143E065E861A4B89 /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 488DDB8D9BF32B5B77710336DE4B352F /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AEE665D716662DBB922425D97CDB83CC /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 48EB9E2ADEFB89AB57A7391C6E142443 /* Double.swift in Sources */ = {isa = PBXBuildFile; fileRef = 035E0D2F7DDEC194A3C14B7536168D1E /* Double.swift */; }; + 4A7416818F69F179DEB912E1E0387A97 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60E262EDBD11C805D5B628157982C484 /* MblMwEvent+Async.swift */; }; + 4B4A77925C01BB8EEBC6A24D40D85FED /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 687FF210AC568843A9F8C1CDA491ECC7 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4B5A2E535E4D34B20EA0A82FBA645094 /* FileManager+ZIP.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60BEE52C89C924410FA20A8C8FDEFDA7 /* FileManager+ZIP.swift */; }; + 4CD0373B8830051BB7C6B42624F26BC5 /* ButtonlessDFU.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F2F9B8E65A9F447C9A12C27A37C2C8F /* ButtonlessDFU.swift */; }; 4D07CF26DFE82FEAB36B03293E884E3A /* Executor.swift in Sources */ = {isa = PBXBuildFile; fileRef = B478AA720F432EAEB3DAAD27B7EDB2E3 /* Executor.swift */; }; - 5011FE4E8871C7AE681791ABC2759BD9 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 24A13113E387EC83E9B0377DA7C515D0 /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4D08513111FE8AD054634756086260D9 /* SecureDFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3278B1D6E8FB851C63599138931CEC3F /* SecureDFUServiceInitiator.swift */; }; + 4D8501DF1BB35763D41F30DDE3A73306 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = 326C7A13414F85997D21C1DB7AF746AC /* MetaWear+LED.swift */; }; + 4DD385F0EE9337783A3DB10D34B07ADA /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AEE665D716662DBB922425D97CDB83CC /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4E02097259EF9CA0D2DC7799706132BF /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 004F2B2F88E223F15641B8434DF89667 /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4F007320E788168C353D6ECB13A5DDFE /* SecureDFUControlPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F84DDC719FC0880B153F57CEF28B283 /* SecureDFUControlPoint.swift */; }; + 4F748795613245C9147640C9E7CD40A5 /* Manifest.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2F403E27DBF07E56940860662756CB3 /* Manifest.swift */; }; 501586404F73DC62B61210C361AD0953 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0EE452657460D902FBF3DF3941516A6F /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-dummy.m */; }; - 5179320B541D2B71B010AFB2866DFB08 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE1E0DEFFE017C0C2E2985A366A992F9 /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 52CA4649086C6932F2DBE1119CB12442 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10A7CBD15778697655DDC81F8D561124 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 53069B4A6DE78E2C5B5454D83780D8AB /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA4615841E2C1E8157D02E95B64E71C4 /* MetaWear+Async.swift */; }; - 536EF2CD1BDCA1B0AEE3BD15D8A237B1 /* DFUStreamBin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1170D3A9194D58C03AC23B4BD8B40D36 /* DFUStreamBin.swift */; }; - 537A574F74C9DF3B85A7E20770E7379C /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 156218A27163C74F4FF3A8B88B84FDB0 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 538AB836189BCE4210CAA24B170E26DA /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B91C3B3123AB2E3A23111FCEB9CC1B9 /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 53E28A669D9B85C7BB3166CFDE347D4B /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = B593D24B4AEAD32B5C64065C49EA830B /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5418B51DF0D2B9FC317A29E2F24828D9 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 151AE9FA75AEEAF352A67C395BAE1AD7 /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 54823A75E564478A26B7829F94E6F107 /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */; }; - 54E3FEE5CA70AEF657C320A4B9A57361 /* DFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 920B7554281F1A16BF53CD2B6B7089FD /* DFUPeripheralDelegate.swift */; }; - 5669886DD9E24EA4CA2A8900D3D4B5CB /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B3F29D4C5BD9B02000722D3D5FCF208 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 58BFA96A3836B9FB559175426F03FC8D /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8EF759174C33810CE720C98CAB60552 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5036B9BC274E8B0C182DED918E5FFE2C /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3AF105819F0CF98F677510BD677E9C91 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5040CA784DF27201EEBBD5F0C70BD649 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 70F6B686369511CDB37017E366F11DFA /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5103287D213950F50D47EBD676DB310E /* DFUServiceSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 804F804E9F5EF675B36052B75A24FEBA /* DFUServiceSelector.swift */; }; + 51B4FE440E78A79358510DAA40C9AD5B /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61374778F4B640C23FAAD145DB6958F2 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 521AA91B3FB3349AACFDB81C7B28CB17 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C7D96C1FB9ED1E49325F6E92F2AE4F33 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 53855E4FB33EAD16A2F39AD607AB01DC /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */; }; + 538E57A469E7D1132B6B6F02A23C9CCD /* SecureDFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3278B1D6E8FB851C63599138931CEC3F /* SecureDFUServiceInitiator.swift */; }; + 53B58CE01638361725C6D6CDAD7DF223 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E11C052B3CED55F30D1DEDDFAAA7E408 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 53F9B07D3B24ED26D48BDB6BD539A7B1 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 10B5EE02F081CB150B64BC4FB70FBF7B /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 55BA23285A52A36F6C1FB31B1014913C /* DFUPeripheralSelectorDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A26C1C50C1866FDC9FA4437D526F6038 /* DFUPeripheralSelectorDelegate.swift */; }; + 56369CD53A39D173A3401AEB41EC4F72 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BFD6B2E301BA8ACDC2D3BCD0E758C1D /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5652EAF28961A67935A4D58794FA63BB /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 10B5EE02F081CB150B64BC4FB70FBF7B /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 56E511ED0A9C5F7FC5D40A3AE34ED45E /* ZIPFoundation-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 5FD25505429CF7363965185D3FDC0B8B /* ZIPFoundation-iOS-dummy.m */; }; + 56EE5C0F33D84D5C6A26E559A033D0B5 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C22749D2B8E00599A0F94B486EEAF752 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 572AC3EEB55914EA02B785C02FA1C996 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B83AA79D41272316A3114303985BB4F0 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 58692948A131C4CD93CB5B896839C0D2 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 92A6AEE6F244210ACF8B60C22AFA8B6C /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 58BC765CC7F9D60976B1F2846F9C443D /* DFUUuidHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = F85B983DE4FFFAFAF0F7E87BB5CE2FF9 /* DFUUuidHelper.swift */; }; 58DA6845EFFC6FDA03D7933277AB36CD /* Task+WhenAny.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88D9DEE679B18E5C458D4795D10E1890 /* Task+WhenAny.swift */; }; - 5A0DEBA33A6C501F1C380F11BE3482BF /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3F979CABDF820E04886A9E5CF79FD7A7 /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5A146B9BB0B56E0277C9F0A60968C3ED /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5AE6AD7941189A82EF88895867E33CEB /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5B3D990314D6755101EF521AC190A706 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F69D9DEEAEF7D7E9568EE5C30A0AB5FA /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5B9911A5C50CBAE304302C3EFCA29F44 /* LegacyDFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC30364AD3168CD204AC57BFFB1936FA /* LegacyDFUService.swift */; }; - 5D326075FAF116363D24C54A158DBFCD /* DFUStarterPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65F2AB5D288A5BC41E69EFE924EE0C37 /* DFUStarterPeripheral.swift */; }; - 5DE892D3FEDA1E4DE722273B8246A3A5 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA8C4E4954F577DC5838552C26A95F21 /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 592B337FA5931F1F3E682E46975D1CBB /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D33E3506F1148C04329908970491D35 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 596B2B65357FC1D22F21CC14FC9128E6 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 48D266E399A4AD8C456953D262CD9B0E /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 59E2D5D6787F2235391DCF079896CCDA /* DFUFirmware.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DB01C7B4CE59D18C6D04EB428451795 /* DFUFirmware.swift */; }; + 5A58FBE68A6B181E246E27F35678AD0D /* DFUControlPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6271165BB2AE86465A9943D2EF112D11 /* DFUControlPoint.swift */; }; + 5B008EC07535202F35B7EBAE64EC8AAD /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 028E0B50105A41869AE9683AA8EF087F /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5C83264B240E63DA8FBB2CE4B75ACDE0 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 871C3E184118A1C65B2DAEAA3016D788 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5D6135675F984E450A947ACDE9ADD921 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E0362A7CDF8C01C9D967F8417265F7C /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5E3142A6EC11EB7F74600E077FD6BD21 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E11C052B3CED55F30D1DEDDFAAA7E408 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 5E8C6E9C84996C14D7754D8C9FE0ACFE /* TaskCompletionSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = E43893E60AA833FD5CE59855FFBCA9CF /* TaskCompletionSource.swift */; }; - 5F7F870391DDD48E136C827DC1A0CA0F /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35DF09B838AFE914ED26D06CCF9A534A /* MetaWear+LED.swift */; }; - 60EE841307BD21B2DAAB325EDC67BB65 /* DFUVersion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AFE0686F81066118B61F4F390340CB1 /* DFUVersion.swift */; }; - 618C2E0152378DD659637F45561A830C /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = F0E32B7BD057ACF329409780425BCAF8 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 61ADD75622CBECD6246886A980C8098A /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 62ADBF1A253BFDC62623319DA3174DCC /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 61CAC6ACEB5FDA1FA2C39F5CAE1BBAE7 /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 508B72A1332DB45B29517F8C078A5B9F /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 61E277265DEF113ED4E4ED2DA10E114D /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B8C303105C8F0BE828799CFB61EF6037 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 62B398AEBF63A158C954057C6A1B4818 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = C78FA1EB0C8AD1053070D8211005C342 /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 62C615D4948E2A2CA0198AEFA5ABF779 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6BCFD5EC59A041BE47D94C79D15215C9 /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 637219251630417B2B159B8D912EEA08 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B3B544A8CA50CA8E1AF96A0582DE5218 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 63CE6FED54F065D299205FCDCFCC7CD1 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 34A8066D3D9A5135273080AF0ECAA244 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5EC11317DF6D83502516A73E16FF279F /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7D0FDF991487027613374C0F7701226 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5ECF35964FFEF36AB9CCD3DB3BB74488 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7B6FF697AF15FAD5B996B730D32226F /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5F013013A3C0736A18EB56E1BA6921E7 /* LegacyDFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC30364AD3168CD204AC57BFFB1936FA /* LegacyDFUService.swift */; }; + 5FC4771416BF2F0BF2EC39721D21B6D0 /* iOSDFULibrary-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A07AA9738C8E78AB4FEDF17BE7E0B36 /* iOSDFULibrary-iOS-dummy.m */; }; + 5FC52D268FF641B1B0E32B8F0ABD7DEA /* DFUStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B7BBB487AAC8C4468FD0CFD70FBC0C8 /* DFUStream.swift */; }; + 5FDC7FDB83669C1A6FAF361A010DA604 /* Archive+Reading.swift in Sources */ = {isa = PBXBuildFile; fileRef = 085E4CB728B2A20CE1F1A3E86A7E6BF7 /* Archive+Reading.swift */; }; + 6071E48F737A11BC76CF9F7D0AD0A27C /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9481942C645F5AF023E048963705B7E7 /* CoreBluetooth.framework */; }; + 60F9D875CB58B072487CEECD78E27295 /* SoftdeviceBootloaderInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 692329CE0A9A63D15123D684C9F2AA34 /* SoftdeviceBootloaderInfo.swift */; }; + 614E22AE1596BB4B98D4A17A6F7635B4 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E0362A7CDF8C01C9D967F8417265F7C /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6270EB3BDC0A42EBECD688410FCE6D58 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED30FE0D206D2DEB526E26E7D3A002BD /* MblMwDataSignal+Async.swift */; }; + 62FBDA31A22BCB5D9FC3045283D65F03 /* Data+Compression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8482F9546AEBA3CC01ADA5A949FAD144 /* Data+Compression.swift */; }; + 6306891733ECBA778D442410C7819E45 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 10B5EE02F081CB150B64BC4FB70FBF7B /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 64A222ADB2B5A14846D38D0641863452 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; 652C419571AB0F8B86D47417A11CDF1C /* TaskCompletionSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = E43893E60AA833FD5CE59855FFBCA9CF /* TaskCompletionSource.swift */; }; - 655A6CFACBEDD518DDCCA128A2CF97D1 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 87859CACBA3B3EAD7779E437E2108045 /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 655DB88705AEDB7BE22B7518D1AED7C8 /* SecureDFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC664CACE8271F6C72F9F07D47468A39 /* SecureDFUService.swift */; }; - 678ECADAC5F1F8E0C185A7432B3338E2 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EC74BD0C5E76033B10A5D6EB416F031B /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 684FC84A09A9C0CEB7F57748A4D42A54 /* MetaWearScanner+Mock.swift in Sources */ = {isa = PBXBuildFile; fileRef = E978168E500A5904584DFE71F5239B36 /* MetaWearScanner+Mock.swift */; }; - 68EB3D05F9D2686283779E6E91EE6052 /* DFUCharacteristic.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1ABB43FC0D3E225C0671B3C8F70E8152 /* DFUCharacteristic.swift */; }; + 6533E8F44A82D67EF9ECC6F9CBFB57ED /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB77385D74E1D2C5ED9DF53F991E41CA /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 654533983CAA68AE1692775450809AD5 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 92A6AEE6F244210ACF8B60C22AFA8B6C /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6631A90F61FE28E275B84EF59EA779FD /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB77385D74E1D2C5ED9DF53F991E41CA /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6724AAE499F3043B1EA87C88346D3F4F /* common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 79039E935AA8A9170F0A2AA8C3F03298 /* common.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 67659BDF47AD29C95A7758B3E3F19B98 /* SecureDFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E2C83FD3D501DC7B7DB4B19590A9D15 /* SecureDFUPeripheralDelegate.swift */; }; + 67E4F1F394AA3F4EEA504DC1DD0446FF /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1BAE33B69D5B09EF1A9FC27B6F9104C /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6857EB6BF165B523C2B853251CCF0CF0 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = F28F4FB76B2B65A671A7F0342CC64711 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 68B002D2945773B0574B1C7623A478D4 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B4ECB2BFD9EC71AEC3128B318A9BA8CB /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 697CCE81E02FD15611AD5B4C86D3B2C8 /* Bolts-Swift-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 8AA5ADF22289EA5AB17FE593C7F71A66 /* Bolts-Swift-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 697F10FE2C90CA9B23E2D41E741B2896 /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B7D2E886936673F46B3ADEEE4C155AF6 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6AF1592BB698329EBC1D18917C7F89CF /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0196948ACFF051DD8861A6C465F8CE3F /* CoreBluetooth.framework */; }; - 6F6D8FCCA6362710DCA64D356D440233 /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6815A76152D2B6E658D68110E116BF9A /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 7003C0C2B43B6EEB99DDB0906B59125A /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 43AC3751B2F2988747E79D26B073C548 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 70AB09964E5D702EDBBD9DADA80FAD1D /* iOSDFULibrary-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9030F92CAA3CC18008C7AE0477355CDD /* iOSDFULibrary-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 71DBA30B059CD5D0C8CA1FDFCD5082DB /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5AE6AD7941189A82EF88895867E33CEB /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 72764295FBD26A9DE86A0F3E15D842D0 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8BD4D50909896D979EFF9650C009BFF /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 69D375F2A849BF9373FE6551BF51772B /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C22749D2B8E00599A0F94B486EEAF752 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6B9DFD70B46996F96C59208EF3F12668 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 004F2B2F88E223F15641B8434DF89667 /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6C7D2B2FBBE071A385704C85C325DE04 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E11C052B3CED55F30D1DEDDFAAA7E408 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6CB9AE2B0DE03C9374C6B5CAC5597758 /* DFUPeripheralSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9059A703233CE911E22855733F6AFEB /* DFUPeripheralSelector.swift */; }; + 6DB8D54A28C2D885DB64C626F26C60CD /* common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 79039E935AA8A9170F0A2AA8C3F03298 /* common.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6E1C3A0A127DBF0C59643863E01B8C64 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E11C052B3CED55F30D1DEDDFAAA7E408 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6E701F7BB609CE128911B2743D6992A8 /* DFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD54ED09D15C9FCDAB012469BA87074 /* DFUExecutor.swift */; }; + 6F8B57571C7FF9B3E281B21985E3E72D /* Entry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6067A156E323544E0A4766030061A5B2 /* Entry.swift */; }; + 701F0207B3673657A585DF64BFB8E37B /* SecureDFUPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8A925FEACFBE227CEDCF7149D4EF12F9 /* SecureDFUPacket.swift */; }; + 7024D2881CE0B18F21E03D6B84DA75E7 /* DFUController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E83FA47CA9F4A746A08313BB59BC889 /* DFUController.swift */; }; + 7077BC573851D7D38D1D3B6CDED72989 /* Archive+Writing.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63E0C68FB96F88E28D9871C8FB7C1C98 /* Archive+Writing.swift */; }; + 70838D5B656235CB6DF1B3C8C7E49FE7 /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AEE665D716662DBB922425D97CDB83CC /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 71562FFD8C12FDF1978B60393AE5EAEA /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1FEAD48A2DC9006470AEA6A870085C76 /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 72588964D8A3E73418C3574AA4625199 /* common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 79039E935AA8A9170F0A2AA8C3F03298 /* common.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7261B57C2B8E8DBCF1107D9779C32FAA /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5F6357DB75F21135B725219F131B8F8B /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 72845BD38C34D42F747AF687E5CC51D5 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BFD6B2E301BA8ACDC2D3BCD0E758C1D /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 728713D831E5C67953D1AE2618596FDB /* DFUUuidHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = F85B983DE4FFFAFAF0F7E87BB5CE2FF9 /* DFUUuidHelper.swift */; }; 72D27DF79BEEA067C9707C5FDFC8A6FF /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EC706D80D1653386F8E95C9A27FBD84 /* Errors.swift */; }; 72E60F7411C6077AED13F9800054438C /* Task.swift in Sources */ = {isa = PBXBuildFile; fileRef = 222241CB9EC5A831040351E44E164F47 /* Task.swift */; }; - 732A901165DF50D57A5D71D699393EDB /* SecureDFUControlPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F84DDC719FC0880B153F57CEF28B283 /* SecureDFUControlPoint.swift */; }; + 730D6F99EE75836E854A5CCAC22B9403 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 48D266E399A4AD8C456953D262CD9B0E /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 732B7286A2F03F048EF8FE2FE57CCB1D /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 262B515345D9A281E9DB178889EAB01F /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 735531D156980870A7645451DCECA66A /* crc32.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3448F7A74DD00F5CC447008E69AB4CED /* crc32.swift */; }; 7376E6F0E5F2808ED6A674594A9DF413 /* Task+Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2DE5AFD8F526047908EF1A6F8FDAE4E9 /* Task+Delay.swift */; }; - 73BD2C1E78718EFD3D12ED76CA376E5C /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE1E0DEFFE017C0C2E2985A366A992F9 /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 73C8D3922614656DBDB801E3F5EDD742 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FF9550C9A8C8656880258CF8CD98C53 /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 74A7B6B952EBE570BF8D3743E6D4CE08 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 32BC530DD23022E2E1B595E7AF36B83F /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 74D5B1A504F078C89022CD5CD114548C /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 34A8066D3D9A5135273080AF0ECAA244 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 759ABE84E5C03EDF6DAEB327B84C4793 /* SecureDFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3278B1D6E8FB851C63599138931CEC3F /* SecureDFUServiceInitiator.swift */; }; - 7620F5AD19E3BD1052F96D7230A20185 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10A7CBD15778697655DDC81F8D561124 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 764446DD3366ABB4F722FEFF7B443127 /* LegacyDFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63F893AF4ECF8B17198E585DCD8FB233 /* LegacyDFUServiceInitiator.swift */; }; - 76A6B1C23FDF0A781C4006579AD847F6 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = C78FA1EB0C8AD1053070D8211005C342 /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 76C499CA49126EEEEA27D02B81681577 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5AE6AD7941189A82EF88895867E33CEB /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 792278C62CBFB62C15484D7EF5112329 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F5A0A0E96458AC5D9A29D4B38AC875F /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 793820C2B7CF2B2E9255DF4E7880A684 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = B86D8D46F4B973EF1E0D5D66A6B9B56D /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 79FF160AF9C1FF6F69FCDD2F46619969 /* MetaWearScanner+Mock.swift in Sources */ = {isa = PBXBuildFile; fileRef = E978168E500A5904584DFE71F5239B36 /* MetaWearScanner+Mock.swift */; }; + 741FD18B0865F56C50CA18F676017440 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED30FE0D206D2DEB526E26E7D3A002BD /* MblMwDataSignal+Async.swift */; }; + 757D3DAEAE3CFF8069844FAA26995346 /* DFUVersion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AFE0686F81066118B61F4F390340CB1 /* DFUVersion.swift */; }; + 76B94E1A4B7BEB7E5905729C925304A6 /* DFUServiceDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8C525780CB40473CE06F0E9500FE182 /* DFUServiceDelegate.swift */; }; + 771BACA6A2B750B6609346439736FC2A /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2EFE9D6C87239704BBC5413982E2438 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 771FEC36B502B1DC50C60978F41AE216 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FCF2F5A5C94712F9BAE705347593E4A /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 777439BF8F46CC57F35E6201185BB042 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CB6950BDD7E3014E744A1D82DCD7D8F /* ScannerModel.swift */; }; + 797077F72F2CFDB09A7A1F61B770AC32 /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 404A96C52A94C9574CC02A2A53C0D18D /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m */; }; + 7A02A8B89A814A1EDF029AF046DEE3B7 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60E262EDBD11C805D5B628157982C484 /* MblMwEvent+Async.swift */; }; 7A04D5CD995C5E94005A7A2F304035AD /* Executor.swift in Sources */ = {isa = PBXBuildFile; fileRef = B478AA720F432EAEB3DAAD27B7EDB2E3 /* Executor.swift */; }; + 7A5E4A83A26D7708E334CCE253704BF9 /* DFUServiceSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 804F804E9F5EF675B36052B75A24FEBA /* DFUServiceSelector.swift */; }; + 7A6C843BC6A55BEE9B49AA332A462C63 /* ZIPFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 310CE7870B01D5B716AC8334A7A0D3D8 /* ZIPFoundation.framework */; }; + 7AEA8B8F8198FAB859EDE3F61DD7A7E0 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C7D96C1FB9ED1E49325F6E92F2AE4F33 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 7B191AFF5067E87545FB80092A529B43 /* Task.swift in Sources */ = {isa = PBXBuildFile; fileRef = 222241CB9EC5A831040351E44E164F47 /* Task.swift */; }; - 7B9AF34A76124EC75FED6B179308F304 /* SoftdeviceBootloaderInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 692329CE0A9A63D15123D684C9F2AA34 /* SoftdeviceBootloaderInfo.swift */; }; - 7BE212CF550AD818F66626514300AB06 /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 508B72A1332DB45B29517F8C078A5B9F /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7C1BC588855DA6520E54B04D9C608A2A /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 150D817BA455C92B497629C15EB2969A /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7C71B5D451BEED1E9E6F2AE6A903D135 /* ZIPFoundation-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A8B2B732F6AD9127EE241F1535789E96 /* ZIPFoundation-macOS-dummy.m */; }; 7D0D2355F24951B4A0B35C9ACCEDE121 /* Task.swift in Sources */ = {isa = PBXBuildFile; fileRef = 222241CB9EC5A831040351E44E164F47 /* Task.swift */; }; - 7DCF1A53C34A6676E53E58977B01CB81 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FF9550C9A8C8656880258CF8CD98C53 /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 7ED6EAAA9BB7F7E5692147519B416F82 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 12F259C70E58E19EE9E4657BA663A5A0 /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 7F1F76A44C2BA0CE89364DCF035B9259 /* ZIPFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 310CE7870B01D5B716AC8334A7A0D3D8 /* ZIPFoundation.framework */; }; - 80C8E3A29759E7348E33D271B776BDAD /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC05B55C8E50D3344CC11348925701D7 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 810A57F947C7FE7E95ACB006074C9F14 /* ZIPFoundation-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 5FD25505429CF7363965185D3FDC0B8B /* ZIPFoundation-iOS-dummy.m */; }; - 821E05BA9354D961757A1841586421D6 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 96C187B8B764C5AEB4EC2F301BBE940B /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7F0699DAD8E64CEE03A8A1FBACAFFE92 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB77385D74E1D2C5ED9DF53F991E41CA /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 80CF7D6D10372DBEDD73460E1C0EC1AE /* LegacyDFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63F893AF4ECF8B17198E585DCD8FB233 /* LegacyDFUServiceInitiator.swift */; }; + 80E37510D2A68AE5AB97BBA53D5B04CE /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B4ECB2BFD9EC71AEC3128B318A9BA8CB /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 816B88E736DCFFE2A081EE0039C9AE70 /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E7D6F9807103C2CE80B3165286C6ED0 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 82FAADC4B6AEC1DC79D34AB75E366643 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FCF2F5A5C94712F9BAE705347593E4A /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 83B1B34720AA1EAAE7D713AEDE74A678 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F7D4003C2F97282E3C82E5711C7F8C46 /* Foundation.framework */; }; - 844553CECA298E5F22C7718AEDC562CC /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8BD4D50909896D979EFF9650C009BFF /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 84467CE4CEBCAE1E3E93362CC3BB5DEC /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC05B55C8E50D3344CC11348925701D7 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 84CBE5F631E84A2484CA3149D69341EC /* SecureDFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = A27370D863F0F27023F575D449AFBB9A /* SecureDFUPeripheral.swift */; }; - 866E35EF38D680E744CD94CF171DAC20 /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 62ADBF1A253BFDC62623319DA3174DCC /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 86E108ABCDDE720D87B2724637CB6C52 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = FB233AD05DEC52256AD3CAF1AC2EEAD7 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m */; }; - 87189938108F931ECD211E29F77B915E /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1D32438A3E37C2538BCEF7DEF8B76D91 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 87AE2BB3F24BC6BF2464740AA4ACD311 /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 089F056E9C04BBB61149090737132FAC /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8834B4808BFD94DD2510B5AB358F1F4D /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7630F0709266D733990F496E97069A68 /* ScannerModel.swift */; }; - 88813C9B1DFA19FFF6307CEA865CAA64 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3F979CABDF820E04886A9E5CF79FD7A7 /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 894AE8C364FD742927DBD36285E34709 /* DFUStreamHex.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED716A1D05AB6938853D4091D6F8F559 /* DFUStreamHex.swift */; }; - 8986F6576B312D0BA45A85630E830E10 /* LegacyDFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1381FD8CC75E8C4F6F506D2A5535FB9E /* LegacyDFUPeripheralDelegate.swift */; }; - 8A9114EDA6B9D0DFBDD14FADBF0C4F6F /* ZIPFoundation-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = F2EE0CC34C014504301CE5D84714CE4E /* ZIPFoundation-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 8A9F2625278E8AF124C9578B64CBC82B /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 34A8066D3D9A5135273080AF0ECAA244 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8C1986D098244A0A4DF045179F36FDC5 /* DFUServiceController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE1BFCB3F1461B4BFBEB3D809F511712 /* DFUServiceController.swift */; }; - 8C401303B66748834343DEF0196467F2 /* LoggerHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 301FE6ECD82EE6FB8E3F50AAA7F50766 /* LoggerHelper.swift */; }; - 8CC3D6806FA3922A49636038205F0670 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8BD4D50909896D979EFF9650C009BFF /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8CFA33DDECF79645C68B93CBCDEABB7C /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B44C98BF6416042DDD7BB9563F79641F /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8D480F5154EF81BCD26E18F918AEC062 /* ButtonlessDFU.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F2F9B8E65A9F447C9A12C27A37C2C8F /* ButtonlessDFU.swift */; }; - 8D5C63A2A830334B71345DD7D133110F /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = B96070473785FC109F4DF1B95A23E0C9 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8DD8DABA98294317B553E7FE1A5426FB /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EABC01310722C277D019E6C2DB9517E7 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8E709D741D8E84FF6516AAF65009237C /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2D8FA78546C4335D20357CC4567FD305 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8FEC4A0A687A70D100B0C6BBA49617C3 /* LegacyDFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDF52030FE274FEC72DE7FD300FE48D3 /* LegacyDFUPeripheral.swift */; }; - 90C50DBAA49818A5B2F5EFCBC92F3121 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = C78FA1EB0C8AD1053070D8211005C342 /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 857853F39816FEACB8D3C0E57107EFA0 /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC4B70F9F0E4EAAE94860B390EEC84A5 /* MetaWear+Async.swift */; }; + 85AA10B7785FD166D3AFEA762A1D1A7B /* SwiftGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B2DFE15A0E62BE06D2CF9D4AE53F927D /* SwiftGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 85DD21C28C500B7B461FB8A78537C195 /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E7D6F9807103C2CE80B3165286C6ED0 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 874C6150F3EFD75188A8A5936EEE0F7A /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5F6357DB75F21135B725219F131B8F8B /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8864ADD8424DD563982A26E87ED08400 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2EFE9D6C87239704BBC5413982E2438 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 887FEA896B88053C97317E53E87B8FD3 /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */; }; + 891ED6BA8008F52EC301721E47958D30 /* DFUStreamBin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1170D3A9194D58C03AC23B4BD8B40D36 /* DFUStreamBin.swift */; }; + 895347D5EC33FA6796A037ED304926CD /* MockModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BD2D2BB4D92665D01ACDFCE31BBC15B /* MockModule.swift */; }; + 8AC8CADF691259CA357090F5B3F824E9 /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E7D6F9807103C2CE80B3165286C6ED0 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8CE5F98795C15D2E9AE0FBC38EDD497D /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E7D6F9807103C2CE80B3165286C6ED0 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8CE840023AEBD9CA850183FEFEA7D41E /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0196948ACFF051DD8861A6C465F8CE3F /* CoreBluetooth.framework */; }; + 8D5758068C67709E82B54A8974B68A82 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 871C3E184118A1C65B2DAEAA3016D788 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8DEFC823822730871231F6CCEA0A1880 /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCE1CF16C54DD96420E6A5AAB43244C4 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8E402F1738B72CE43094753C240DB916 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73948BE2C0569FB3BF68F6A4A189B95F /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8EA9F3D6FE3BA71834FD3BC20D58F16D /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 63637A0110ACD81470E07A8160E1A6BC /* CoreBluetooth.framework */; }; + 8F45F401EC45EFACA04EB237E3CA3E3D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; + 8F97BF934C618374309585B62A557127 /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AB700AD1E77526C1584F3E4CA6A880C /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 904C09BA1550659B7F1F7A59D5E13EFD /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEF0743B28C3D9777CDD2245E75150D7 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 91030D3690EDAF8CB356659DDC1D3D07 /* Task+WhenAny.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88D9DEE679B18E5C458D4795D10E1890 /* Task+WhenAny.swift */; }; - 912BE7C9447963C1B2A361B08E075DE8 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B8D3D8E73DE294535A22E4052635474 /* MblMwEvent+Async.swift */; }; - 91CA3F88B4B77DBFA4E944555F6265CB /* Archive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57E06254CA848BA44D929B9100D93F9C /* Archive.swift */; }; - 9300138FE7693FCBFAC2C3F02B324D0C /* iOSDFULibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D11B9606AF00BF65E342847EF05B8AEB /* iOSDFULibrary.framework */; }; - 93A909FCD0CA9A831A467183F6A08B37 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = C78FA1EB0C8AD1053070D8211005C342 /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 93B352D21A4AEE1C2E8C2EB01B4B8B4D /* LegacyDFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A61E82795569E9BA7E8CC6376F61A26 /* LegacyDFUExecutor.swift */; }; - 93DC6715D6B420614AE6AE754C0486F3 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1D32438A3E37C2538BCEF7DEF8B76D91 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 940D20C0B2F5122D49947C5631D7A465 /* LegacyDFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDF52030FE274FEC72DE7FD300FE48D3 /* LegacyDFUPeripheral.swift */; }; - 9476AEC1127A32CA971AFD2B1C5DF321 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E328DFF0E848278274D43506C91398A2 /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 911168D7D46ED8BA905F46FCFC1962F4 /* DFUStreamZip.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F8DDE74839FCA2D7300179DBCB4FC0F /* DFUStreamZip.swift */; }; + 91AC75396FE57029698CC2F7D77610E6 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1BAE33B69D5B09EF1A9FC27B6F9104C /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 92BB8641DBDC196D136EE749FEAD441F /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C6E0959E06A9BC6D49824DCEC497E3B /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 92BFBE5048C1AF55A728D2E6A085DE79 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = 326C7A13414F85997D21C1DB7AF746AC /* MetaWear+LED.swift */; }; + 938174C63286604B37276B0C53C24976 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B83AA79D41272316A3114303985BB4F0 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 947A5BA2B9D514958793256DFD9F85F1 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 687FF210AC568843A9F8C1CDA491ECC7 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 94A1D9E3E4FDB2F784ABA4D16C43DEC7 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82D6BB676A3452CF143E065E861A4B89 /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 94D83E90F3A1F378CE191D25FFDD51B1 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 473572BB5FB1EE409EF6CF74DF7D9CED /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 95645DE5D6DA2D4EA261D36F5A9A9A5D /* DFUControlPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6271165BB2AE86465A9943D2EF112D11 /* DFUControlPoint.swift */; }; + 956C38486C6F0DF54D466808AB391974 /* Data+Compression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8482F9546AEBA3CC01ADA5A949FAD144 /* Data+Compression.swift */; }; + 95873C61174D8D481393D4E906C081E1 /* DFUStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B7BBB487AAC8C4468FD0CFD70FBC0C8 /* DFUStream.swift */; }; + 95B8233C27C01902BBE1F08E8C77855B /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BF6180B8C72293B7BA5EB27B28FA560 /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 95D5986A446C76BDA38F24FAD732E5E1 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; + 966C4097A45E3EC7B84DA0AE19A048A3 /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 827E9F987EB8540D345C89BCCF2B194C /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 96842388F596B35029DAF34B0C8197CD /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EC706D80D1653386F8E95C9A27FBD84 /* Errors.swift */; }; - 975B072325DEF9CF689F68C35E807D74 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA8C4E4954F577DC5838552C26A95F21 /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 97AAAA105CBD4F01F3B9639FB41ABDCE /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; - 9866F7EB9A791B1F71412A9518F4DDA2 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = B96070473785FC109F4DF1B95A23E0C9 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 96E6D2DACBD45D85A2B17F71ED234377 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C6E0959E06A9BC6D49824DCEC497E3B /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 994B8516758EFA2B44BE235D6A2A87D7 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BFD6B2E301BA8ACDC2D3BCD0E758C1D /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 9A2C4B49C5E9259DD74393605004741A /* Task+ContinueWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78CD9B634A9BABA2318BE06485DDB6AF /* Task+ContinueWith.swift */; }; - 9B1299E77FE224675F09B2899BCDB8CE /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 151AE9FA75AEEAF352A67C395BAE1AD7 /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9B229A348FA956DCFFF546AAC39D66F4 /* DFUServiceDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8C525780CB40473CE06F0E9500FE182 /* DFUServiceDelegate.swift */; }; - 9B9D2C2179C78AC47CF7E9F4000183EC /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6BCFD5EC59A041BE47D94C79D15215C9 /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9D497A6BC135BDC8D5C73E5DD30E08CC /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 987F4CFE622139EC278269C11A1070A2 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9D71636BA5B172AA91465939CF72C0E2 /* Archive+Reading.swift in Sources */ = {isa = PBXBuildFile; fileRef = 085E4CB728B2A20CE1F1A3E86A7E6BF7 /* Archive+Reading.swift */; }; - 9E28235B5093C392DA360F58F007EBAC /* DFUPeripheralSelectorDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A26C1C50C1866FDC9FA4437D526F6038 /* DFUPeripheralSelectorDelegate.swift */; }; - 9E2B17497A93E88A8A5FCB1A3268B136 /* DFUStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B7BBB487AAC8C4468FD0CFD70FBC0C8 /* DFUStream.swift */; }; - 9F47BCA2BD290F2A195806E0F56BB118 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 43AC3751B2F2988747E79D26B073C548 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9FC5DDD788489A1EC9FDB353E3BBB409 /* SecureDFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E2C83FD3D501DC7B7DB4B19590A9D15 /* SecureDFUPeripheralDelegate.swift */; }; - A03C93A50914414D55EA80ADADCEC58A /* Entry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6067A156E323544E0A4766030061A5B2 /* Entry.swift */; }; - A0737843F3CE1DD48F35E5F5FA7155ED /* FileManager+ZIP.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60BEE52C89C924410FA20A8C8FDEFDA7 /* FileManager+ZIP.swift */; }; - A0A9D7815FF8458A7317519D11EE18A4 /* DFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD54ED09D15C9FCDAB012469BA87074 /* DFUExecutor.swift */; }; - A207D826FE6B1C9FB4BEC14E378732C4 /* DFUStreamHex.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED716A1D05AB6938853D4091D6F8F559 /* DFUStreamHex.swift */; }; - A227CECA7F5EC292353ACB2E7F5A4252 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 12F259C70E58E19EE9E4657BA663A5A0 /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A267D4DFF383A99F92739E6F3CE92941 /* Archive+Writing.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63E0C68FB96F88E28D9871C8FB7C1C98 /* Archive+Writing.swift */; }; - A2F0B801E6F361C4C3978C2DBF0A8FC7 /* iOSDFULibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D11B9606AF00BF65E342847EF05B8AEB /* iOSDFULibrary.framework */; }; - A2FBEDC65AA7483754308E2320B87121 /* DFUServiceController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE1BFCB3F1461B4BFBEB3D809F511712 /* DFUServiceController.swift */; }; + 9A69153E0A2554072903708090DA6D71 /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 827E9F987EB8540D345C89BCCF2B194C /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9A6F94B6A6E6297F0EFBB4BBA3C8F97E /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1BAE33B69D5B09EF1A9FC27B6F9104C /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9AC34EBED2E65C0B6C239DB90EEB31B3 /* Double.swift in Sources */ = {isa = PBXBuildFile; fileRef = 035E0D2F7DDEC194A3C14B7536168D1E /* Double.swift */; }; + 9C22643BAAA91B75CCA6B27C4D3E2FB7 /* DFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5A0D8FB52AF6316B11FB61560858335 /* DFUPeripheral.swift */; }; + 9C3406F2A86B170F7981D5E7EA225A08 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1BAE33B69D5B09EF1A9FC27B6F9104C /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9C3E15B210514C397386139A6C0517D3 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E611B7FB86FBA0CB0FAC5D47D53C5AB7 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9CDA2E36DA0CD2BCD1B5F33A237CEF81 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1FEAD48A2DC9006470AEA6A870085C76 /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9D14B66E82F3275CC7E8528B426A98DB /* Archive+Writing.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63E0C68FB96F88E28D9871C8FB7C1C98 /* Archive+Writing.swift */; }; + 9DD909CD9309B5790D57ED5BF0526324 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FF2AA8233135C47CC5AC6C25FBD6A516 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9F50C2AC9D099359C885BEC5E3EFA855 /* SwiftGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B2DFE15A0E62BE06D2CF9D4AE53F927D /* SwiftGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9FA0CD0897D8242D8E77DADCA8671BFB /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C7D96C1FB9ED1E49325F6E92F2AE4F33 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9FFBF3B43DEE945F23D3D77DA91ECD43 /* DFUControlPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6271165BB2AE86465A9943D2EF112D11 /* DFUControlPoint.swift */; }; + A0AB5C2107D30D947314FF5F3DE9C058 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1FEAD48A2DC9006470AEA6A870085C76 /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A0E6BFB8BB7C5506226DCFAC65AE894D /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 150D817BA455C92B497629C15EB2969A /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A20E9D62144F5FF38D5ABA566954F042 /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AB700AD1E77526C1584F3E4CA6A880C /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A27DA1A3FCEDC68D2F68F58288BD83D3 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5B2809F72B0544508607C4E1AD38065 /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A28897D5B7E6ABBAFBAEAEDEAA82C280 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F69F488242700F24D60C5C01A27E5F9C /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; A3761FD6656A8ABE4D9413ACA5CF8D13 /* Task+WhenAll.swift in Sources */ = {isa = PBXBuildFile; fileRef = A871018BA4CDDC3C7ABFB39783B1073B /* Task+WhenAll.swift */; }; - A3D21BC87DAA59246B2B44259AC3F81F /* FileManager+ZIP.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60BEE52C89C924410FA20A8C8FDEFDA7 /* FileManager+ZIP.swift */; }; - A41F5DD36A92C1B7769BE81B5D5D9A92 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA8C4E4954F577DC5838552C26A95F21 /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A5112CFFF5361FCB82B4DC4864F01ADA /* ZIPFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 310CE7870B01D5B716AC8334A7A0D3D8 /* ZIPFoundation.framework */; }; - A559186A5C8AD32503AB56E525B88F47 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F0F46F4797EDE9ACBCC6734FBB4699A /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A75574BB0F718AD01CD4D507544549C2 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 34053E679B634F86E79B0EA7A85D3463 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A758F6998731DE1C23DE492B0301D395 /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A8EC5526D0BEE7D5ADBABFEFFB0AF46D /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A786C5411CA27E02F6B99FC7C80D2E25 /* LoggerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BD2DBCCF615B8BBB6F900E4540C8EF5 /* LoggerDelegate.swift */; }; - A7CAD3DC3FA7A0EF154BFB4DA0E8D0B4 /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AFD17B5704C5009F44F9A60B6FF5DBCF /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A839669FE1ADBF2C4002E9357CD542BC /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7630F0709266D733990F496E97069A68 /* ScannerModel.swift */; }; + A3E475AC83D7DAEF0DCEED394B555B40 /* SecureDFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC664CACE8271F6C72F9F07D47468A39 /* SecureDFUService.swift */; }; + A49A81968CD3E8F51F3C46A2A6F7BC8A /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 871C3E184118A1C65B2DAEAA3016D788 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A62E76430F1C10F25DFA3D9AC833B94D /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 70F6B686369511CDB37017E366F11DFA /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A65164131E4320DB3DD1584E83E9289D /* DFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7ECD3097C2FDB03555157378AE408FC1 /* DFUService.swift */; }; + A6CA40D0AFFC130126BA57464CA1EA03 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FB77A25C245095329AF91D690A2BE70A /* Foundation.framework */; }; + A705F4529D45553B3FAE4000B9AAD0CB /* SwiftGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B2DFE15A0E62BE06D2CF9D4AE53F927D /* SwiftGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A758F76254D736A71B87F785E55EDAB3 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61374778F4B640C23FAAD145DB6958F2 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; A8466FE5C48C1E85637CE4BB79265262 /* Bolts-Swift-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 8D17966E7C661CDB7AF17155D537360E /* Bolts-Swift-tvOS-dummy.m */; }; - A94A207676CA864F6A52A7B95EFE3CD4 /* Archive+Writing.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63E0C68FB96F88E28D9871C8FB7C1C98 /* Archive+Writing.swift */; }; - A9AA5DA8FBB5B57AD246ED2534C0B1BB /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B7D2E886936673F46B3ADEEE4C155AF6 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A9BCD21216D252881B483AE0E9C800FE /* LoggerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BD2DBCCF615B8BBB6F900E4540C8EF5 /* LoggerDelegate.swift */; }; - AA703245FC216C9D3076261B623E8F81 /* DFUFirmware.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DB01C7B4CE59D18C6D04EB428451795 /* DFUFirmware.swift */; }; - AA824688BCC5765358E78D4EAC60C6DF /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E328DFF0E848278274D43506C91398A2 /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - AAB07233F932C37D80A3C80070947012 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = B96070473785FC109F4DF1B95A23E0C9 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - AB2D593DE9B596E644EF647D7325F360 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6A33FF544CA30169E9B6900CC8263EBE /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - ABB726B84F6B78582476A3A802F1C096 /* crc32.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3448F7A74DD00F5CC447008E69AB4CED /* crc32.swift */; }; - AC78FFD48DFE2A09FFBD364C93418CA9 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA8C4E4954F577DC5838552C26A95F21 /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - AC8A2BDB812636F1AE5E4B708E1BEDFF /* DFUServiceSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 804F804E9F5EF675B36052B75A24FEBA /* DFUServiceSelector.swift */; }; - AD09F0C6ABAF819011BE7BFC0B5E8C86 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = B96070473785FC109F4DF1B95A23E0C9 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - AD20BC69E0C3BC852FFA41C353257A67 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 40D28FBC8418308A8188AE6A59CCA5BA /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A8ECBE25D5BF892F76F29248EA41D29B /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */; }; + AA3DC456A3184043ACF9A93876020294 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B63F9B9F7BDAE3C2D1A99017A48D4C8E /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + AA7463920DDA1674EB4887984C87C1E3 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E611B7FB86FBA0CB0FAC5D47D53C5AB7 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + ABF1688875AD5A44084F20FB88E90DA7 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FE4DE47D314987E0F452D7DCD0416DB2 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + AC7517337C6231AC406982FFD82253DF /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F671E9F4ADCCBF97B74EC54AA341E8F6 /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m */; }; + AC7FBD000833CE0AA0780000DF877CAD /* DFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD54ED09D15C9FCDAB012469BA87074 /* DFUExecutor.swift */; }; + AD0B82CB7D4B5F5986DEAA4FC8478BCE /* Data.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63054630F91FFCD9A2020927E552B534 /* Data.swift */; }; + AD5B208C305A0EF22D7903FFF64D830C /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEF0743B28C3D9777CDD2245E75150D7 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; AE43CCDFAF83679A78E9EC6CDF865B81 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; - AE6B1D63606A868B00E901D24AC255E4 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8EF759174C33810CE720C98CAB60552 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - AF85BC5459A1F2438AE2701F827E2123 /* Entry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6067A156E323544E0A4766030061A5B2 /* Entry.swift */; }; - AF8A01337ED94522ED7B1C9E42412DB0 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 987F4CFE622139EC278269C11A1070A2 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - AF92386A1673FCD2617EE52958A6C84F /* Data+Serialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = C84784ABFBF917BB22BF2077A55A8FAA /* Data+Serialization.swift */; }; - AFE275CE00056BDB63279B106CC754D3 /* Data+Serialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = C84784ABFBF917BB22BF2077A55A8FAA /* Data+Serialization.swift */; }; - AFF9E19C7D0196EB611581D3A3397E62 /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 089F056E9C04BBB61149090737132FAC /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B003B9700D0945BE3FF8EDE35CB6D001 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8EF759174C33810CE720C98CAB60552 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B031BE5617B55C865E7CA90133A57317 /* ManifestFirmwareInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = F50536BAD847A62129397161AB3353B0 /* ManifestFirmwareInfo.swift */; }; - B0F112FE2386AA529A2687C52C6C4D37 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; - B14EA4E7064C760AC032E21BC6625559 /* FirmwareBuild.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F6551260609078AA629619C9CCEC4AA /* FirmwareBuild.swift */; }; - B165FDC91DBB050AB7D8D82A4F2BDF0C /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B8D3D8E73DE294535A22E4052635474 /* MblMwEvent+Async.swift */; }; - B188D7D39FCAD27DE9C8A3054AD74D40 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9B8FC7C2272DC23B97564CF4692CB4C3 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - B224BA4D0A7EF855C4B2F9C54611F4AC /* DFUServiceDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8C525780CB40473CE06F0E9500FE182 /* DFUServiceDelegate.swift */; }; - B2B2D20C2FCD771970CDA6E1A78A0ACE /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EC74BD0C5E76033B10A5D6EB416F031B /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B2C85ACC56358CA856AE4FFB686E8C07 /* Data+Compression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8482F9546AEBA3CC01ADA5A949FAD144 /* Data+Compression.swift */; }; - B3515E51AC940580F4D15C1830082B21 /* MetaWear+Mock.swift in Sources */ = {isa = PBXBuildFile; fileRef = D74FEE9457637D85A707A2FADECBCD12 /* MetaWear+Mock.swift */; }; - B3921D8807492B99CF4F0AC4B4009521 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B3F29D4C5BD9B02000722D3D5FCF208 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + AE86ED24982F1028DD71C5EE416BDCBA /* MetaWearScanner+Mock.swift in Sources */ = {isa = PBXBuildFile; fileRef = D116DFA4679AFCC77CE41D2A4F735077 /* MetaWearScanner+Mock.swift */; }; + AEEFAD74B9F7BE54BA20672922FB61B1 /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2C439C24DEA34C216997BFDB48274C53 /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + AF1FD8F583ECB1D76FE192EC70CBDC16 /* Data+Serialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = C84784ABFBF917BB22BF2077A55A8FAA /* Data+Serialization.swift */; }; + AFF41C17A7B544A3D8802249E9D46E34 /* SecureDFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A20403D099EE1D872F28342554B7D6E /* SecureDFUExecutor.swift */; }; + B05F2A46B68EA620F131D05A8431D1A0 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E611B7FB86FBA0CB0FAC5D47D53C5AB7 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B06F042F8CC36AEF18F8E151A9C20A56 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D71AFCE59F7E5D0E3C3C14DB7E71A34E /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B0B9C4AE34FEC3A2354D7A0EB4D056E1 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FE4DE47D314987E0F452D7DCD0416DB2 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B1EF93D0DEE708C0E687D236E39A8B89 /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D1BEC515335A4A180470B94CAF11CDB7 /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B2B50106670E062A597105B5BFEC5538 /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 262B515345D9A281E9DB178889EAB01F /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B2C1EF48ECD31E16654BC0A75B5DE06E /* DFUCharacteristic.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1ABB43FC0D3E225C0671B3C8F70E8152 /* DFUCharacteristic.swift */; }; + B2E54F2688DDF34A1A01DADFDC180914 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73948BE2C0569FB3BF68F6A4A189B95F /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B3B679E3C1B86869166B297890624A5B /* MetaWear+Mock.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA367DEDE4621CF8CD3DAE036431A3E1 /* MetaWear+Mock.swift */; }; + B3CDB8F487FBE468BC06F6D4099BC3FE /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3AF105819F0CF98F677510BD677E9C91 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; B3E3802795603E3294505470B73BE61A /* Pods-MetaWearIntegrationTests-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = FC3F5F9EFAF6F59EB814261D256C5F2F /* Pods-MetaWearIntegrationTests-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; B44201DB8888C4AE1997955FADAA80AD /* Bolts-Swift-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A46D8DB37147B302C46801703C55133 /* Bolts-Swift-macOS-dummy.m */; }; - B4563CEAA2CDA3FB37F2C4682FF96E8D /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C60154A98FA6CA33BA0AECEC621F8FEA /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B55709B1DEA74844742490A6B0B1C8BC /* DFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 920B7554281F1A16BF53CD2B6B7089FD /* DFUPeripheralDelegate.swift */; }; - B68DBA1D6BAB4B8F1F487A6481A2B08E /* DFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5A0D8FB52AF6316B11FB61560858335 /* DFUPeripheral.swift */; }; - B7F7EFAE652DC56EC417623E638FEA31 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDFACC6AF305A7494159DF42B26EB163 /* MblMwDataSignal+Async.swift */; }; - B83018EEBAAD3221D77F1AA539BFBC96 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EC74BD0C5E76033B10A5D6EB416F031B /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B93CC8541145A5FEDC4895BE000A8162 /* SecureDFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E2C83FD3D501DC7B7DB4B19590A9D15 /* SecureDFUPeripheralDelegate.swift */; }; - BA677A5546651A44DE54951EC462B9FF /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EABC01310722C277D019E6C2DB9517E7 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BA942E90FA582152CCA60A05E95CBBF0 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 87859CACBA3B3EAD7779E437E2108045 /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BA954476EFD16379C89A5598B716C028 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F7D4003C2F97282E3C82E5711C7F8C46 /* Foundation.framework */; }; - BB815D1EEF956169BF6AFEFD6A26B9B5 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 156218A27163C74F4FF3A8B88B84FDB0 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BC0AFCB8457D881B50133859E3CD4EA9 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B8C303105C8F0BE828799CFB61EF6037 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BCB1123501E3217FFC6E33EE9B6A4F9B /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B7D2E886936673F46B3ADEEE4C155AF6 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BDBE5B3C69DC237DA25144647F7FAF15 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B44C98BF6416042DDD7BB9563F79641F /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BDD82E36C8C5AAC0766182E9E965A463 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FF46D6EFAB8DAD5E788925F8871905B2 /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BDE52062E551D62483780B7B0F19B32D /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 12F259C70E58E19EE9E4657BA663A5A0 /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BE5DA74FDFE550BD07C3438D733FA555 /* ZipArchive.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDAB73F304877FD4585F078B919261FC /* ZipArchive.swift */; }; - BF0FE7560C9DA63FBD8DAAA194CF695A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FB77A25C245095329AF91D690A2BE70A /* Foundation.framework */; }; - BF53063B16EBA5DDA925B32F0D20CE04 /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = B593D24B4AEAD32B5C64065C49EA830B /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BF601F8DA01F028A29E4CBF50EE31688 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3F979CABDF820E04886A9E5CF79FD7A7 /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BF6BC391C06820466C9141DCB95B5453 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F69D9DEEAEF7D7E9568EE5C30A0AB5FA /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BFA2700C0E8B100D781808CE27E4BA20 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B8C303105C8F0BE828799CFB61EF6037 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C03AA5F3B2846BE9DF56A4FAE2346E53 /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = B593D24B4AEAD32B5C64065C49EA830B /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B4846254F71C4583A921A5511A235D19 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E611B7FB86FBA0CB0FAC5D47D53C5AB7 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B5462793A724585049DCEFF4BAE2E6DB /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D71AFCE59F7E5D0E3C3C14DB7E71A34E /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B70303F911F288B8B6A0FE5D784D31E2 /* SecureDFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A20403D099EE1D872F28342554B7D6E /* SecureDFUExecutor.swift */; }; + B7A503FDE7EAC9604C952B224A199F44 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = F28F4FB76B2B65A671A7F0342CC64711 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B7F9890DA52935259F88791A5175AC5F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; + B86EEB4D325EB05D800D1EC7A00FACD5 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C116B2146C21545E9C6286225384C304 /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B993A438129B64CF0E2960DE75F0B491 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8BC482C61CBAE6CB05B493775955BDE /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B9986ED8A04C38F3659E19DDB5139066 /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC4B70F9F0E4EAAE94860B390EEC84A5 /* MetaWear+Async.swift */; }; + BC508B43C0018E7C55710E543F70E3A6 /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCE1CF16C54DD96420E6A5AAB43244C4 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BC83A6F7CBAF0DAA200E54D893CE569D /* MetaWear+Firmware.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD76483586B514A5C673056B7A731FE8 /* MetaWear+Firmware.swift */; }; + BD0ADC1BD42C7848938BAD55D6188199 /* LegacyDFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDF52030FE274FEC72DE7FD300FE48D3 /* LegacyDFUPeripheral.swift */; }; + BEBD14234307840C13A72E7FBDAF3A2D /* DFUCharacteristic.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1ABB43FC0D3E225C0671B3C8F70E8152 /* DFUCharacteristic.swift */; }; + BF83787F96799A45A45B1FABDC52B8C2 /* CSharpGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DB1185C771E66593125CF8CDD0EB8DB0 /* CSharpGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BFC145230F8030BF4DE7F0E8FCD9B0A8 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61374778F4B640C23FAAD145DB6958F2 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BFDF22FB742012E5700994D1C2553DE6 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 20B0727D623002B7F4C82B61F2E53BCE /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BFDFE7B666719136AB925DE93D779227 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3AF105819F0CF98F677510BD677E9C91 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; C0648C7B32C43988CE8D96EE0B88CA26 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9BF181820020E2FCF8951F8775EE9150 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-dummy.m */; }; - C0B51B8F81D0F9641B56D3AC009D743A /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 089F056E9C04BBB61149090737132FAC /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C0BC7F8EAEDE4B0FBC74AE22ABF9E0DE /* SecureDFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A20403D099EE1D872F28342554B7D6E /* SecureDFUExecutor.swift */; }; - C0C2F1815C8D630025CAC0BCC10000B0 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6A33FF544CA30169E9B6900CC8263EBE /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C2A03BB514BDCD37F1EC7E405C6DC996 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1899A2B7831D2DEABC5102099AD9E6E0 /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C2A4F6F0456F19A76DD271EDC935A83C /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F0F46F4797EDE9ACBCC6734FBB4699A /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C423BEFE58331137BA10C8BC38978F75 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 24A13113E387EC83E9B0377DA7C515D0 /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C42881A7C4D99FE9206779541733750E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; - C56B4925ABF0D5964A300B07089E91FC /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 508B72A1332DB45B29517F8C078A5B9F /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C6206E3BC317DBD05A62E4574137A930 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B3F29D4C5BD9B02000722D3D5FCF208 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C0DC4ABA6A0EB55932C53F7C533056F7 /* DFUStreamHex.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED716A1D05AB6938853D4091D6F8F559 /* DFUStreamHex.swift */; }; + C158A6C2AEFEB850F911470CC3AF276E /* JavaScriptGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC74A8C206ABDA0979899B483C9DD1AA /* JavaScriptGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C35A4A3DE2DE3C77DDAA685D72FE1C1C /* MockModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BD2D2BB4D92665D01ACDFCE31BBC15B /* MockModule.swift */; }; + C387EA43B4C5143DD9A3C20CCF72AD0B /* crc32.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3448F7A74DD00F5CC447008E69AB4CED /* crc32.swift */; }; + C433FB4CBD429C9314FFA6630097FC31 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C22749D2B8E00599A0F94B486EEAF752 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C493373E17CB73BBEA93E5F64C12C67D /* DFUPeripheralSelectorDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A26C1C50C1866FDC9FA4437D526F6038 /* DFUPeripheralSelectorDelegate.swift */; }; + C6079D6D42B7C2F367FE07828465C83E /* DFUController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E83FA47CA9F4A746A08313BB59BC889 /* DFUController.swift */; }; C62573B2F6376EAFB0338A0AF2A98A7E /* TaskCompletionSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = E43893E60AA833FD5CE59855FFBCA9CF /* TaskCompletionSource.swift */; }; - C6B755D4A0ED01827A62F298D9E0E0A0 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6BCFD5EC59A041BE47D94C79D15215C9 /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C6E1A4AF07DE69B813031FD82CD71E81 /* FirmwareServer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84595EA72B446FDF423987A80F1CABB5 /* FirmwareServer.swift */; }; - C7A0AB3EB1323B6861C8EE0B5A766138 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B3B544A8CA50CA8E1AF96A0582DE5218 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C944F5B0589C851F82CD65B0BFA012EC /* Data+Compression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8482F9546AEBA3CC01ADA5A949FAD144 /* Data+Compression.swift */; }; - C96ECA87A86225866080908D47203996 /* SecureDFUPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8A925FEACFBE227CEDCF7149D4EF12F9 /* SecureDFUPacket.swift */; }; - C9FFC67B36C4C3BCC8A32451938F0C30 /* LegacyDFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A61E82795569E9BA7E8CC6376F61A26 /* LegacyDFUExecutor.swift */; }; - CA232F7A239EFACF78FFFA0D9A1154EA /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC05B55C8E50D3344CC11348925701D7 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CA86B6B0AD7F679F1D9AC07EE6605B69 /* DFUServiceSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 804F804E9F5EF675B36052B75A24FEBA /* DFUServiceSelector.swift */; }; + C6827AC15EC5E1612F6E4738AE162C57 /* LegacyDFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A61E82795569E9BA7E8CC6376F61A26 /* LegacyDFUExecutor.swift */; }; + C77E40965F7B880597F05FF883784307 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60E262EDBD11C805D5B628157982C484 /* MblMwEvent+Async.swift */; }; + C797F038C09DAB332331F0D0F37832BB /* ZipArchive.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDAB73F304877FD4585F078B919261FC /* ZipArchive.swift */; }; + C799407B659F535B187BADB41ADAEDCF /* PythonGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3EC1C6520D805971B93CEE5E29C7C7B8 /* PythonGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C7CB77C4CA6D22238AD774FB5689743B /* MetaWear+Mock.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA367DEDE4621CF8CD3DAE036431A3E1 /* MetaWear+Mock.swift */; }; + C8124E181BAA74061EFE90C6AE399FCD /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7D0FDF991487027613374C0F7701226 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C97C9BEFC76CE330365FECA64436CE36 /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D79846913C5C3DB9B906408EA67CDBE4 /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CA3CACD4BD19D74A7DC7AACFD228CEAA /* iOSDFULibrary-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9030F92CAA3CC18008C7AE0477355CDD /* iOSDFULibrary-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; CAAA1842F5F7F4D105FAC2951DA031CE /* Bolts-Swift-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 218AE57BFFFAA6EF91A1FDB717AF2B6A /* Bolts-Swift-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - CAF04329EF4818BAD34765B657DD2452 /* iOSDFULibrary-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = E92D86C475B17A3AB3793FC4EB6D4E99 /* iOSDFULibrary-macOS-dummy.m */; }; - CB38E1A93DCF1C78D73809F12E920BA6 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FF46D6EFAB8DAD5E788925F8871905B2 /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CB67AC3249391CF49FFF401DACB29617 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F69D9DEEAEF7D7E9568EE5C30A0AB5FA /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CBAD44174198C7E6820159CCE59F6DB7 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; - CC028F600773DB74088E7617C75C3C8F /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 987F4CFE622139EC278269C11A1070A2 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CB0C5EBE0273D65A11DF2E441518732C /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1055045CA95BD2B47B08BD783A980121 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CB1350F27E336490823BD587185AC1DE /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = F28F4FB76B2B65A671A7F0342CC64711 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CB16E626268E9A409C05FA8CD4C1100D /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED30FE0D206D2DEB526E26E7D3A002BD /* MblMwDataSignal+Async.swift */; }; + CB2CAA055B3C04CC3BD57AB26B4022A4 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 5F88F3C950B2435CD21FD23C8D341C23 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + CC1F26589EFC481F3C3C3C005508D143 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B83AA79D41272316A3114303985BB4F0 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CC419409FE48638E26CF081C974A0CE8 /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AEE665D716662DBB922425D97CDB83CC /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CCE14D48B264F002F71AFEE9B68DFEA6 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8BC482C61CBAE6CB05B493775955BDE /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CD0BEB14777A580B49E9689899DCB69A /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C6E0959E06A9BC6D49824DCEC497E3B /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; CDCBE46791F0F4EB121D67CF91BFFE3A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FB77A25C245095329AF91D690A2BE70A /* Foundation.framework */; }; - CEB80958BC83F11671C3B064A1432016 /* DFUStreamZip.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F8DDE74839FCA2D7300179DBCB4FC0F /* DFUStreamZip.swift */; }; - CEBB6BC483E13123F715485FA54444B2 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B8D3D8E73DE294535A22E4052635474 /* MblMwEvent+Async.swift */; }; - CED3D50F6EF2C7CB5AD25D3638BF923D /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA4615841E2C1E8157D02E95B64E71C4 /* MetaWear+Async.swift */; }; - CED5F668E87F706B9D438D4484751D80 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 628908291910B17BE8A3DC6FD29A7CF9 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CFB1704E4403508345A77D8F62660759 /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6815A76152D2B6E658D68110E116BF9A /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CE504D2DACDEFD0E36CDEEE2788210B2 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FCF2F5A5C94712F9BAE705347593E4A /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CE91AD2F62B01F558ABF753C68EE6224 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5F6357DB75F21135B725219F131B8F8B /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CEDD84CCA0498F69C16D2267A817C627 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 20B0727D623002B7F4C82B61F2E53BCE /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CF10CC5ECE77A9237B2F5423B84D736D /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = 326C7A13414F85997D21C1DB7AF746AC /* MetaWear+LED.swift */; }; + CF12A219994F7C66E871F5E9A530A7EA /* DFUPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21E0B5E72AE22F9985373E6D5A602217 /* DFUPacket.swift */; }; + CF9AB22BAF140F99F510FD93DEA501E0 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CB6950BDD7E3014E744A1D82DCD7D8F /* ScannerModel.swift */; }; + CFC38370084E6BB3041D4DA073A9B9FE /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C116B2146C21545E9C6286225384C304 /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; CFCBAB9BC93AB5301EB60F1D2BB3E9A3 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0BBBD00DC9B06AD86CC60B957ECBC143 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-dummy.m */; }; - D028F8577472CBA385AE4262402C5E27 /* DFUStreamBin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1170D3A9194D58C03AC23B4BD8B40D36 /* DFUStreamBin.swift */; }; - D08530890240DEF36B6ADB633731BD46 /* DFUUuidHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = F85B983DE4FFFAFAF0F7E87BB5CE2FF9 /* DFUUuidHelper.swift */; }; - D1548556A5EF0201DE7D7A1F9E730500 /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AFD17B5704C5009F44F9A60B6FF5DBCF /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D1C9A5098B57B742D71A811FFF129E16 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D478768EE86CA3C5F1C572EAC53FAF90 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D1ED3493BDE5FB7E9CFC3FB26C7AF7F4 /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3950A3826BAA4FD2F305A186CD1B5F75 /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D20BEE53B9A83DD5A200FEE2C7F31FF1 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E328DFF0E848278274D43506C91398A2 /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D20F030DE8AB093994572E9FD8BE3CDD /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 1EC5F814B3A60C94EDF55FB05EEFA124 /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m */; }; - D20F1561BD678714BFC98F248A3C4515 /* DFUCharacteristic.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1ABB43FC0D3E225C0671B3C8F70E8152 /* DFUCharacteristic.swift */; }; - D24FA2BC6EEB9681C4281C71E28ADA6C /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDFACC6AF305A7494159DF42B26EB163 /* MblMwDataSignal+Async.swift */; }; - D27E8D11F9D97B50B419230EB066CCC3 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 151AE9FA75AEEAF352A67C395BAE1AD7 /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D069ACD4764F38EDC6E2129A03EA7A7C /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = AB0670C7A0A1C99783AB3946244DD414 /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + D0746507FCC6B3E82619FF2FA087B270 /* SoftdeviceBootloaderInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 692329CE0A9A63D15123D684C9F2AA34 /* SoftdeviceBootloaderInfo.swift */; }; + D236D689B19D10C2F59BCC1C6690C4D2 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 150D817BA455C92B497629C15EB2969A /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D281B43E4BF5A23318C8B34CC565B246 /* JavaScriptGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC74A8C206ABDA0979899B483C9DD1AA /* JavaScriptGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D29F777663A6514EC2500CF18FBFF3CE /* common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 79039E935AA8A9170F0A2AA8C3F03298 /* common.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; D2BB8E4486E2CCE36E17A3D11F0D2617 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = FDE3D37DD489EAD78FB0EA6897F9D991 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - D2E1C1E8E8963DE1A2A10E434D937B01 /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AFD17B5704C5009F44F9A60B6FF5DBCF /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D3571698251BBE1535216CC94C73D517 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 628908291910B17BE8A3DC6FD29A7CF9 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D34948C7A95097D458D1BF75219FB6E2 /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC4B70F9F0E4EAAE94860B390EEC84A5 /* MetaWear+Async.swift */; }; + D36C1E42978B57A75A0F94FD2130AAB8 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5B2809F72B0544508607C4E1AD38065 /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; D38271DE6284656553FA7CDD96319E11 /* Task.swift in Sources */ = {isa = PBXBuildFile; fileRef = 222241CB9EC5A831040351E44E164F47 /* Task.swift */; }; + D3A6BE91393D5FBB0506700791D0A188 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 10B5EE02F081CB150B64BC4FB70FBF7B /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; D3B23F7DD46BE628FFFAD2E73116208E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F7D4003C2F97282E3C82E5711C7F8C46 /* Foundation.framework */; }; - D505BA670AA99167F1412BDA92868EC5 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C60154A98FA6CA33BA0AECEC621F8FEA /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D69408C50EF78E01C74414B645D19EDB /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5AE6AD7941189A82EF88895867E33CEB /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D6FB031CA848CC5A0A0238B14FF7A9FF /* LegacyDFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63F893AF4ECF8B17198E585DCD8FB233 /* LegacyDFUServiceInitiator.swift */; }; + D519C222962A0DA43CED7F37127AC60D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; + D544F16A2F4EA6474217584164401012 /* MetaWearScanner+Mock.swift in Sources */ = {isa = PBXBuildFile; fileRef = D116DFA4679AFCC77CE41D2A4F735077 /* MetaWearScanner+Mock.swift */; }; + D5C1D44CA11068BFB66A2403185B8E11 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 687FF210AC568843A9F8C1CDA491ECC7 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D6228F29D7BA7EC921D3B408E3AA1B2E /* FirmwareServer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80C496E7C90E9994CC0590530ADB9D9C /* FirmwareServer.swift */; }; D7C318ECB2D5345DE5BE1CAF2925D26F /* Task+WhenAll.swift in Sources */ = {isa = PBXBuildFile; fileRef = A871018BA4CDDC3C7ABFB39783B1073B /* Task+WhenAll.swift */; }; - D82F8113E318FA8A873FC495733A41B3 /* FirmwareServer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84595EA72B446FDF423987A80F1CABB5 /* FirmwareServer.swift */; }; D8E64CBAD5BB57243A5A56C5077FE779 /* Bolts-Swift-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2E676C8C851F2DFC1BD8673237F3566F /* Bolts-Swift-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - D97DC90A6C7A759A93044FF2C9CBADE7 /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 07D8C4BF82FC47746C3493658B1DAC84 /* CoreBluetooth.framework */; }; D98235E72935453E54B089197BE2B921 /* Task+WhenAll.swift in Sources */ = {isa = PBXBuildFile; fileRef = A871018BA4CDDC3C7ABFB39783B1073B /* Task+WhenAll.swift */; }; - D98394A280A1BA5290AB8A37511EEF7A /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 089F056E9C04BBB61149090737132FAC /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; D9AA07C34C9AAEED782F2E5E3A7AD02A /* Executor.swift in Sources */ = {isa = PBXBuildFile; fileRef = B478AA720F432EAEB3DAAD27B7EDB2E3 /* Executor.swift */; }; - DAB450A18A1CA171ABA86697F0436B6B /* MockModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = A3932A0E4D8A7E610C888E51B1A2166B /* MockModule.swift */; }; - DAC626B91B02EEAD8274C8EB9C676F25 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 987F4CFE622139EC278269C11A1070A2 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - DB5A9D068E02D006A6997A57EFC01DCD /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 96C187B8B764C5AEB4EC2F301BBE940B /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D9F84B12B689E30F40E573EBA21F6F55 /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D1BEC515335A4A180470B94CAF11CDB7 /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DA0BA96FBE4C30FE7C490744AFB595DE /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CB6950BDD7E3014E744A1D82DCD7D8F /* ScannerModel.swift */; }; + DA5CF7C3FA05E0E1A01D6C300F6DCC6A /* DFUStreamZip.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F8DDE74839FCA2D7300179DBCB4FC0F /* DFUStreamZip.swift */; }; + DA666289E3AA5470F666BEF965B130AB /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C0FFFB6700BEC9C36BFFEFCA6F08B772 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DB326AC92EB7EB9211A2F91781039C24 /* Manifest.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2F403E27DBF07E56940860662756CB3 /* Manifest.swift */; }; + DB84782D1150C106FFDF5871FE405345 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C165784B2F3FBC73025B5730BD84A454 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DB9F68E99658F947BDCD4604BA95555C /* SecureDFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = A27370D863F0F27023F575D449AFBB9A /* SecureDFUPeripheral.swift */; }; DBF1205E35E600D83FB97DB1093EB6B5 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = B1CD75C05ED2021363C4A9C77D793D4B /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - DDA9596249D32D2C265FE34C4B484835 /* SoftdeviceBootloaderInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 692329CE0A9A63D15123D684C9F2AA34 /* SoftdeviceBootloaderInfo.swift */; }; - DDC3D0310D20F17CB03007936F42F5FF /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */; }; - E0FEB09BC6F7A90AE4B65CF06302833B /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10A7CBD15778697655DDC81F8D561124 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DC64F62C4B48F921340DB96DE8EC9D62 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5F6357DB75F21135B725219F131B8F8B /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DC79127714493BA1091228E5D6D6218C /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2EFE9D6C87239704BBC5413982E2438 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DCC31370219FF51E63ACF29AB118A5B0 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C165784B2F3FBC73025B5730BD84A454 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DD2457A5153A813B135AF112C1B6CCDB /* JavaScriptGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC74A8C206ABDA0979899B483C9DD1AA /* JavaScriptGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DD281E84F4BA2B4FA140F3FFA35DE28D /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 92A6AEE6F244210ACF8B60C22AFA8B6C /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DD4C6800D6538DB9EC454347F385EE00 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CFD843C82D19CF619F26E922A6612134 /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DD892482240EDC8423F5D3341CC3CFEB /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCE1CF16C54DD96420E6A5AAB43244C4 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DEB8D4240C6E91F02C1B14E5BBBC5551 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B83AA79D41272316A3114303985BB4F0 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DFB7A90D2517FDA86C0388F92A95A26A /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7B6FF697AF15FAD5B996B730D32226F /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; E127C713A2F3FE8C6C35D4196C55E2C5 /* Task+ContinueWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78CD9B634A9BABA2318BE06485DDB6AF /* Task+ContinueWith.swift */; }; - E1B68941DD05A4A33D72DEC904357BE7 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 40D28FBC8418308A8188AE6A59CCA5BA /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E221C001BC872E41C9F79C73F4091296 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 12F259C70E58E19EE9E4657BA663A5A0 /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E2D00F2A2CC08B551BB973D06512DF9F /* Data.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63054630F91FFCD9A2020927E552B534 /* Data.swift */; }; - E3150FAC392F12EB2341DE531523A8D8 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2D8FA78546C4335D20357CC4567FD305 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E3615CE2E186ECB627C02C046A88F2F2 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10A7CBD15778697655DDC81F8D561124 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E36A0E20150121A4156557B33A0B0025 /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6815A76152D2B6E658D68110E116BF9A /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E398630A2AA2F153A3574DB3A9191E6C /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A8EC5526D0BEE7D5ADBABFEFFB0AF46D /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E4C3B64FD7B8B2FB96D367C13532DA6F /* DFUPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21E0B5E72AE22F9985373E6D5A602217 /* DFUPacket.swift */; }; - E592CD07ED4670C2EEEF4E6607D53F1B /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1D32438A3E37C2538BCEF7DEF8B76D91 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E6304B0EFD3C690FE5130891713F6226 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 32BC530DD23022E2E1B595E7AF36B83F /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E793DD153AF3B7D6549CC5B72B9C7CBD /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1899A2B7831D2DEABC5102099AD9E6E0 /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E15B47C69F2CEFC62720FC4ACA1693EF /* Data.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63054630F91FFCD9A2020927E552B534 /* Data.swift */; }; + E179EA57EE13138294FCDC8F041E9200 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CFD843C82D19CF619F26E922A6612134 /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E187D829EF2B2402CD757DCBE80B1C01 /* DFUStarterPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65F2AB5D288A5BC41E69EFE924EE0C37 /* DFUStarterPeripheral.swift */; }; + E2222C652943059B25FE74A766BF2CA4 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FF2AA8233135C47CC5AC6C25FBD6A516 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E32B4AAA2A4370ECE632AD00BC598CE0 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C165784B2F3FBC73025B5730BD84A454 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E59AB5B99D0CDB0BAE2318DB92D35418 /* DFUServiceController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE1BFCB3F1461B4BFBEB3D809F511712 /* DFUServiceController.swift */; }; + E5D58DCFABE47A3A63B32EEBAB7A72AB /* SecureDFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E2C83FD3D501DC7B7DB4B19590A9D15 /* SecureDFUPeripheralDelegate.swift */; }; + E61E48D565CA7D1251666921044E0023 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 70F6B686369511CDB37017E366F11DFA /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; E90AC37B868C0143CB8C1345DC8C332D /* Task+WhenAll.swift in Sources */ = {isa = PBXBuildFile; fileRef = A871018BA4CDDC3C7ABFB39783B1073B /* Task+WhenAll.swift */; }; - EA57A3871FE55469A8BE7A40EFFB2BE1 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F5A0A0E96458AC5D9A29D4B38AC875F /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - EABAB90BFD47406BF36C284E7B3F41C5 /* Data.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63054630F91FFCD9A2020927E552B534 /* Data.swift */; }; - EB9E30E82080FD2FB5AF92572A84D626 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = B86D8D46F4B973EF1E0D5D66A6B9B56D /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - EBCBB2E159172BDCB21F3AC5626347E5 /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3950A3826BAA4FD2F305A186CD1B5F75 /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - EC082AF6EF596037105FA9628517AECB /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AFD17B5704C5009F44F9A60B6FF5DBCF /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E935FB9E9488C6879B2AEB8ECCAB4CCF /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C165784B2F3FBC73025B5730BD84A454 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + EA35A488DAE44CAE90F52CF3717FE92F /* Archive+Reading.swift in Sources */ = {isa = PBXBuildFile; fileRef = 085E4CB728B2A20CE1F1A3E86A7E6BF7 /* Archive+Reading.swift */; }; + EAA9FDA26FCC68FFA825EE1DE534B221 /* iOSDFULibrary-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = E92D86C475B17A3AB3793FC4EB6D4E99 /* iOSDFULibrary-macOS-dummy.m */; }; + EBEBFD91F79EC1D2B6752E450DBC112A /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C116B2146C21545E9C6286225384C304 /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; EC81B6C016677EDE69A61A1D8DF3159A /* Bolts-Swift-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0F7522AE1D3130829DAE82D6901E1EB6 /* Bolts-Swift-iOS-dummy.m */; }; - ECD5F32E5E40C9304166BBFCB5BC3F24 /* IntelHex2BinConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AE8742872C84BB77BE446ECCB5F2089 /* IntelHex2BinConverter.swift */; }; + ECCADC2D5BA9340742A57723E261B438 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73948BE2C0569FB3BF68F6A4A189B95F /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; ECF40D95E0DB4B34F8C0A332A677E44D /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EE9B4B804B5A82BC67B27E62E4E47BC /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - EED95F559709D6E001D4A77EEF0CC9C2 /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = B593D24B4AEAD32B5C64065C49EA830B /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - EEE4D32D5B23362D3F6D1DD2453B9E25 /* iOSDFULibrary-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A07AA9738C8E78AB4FEDF17BE7E0B36 /* iOSDFULibrary-iOS-dummy.m */; }; + EDA28C957C97A0F5433AC3DA8977C640 /* ZIPFoundation-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D35F2A88DC0477C6B52780CE08C435D /* ZIPFoundation-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EDF49FE8F36AE454CE64A5F87B2B98F4 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1055045CA95BD2B47B08BD783A980121 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + EE15B6389BC5DB5DB8C78B3F5114A756 /* Entry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6067A156E323544E0A4766030061A5B2 /* Entry.swift */; }; + EEC6CC69EE2C35A01AF0B00A1E0AA951 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D71AFCE59F7E5D0E3C3C14DB7E71A34E /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + EEF9385072F5934435F5AB64EF45E101 /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCE1CF16C54DD96420E6A5AAB43244C4 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; EF151BD9E0597C91523D5427BFFADDDA /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; - EF1987B67C008EFFA73F3F7E5FDACE4D /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FF9550C9A8C8656880258CF8CD98C53 /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F074429419BBF6F8FC4180167C84D997 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 34A8066D3D9A5135273080AF0ECAA244 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + EF243877934AA8AB72605F69ACC81732 /* LoggerHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 301FE6ECD82EE6FB8E3F50AAA7F50766 /* LoggerHelper.swift */; }; + EF3A748A398DDEEC2E0DEDACAF4AD24C /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BFD6B2E301BA8ACDC2D3BCD0E758C1D /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F08B321D7E3C926EDAFB5462535CB86E /* iOSDFULibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D11B9606AF00BF65E342847EF05B8AEB /* iOSDFULibrary.framework */; }; F1369AA6A64A78DEA0419CEF01AF6A13 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EC706D80D1653386F8E95C9A27FBD84 /* Errors.swift */; }; - F1B5A1914E30E5240AE7AF819B4CAEBD /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C8C2558A12ABD13B44687E76729580A3 /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F20E1527CDDFBED36E389F5DE3EE3BA5 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E328DFF0E848278274D43506C91398A2 /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; F3DD65EDD9AB76FE5D7C5620C24EF9C5 /* Executor.swift in Sources */ = {isa = PBXBuildFile; fileRef = B478AA720F432EAEB3DAAD27B7EDB2E3 /* Executor.swift */; }; - F42BA670785299FC5275FF2B33486CD7 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FF46D6EFAB8DAD5E788925F8871905B2 /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F4AAAAA9EF801C5CEE3A8D6595F17285 /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */; }; - F4D0790ED01B33D024EA5BA0A958BBC9 /* ZIPFoundation-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A8B2B732F6AD9127EE241F1535789E96 /* ZIPFoundation-macOS-dummy.m */; }; - F531C9740241B064179B66DDACCD873A /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3950A3826BAA4FD2F305A186CD1B5F75 /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F6581BDC2361231DC94E3EC60420A7C6 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F0F46F4797EDE9ACBCC6734FBB4699A /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F67581601E4C0EDE701DCE2EE53B2BDD /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35DF09B838AFE914ED26D06CCF9A534A /* MetaWear+LED.swift */; }; - F6F5D0068C8E86E396E993D56845D6E2 /* SecureDFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A20403D099EE1D872F28342554B7D6E /* SecureDFUExecutor.swift */; }; - F7E2BA30DDF7BFA7EE55252D2B9F2040 /* DFUPeripheralSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9059A703233CE911E22855733F6AFEB /* DFUPeripheralSelector.swift */; }; + F4804A768A6923BF6813DFA584CD0ADD /* DFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7ECD3097C2FDB03555157378AE408FC1 /* DFUService.swift */; }; + F4A12C8A6329FADD5A332FE3798F981C /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FF2AA8233135C47CC5AC6C25FBD6A516 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F56733AF54DC5642779F3F65257572C2 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E0362A7CDF8C01C9D967F8417265F7C /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F5B015389FF1D05AB43E9DA28518F2D1 /* CSharpGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DB1185C771E66593125CF8CDD0EB8DB0 /* CSharpGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F65759A24D22201808A645D31AFD9CFC /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D79846913C5C3DB9B906408EA67CDBE4 /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F6809A948DB09B744EAAA02F7716A602 /* iOSDFULibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D11B9606AF00BF65E342847EF05B8AEB /* iOSDFULibrary.framework */; }; + F6CC8F5C1ECDD542E127270FB6DABEB2 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BF6180B8C72293B7BA5EB27B28FA560 /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F75C621B8FFA6B0398E95DE3B2260F9F /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED30FE0D206D2DEB526E26E7D3A002BD /* MblMwDataSignal+Async.swift */; }; + F78498E278FAAF3AEE2C9403D4E17B31 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = F28F4FB76B2B65A671A7F0342CC64711 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F85E374B772FEAC1A66A8BD7D16ED810 /* IntelHex2BinConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AE8742872C84BB77BE446ECCB5F2089 /* IntelHex2BinConverter.swift */; }; + F89FF8564BE515E32A9E4070451E8754 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F69F488242700F24D60C5C01A27E5F9C /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F8A1B033F66B444C07EB86007CD8EF57 /* DFUStreamHex.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED716A1D05AB6938853D4091D6F8F559 /* DFUStreamHex.swift */; }; F8C48F64D2977972D017B714ACC1DFA2 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EC706D80D1653386F8E95C9A27FBD84 /* Errors.swift */; }; - F90C0E0365F5C32E15CAA7D35454AB7E /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7630F0709266D733990F496E97069A68 /* ScannerModel.swift */; }; F929BAF7730F09CF4B674AF3CF4698F7 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 633834F9772E6C85C49F77052241B97F /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - FA4C9EB851ACC60743D3DCF9D9163CD8 /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A8EC5526D0BEE7D5ADBABFEFFB0AF46D /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FB4B040DB8250C036C8A237ABC47DD53 /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A8EC5526D0BEE7D5ADBABFEFFB0AF46D /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FC7AA766956F20EC418DF852EB980191 /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */; }; - FC9BB8CBCDADC5CE7E13AE47EA189068 /* SecureDFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = A27370D863F0F27023F575D449AFBB9A /* SecureDFUPeripheral.swift */; }; - FD53239C13079D754289A993D1E02EEA /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDFACC6AF305A7494159DF42B26EB163 /* MblMwDataSignal+Async.swift */; }; + FA1AC83BEA313F5231D1A22DE9DF8BB3 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D71AFCE59F7E5D0E3C3C14DB7E71A34E /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FA6DB392671A30FE07ACF393B6053C95 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7B6FF697AF15FAD5B996B730D32226F /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FA7017AB9BEE677131AE7169B258206A /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 827E9F987EB8540D345C89BCCF2B194C /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FAD68810E64D49FAC279EFBCC79FCAB7 /* DFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5A0D8FB52AF6316B11FB61560858335 /* DFUPeripheral.swift */; }; + FAEDD66CCEAA1CC94BC0BF339D273F86 /* LegacyDFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63F893AF4ECF8B17198E585DCD8FB233 /* LegacyDFUServiceInitiator.swift */; }; + FBC3FCCDEF86C946AFE7E39E616469D9 /* CSharpGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DB1185C771E66593125CF8CDD0EB8DB0 /* CSharpGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FD67251885303BE1F329465F700C7010 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5B2809F72B0544508607C4E1AD38065 /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FD955F3FF63408645E99B278B1762E0A /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2C439C24DEA34C216997BFDB48274C53 /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; FDD99EFFE1EC469B75338ED4F452FFCB /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = C626F85A8564BCF486B43AC72451FC24 /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-dummy.m */; }; - FDDEAFD52023F4D1138B5F4D2AE1B969 /* DFUStarterPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65F2AB5D288A5BC41E69EFE924EE0C37 /* DFUStarterPeripheral.swift */; }; + FDF8F0F97587C116BD5E31F7EB019D2E /* LoggerHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 301FE6ECD82EE6FB8E3F50AAA7F50766 /* LoggerHelper.swift */; }; FE1779E8FC6E02A5F862C44182F9DCC9 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; - FE24E2664A9E7C4C10401A435D7FFD7E /* LegacyDFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC30364AD3168CD204AC57BFFB1936FA /* LegacyDFUService.swift */; }; - FE614EC3F0A551654215C18C85E02F67 /* DFUVersion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AFE0686F81066118B61F4F390340CB1 /* DFUVersion.swift */; }; + FE8E8A89D9CC670638401151217C6B9B /* LegacyDFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC30364AD3168CD204AC57BFFB1936FA /* LegacyDFUService.swift */; }; FE93755A45DF3F35A3D67EB0483200D3 /* Pods-MetaWearIntegrationTests-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = FDDABF26A26EF18A186D1EE57BF9A884 /* Pods-MetaWearIntegrationTests-tvOS-dummy.m */; }; - FED8E917DDB644108E8A3FC3F44A238A /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3F979CABDF820E04886A9E5CF79FD7A7 /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FEE61533F230A26DB488B1EA5DD71143 /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B7D2E886936673F46B3ADEEE4C155AF6 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FF17670D631D8A332D0E99B9AE91A98F /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 96C187B8B764C5AEB4EC2F301BBE940B /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FFD59C37119BD8329CB6671A18860BCB /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EABC01310722C277D019E6C2DB9517E7 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FEE445EF8846C7B4FFCAEB050873DB67 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B4ECB2BFD9EC71AEC3128B318A9BA8CB /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FF5ECDE3099FEBC82CE167472A464B05 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B63F9B9F7BDAE3C2D1A99017A48D4C8E /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 05A634CE8D0C517899910F427312D93B /* PBXContainerItemProxy */ = { + 05C9E3CF3394D544FDA9B3754F3AD569 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 8804FF230B80287816DD00C23D7C3AFB; - remoteInfo = "MetaWear-AsyncUtils-Core-UI-tvOS"; - }; - 0655B606BD24EE7119D274E3AEB23B2E /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; - remoteInfo = "Bolts-Swift-tvOS"; + remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; + remoteInfo = "Bolts-Swift-macOS"; }; - 0BEF9C2E8203EA7821EE7AEC45541B62 /* PBXContainerItemProxy */ = { + 10775978D240B3CC0700D712E73A833F /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; - remoteInfo = "Bolts-Swift-tvOS"; + remoteGlobalIDString = D34323F62557B06705361E449443F967; + remoteInfo = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS"; }; - 0FDEB0DDBDA06F5AF64B54FFFA9271B9 /* PBXContainerItemProxy */ = { + 13F640600278E83472F3461DD4CC6A38 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 9AF8AE8821E967844EEF26BBB341564D; - remoteInfo = "ZIPFoundation-iOS"; + remoteGlobalIDString = 8B5BB2050078EFCACBEDC5B4195B80CD; + remoteInfo = "ZIPFoundation-macOS"; }; - 11835FE8E1EE4298B58DAC2FA5E22C48 /* PBXContainerItemProxy */ = { + 237511C50C9BE09BCF94D3C53BDDCD2C /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = DC73C4CD23208E5286814B153B7BF656; - remoteInfo = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS"; + remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; + remoteInfo = "Bolts-Swift-tvOS"; }; - 210F09BDE02F25EEEA23C288F58BDB41 /* PBXContainerItemProxy */ = { + 27BB945EAE3344C06679570DD14C005F /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 8B5BB2050078EFCACBEDC5B4195B80CD; - remoteInfo = "ZIPFoundation-macOS"; + remoteGlobalIDString = 79F9638EA00F4594D84B597FE45CD2DC; + remoteInfo = "iOSDFULibrary-macOS"; }; - 21CC4C6113945E0C8A7FB607C14D7970 /* PBXContainerItemProxy */ = { + 2945BAB3488A9392C91743BB6FC81DF0 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 285D0CB5C235EDD5B3B0975146484BE0; - remoteInfo = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; + remoteGlobalIDString = 79F9638EA00F4594D84B597FE45CD2DC; + remoteInfo = "iOSDFULibrary-macOS"; }; - 22C99B03D283B84BB1B730DC88978266 /* PBXContainerItemProxy */ = { + 2CA06FA7571CF5AD6639EA503136410A /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; - remoteInfo = "Bolts-Swift-macOS"; + remoteGlobalIDString = 9AF8AE8821E967844EEF26BBB341564D; + remoteInfo = "ZIPFoundation-iOS"; }; - 32EF5687BA6BF2BA293C94804E0C9786 /* PBXContainerItemProxy */ = { + 3B6B4690C5DFA62472184E4E90947D27 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 667F340C7624C4E82D66A02A17E0B33D; - remoteInfo = "MetaWear-AsyncUtils-Core-UI-watchOS"; + remoteGlobalIDString = 285D0CB5C235EDD5B3B0975146484BE0; + remoteInfo = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; }; - 3896F97F3B1DEC87A648891D70FB6566 /* PBXContainerItemProxy */ = { + 42A95F515F9634ACDBEA3C34E99C338C /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 8804FF230B80287816DD00C23D7C3AFB; - remoteInfo = "MetaWear-AsyncUtils-Core-UI-tvOS"; + remoteGlobalIDString = 04C10A816CC356F24E80EFDC360742A5; + remoteInfo = "Bolts-Swift-watchOS"; }; - 4231EAAB063DA581842AADCA7B6241ED /* PBXContainerItemProxy */ = { + 44E242F977B9B5141D1F8E58A1699C32 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; - remoteInfo = "Bolts-Swift-iOS"; + remoteGlobalIDString = D5D94E351BD6926C6DC33FBD834E16AC; + remoteInfo = "iOSDFULibrary-iOS"; }; - 4685F0A604496096F5C620C4974E05DE /* PBXContainerItemProxy */ = { + 585CE3983175E44568815D3D7380A15C /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = D5D94E351BD6926C6DC33FBD834E16AC; - remoteInfo = "iOSDFULibrary-iOS"; + remoteGlobalIDString = 79F9638EA00F4594D84B597FE45CD2DC; + remoteInfo = "iOSDFULibrary-macOS"; }; - 49D890C5D3B9EE181DD33F403312F614 /* PBXContainerItemProxy */ = { + 66C484EC310615B38CAD918AB122E7B9 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 42FE80E7F4B82634FE879096E38AF67E; remoteInfo = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; }; - 5232AB2C1E2E9E97ECBEB618FEC70AF9 /* PBXContainerItemProxy */ = { + 711010DD4018732EF2B69AD110191064 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 285D0CB5C235EDD5B3B0975146484BE0; - remoteInfo = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; + remoteGlobalIDString = D5D94E351BD6926C6DC33FBD834E16AC; + remoteInfo = "iOSDFULibrary-iOS"; }; - 5B4BD6C4C52E86A54E6B47B3C3EE2511 /* PBXContainerItemProxy */ = { + 73098E235892B2F60AB2910EB335AA94 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 42FE80E7F4B82634FE879096E38AF67E; - remoteInfo = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; + remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; + remoteInfo = "Bolts-Swift-iOS"; }; - 607D22D1E0E38308B597167E03D4D8F2 /* PBXContainerItemProxy */ = { + 75554CF568A2719BD9E97BFE2D63AB84 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 9AF8AE8821E967844EEF26BBB341564D; - remoteInfo = "ZIPFoundation-iOS"; + remoteGlobalIDString = 8B5BB2050078EFCACBEDC5B4195B80CD; + remoteInfo = "ZIPFoundation-macOS"; }; - 65809AB61A8A83D8B9BBA228EBD961AD /* PBXContainerItemProxy */ = { + 791C07C26EE4252511A485D94AEBA2F1 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = D34323F62557B06705361E449443F967; - remoteInfo = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS"; + remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; + remoteInfo = "Bolts-Swift-tvOS"; }; - 6C305A41A53F61139F5A55A6640D6A69 /* PBXContainerItemProxy */ = { + 7B78FA778BAAC88D8722ECB221FE9C83 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 04C10A816CC356F24E80EFDC360742A5; remoteInfo = "Bolts-Swift-watchOS"; }; - 710021FEC41391194F3182AF8653F86B /* PBXContainerItemProxy */ = { + 864C61A1A60EF337AD9CB7AC5F7FF7E8 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = D5D94E351BD6926C6DC33FBD834E16AC; - remoteInfo = "iOSDFULibrary-iOS"; + remoteGlobalIDString = E495A89A7F691DD1EF5E2278AD5C03B0; + remoteInfo = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS"; }; - 7E23C97419384FC4ADDDCAC55E5B1AE3 /* PBXContainerItemProxy */ = { + 887048131DC8D0273A24B249EF0F454D /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 04C10A816CC356F24E80EFDC360742A5; - remoteInfo = "Bolts-Swift-watchOS"; + remoteGlobalIDString = 667F340C7624C4E82D66A02A17E0B33D; + remoteInfo = "MetaWear-AsyncUtils-Core-UI-watchOS"; }; - 8564BEB49B4065D02019C8B87A3A8B2E /* PBXContainerItemProxy */ = { + 8C02976A56F3D589D7A255F59BF5B253 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; - remoteInfo = "Bolts-Swift-tvOS"; + remoteGlobalIDString = 8804FF230B80287816DD00C23D7C3AFB; + remoteInfo = "MetaWear-AsyncUtils-Core-UI-tvOS"; }; - 9AD21880D44FC1BAAC46F2F8246C2DCF /* PBXContainerItemProxy */ = { + 9B8A9D3CED50028C926E1A46B32A91D0 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 79F9638EA00F4594D84B597FE45CD2DC; - remoteInfo = "iOSDFULibrary-macOS"; + remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; + remoteInfo = "Bolts-Swift-iOS"; }; - 9C96A3CB0A5DD2FBC5B660E13E045CD4 /* PBXContainerItemProxy */ = { + A4B9DBA1C6AA546EE0201EF8C1E68BEA /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 79F9638EA00F4594D84B597FE45CD2DC; - remoteInfo = "iOSDFULibrary-macOS"; + remoteGlobalIDString = 8804FF230B80287816DD00C23D7C3AFB; + remoteInfo = "MetaWear-AsyncUtils-Core-UI-tvOS"; }; - AC7921DAF607AE375C0F6A05991CBD52 /* PBXContainerItemProxy */ = { + AB84B45FACF93E9EA61A82A7217D013B /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; - remoteInfo = "Bolts-Swift-iOS"; + remoteGlobalIDString = DC73C4CD23208E5286814B153B7BF656; + remoteInfo = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS"; }; - B36C6E17DFAB59FB1814CB57221F7C1E /* PBXContainerItemProxy */ = { + AF2AD260DFEAA7D8168ED456B6FCB3D3 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 79F9638EA00F4594D84B597FE45CD2DC; - remoteInfo = "iOSDFULibrary-macOS"; + remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; + remoteInfo = "Bolts-Swift-macOS"; }; - B820B8D139A4BD87C7D1A2EFFE89E6A4 /* PBXContainerItemProxy */ = { + B400E8DD5417A408BC8F45BE8A94C88F /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = D5D94E351BD6926C6DC33FBD834E16AC; remoteInfo = "iOSDFULibrary-iOS"; }; - BFAD268935102BE2D8D80CC7BEA0767C /* PBXContainerItemProxy */ = { + BE897FE97B811C3234548B168D63920E /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 8B5BB2050078EFCACBEDC5B4195B80CD; - remoteInfo = "ZIPFoundation-macOS"; + remoteGlobalIDString = 9AF8AE8821E967844EEF26BBB341564D; + remoteInfo = "ZIPFoundation-iOS"; }; - C38CA1D919E290CEF9439A4D8FF0FC98 /* PBXContainerItemProxy */ = { + D4B29AD9073326D336410C13DF4B6915 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = E495A89A7F691DD1EF5E2278AD5C03B0; - remoteInfo = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS"; + remoteGlobalIDString = 9AF8AE8821E967844EEF26BBB341564D; + remoteInfo = "ZIPFoundation-iOS"; }; - C8DE5EE9B66EAB51063E8ED9298E0B35 /* PBXContainerItemProxy */ = { + DBD458533DEA2D394E7724C8AD02DE25 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 8B5BB2050078EFCACBEDC5B4195B80CD; - remoteInfo = "ZIPFoundation-macOS"; + remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; + remoteInfo = "Bolts-Swift-macOS"; }; - D5213F83CBBC717B0C08E4A78948E222 /* PBXContainerItemProxy */ = { + DD1B8670BCA35060346E26C7C8DBE590 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; - remoteInfo = "Bolts-Swift-macOS"; + remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; + remoteInfo = "Bolts-Swift-tvOS"; }; - F0BA04EFCCB38A53A566258694C6DAC0 /* PBXContainerItemProxy */ = { + E56AF568A4DCBD7FDD6C199F0261AEB5 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; - remoteInfo = "Bolts-Swift-macOS"; + remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; + remoteInfo = "Bolts-Swift-iOS"; }; - F3B140480689C35CDC403865AEA5806A /* PBXContainerItemProxy */ = { + E7BA52ED09E4D626E7C312225546CF0F /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 9AF8AE8821E967844EEF26BBB341564D; - remoteInfo = "ZIPFoundation-iOS"; + remoteGlobalIDString = 8B5BB2050078EFCACBEDC5B4195B80CD; + remoteInfo = "ZIPFoundation-macOS"; }; - FEFDBF5D749F7CB920039948DC4C578C /* PBXContainerItemProxy */ = { + F39A203151A809E55F4EE7F052EE034F /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; - remoteInfo = "Bolts-Swift-iOS"; + remoteGlobalIDString = 42FE80E7F4B82634FE879096E38AF67E; + remoteInfo = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; + }; + F6CA060E8BE65E7804E4E2BDAA4C9E94 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 285D0CB5C235EDD5B3B0975146484BE0; + remoteInfo = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 004F2B2F88E223F15641B8434DF89667 /* miniz.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = miniz.cpp; sourceTree = ""; }; + 00582FE3731876451149806FBB0E5A28 /* led.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = led.rst; path = Docs/source/led.rst; sourceTree = ""; }; 0196948ACFF051DD8861A6C465F8CE3F /* CoreBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreBluetooth.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS14.0.sdk/System/Library/Frameworks/CoreBluetooth.framework; sourceTree = DEVELOPER_DIR; }; - 01EBFA9D9682C4C8EE1BC2745DF4BD74 /* lato-bold.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bold.woff2"; path = "Docs/build/html/_static/fonts/Lato/lato-bold.woff2"; sourceTree = ""; }; + 028E0B50105A41869AE9683AA8EF087F /* debug.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = debug.cpp; sourceTree = ""; }; + 032CEC809A22F93CB6C3F5E5A317521C /* environment.pickle */ = {isa = PBXFileReference; includeInIndex = 1; name = environment.pickle; path = Docs/build/doctrees/environment.pickle; sourceTree = ""; }; 035E0D2F7DDEC194A3C14B7536168D1E /* Double.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Double.swift; path = iOSDFULibrary/Classes/Utilities/Double.swift; sourceTree = ""; }; + 03D31D20DBC3442CB19A9F770F0F669B /* haptic.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = haptic.doctree; path = Docs/build/doctrees/haptic.doctree; sourceTree = ""; }; 03D9E375058658E47E963E6C82D21FDD /* Pods-MetaWearIntegrationTests-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWearIntegrationTests-macOS-Info.plist"; sourceTree = ""; }; - 062A656E426FE8A40C3C4511EC063781 /* lato-regular.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-regular.woff2"; path = "Docs/build/html/_static/fonts/Lato/lato-regular.woff2"; sourceTree = ""; }; - 06E38BE96ED7F90EBB53A885E4F12324 /* lato-italic.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-italic.woff"; path = "Docs/build/html/_static/fonts/Lato/lato-italic.woff"; sourceTree = ""; }; + 03F1E3102C3F890C45FE08306FFD60EF /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.debug.xcconfig"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.debug.xcconfig"; sourceTree = ""; }; + 0421114FF4A72C4B6114B97C28A38C3A /* MetaWear-AsyncUtils-Core-UI-watchOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-UI-watchOS.release.xcconfig"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.release.xcconfig"; sourceTree = ""; }; + 04C6362C74068C59599ACDB1ABD11C44 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap"; sourceTree = ""; }; + 04F1146BEBA5AADD27791BB2E2AAA4EB /* dataprocessor.html */ = {isa = PBXFileReference; includeInIndex = 1; name = dataprocessor.html; path = Docs/build/html/dataprocessor.html; sourceTree = ""; }; 072882DA4A73974B94C6CCC3ED91235A /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-Info.plist"; sourceTree = ""; }; + 074889A87EA13F8E63B6FF6CEDBB3038 /* theme.css */ = {isa = PBXFileReference; includeInIndex = 1; name = theme.css; path = Docs/build/html/_static/css/theme.css; sourceTree = ""; }; + 07774B397919BA3B2A371F29C47F646E /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m"; sourceTree = ""; }; 078F0731749B6E528288AA919346D9BA /* iOSDFULibrary-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "iOSDFULibrary-macOS-Info.plist"; path = "../iOSDFULibrary-macOS/iOSDFULibrary-macOS-Info.plist"; sourceTree = ""; }; 07D8C4BF82FC47746C3493658B1DAC84 /* CoreBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreBluetooth.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/CoreBluetooth.framework; sourceTree = DEVELOPER_DIR; }; + 083209CBEC7188026918DF4412D0A88C /* ibeacon.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = ibeacon.rst; path = Docs/source/ibeacon.rst; sourceTree = ""; }; 085E4CB728B2A20CE1F1A3E86A7E6BF7 /* Archive+Reading.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Archive+Reading.swift"; path = "Sources/ZIPFoundation/Archive+Reading.swift"; sourceTree = ""; }; - 089F056E9C04BBB61149090737132FAC /* MetaWearData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWearData.swift; sourceTree = ""; }; 097626843A2BE88C200372747C32142B /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-Info.plist"; sourceTree = ""; }; 09FB029345B1A704BD8F64B899B729F7 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.release.xcconfig"; sourceTree = ""; }; + 0A3CA4C5806BBDE749B2721D6009C367 /* logging.html */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.html; path = Docs/build/html/logging.html; sourceTree = ""; }; 0A6BB5254DA6F253B7F224A37040448D /* Bolts-Swift-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-tvOS.release.xcconfig"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS.release.xcconfig"; sourceTree = ""; }; + 0AC46E876C3E1B90B4DFE9C79D18A0E1 /* barometer.html */ = {isa = PBXFileReference; includeInIndex = 1; name = barometer.html; path = Docs/build/html/barometer.html; sourceTree = ""; }; 0BBBD00DC9B06AD86CC60B957ECBC143 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-dummy.m"; sourceTree = ""; }; + 0BF6180B8C72293B7BA5EB27B28FA560 /* String+VersionCompare.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "String+VersionCompare.swift"; sourceTree = ""; }; 0C3C1A8257A68A4723AECC744D10ED3B /* ZIPFoundation-macOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "ZIPFoundation-macOS-prefix.pch"; path = "../ZIPFoundation-macOS/ZIPFoundation-macOS-prefix.pch"; sourceTree = ""; }; 0C4CBE6DC013E76847C1FBA2CE286155 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS.release.xcconfig"; sourceTree = ""; }; + 0C5FB000D6B6DDBC03223EA811B3D032 /* macro.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = macro.rst; path = Docs/source/macro.rst; sourceTree = ""; }; 0CA1F6023A3DB618EA8AEB4FE0E7ABD6 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-acknowledgements.markdown"; sourceTree = ""; }; + 0CB733F1ABB28FD09CC24CAFF4208936 /* logger.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = logger.rst; path = Docs/source/logger.rst; sourceTree = ""; }; 0D0F2455951621C92FC852B3CA01A025 /* Pods-MetaWearIntegrationTests-iOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWearIntegrationTests-iOS-acknowledgements.markdown"; sourceTree = ""; }; - 0E8622F09E6CB668D6A071E72158EE53 /* index.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = index.rst; path = Docs/source/index.rst; sourceTree = ""; }; + 0D9DFE8A544DE8FAD30184591A1A9EC3 /* temperature.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = temperature.doctree; path = Docs/build/doctrees/temperature.doctree; sourceTree = ""; }; 0EE452657460D902FBF3DF3941516A6F /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-dummy.m"; sourceTree = ""; }; - 0F6551260609078AA629619C9CCEC4AA /* FirmwareBuild.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FirmwareBuild.swift; path = MetaWear/DFU/FirmwareBuild.swift; sourceTree = ""; }; + 0F1EB82D49AB88821356CA73A0771FD5 /* settings.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.rst.txt; path = Docs/build/html/_sources/settings.rst.txt; sourceTree = ""; }; 0F662C509A889C1CDF18249B1C366873 /* Pods-MetaWearIntegrationTests-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWearIntegrationTests-tvOS.release.xcconfig"; sourceTree = ""; }; 0F7522AE1D3130829DAE82D6901E1EB6 /* Bolts-Swift-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Bolts-Swift-iOS-dummy.m"; sourceTree = ""; }; - 0FF9550C9A8C8656880258CF8CD98C53 /* dfu_operations_details.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_operations_details.cpp; sourceTree = ""; }; + 0FCF2F5A5C94712F9BAE705347593E4A /* haptic.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = haptic.cpp; sourceTree = ""; }; 103D1343B162D7C561457279B0ED5AD6 /* Pods-MetaWearIntegrationTests-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWearIntegrationTests-iOS-Info.plist"; sourceTree = ""; }; + 1055045CA95BD2B47B08BD783A980121 /* anonymous_datasignal.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = anonymous_datasignal.cpp; sourceTree = ""; }; 1084C07F80C0D31B449AC6A192D39F3F /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.modulemap"; sourceTree = ""; }; - 10A7CBD15778697655DDC81F8D561124 /* MetaWearScanner.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWearScanner.swift; sourceTree = ""; }; + 10B5EE02F081CB150B64BC4FB70FBF7B /* datainterpreter.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = datainterpreter.cpp; sourceTree = ""; }; 10D3E4D3F3DF5923B59F5AA158D6FAA8 /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension.release.xcconfig"; sourceTree = ""; }; - 10F2FD057FD341AB68DCC7494C5DFDB7 /* basic.css */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.css; name = basic.css; path = Docs/build/html/_static/basic.css; sourceTree = ""; }; - 1163C159F0C301F918C8605EF5BB3FD9 /* theme.css */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.css; name = theme.css; path = Docs/build/html/_static/css/theme.css; sourceTree = ""; }; 1170D3A9194D58C03AC23B4BD8B40D36 /* DFUStreamBin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUStreamBin.swift; path = iOSDFULibrary/Classes/Utilities/Streams/DFUStreamBin.swift; sourceTree = ""; }; + 11CADFF53C91E1A30202D8FF4E333388 /* gpio.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = gpio.doctree; path = Docs/build/doctrees/gpio.doctree; sourceTree = ""; }; + 11D7E43CE0EF603C44855E4593EAB0BA /* temperature.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = temperature.rst; path = Docs/source/temperature.rst; sourceTree = ""; }; + 1225B2929A00F38CEC6D51ADA16F1AC0 /* metawearboard.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearboard.rst; path = Docs/source/metawearboard.rst; sourceTree = ""; }; 123A22AEC2E29C7F895B12525B23F87C /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.debug.xcconfig"; sourceTree = ""; }; - 12F259C70E58E19EE9E4657BA663A5A0 /* macro.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = macro.cpp; sourceTree = ""; }; + 130F499F721C1B377D36A98D02F77DD8 /* logging.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.rst; path = Docs/source/logging.rst; sourceTree = ""; }; 1381FD8CC75E8C4F6F506D2A5535FB9E /* LegacyDFUPeripheralDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LegacyDFUPeripheralDelegate.swift; path = iOSDFULibrary/Classes/Implementation/LegacyDFU/Peripherals/LegacyDFUPeripheralDelegate.swift; sourceTree = ""; }; 13829EDE662D97D87D0E32811BDB409F /* Bolts-Swift-watchOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "Bolts-Swift-watchOS-Info.plist"; path = "../Bolts-Swift-watchOS/Bolts-Swift-watchOS-Info.plist"; sourceTree = ""; }; - 13EEBC8CB139D6A0EED2CE04FC2BBEFB /* roboto-slab-v7-bold.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "roboto-slab-v7-bold.ttf"; path = "Docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf"; sourceTree = ""; }; 14072DD4081A19ABE0CA94D6B8577713 /* ZIPFoundation-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "ZIPFoundation-iOS-Info.plist"; sourceTree = ""; }; - 151AE9FA75AEEAF352A67C395BAE1AD7 /* sensor_fusion.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = sensor_fusion.cpp; sourceTree = ""; }; + 1411C15BEC5AF49F39FEBE09D9673803 /* sensors.html */ = {isa = PBXFileReference; includeInIndex = 1; name = sensors.html; path = Docs/build/html/sensors.html; sourceTree = ""; }; + 150D817BA455C92B497629C15EB2969A /* Bridging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Bridging.swift; sourceTree = ""; }; 15337C8C5853077863392CCCAE3D6D92 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-acknowledgements.plist"; sourceTree = ""; }; - 156218A27163C74F4FF3A8B88B84FDB0 /* settings.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = settings.cpp; sourceTree = ""; }; - 15AF8752D2B4DE1B1A24F1B233E457CD /* MetaWear-AsyncUtils-Core-UI-watchOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-UI-watchOS.debug.xcconfig"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.debug.xcconfig"; sourceTree = ""; }; + 15846FC0DBF518C187A55CDA92587321 /* MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch"; sourceTree = ""; }; + 15D2FB5A458C72908F44B10B63D71EF7 /* badge_only.js */ = {isa = PBXFileReference; includeInIndex = 1; name = badge_only.js; path = Docs/build/html/_static/js/badge_only.js; sourceTree = ""; }; + 1630E35F3CDA6F4D83398862B274956F /* index.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = index.doctree; path = Docs/build/doctrees/index.doctree; sourceTree = ""; }; 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 172FBC6BF4C64CB216A0D7FDD91B84AC /* ZIPFoundation-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "ZIPFoundation-macOS.modulemap"; path = "../ZIPFoundation-macOS/ZIPFoundation-macOS.modulemap"; sourceTree = ""; }; - 1899A2B7831D2DEABC5102099AD9E6E0 /* dataprocessor_config.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dataprocessor_config.cpp; sourceTree = ""; }; + 17CCDA63A1BE61939C8547776C1A883B /* macro.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = macro.doctree; path = Docs/build/doctrees/macro.doctree; sourceTree = ""; }; + 1841D19E78EC3951F80B2F159EB39BB6 /* objects.inv */ = {isa = PBXFileReference; includeInIndex = 1; name = objects.inv; path = Docs/build/html/objects.inv; sourceTree = ""; }; + 1881483EDF6FAA713D89C78E866AEDF8 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.release.xcconfig"; sourceTree = ""; }; + 192093A37DD2B580540A720F1C1EDBB0 /* spi.html */ = {isa = PBXFileReference; includeInIndex = 1; name = spi.html; path = Docs/build/html/spi.html; sourceTree = ""; }; 1A345CDF1F508DD005B1A5DF065BAFEC /* iOSDFULibrary-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "iOSDFULibrary-iOS-Info.plist"; sourceTree = ""; }; + 1AB700AD1E77526C1584F3E4CA6A880C /* switch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = switch.cpp; sourceTree = ""; }; 1ABB43FC0D3E225C0671B3C8F70E8152 /* DFUCharacteristic.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUCharacteristic.swift; path = iOSDFULibrary/Classes/Implementation/GenericDFU/DFUCharacteristic.swift; sourceTree = ""; }; 1BBCC393FC3A41158FF2F3A62082CB69 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-Info.plist"; sourceTree = ""; }; - 1C8740D360CAB1AD5E8DC6787AD171A1 /* MetaWear.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; path = MetaWear.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 1D07E927F7D808F604AF5624418F4F14 /* advanced_features.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = advanced_features.rst.txt; path = Docs/build/html/_sources/advanced_features.rst.txt; sourceTree = ""; }; 1D23DA01A9AF58E28A2EBD8F1BEA380A /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-frameworks.sh"; sourceTree = ""; }; - 1D32438A3E37C2538BCEF7DEF8B76D91 /* moduleinfo.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = moduleinfo.cpp; sourceTree = ""; }; - 1D8C4C8B14D70A509549DA2A45B06417 /* lato-bolditalic.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bolditalic.woff"; path = "Docs/build/html/_static/fonts/Lato/lato-bolditalic.woff"; sourceTree = ""; }; - 1EC5F814B3A60C94EDF55FB05EEFA124 /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m"; sourceTree = ""; }; + 1D5AAA0720CDB17B211FFF8D4037D68C /* peripherals.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = peripherals.rst; path = Docs/source/peripherals.rst; sourceTree = ""; }; + 1DB0754FCFAA5EB6F0F312EBB3B8F528 /* barometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = barometer.rst; path = Docs/source/barometer.rst; sourceTree = ""; }; + 1DBB1FB0B10FBF78D05ADF85318B6529 /* cppbridge.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = cppbridge.rst.txt; path = Docs/build/html/_sources/cppbridge.rst.txt; sourceTree = ""; }; + 1DEAEE66CB7A6E65AA70C29F4C092CEE /* index.html */ = {isa = PBXFileReference; includeInIndex = 1; name = index.html; path = Docs/build/html/index.html; sourceTree = ""; }; 1EC706D80D1653386F8E95C9A27FBD84 /* Errors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Errors.swift; path = Sources/BoltsSwift/Errors.swift; sourceTree = ""; }; 1EEBF63821E151EA85AFD8192EE64F2B /* Pods-MetaWearIntegrationTests-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWearIntegrationTests-tvOS.debug.xcconfig"; sourceTree = ""; }; 1F2F9B8E65A9F447C9A12C27A37C2C8F /* ButtonlessDFU.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ButtonlessDFU.swift; path = iOSDFULibrary/Classes/Implementation/SecureDFU/Characteristics/ButtonlessDFU.swift; sourceTree = ""; }; - 1F5A0A0E96458AC5D9A29D4B38AC875F /* anonymous_datasignal.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = anonymous_datasignal.cpp; sourceTree = ""; }; - 201A7D4272065F0C4D31F2DF5826620D /* lato-regular.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-regular.ttf"; path = "Docs/build/html/_static/fonts/Lato/lato-regular.ttf"; sourceTree = ""; }; + 1FEAD48A2DC9006470AEA6A870085C76 /* version.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = version.cpp; sourceTree = ""; }; + 20B0727D623002B7F4C82B61F2E53BCE /* gpio.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = gpio.cpp; sourceTree = ""; }; 218AE57BFFFAA6EF91A1FDB717AF2B6A /* Bolts-Swift-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-macOS-umbrella.h"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS-umbrella.h"; sourceTree = ""; }; 21E0B5E72AE22F9985373E6D5A602217 /* DFUPacket.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUPacket.swift; path = iOSDFULibrary/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift; sourceTree = ""; }; 222241CB9EC5A831040351E44E164F47 /* Task.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Task.swift; path = Sources/BoltsSwift/Task.swift; sourceTree = ""; }; 225DB3D8DBC28CCF0A73CEFF033FFE1C /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-dummy.m"; sourceTree = ""; }; - 233C55C0F8D778F8B627C9DCB62E2E4D /* roboto-slab-v7-regular.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "roboto-slab-v7-regular.woff"; path = "Docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff"; sourceTree = ""; }; - 2487128CCAF698CD32BC9F7356D067D3 /* layout.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = layout.html; path = Docs/source/_templates/layout.html; sourceTree = ""; }; - 24A13113E387EC83E9B0377DA7C515D0 /* gpio.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = gpio.cpp; sourceTree = ""; }; - 2547169A3CD980A3B3334E5ACCD35A90 /* MetaWear-AsyncUtils-Core-UI-watchOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MetaWear-AsyncUtils-Core-UI-watchOS.modulemap"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.modulemap"; sourceTree = ""; }; + 22B736D3FC1B0B4BFBA2053785D7DA8D /* project.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = project.rst; path = Docs/source/project.rst; sourceTree = ""; }; + 23DEC02CD53AF8DC02BA2775736F0B88 /* lato-normal.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-normal.woff"; path = "Docs/build/html/_static/css/fonts/lato-normal.woff"; sourceTree = ""; }; + 262B515345D9A281E9DB178889EAB01F /* barometer_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = barometer_bosch.cpp; sourceTree = ""; }; + 26A488517176F845577DBC09E94C2DA9 /* MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist"; sourceTree = ""; }; 26C4EF6D5527107553AC8C6445B50DFA /* Bolts-Swift-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "Bolts-Swift-macOS.modulemap"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS.modulemap"; sourceTree = ""; }; - 26C860EAB358F3DD8AA5262C8744B2AA /* metawearscanner.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = metawearscanner.doctree; path = Docs/build/doctrees/metawearscanner.doctree; sourceTree = ""; }; - 278588D3780F675E87F91A89D50D9BBA /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h"; sourceTree = ""; }; + 26CD56EFF4847CE728D5433E2DB7AFD1 /* badge_only.css */ = {isa = PBXFileReference; includeInIndex = 1; name = badge_only.css; path = Docs/build/html/_static/css/badge_only.css; sourceTree = ""; }; + 298FBFA2961E0ABE180C7D3500ABC25E /* gyro.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = gyro.rst; path = Docs/source/gyro.rst; sourceTree = ""; }; 29BB9C0E37B83968F84668AE79A17E3E /* Bolts-Swift-watchOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "Bolts-Swift-watchOS.modulemap"; path = "../Bolts-Swift-watchOS/Bolts-Swift-watchOS.modulemap"; sourceTree = ""; }; 29BEF66C4C982AC2F1A552DB5471A6C9 /* Bolts-Swift-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-macOS.debug.xcconfig"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS.debug.xcconfig"; sourceTree = ""; }; 2A20403D099EE1D872F28342554B7D6E /* SecureDFUExecutor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SecureDFUExecutor.swift; path = iOSDFULibrary/Classes/Implementation/SecureDFU/DFU/SecureDFUExecutor.swift; sourceTree = ""; }; 2A4F63777B002CC7B784A6DAD3DC137F /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-acknowledgements.markdown"; sourceTree = ""; }; 2AD021230759BF1564016D431AF27FD1 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS.debug.xcconfig"; sourceTree = ""; }; 2BA85EFA3BF15A9489343A185CEA6A26 /* Pods-MetaWearIntegrationTests-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWearIntegrationTests-macOS-umbrella.h"; sourceTree = ""; }; - 2D8FA78546C4335D20357CC4567FD305 /* multichanneltemperature.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = multichanneltemperature.cpp; sourceTree = ""; }; + 2BD2D2BB4D92665D01ACDFCE31BBC15B /* MockModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MockModule.swift; path = MetaWear/Mocks/MockModule.swift; sourceTree = ""; }; + 2C439C24DEA34C216997BFDB48274C53 /* datasignal.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = datasignal.cpp; sourceTree = ""; }; + 2C6E0959E06A9BC6D49824DCEC497E3B /* MblMwGattChar.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MblMwGattChar.swift; sourceTree = ""; }; + 2C8D80D65202BB8439A01802C09D6B78 /* searchtools.js */ = {isa = PBXFileReference; includeInIndex = 1; name = searchtools.js; path = Docs/build/html/_static/searchtools.js; sourceTree = ""; }; 2DB87BBBFD5759619456A8FCB9DE2B32 /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-acknowledgements.plist"; sourceTree = ""; }; 2DE5AFD8F526047908EF1A6F8FDAE4E9 /* Task+Delay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Task+Delay.swift"; path = "Sources/BoltsSwift/Task+Delay.swift"; sourceTree = ""; }; 2DF84184A9E66C8B0438197B2C362EE5 /* Bolts-Swift-watchOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-watchOS-prefix.pch"; path = "../Bolts-Swift-watchOS/Bolts-Swift-watchOS-prefix.pch"; sourceTree = ""; }; 2E2C83FD3D501DC7B7DB4B19590A9D15 /* SecureDFUPeripheralDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SecureDFUPeripheralDelegate.swift; path = iOSDFULibrary/Classes/Implementation/SecureDFU/Peripheral/SecureDFUPeripheralDelegate.swift; sourceTree = ""; }; + 2E392B44F6DBAEA7B61F13E33DE5355D /* metawearscanner.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearscanner.rst; path = Docs/source/metawearscanner.rst; sourceTree = ""; }; + 2E60F458071A86FFE0F81E3486039F3D /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-prefix.pch"; sourceTree = ""; }; 2E676C8C851F2DFC1BD8673237F3566F /* Bolts-Swift-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Bolts-Swift-iOS-umbrella.h"; sourceTree = ""; }; 2F84DDC719FC0880B153F57CEF28B283 /* SecureDFUControlPoint.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SecureDFUControlPoint.swift; path = iOSDFULibrary/Classes/Implementation/SecureDFU/Characteristics/SecureDFUControlPoint.swift; sourceTree = ""; }; 301FE6ECD82EE6FB8E3F50AAA7F50766 /* LoggerHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LoggerHelper.swift; path = iOSDFULibrary/Classes/Utilities/Logging/LoggerHelper.swift; sourceTree = ""; }; - 308C742B5F0678EBC7ADFA2BA4BA741A /* Pods_MetaWear_MetaWear_iOS_MetaWearIntegrationTestHost_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWear_MetaWear_iOS_MetaWearIntegrationTestHost_iOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 30F561FD3CDE2CC34316A596BFD4F28E /* metawearboard.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = metawearboard.html; path = Docs/build/html/metawearboard.html; sourceTree = ""; }; + 308C742B5F0678EBC7ADFA2BA4BA741A /* Pods_MetaWear_MetaWear_iOS_MetaWearIntegrationTestHost_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWear_MetaWear_iOS_MetaWearIntegrationTestHost_iOS.framework; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 30CBD70D5E2C9D164E5B0A50AB856B7B /* led.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = led.doctree; path = Docs/build/doctrees/led.doctree; sourceTree = ""; }; 310CE7870B01D5B716AC8334A7A0D3D8 /* ZIPFoundation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ZIPFoundation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 3241C05D8C5E343CF0B2BAB01F725786 /* i2c.html */ = {isa = PBXFileReference; includeInIndex = 1; name = i2c.html; path = Docs/build/html/i2c.html; sourceTree = ""; }; + 324E2FE9A0F859A4365077C4FF606DBA /* fontawesome-webfont.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.ttf"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.ttf"; sourceTree = ""; }; + 326C7A13414F85997D21C1DB7AF746AC /* MetaWear+LED.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+LED.swift"; path = "MetaWear/AsyncUtils/MetaWear+LED.swift"; sourceTree = ""; }; 3278B1D6E8FB851C63599138931CEC3F /* SecureDFUServiceInitiator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SecureDFUServiceInitiator.swift; path = iOSDFULibrary/Classes/Implementation/SecureDFU/DFU/SecureDFUServiceInitiator.swift; sourceTree = ""; }; - 32B29E729EDF0C9B22DEB3D5A271F90D /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MetaWear.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 32BC530DD23022E2E1B595E7AF36B83F /* responseheader.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = responseheader.cpp; sourceTree = ""; }; - 34053E679B634F86E79B0EA7A85D3463 /* timer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = timer.cpp; sourceTree = ""; }; + 32B29E729EDF0C9B22DEB3D5A271F90D /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MetaWear.framework; path = "MetaWear-AsyncUtils-Core-UI-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 32CB9E5FAD9892725D6936A428426733 /* underscore-1.3.1.js */ = {isa = PBXFileReference; includeInIndex = 1; name = "underscore-1.3.1.js"; path = "Docs/build/html/_static/underscore-1.3.1.js"; sourceTree = ""; }; + 331BCE7E8A4E6CAC55A76D56AA68EA82 /* datasignal.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = datasignal.rst.txt; path = Docs/build/html/_sources/datasignal.rst.txt; sourceTree = ""; }; + 3436227BE8D2D5C12C6BB7932BBB9564 /* gpio.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = gpio.rst; path = Docs/source/gpio.rst; sourceTree = ""; }; 3448F7A74DD00F5CC447008E69AB4CED /* crc32.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = crc32.swift; path = iOSDFULibrary/Classes/Utilities/crc32.swift; sourceTree = ""; }; - 34A8066D3D9A5135273080AF0ECAA244 /* humidity_bme280.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = humidity_bme280.cpp; sourceTree = ""; }; + 345ABF33B8336E5C17E9A833DBAC86E1 /* metawearscanner.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearscanner.rst.txt; path = Docs/build/html/_sources/metawearscanner.rst.txt; sourceTree = ""; }; 3540CBE383E25657CDB213399E0E6302 /* Bolts-Swift-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Bolts-Swift-iOS.debug.xcconfig"; sourceTree = ""; }; - 357E5635098F2378732DB33A5AE27106 /* file_operations.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = file_operations.cpp; sourceTree = ""; }; - 35DF09B838AFE914ED26D06CCF9A534A /* MetaWear+LED.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+LED.swift"; path = "MetaWear/AsyncUtils/MetaWear+LED.swift"; sourceTree = ""; }; + 3562CFA855EC2EE37012CDA3F992E2B4 /* sensors.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = sensors.doctree; path = Docs/build/doctrees/sensors.doctree; sourceTree = ""; }; 36BD1B8C3920C3C9428AC4CAEC29A875 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-Info.plist"; sourceTree = ""; }; 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - 370F5445DBB346752166F0102315DAA8 /* MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch"; sourceTree = ""; }; - 3711E4C793C5FAC69D3C998E37E02980 /* MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist"; sourceTree = ""; }; - 3950A3826BAA4FD2F305A186CD1B5F75 /* proximity_tsl2671.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = proximity_tsl2671.cpp; sourceTree = ""; }; - 39EFC3444868D94E50BD6C83FB0CD5CD /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 3A240542A20A713FB7039D7E70157EC5 /* roboto-slab-v7-bold.eot */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "roboto-slab-v7-bold.eot"; path = "Docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot"; sourceTree = ""; }; + 3794B3C15BC07E0E2EC76B0024A06914 /* sensor_fusion.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = sensor_fusion.rst.txt; path = Docs/build/html/_sources/sensor_fusion.rst.txt; sourceTree = ""; }; + 3900651C6419D97D66B3CE4CC38E0293 /* dataprocessor.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = dataprocessor.doctree; path = Docs/build/doctrees/dataprocessor.doctree; sourceTree = ""; }; + 39EFC3444868D94E50BD6C83FB0CD5CD /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = BoltsSwift.framework; path = "Bolts-Swift-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; 3A46D8DB37147B302C46801703C55133 /* Bolts-Swift-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Bolts-Swift-macOS-dummy.m"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS-dummy.m"; sourceTree = ""; }; 3AD54ED09D15C9FCDAB012469BA87074 /* DFUExecutor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUExecutor.swift; path = iOSDFULibrary/Classes/Implementation/GenericDFU/DFUExecutor.swift; sourceTree = ""; }; 3ADC0D7C3B1D964CF4DF6C520CF6DD63 /* Pods-MetaWearIntegrationTests-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWearIntegrationTests-tvOS-umbrella.h"; sourceTree = ""; }; + 3AF105819F0CF98F677510BD677E9C91 /* responseheader.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = responseheader.cpp; sourceTree = ""; }; + 3B52446E71CE54FAE4CD18972CC07B81 /* Roboto-Slab-Regular.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "Roboto-Slab-Regular.woff"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Regular.woff"; sourceTree = ""; }; 3B7BBB487AAC8C4468FD0CFD70FBC0C8 /* DFUStream.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUStream.swift; path = iOSDFULibrary/Classes/Utilities/Streams/DFUStream.swift; sourceTree = ""; }; 3D2B1F9C879E8EB4367F37D3E1478883 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.modulemap"; sourceTree = ""; }; 3D8C61E4E4D79DEF8B04C260B2AE7AD5 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-acknowledgements.plist"; sourceTree = ""; }; - 3DEFBC2BEAFD0EEE811ACE88610A7399 /* Lato-Bold.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "Lato-Bold.ttf"; path = "Docs/build/html/_static/fonts/Lato-Bold.ttf"; sourceTree = ""; }; + 3EC1C6520D805971B93CEE5E29C7C7B8 /* PythonGenerator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = PythonGenerator.cpp; sourceTree = ""; }; + 3F885996234BEE8561A281623A50A68C /* search.html */ = {isa = PBXFileReference; includeInIndex = 1; name = search.html; path = Docs/build/html/search.html; sourceTree = ""; }; 3F8DDE74839FCA2D7300179DBCB4FC0F /* DFUStreamZip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUStreamZip.swift; path = iOSDFULibrary/Classes/Utilities/Streams/DFUStreamZip.swift; sourceTree = ""; }; - 3F979CABDF820E04886A9E5CF79FD7A7 /* version.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = version.cpp; sourceTree = ""; }; - 3FAC5D57E3C7FFB17E229B298A173A58 /* fontawesome-webfont.eot */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "fontawesome-webfont.eot"; path = "Docs/build/html/_static/fonts/fontawesome-webfont.eot"; sourceTree = ""; }; 3FE3BE012AF1F6794DE98F2C27FC8C97 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-frameworks.sh"; sourceTree = ""; }; + 404A96C52A94C9574CC02A2A53C0D18D /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m"; sourceTree = ""; }; + 404E52D706E88C3E2D21665D3787BD3F /* logger.html */ = {isa = PBXFileReference; includeInIndex = 1; name = logger.html; path = Docs/build/html/logger.html; sourceTree = ""; }; + 4072A5BE975773E7CFDF4BFC8339D23A /* pygments.css */ = {isa = PBXFileReference; includeInIndex = 1; name = pygments.css; path = Docs/build/html/_static/pygments.css; sourceTree = ""; }; 40C1B9695CC5C828A750BEE404A97766 /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension.modulemap"; sourceTree = ""; }; - 40D28FBC8418308A8188AE6A59CCA5BA /* event.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = event.cpp; sourceTree = ""; }; - 41A5789A4143D06989F5C16916FAE013 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MetaWear.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 41CCD77B794E8E191A9A1E792AF7BF32 /* Lato-Regular.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "Lato-Regular.ttf"; path = "Docs/build/html/_static/fonts/Lato-Regular.ttf"; sourceTree = ""; }; - 42397083F482953900FFDC203831BB02 /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m"; sourceTree = ""; }; - 43AC3751B2F2988747E79D26B073C548 /* neopixel.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = neopixel.cpp; sourceTree = ""; }; + 411B3D554AF16BD66FA67215A26B8FF0 /* sensor_fusion.html */ = {isa = PBXFileReference; includeInIndex = 1; name = sensor_fusion.html; path = Docs/build/html/sensor_fusion.html; sourceTree = ""; }; + 41A5789A4143D06989F5C16916FAE013 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MetaWear.framework; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 4211F351A32AB011F5605555A8BF3D12 /* humidity.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = humidity.rst; path = Docs/source/humidity.rst; sourceTree = ""; }; + 4216C5024631D84CC9C285B13B5BDFC6 /* datasignal.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = datasignal.doctree; path = Docs/build/doctrees/datasignal.doctree; sourceTree = ""; }; + 435B486F13B6505CA701B00C43A96144 /* event.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = event.rst; path = Docs/source/event.rst; sourceTree = ""; }; + 43702C7E71143F7A58027486BF754B2A /* lato-bold.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-bold.woff"; path = "Docs/build/html/_static/css/fonts/lato-bold.woff"; sourceTree = ""; }; 43D861454051E98CCCE7D0C4E5D735FF /* Pods-MetaWearIntegrationTests-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWearIntegrationTests-iOS.modulemap"; sourceTree = ""; }; 43F1699B4BFCC7DCC805D93E2651F30D /* Bolts-Swift-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Bolts-Swift-iOS.release.xcconfig"; sourceTree = ""; }; 461F37C28C6FFB3F5C385EDBA3791EB4 /* Pods-MetaWearIntegrationTests-macOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWearIntegrationTests-macOS-acknowledgements.plist"; sourceTree = ""; }; - 468D62D2F2023CEA82E05FAA1A40B641 /* jquery-3.2.1.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = "jquery-3.2.1.js"; path = "Docs/build/html/_static/jquery-3.2.1.js"; sourceTree = ""; }; + 4673FCA4465DD7964AE1990F01D5A03C /* event.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = event.rst.txt; path = Docs/build/html/_sources/event.rst.txt; sourceTree = ""; }; + 4704E1F7A5A48B0E8FAB31DE03DC6677 /* metawearboard.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearboard.rst.txt; path = Docs/build/html/_sources/metawearboard.rst.txt; sourceTree = ""; }; 471949DE1C588949EA675BC34BD52CF8 /* ZIPFoundation-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "ZIPFoundation-iOS.debug.xcconfig"; sourceTree = ""; }; 473572BB5FB1EE409EF6CF74DF7D9CED /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-umbrella.h"; sourceTree = ""; }; 47A42A6D0D2C373B25D8BD3F4C472B37 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS.release.xcconfig"; sourceTree = ""; }; - 4817A1760DAC2F13567CC1326F7608BF /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 4885CEB6BA0EF397973C461A3C2CF385 /* Pods_MetaWear_MetaWear_macOS_MetaWearIntegrationTestHost_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWear_MetaWear_macOS_MetaWearIntegrationTestHost_macOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 49F4FED4993A402B48D2B293284C4F28 /* metawearboard.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = metawearboard.doctree; path = Docs/build/doctrees/metawearboard.doctree; sourceTree = ""; }; - 4A44F19BF4D105E5613D5F4FEE673725 /* project_setup.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = project_setup.rst.txt; path = Docs/build/html/_sources/project_setup.rst.txt; sourceTree = ""; }; - 4B3F29D4C5BD9B02000722D3D5FCF208 /* task.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = task.cpp; sourceTree = ""; }; - 4D175864EAE5385AD57CFC286B6092BF /* roboto-slab-v7-regular.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "roboto-slab-v7-regular.ttf"; path = "Docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf"; sourceTree = ""; }; + 480D43633F8D604BCC70A3AED00509EB /* MetaWear-AsyncUtils-Core-UI-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-UI-tvOS.debug.xcconfig"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.debug.xcconfig"; sourceTree = ""; }; + 4817A1760DAC2F13567CC1326F7608BF /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = BoltsSwift.framework; path = "Bolts-Swift-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 4821C5ECED4C42454F1906EB1AB599A1 /* gyro.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = gyro.doctree; path = Docs/build/doctrees/gyro.doctree; sourceTree = ""; }; + 4885CEB6BA0EF397973C461A3C2CF385 /* Pods_MetaWear_MetaWear_macOS_MetaWearIntegrationTestHost_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWear_MetaWear_macOS_MetaWearIntegrationTestHost_macOS.framework; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 48D266E399A4AD8C456953D262CD9B0E /* dfu_operations.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_operations.cpp; sourceTree = ""; }; + 48F8F2BDEC18CA3064EA81017692099B /* humidity.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = humidity.doctree; path = Docs/build/doctrees/humidity.doctree; sourceTree = ""; }; + 497A3D8D030881DB6CB6B5B326C990C0 /* language_data.js */ = {isa = PBXFileReference; includeInIndex = 1; name = language_data.js; path = Docs/build/html/_static/language_data.js; sourceTree = ""; }; + 4AA1701D1A0307E77BEFC6CE5848A6A2 /* advanced_features.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = advanced_features.doctree; path = Docs/build/doctrees/advanced_features.doctree; sourceTree = ""; }; + 4B0F720B27CAD8659810EDA5A6C35DA9 /* ambientlightsensor.html */ = {isa = PBXFileReference; includeInIndex = 1; name = ambientlightsensor.html; path = Docs/build/html/ambientlightsensor.html; sourceTree = ""; }; + 4B2223E12D44FB73DAB5D6F7891EF8E5 /* core_modules.html */ = {isa = PBXFileReference; includeInIndex = 1; name = core_modules.html; path = Docs/build/html/core_modules.html; sourceTree = ""; }; 4E247C10432A5C6B95A2AE5F2AE6D8A7 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS.modulemap"; sourceTree = ""; }; - 500B033E617D7BC5C64253A3BBBB085A /* searchindex.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = searchindex.js; path = Docs/build/html/searchindex.js; sourceTree = ""; }; - 5085158E9696265C1D84D5AED1A69B20 /* genindex.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = genindex.html; path = Docs/build/html/genindex.html; sourceTree = ""; }; - 508B72A1332DB45B29517F8C078A5B9F /* accelerometer_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer_bosch.cpp; sourceTree = ""; }; - 50B59F59DDFF8BB73F22F4DE89235858 /* Pods_MetaWear_MetaWear_tvOS_MetaWearIntegrationTestHost_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWear_MetaWear_tvOS_MetaWearIntegrationTestHost_tvOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 4E9A83075A09FD9BDE74BE1E67C5A7B2 /* MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch"; sourceTree = ""; }; + 501284F1E104D14C18436A424A19E883 /* jquery.js */ = {isa = PBXFileReference; includeInIndex = 1; name = jquery.js; path = Docs/build/html/_static/jquery.js; sourceTree = ""; }; + 50692CB646BDCD767666CDE52F27C1B5 /* gyro.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = gyro.rst.txt; path = Docs/build/html/_sources/gyro.rst.txt; sourceTree = ""; }; + 50B59F59DDFF8BB73F22F4DE89235858 /* Pods_MetaWear_MetaWear_tvOS_MetaWearIntegrationTestHost_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWear_MetaWear_tvOS_MetaWearIntegrationTestHost_tvOS.framework; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 51189966EA72E1BB869E16AD41078072 /* file.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = file.png; path = Docs/build/html/_static/file.png; sourceTree = ""; }; + 514460527B164C2C158F0F4C80FD9A7C /* accelerometer.html */ = {isa = PBXFileReference; includeInIndex = 1; name = accelerometer.html; path = Docs/build/html/accelerometer.html; sourceTree = ""; }; + 520A92BC8C90DCB592994BC47170F913 /* humidity.html */ = {isa = PBXFileReference; includeInIndex = 1; name = humidity.html; path = Docs/build/html/humidity.html; sourceTree = ""; }; + 52FAF418AD94109385FA1D3AC0AFCD2B /* plus.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = plus.png; path = Docs/build/html/_static/plus.png; sourceTree = ""; }; + 548D0D8C70C6E8B79D50BD75D74ACBFA /* timer.html */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.html; path = Docs/build/html/timer.html; sourceTree = ""; }; 557CC9311371072DE27F296FFA82ADB3 /* Bolts-Swift-macOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-macOS-prefix.pch"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS-prefix.pch"; sourceTree = ""; }; - 560F38EC88DBD603FFFF8C2824D54F7D /* Pods_MetaWearIntegrationTests_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWearIntegrationTests_tvOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 574830202B9AAC242B41646372312E88 /* lato-bolditalic.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bolditalic.woff2"; path = "Docs/build/html/_static/fonts/Lato/lato-bolditalic.woff2"; sourceTree = ""; }; + 560F38EC88DBD603FFFF8C2824D54F7D /* Pods_MetaWearIntegrationTests_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWearIntegrationTests_tvOS.framework; path = "Pods-MetaWearIntegrationTests-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 5662EC03B5572F934B93D68A89840281 /* LICENSE.md */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE.md; sourceTree = ""; }; + 57460BDA6ED4060B16C109DBB0C06D17 /* minus.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = minus.png; path = Docs/build/html/_static/minus.png; sourceTree = ""; }; 57E06254CA848BA44D929B9100D93F9C /* Archive.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Archive.swift; path = Sources/ZIPFoundation/Archive.swift; sourceTree = ""; }; - 57F46DC0408512A02AB13A4D00146BDF /* lato-bolditalic.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bolditalic.ttf"; path = "Docs/build/html/_static/fonts/Lato/lato-bolditalic.ttf"; sourceTree = ""; }; + 58071458C3E37173B5E9FB77B0B402B6 /* gpio.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = gpio.rst.txt; path = Docs/build/html/_sources/gpio.rst.txt; sourceTree = ""; }; 597BB4FDABFB4BEA9A3862A562CED887 /* ZIPFoundation-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "ZIPFoundation-macOS.debug.xcconfig"; path = "../ZIPFoundation-macOS/ZIPFoundation-macOS.debug.xcconfig"; sourceTree = ""; }; - 5AE6AD7941189A82EF88895867E33CEB /* accelerometer_mma8452q.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer_mma8452q.cpp; sourceTree = ""; }; + 5AC5DFA72F02AB91382E962E3A359F7A /* fontawesome-webfont.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.woff2"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.woff2"; sourceTree = ""; }; 5AE8742872C84BB77BE446ECCB5F2089 /* IntelHex2BinConverter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IntelHex2BinConverter.swift; path = iOSDFULibrary/Classes/Utilities/HexToBinConverter/IntelHex2BinConverter.swift; sourceTree = ""; }; 5B4AB69038A39EEC97BC88ED51E3ACDB /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.debug.xcconfig"; sourceTree = ""; }; - 5B7F9023B4DC197F8BE7CC42D8EA0C9D /* roboto-slab-v7-bold.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "roboto-slab-v7-bold.woff2"; path = "Docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2"; sourceTree = ""; }; 5BD2DBCCF615B8BBB6F900E4540C8EF5 /* LoggerDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LoggerDelegate.swift; path = iOSDFULibrary/Classes/Utilities/Logging/LoggerDelegate.swift; sourceTree = ""; }; 5C22E154342A29296540C960F791BBC0 /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-acknowledgements.markdown"; sourceTree = ""; }; - 5DF7F41EDEF372E6249CFB9EC582A549 /* fontawesome-webfont.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "fontawesome-webfont.woff"; path = "Docs/build/html/_static/fonts/fontawesome-webfont.woff"; sourceTree = ""; }; - 5F1EF697E085057B51DFEF7D8FE26178 /* lato-italic.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-italic.woff2"; path = "Docs/build/html/_static/fonts/Lato/lato-italic.woff2"; sourceTree = ""; }; + 5CDF0BF0876C2225488C3E38AF10B72A /* metawearscanner.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearscanner.doctree; path = Docs/build/doctrees/metawearscanner.doctree; sourceTree = ""; }; + 5DB5789E22EE88A6BFC93CA12B1FD2C6 /* jquery-3.5.1.js */ = {isa = PBXFileReference; includeInIndex = 1; name = "jquery-3.5.1.js"; path = "Docs/build/html/_static/jquery-3.5.1.js"; sourceTree = ""; }; + 5F6357DB75F21135B725219F131B8F8B /* utils.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = utils.cpp; sourceTree = ""; }; + 5F88F3C950B2435CD21FD23C8D341C23 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h"; sourceTree = ""; }; 5FD25505429CF7363965185D3FDC0B8B /* ZIPFoundation-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "ZIPFoundation-iOS-dummy.m"; sourceTree = ""; }; 6067A156E323544E0A4766030061A5B2 /* Entry.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Entry.swift; path = Sources/ZIPFoundation/Entry.swift; sourceTree = ""; }; 60BEE52C89C924410FA20A8C8FDEFDA7 /* FileManager+ZIP.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "FileManager+ZIP.swift"; path = "Sources/ZIPFoundation/FileManager+ZIP.swift"; sourceTree = ""; }; + 60E262EDBD11C805D5B628157982C484 /* MblMwEvent+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MblMwEvent+Async.swift"; path = "MetaWear/AsyncUtils/MblMwEvent+Async.swift"; sourceTree = ""; }; + 61374778F4B640C23FAAD145DB6958F2 /* MetaWearScanner.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWearScanner.swift; sourceTree = ""; }; 6271165BB2AE86465A9943D2EF112D11 /* DFUControlPoint.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUControlPoint.swift; path = iOSDFULibrary/Classes/Implementation/LegacyDFU/Characteristics/DFUControlPoint.swift; sourceTree = ""; }; - 628908291910B17BE8A3DC6FD29A7CF9 /* memory.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = memory.cpp; sourceTree = ""; }; - 62ADBF1A253BFDC62623319DA3174DCC /* conductance.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = conductance.cpp; sourceTree = ""; }; 63054630F91FFCD9A2020927E552B534 /* Data.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Data.swift; path = iOSDFULibrary/Classes/Utilities/Data.swift; sourceTree = ""; }; 631135C66E00C37097164C7288D9F606 /* iOSDFULibrary-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "iOSDFULibrary-iOS.modulemap"; sourceTree = ""; }; 633834F9772E6C85C49F77052241B97F /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-umbrella.h"; sourceTree = ""; }; + 633D81E45903968FFC677683B3A3F959 /* settings.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.doctree; path = Docs/build/doctrees/settings.doctree; sourceTree = ""; }; 63637A0110ACD81470E07A8160E1A6BC /* CoreBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreBluetooth.framework; path = Platforms/WatchOS.platform/Developer/SDKs/WatchOS7.0.sdk/System/Library/Frameworks/CoreBluetooth.framework; sourceTree = DEVELOPER_DIR; }; - 63E047A1DC9EE228ED5E52B30A389DDD /* searchtools.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = searchtools.js; path = Docs/build/html/_static/searchtools.js; sourceTree = ""; }; + 63DB63974E1D8A4DE90926A7EC7E85F6 /* haptic.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = haptic.rst.txt; path = Docs/build/html/_sources/haptic.rst.txt; sourceTree = ""; }; 63E0C68FB96F88E28D9871C8FB7C1C98 /* Archive+Writing.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Archive+Writing.swift"; path = "Sources/ZIPFoundation/Archive+Writing.swift"; sourceTree = ""; }; 63F893AF4ECF8B17198E585DCD8FB233 /* LegacyDFUServiceInitiator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LegacyDFUServiceInitiator.swift; path = iOSDFULibrary/Classes/Implementation/LegacyDFU/DFU/LegacyDFUServiceInitiator.swift; sourceTree = ""; }; 65173B28ED6AD2FE12AFE7E956FFBFC2 /* ZIPFoundation-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ZIPFoundation-iOS-prefix.pch"; sourceTree = ""; }; 654DCE21AC89C0F9F341E40F45A4305E /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-Info.plist"; sourceTree = ""; }; - 65E49A98A3EDBAFEEE8484F383ADF20C /* fontawesome-webfont.svg */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xml; name = "fontawesome-webfont.svg"; path = "Docs/build/html/_static/fonts/fontawesome-webfont.svg"; sourceTree = ""; }; + 658733D97A210807EE17BB34B195AE8D /* cppbridge.html */ = {isa = PBXFileReference; includeInIndex = 1; name = cppbridge.html; path = Docs/build/html/cppbridge.html; sourceTree = ""; }; + 65A2066632648F45012E132A371FDFEA /* MetaWear.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = MetaWear.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; 65F2AB5D288A5BC41E69EFE924EE0C37 /* DFUStarterPeripheral.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUStarterPeripheral.swift; path = iOSDFULibrary/Classes/Implementation/DFUSelector/DFUStarterPeripheral.swift; sourceTree = ""; }; + 6699D0CB02E787285C092BE4A823805C /* gpio.html */ = {isa = PBXFileReference; includeInIndex = 1; name = gpio.html; path = Docs/build/html/gpio.html; sourceTree = ""; }; 672B2D7A0E34DC6D036DB37FB6B0B04B /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-acknowledgements.plist"; sourceTree = ""; }; - 6815A76152D2B6E658D68110E116BF9A /* datasignal.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = datasignal.cpp; sourceTree = ""; }; - 6882BE967AA96319C1FDCEF8A43A9D96 /* Pods_MetaWearIntegrationTests_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWearIntegrationTests_iOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 672DB1967DAC409A8FA6A8594D4D5E1A /* MetaWear-AsyncUtils-Core-UI-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MetaWear-AsyncUtils-Core-UI-tvOS.modulemap"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.modulemap"; sourceTree = ""; }; + 67A38240C2F6AB3D988103B06FDA2E56 /* lato-bold-italic.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-bold-italic.woff"; path = "Docs/build/html/_static/css/fonts/lato-bold-italic.woff"; sourceTree = ""; }; + 687FF210AC568843A9F8C1CDA491ECC7 /* metawearboard.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = metawearboard.cpp; sourceTree = ""; }; + 6882BE967AA96319C1FDCEF8A43A9D96 /* Pods_MetaWearIntegrationTests_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWearIntegrationTests_iOS.framework; path = "Pods-MetaWearIntegrationTests-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; 692329CE0A9A63D15123D684C9F2AA34 /* SoftdeviceBootloaderInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SoftdeviceBootloaderInfo.swift; path = iOSDFULibrary/Classes/Utilities/DFUPackage/Manifest/SoftdeviceBootloaderInfo.swift; sourceTree = ""; }; - 6948E117F8C4ABF920FD4BD166D6F08B /* gyro_bmi160.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = gyro_bmi160.cpp; sourceTree = ""; }; - 69C4F4120F41A0168DBD214ADBC03CDB /* Inconsolata-Regular.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "Inconsolata-Regular.ttf"; path = "Docs/build/html/_static/fonts/Inconsolata-Regular.ttf"; sourceTree = ""; }; - 6A2CF8242C6BEA5AE65A948C455204BD /* file.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = file.png; path = Docs/build/html/_static/file.png; sourceTree = ""; }; - 6A33FF544CA30169E9B6900CC8263EBE /* utils.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = utils.cpp; sourceTree = ""; }; - 6B77EF08F13EE5488ED0BC7FE51224BA /* index.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = index.rst.txt; path = Docs/build/html/_sources/index.rst.txt; sourceTree = ""; }; - 6B91C3B3123AB2E3A23111FCEB9CC1B9 /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h"; sourceTree = ""; }; - 6BCFD5EC59A041BE47D94C79D15215C9 /* CBUUID.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CBUUID.swift; sourceTree = ""; }; - 6BFEE138BC7A89EF1FBCEAA81ECDB61D /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MetaWear.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 6B9EDE710F3548E412213762FDCADC66 /* lato-bold.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-bold.woff2"; path = "Docs/build/html/_static/css/fonts/lato-bold.woff2"; sourceTree = ""; }; + 6BBCB51C4982A10638899AD215F08324 /* html5shiv-printshiv.min.js */ = {isa = PBXFileReference; includeInIndex = 1; name = "html5shiv-printshiv.min.js"; path = "Docs/build/html/_static/js/html5shiv-printshiv.min.js"; sourceTree = ""; }; + 6BFEE138BC7A89EF1FBCEAA81ECDB61D /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MetaWear.framework; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; 6CAACF692341F5E4F9F6BAB7580C4D25 /* Bolts-Swift-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "Bolts-Swift-tvOS.modulemap"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS.modulemap"; sourceTree = ""; }; - 6D32FFCCAB39D19A608CE7C0E7553D32 /* theme.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = theme.js; path = Docs/build/html/_static/js/theme.js; sourceTree = ""; }; - 6DA467E97C62CCFB52F57139A0BFB80A /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; }; - 6E0788A0D08E6334F10AC94743953174 /* underscore-1.3.1.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = "underscore-1.3.1.js"; path = "Docs/build/html/_static/underscore-1.3.1.js"; sourceTree = ""; }; + 6CB6950BDD7E3014E744A1D82DCD7D8F /* ScannerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScannerModel.swift; path = MetaWear/UI/ScannerModel.swift; sourceTree = ""; }; 6EE9B4B804B5A82BC67B27E62E4E47BC /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-umbrella.h"; sourceTree = ""; }; 707BD7956532BB56B82F2E086BAA65B6 /* Bolts-Swift-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-macOS.release.xcconfig"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS.release.xcconfig"; sourceTree = ""; }; - 7186CA92E6615BDC8A925FE560577AFA /* iOSDFULibrary.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = iOSDFULibrary.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 718CD83F2538F19D7AA7C502D7DC6D80 /* lato-italic.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-italic.ttf"; path = "Docs/build/html/_static/fonts/Lato/lato-italic.ttf"; sourceTree = ""; }; - 718E68D5B9B0F507C9C5DAB63E0926F4 /* MetaWear+Firmware.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+Firmware.swift"; path = "MetaWear/DFU/MetaWear+Firmware.swift"; sourceTree = ""; }; + 70DF358FE7A2143E5B4227575929C6B2 /* MetaWear-AsyncUtils-Core-UI-watchOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MetaWear-AsyncUtils-Core-UI-watchOS.modulemap"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.modulemap"; sourceTree = ""; }; + 70F6B686369511CDB37017E366F11DFA /* dfu_operations_details.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_operations_details.cpp; sourceTree = ""; }; + 7186CA92E6615BDC8A925FE560577AFA /* iOSDFULibrary.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = iOSDFULibrary.framework; path = "iOSDFULibrary-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; 71F5F864C4982BC76607079C311ADC9F /* Pods-MetaWearIntegrationTests-iOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWearIntegrationTests-iOS-acknowledgements.plist"; sourceTree = ""; }; + 72928F4CC81798BC3C646D23CA73DF97 /* magnetometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = magnetometer.doctree; path = Docs/build/doctrees/magnetometer.doctree; sourceTree = ""; }; 73382012C258EBFE88507E82E856CFED /* Pods-MetaWearIntegrationTests-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWearIntegrationTests-tvOS-Info.plist"; sourceTree = ""; }; - 744C574986A6E5F66BD0D268A667940D /* MetaWear-AsyncUtils-Core-UI-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-UI-tvOS.debug.xcconfig"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.debug.xcconfig"; sourceTree = ""; }; - 74DAFBB11CC0ED64F684442DF9A92D93 /* environment.pickle */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = environment.pickle; path = Docs/build/doctrees/environment.pickle; sourceTree = ""; }; - 7554CB696AFCB1FCF3D72C650561A2D9 /* fontawesome-webfont.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "fontawesome-webfont.ttf"; path = "Docs/build/html/_static/fonts/fontawesome-webfont.ttf"; sourceTree = ""; }; - 7630F0709266D733990F496E97069A68 /* ScannerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScannerModel.swift; path = MetaWear/UI/ScannerModel.swift; sourceTree = ""; }; - 76C3E554372F6AEEBBE928C44B40BC23 /* Inconsolata-Bold.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "Inconsolata-Bold.ttf"; path = "Docs/build/html/_static/fonts/Inconsolata-Bold.ttf"; sourceTree = ""; }; - 77114046A4A3FE14DB1472E7AF34ECE0 /* MetaWear-AsyncUtils-Core-UI-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-UI-tvOS.release.xcconfig"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.release.xcconfig"; sourceTree = ""; }; + 73948BE2C0569FB3BF68F6A4A189B95F /* neopixel.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = neopixel.cpp; sourceTree = ""; }; + 741F76A53255EB4BC0727D609E6089B9 /* macro.html */ = {isa = PBXFileReference; includeInIndex = 1; name = macro.html; path = Docs/build/html/macro.html; sourceTree = ""; }; + 74F43548816C5AB91261972E941D884F /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + 75DED9099614D8712B0635C463327671 /* spi.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = spi.rst; path = Docs/source/spi.rst; sourceTree = ""; }; 7728E7D9EBAE97ECA45528D9287757A0 /* iOSDFULibrary-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "iOSDFULibrary-iOS.release.xcconfig"; sourceTree = ""; }; 7769AC997032271E069339B687955653 /* Bolts-Swift-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Bolts-Swift-iOS-Info.plist"; sourceTree = ""; }; 7846879128A8BE11B689442278929DB2 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.modulemap"; sourceTree = ""; }; 78CD9B634A9BABA2318BE06485DDB6AF /* Task+ContinueWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Task+ContinueWith.swift"; path = "Sources/BoltsSwift/Task+ContinueWith.swift"; sourceTree = ""; }; + 79039E935AA8A9170F0A2AA8C3F03298 /* common.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = common.cpp; sourceTree = ""; }; 7913C1B823CE0F965DA62F0491D4EC8A /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-acknowledgements.markdown"; sourceTree = ""; }; 7A07AA9738C8E78AB4FEDF17BE7E0B36 /* iOSDFULibrary-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "iOSDFULibrary-iOS-dummy.m"; sourceTree = ""; }; 7A61E82795569E9BA7E8CC6376F61A26 /* LegacyDFUExecutor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LegacyDFUExecutor.swift; path = iOSDFULibrary/Classes/Implementation/LegacyDFU/DFU/LegacyDFUExecutor.swift; sourceTree = ""; }; 7A6B9FEEAA92367CFC5CD79E0FCAF8B2 /* Bolts-Swift-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-tvOS.debug.xcconfig"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS.debug.xcconfig"; sourceTree = ""; }; - 7AFE92FE57921F58A90B67AE1892F450 /* fontawesome-webfont.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "fontawesome-webfont.woff2"; path = "Docs/build/html/_static/fonts/fontawesome-webfont.woff2"; sourceTree = ""; }; - 7B8D3D8E73DE294535A22E4052635474 /* MblMwEvent+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MblMwEvent+Async.swift"; path = "MetaWear/AsyncUtils/MblMwEvent+Async.swift"; sourceTree = ""; }; + 7ADBB8E2ADA5627BE9240BCE2E1E4F1D /* datasignal.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = datasignal.rst; path = Docs/source/datasignal.rst; sourceTree = ""; }; + 7AE36CBB6092A9591700292C286683A3 /* project.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = project.doctree; path = Docs/build/doctrees/project.doctree; sourceTree = ""; }; + 7BD4CEEA8B02382D430964158161A432 /* peripherals.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = peripherals.rst.txt; path = Docs/build/html/_sources/peripherals.rst.txt; sourceTree = ""; }; 7C569DCC32CA7024AF9A2AF738BDBAE1 /* ZIPFoundation-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "ZIPFoundation-iOS.modulemap"; sourceTree = ""; }; 7CBCC60DB47689C9DF8BDC32C9BD5D30 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-acknowledgements.markdown"; sourceTree = ""; }; - 7D94C1FAB02FB40820981C7A49B5E7FE /* lato-italic.eot */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-italic.eot"; path = "Docs/build/html/_static/fonts/Lato/lato-italic.eot"; sourceTree = ""; }; + 7CF37884298133CBFBC43F4FEFD1F96F /* lato-normal.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-normal.woff2"; path = "Docs/build/html/_static/css/fonts/lato-normal.woff2"; sourceTree = ""; }; + 7D53C4762331E313543557FEEFC58092 /* MetaWear-AsyncUtils-Core-UI-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-UI-tvOS.release.xcconfig"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.release.xcconfig"; sourceTree = ""; }; 7E7516D67300A5AC3B8C3943326CEECF /* Bolts-Swift-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "Bolts-Swift-tvOS-Info.plist"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS-Info.plist"; sourceTree = ""; }; 7EC78867C7F5C1F8A875A7FB1CEB8BB0 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS.release.xcconfig"; sourceTree = ""; }; 7ECD3097C2FDB03555157378AE408FC1 /* DFUService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUService.swift; path = iOSDFULibrary/Classes/Implementation/GenericDFU/DFUService.swift; sourceTree = ""; }; + 7EFA8928A7D73201A6861C54687033CC /* basic.css */ = {isa = PBXFileReference; includeInIndex = 1; name = basic.css; path = Docs/build/html/_static/basic.css; sourceTree = ""; }; 7F692F934DEDB660C6698A9485AA4F76 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.release.xcconfig"; sourceTree = ""; }; - 802624AF8E1531E08BCA4B5CB33A1E45 /* lato-bold.eot */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bold.eot"; path = "Docs/build/html/_static/fonts/Lato/lato-bold.eot"; sourceTree = ""; }; 804F804E9F5EF675B36052B75A24FEBA /* DFUServiceSelector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUServiceSelector.swift; path = iOSDFULibrary/Classes/Implementation/DFUSelector/DFUServiceSelector.swift; sourceTree = ""; }; - 83B812187337366BA2C0FEBBCCFBB5E7 /* Pods_MetaWear_MetaWear_tvOS_MetaWearUnitTests_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWear_MetaWear_tvOS_MetaWearUnitTests_tvOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 84595EA72B446FDF423987A80F1CABB5 /* FirmwareServer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FirmwareServer.swift; path = MetaWear/DFU/FirmwareServer.swift; sourceTree = ""; }; + 80C496E7C90E9994CC0590530ADB9D9C /* FirmwareServer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FirmwareServer.swift; path = MetaWear/DFU/FirmwareServer.swift; sourceTree = ""; }; + 81339F75DCE72B5AE681B25A8DB18914 /* magnetometer.html */ = {isa = PBXFileReference; includeInIndex = 1; name = magnetometer.html; path = Docs/build/html/magnetometer.html; sourceTree = ""; }; + 814C461CEADC4525DC008CBFD193DC1F /* underscore.js */ = {isa = PBXFileReference; includeInIndex = 1; name = underscore.js; path = Docs/build/html/_static/underscore.js; sourceTree = ""; }; + 8238F7B09D7BE1CEAF69B873EC0D0393 /* ibeacon.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = ibeacon.doctree; path = Docs/build/doctrees/ibeacon.doctree; sourceTree = ""; }; + 827E9F987EB8540D345C89BCCF2B194C /* proximity_tsl2671.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = proximity_tsl2671.cpp; sourceTree = ""; }; + 82D6BB676A3452CF143E065E861A4B89 /* CBUUID.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CBUUID.swift; sourceTree = ""; }; + 8360F1633C74840A0D782F57C0CA2FBE /* metawearscanner.html */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearscanner.html; path = Docs/build/html/metawearscanner.html; sourceTree = ""; }; + 83B812187337366BA2C0FEBBCCFBB5E7 /* Pods_MetaWear_MetaWear_tvOS_MetaWearUnitTests_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWear_MetaWear_tvOS_MetaWearUnitTests_tvOS.framework; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 84678036820087139307A0D5A9DD0AEF /* logger.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = logger.doctree; path = Docs/build/doctrees/logger.doctree; sourceTree = ""; }; 8482F9546AEBA3CC01ADA5A949FAD144 /* Data+Compression.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Data+Compression.swift"; path = "Sources/ZIPFoundation/Data+Compression.swift"; sourceTree = ""; }; 84E03BFBB984132CE3A62BD704AD87DA /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-frameworks.sh"; sourceTree = ""; }; - 8550956DE23274B90A98C0D657C2B4BE /* badge_only.css */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.css; name = badge_only.css; path = Docs/build/html/_static/css/badge_only.css; sourceTree = ""; }; - 870B494DE6F84AE00A63B3AAB734B3EC /* doctools.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = doctools.js; path = Docs/build/html/_static/doctools.js; sourceTree = ""; }; - 87859CACBA3B3EAD7779E437E2108045 /* datainterpreter.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = datainterpreter.cpp; sourceTree = ""; }; + 869157F2C8657463A638538E4A4D4542 /* ibeacon.html */ = {isa = PBXFileReference; includeInIndex = 1; name = ibeacon.html; path = Docs/build/html/ibeacon.html; sourceTree = ""; }; + 871C3E184118A1C65B2DAEAA3016D788 /* threadpool.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = threadpool.cpp; sourceTree = ""; }; 88D9DEE679B18E5C458D4795D10E1890 /* Task+WhenAny.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Task+WhenAny.swift"; path = "Sources/BoltsSwift/Task+WhenAny.swift"; sourceTree = ""; }; 8940A499B23F205CC27EDBA8204CED90 /* ZIPFoundation-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "ZIPFoundation-macOS.release.xcconfig"; path = "../ZIPFoundation-macOS/ZIPFoundation-macOS.release.xcconfig"; sourceTree = ""; }; 8A01E47CCFD3D4C5FE06847E2E757638 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-frameworks.sh"; sourceTree = ""; }; 8A925FEACFBE227CEDCF7149D4EF12F9 /* SecureDFUPacket.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SecureDFUPacket.swift; path = iOSDFULibrary/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift; sourceTree = ""; }; + 8AA20D9BF6393C428E6E50D1E08642CF /* index.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = index.rst; path = Docs/source/index.rst; sourceTree = ""; }; 8AA5ADF22289EA5AB17FE593C7F71A66 /* Bolts-Swift-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-tvOS-umbrella.h"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS-umbrella.h"; sourceTree = ""; }; + 8BFD6B2E301BA8ACDC2D3BCD0E758C1D /* dfu_utility.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_utility.cpp; sourceTree = ""; }; 8C89F32D45B17F47A3F719DD83C1A8AD /* iOSDFULibrary-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "iOSDFULibrary-macOS.modulemap"; path = "../iOSDFULibrary-macOS/iOSDFULibrary-macOS.modulemap"; sourceTree = ""; }; - 8CABA87F84CCA806629497A2FA68E5AD /* MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist"; sourceTree = ""; }; 8D17966E7C661CDB7AF17155D537360E /* Bolts-Swift-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Bolts-Swift-tvOS-dummy.m"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS-dummy.m"; sourceTree = ""; }; + 8D3652B146CA2A7F874401124545A2F0 /* doctools.js */ = {isa = PBXFileReference; includeInIndex = 1; name = doctools.js; path = Docs/build/html/_static/doctools.js; sourceTree = ""; }; + 8DE8452EC12E2741702A570A088DEAC7 /* conf.py */ = {isa = PBXFileReference; includeInIndex = 1; name = conf.py; path = Docs/source/conf.py; sourceTree = ""; }; 8E83FA47CA9F4A746A08313BB59BC889 /* DFUController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUController.swift; path = iOSDFULibrary/Classes/Implementation/GenericDFU/DFUController.swift; sourceTree = ""; }; - 8F73760084FBD03CCEF6CFF50D15C3D2 /* MetaWear-AsyncUtils-Core-UI-watchOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-UI-watchOS.release.xcconfig"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.release.xcconfig"; sourceTree = ""; }; 8F7724217436B9FE484B879ACC362C63 /* Pods-MetaWearIntegrationTests-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWearIntegrationTests-iOS-dummy.m"; sourceTree = ""; }; 9030F92CAA3CC18008C7AE0477355CDD /* iOSDFULibrary-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "iOSDFULibrary-iOS-umbrella.h"; sourceTree = ""; }; 910DB833579EEEB4A5DFC605DEEAD46E /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.debug.xcconfig"; sourceTree = ""; }; + 9138B3C087F2809AADC4A5C030F4518C /* temperature.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = temperature.rst.txt; path = Docs/build/html/_sources/temperature.rst.txt; sourceTree = ""; }; + 917DB45A8FEE7B728716F772FBF8E126 /* logging.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.rst.txt; path = Docs/build/html/_sources/logging.rst.txt; sourceTree = ""; }; + 91FE19D118211B202B45011055DBB4D7 /* accelerometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = accelerometer.rst.txt; path = Docs/build/html/_sources/accelerometer.rst.txt; sourceTree = ""; }; 920B7554281F1A16BF53CD2B6B7089FD /* DFUPeripheralDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUPeripheralDelegate.swift; path = iOSDFULibrary/Classes/Implementation/GenericDFU/DFUPeripheralDelegate.swift; sourceTree = ""; }; + 92A6AEE6F244210ACF8B60C22AFA8B6C /* memory.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = memory.cpp; sourceTree = ""; }; 933DBB0AE7312AE2E8CA02E963642898 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-acknowledgements.plist"; sourceTree = ""; }; + 935D1394AE639E8F00BE3081913443F7 /* accelerometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = accelerometer.rst; path = Docs/source/accelerometer.rst; sourceTree = ""; }; + 944953FB01FBE8D198344E47AFF13C77 /* project.html */ = {isa = PBXFileReference; includeInIndex = 1; name = project.html; path = Docs/build/html/project.html; sourceTree = ""; }; 9481942C645F5AF023E048963705B7E7 /* CoreBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreBluetooth.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/CoreBluetooth.framework; sourceTree = DEVELOPER_DIR; }; - 96C187B8B764C5AEB4EC2F301BBE940B /* haptic.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = haptic.cpp; sourceTree = ""; }; - 97153EF2ACDF91237C9A2C16FAAE9C1D /* metawearscanner.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = metawearscanner.rst.txt; path = Docs/build/html/_sources/metawearscanner.rst.txt; sourceTree = ""; }; + 95AD9E24CD1B164E8D6D3A8B3C8A45EF /* timer.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.rst; path = Docs/source/timer.rst; sourceTree = ""; }; 97C51E97CF16960547680A71A8496785 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS.debug.xcconfig"; sourceTree = ""; }; + 97D05E467C307ABB9635B28110FA349E /* advanced_features.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = advanced_features.rst; path = Docs/source/advanced_features.rst; sourceTree = ""; }; + 97D77859A95F9FF7EF1BDB0F7A1068ED /* project.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = project.rst.txt; path = Docs/build/html/_sources/project.rst.txt; sourceTree = ""; }; 97F1DCCFC14B7947C5099612BEE5C8C1 /* Pods-MetaWearIntegrationTests-tvOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWearIntegrationTests-tvOS-acknowledgements.markdown"; sourceTree = ""; }; - 987F4CFE622139EC278269C11A1070A2 /* led.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = led.cpp; sourceTree = ""; }; - 98B715897ED0B62BCB3F2FF2CC2F5E4E /* Makefile */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.make; name = Makefile; path = Docs/Makefile; sourceTree = ""; }; 98F7AF2CE23CC1930AC18ED6BAA3A177 /* ZIPFoundation-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "ZIPFoundation-iOS.release.xcconfig"; sourceTree = ""; }; 998509386935A1962593008EF42F79F9 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-umbrella.h"; sourceTree = ""; }; 9AFE0686F81066118B61F4F390340CB1 /* DFUVersion.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUVersion.swift; path = iOSDFULibrary/Classes/Implementation/LegacyDFU/Characteristics/DFUVersion.swift; sourceTree = ""; }; - 9B8FC7C2272DC23B97564CF4692CB4C3 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h"; sourceTree = ""; }; 9B955A6106805E43023472610E0D7DCE /* Pods-MetaWearIntegrationTests-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWearIntegrationTests-macOS.debug.xcconfig"; sourceTree = ""; }; - 9BC1F246F7EF310C62A17B761E63BACE /* ZIPFoundation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ZIPFoundation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 9BC1F246F7EF310C62A17B761E63BACE /* ZIPFoundation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = ZIPFoundation.framework; path = "ZIPFoundation-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; 9BF181820020E2FCF8951F8775EE9150 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-dummy.m"; sourceTree = ""; }; + 9D33E3506F1148C04329908970491D35 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h"; sourceTree = ""; }; 9D35F2A88DC0477C6B52780CE08C435D /* ZIPFoundation-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "ZIPFoundation-macOS-umbrella.h"; path = "../ZIPFoundation-macOS/ZIPFoundation-macOS-umbrella.h"; sourceTree = ""; }; - 9D91C5DF9A4246540D7A29F032A7873E /* metawearscanner.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = metawearscanner.html; path = Docs/build/html/metawearscanner.html; sourceTree = ""; }; - 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; 9DB01C7B4CE59D18C6D04EB428451795 /* DFUFirmware.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUFirmware.swift; path = iOSDFULibrary/Classes/Implementation/Firmware/DFUFirmware.swift; sourceTree = ""; }; - 9DB9ACC7A563D660A2B7C97BFDCAAF06 /* metawearscanner.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = metawearscanner.rst; path = Docs/source/metawearscanner.rst; sourceTree = ""; }; - 9E7547F332C36731C98EE5EB9132D405 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap"; sourceTree = ""; }; - 9EF83BCCEFAE08B31095A9B245E76A58 /* ZIPFoundation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ZIPFoundation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 9F0F46F4797EDE9ACBCC6734FBB4699A /* dfu_operations.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_operations.cpp; sourceTree = ""; }; + 9E0362A7CDF8C01C9D967F8417265F7C /* timer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = timer.cpp; sourceTree = ""; }; + 9E7D6F9807103C2CE80B3165286C6ED0 /* dataprocessor.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dataprocessor.cpp; sourceTree = ""; }; + 9EF83BCCEFAE08B31095A9B245E76A58 /* ZIPFoundation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = ZIPFoundation.framework; path = "ZIPFoundation-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; 9F7BDCC0DDB58CBFC744204A18B335BA /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-frameworks.sh"; sourceTree = ""; }; + 9F800835A6F77B0E3045D698A12979F1 /* MetaWear-AsyncUtils-Core-UI-watchOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-UI-watchOS.debug.xcconfig"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.debug.xcconfig"; sourceTree = ""; }; A01FADE8176233701717C48A086CF801 /* Bolts-Swift-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Bolts-Swift-iOS-prefix.pch"; sourceTree = ""; }; - A245C5D0AA47340FD2954B4AA314C11C /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.debug.xcconfig"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.debug.xcconfig"; sourceTree = ""; }; A26C1C50C1866FDC9FA4437D526F6038 /* DFUPeripheralSelectorDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUPeripheralSelectorDelegate.swift; path = iOSDFULibrary/Classes/Implementation/DFUPeripheralSelectorDelegate.swift; sourceTree = ""; }; A27370D863F0F27023F575D449AFBB9A /* SecureDFUPeripheral.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SecureDFUPeripheral.swift; path = iOSDFULibrary/Classes/Implementation/SecureDFU/Peripheral/SecureDFUPeripheral.swift; sourceTree = ""; }; - A3932A0E4D8A7E610C888E51B1A2166B /* MockModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MockModule.swift; path = MetaWear/Mocks/MockModule.swift; sourceTree = ""; }; A3FAF8D54517745664357BCB15561320 /* Bolts-Swift-watchOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Bolts-Swift-watchOS-dummy.m"; path = "../Bolts-Swift-watchOS/Bolts-Swift-watchOS-dummy.m"; sourceTree = ""; }; A4E0213149863042429885F1816E57F1 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-dummy.m"; sourceTree = ""; }; A4E3A2856DD2DE3A50333624C5B9C228 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-acknowledgements.markdown"; sourceTree = ""; }; A5057174F707642422A495ABC81A5E39 /* Pods-MetaWearIntegrationTests-macOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWearIntegrationTests-macOS-acknowledgements.markdown"; sourceTree = ""; }; A5A0D8FB52AF6316B11FB61560858335 /* DFUPeripheral.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUPeripheral.swift; path = iOSDFULibrary/Classes/Implementation/GenericDFU/DFUPeripheral.swift; sourceTree = ""; }; + A5B4FB7363E1CAB3F67C07B1E02C3AB5 /* lato-normal-italic.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-normal-italic.woff2"; path = "Docs/build/html/_static/css/fonts/lato-normal-italic.woff2"; sourceTree = ""; }; A6E61DA0AEC4E07501D1C47D17DFE362 /* Pods-MetaWearIntegrationTests-tvOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWearIntegrationTests-tvOS-acknowledgements.plist"; sourceTree = ""; }; - A6EB15038408EF32C06C1BF3D64E55C4 /* roboto-slab-v7-regular.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "roboto-slab-v7-regular.woff2"; path = "Docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2"; sourceTree = ""; }; + A6F258AF5B520A69684A5F72D7F51E17 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m"; sourceTree = ""; }; + A72C83474F51912B437DDBB99635529C /* Roboto-Slab-Bold.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "Roboto-Slab-Bold.woff"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Bold.woff"; sourceTree = ""; }; A7AC3A5CA8277B0B4A65335FA05570B6 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-acknowledgements.plist"; sourceTree = ""; }; - A7C4C123E2D3E779854962316FDBAFF9 /* search.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = search.html; path = Docs/build/html/search.html; sourceTree = ""; }; A871018BA4CDDC3C7ABFB39783B1073B /* Task+WhenAll.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Task+WhenAll.swift"; path = "Sources/BoltsSwift/Task+WhenAll.swift"; sourceTree = ""; }; A8B2B732F6AD9127EE241F1535789E96 /* ZIPFoundation-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "ZIPFoundation-macOS-dummy.m"; path = "../ZIPFoundation-macOS/ZIPFoundation-macOS-dummy.m"; sourceTree = ""; }; A8C525780CB40473CE06F0E9500FE182 /* DFUServiceDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUServiceDelegate.swift; path = iOSDFULibrary/Classes/Implementation/DFUServiceDelegate.swift; sourceTree = ""; }; - A8EC5526D0BEE7D5ADBABFEFFB0AF46D /* debug.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = debug.cpp; sourceTree = ""; }; - AA8C4E4954F577DC5838552C26A95F21 /* cbindings.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = cbindings.swift; sourceTree = ""; }; - AAE50FD99694245A4A0B675B49C15390 /* index.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = index.doctree; path = Docs/build/doctrees/index.doctree; sourceTree = ""; }; + A8EA025156B2B2B4253BA7971E51513D /* Roboto-Slab-Regular.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "Roboto-Slab-Regular.woff2"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Regular.woff2"; sourceTree = ""; }; + AA2F5A0B9829FA254786E60EEF5D6B41 /* spi.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = spi.doctree; path = Docs/build/doctrees/spi.doctree; sourceTree = ""; }; + AA3F0486442D250B585153BC0B50AB16 /* settings.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.rst; path = Docs/source/settings.rst; sourceTree = ""; }; + AB0670C7A0A1C99783AB3946244DD414 /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h"; sourceTree = ""; }; + AB0851094434AE3AB131EAA5B548883F /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.debug.xcconfig"; sourceTree = ""; }; AB1E37A13754FFEFD8230A743ECEAD66 /* Bolts-Swift-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "Bolts-Swift-macOS-Info.plist"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS-Info.plist"; sourceTree = ""; }; + AB51FA4A873B8D6D3BBE74CE5C51B01E /* led.html */ = {isa = PBXFileReference; includeInIndex = 1; name = led.html; path = Docs/build/html/led.html; sourceTree = ""; }; + AB77385D74E1D2C5ED9DF53F991E41CA /* accelerometer_mma8452q.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer_mma8452q.cpp; sourceTree = ""; }; AC14F27D31997A9BAB52F11719E73EB8 /* iOSDFULibrary-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "iOSDFULibrary-iOS.debug.xcconfig"; sourceTree = ""; }; AC68A1B035D2F7A706C5CEC4FAAB22F9 /* iOSDFULibrary-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "iOSDFULibrary-macOS.debug.xcconfig"; path = "../iOSDFULibrary-macOS/iOSDFULibrary-macOS.debug.xcconfig"; sourceTree = ""; }; + ACFC7B105FC5C65A1C19F17E04F17015 /* datasignal.html */ = {isa = PBXFileReference; includeInIndex = 1; name = datasignal.html; path = Docs/build/html/datasignal.html; sourceTree = ""; }; + AD3D2DC5607A28C341643D91B5403730 /* magnetometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = magnetometer.rst.txt; path = Docs/build/html/_sources/magnetometer.rst.txt; sourceTree = ""; }; AE0358D314C8BEEE6DF294E6CFBE3DCC /* Pods-MetaWearIntegrationTests-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWearIntegrationTests-macOS-dummy.m"; sourceTree = ""; }; - AF2983805A10D5A49BB98AC1AE1F38F5 /* Pods_MetaWear_MetaWear_watchOS_MetaWearIntegrationTestHost_watchOS_Extension.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWear_MetaWear_watchOS_MetaWearIntegrationTestHost_watchOS_Extension.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - AFD17B5704C5009F44F9A60B6FF5DBCF /* switch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = switch.cpp; sourceTree = ""; }; - AFD331B576BADC6292746268886CAC85 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-prefix.pch"; sourceTree = ""; }; + AE12E6F73BE35D420EB8C194BF598725 /* advanced_features.html */ = {isa = PBXFileReference; includeInIndex = 1; name = advanced_features.html; path = Docs/build/html/advanced_features.html; sourceTree = ""; }; + AE64C0498D8FA63678FB1804701156AB /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist"; sourceTree = ""; }; + AEE665D716662DBB922425D97CDB83CC /* serialpassthrough.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = serialpassthrough.cpp; sourceTree = ""; }; + AF2983805A10D5A49BB98AC1AE1F38F5 /* Pods_MetaWear_MetaWear_watchOS_MetaWearIntegrationTestHost_watchOS_Extension.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWear_MetaWear_watchOS_MetaWearIntegrationTestHost_watchOS_Extension.framework; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + AF305215DFE9A27CE1ADBE7E7B770BFB /* documentation_options.js */ = {isa = PBXFileReference; includeInIndex = 1; name = documentation_options.js; path = Docs/build/html/_static/documentation_options.js; sourceTree = ""; }; B1CD75C05ED2021363C4A9C77D793D4B /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-umbrella.h"; sourceTree = ""; }; - B36C9F83877B7D7C69AF31BAA98B13D1 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist"; sourceTree = ""; }; - B3B544A8CA50CA8E1AF96A0582DE5218 /* metawearboard.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = metawearboard.cpp; sourceTree = ""; }; - B44C98BF6416042DDD7BB9563F79641F /* dfu_utility.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_utility.cpp; sourceTree = ""; }; + B2DFE15A0E62BE06D2CF9D4AE53F927D /* SwiftGenerator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = SwiftGenerator.cpp; sourceTree = ""; }; + B3F719EDFB984964533497C04A536A14 /* sensors.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = sensors.rst; path = Docs/source/sensors.rst; sourceTree = ""; }; B478AA720F432EAEB3DAAD27B7EDB2E3 /* Executor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Executor.swift; path = Sources/BoltsSwift/Executor.swift; sourceTree = ""; }; - B593D24B4AEAD32B5C64065C49EA830B /* LogDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = LogDelegate.swift; sourceTree = ""; }; + B4ECB2BFD9EC71AEC3128B318A9BA8CB /* multichanneltemperature.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = multichanneltemperature.cpp; sourceTree = ""; }; + B581D3CA36F57D8DE2568093A974DC0A /* timer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.doctree; path = Docs/build/doctrees/timer.doctree; sourceTree = ""; }; B5BE3C3ED8B205DDC9F2354DB07DBECB /* Pods-MetaWearIntegrationTests-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWearIntegrationTests-macOS.release.xcconfig"; sourceTree = ""; }; - B61F4E31067F0A112E7BDD9B78A29055 /* pygments.css */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.css; name = pygments.css; path = Docs/build/html/_static/pygments.css; sourceTree = ""; }; B63D4838726436C6026DAF93887F6EF6 /* iOSDFULibrary-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "iOSDFULibrary-iOS-prefix.pch"; sourceTree = ""; }; - B7AE4901194EF1802421C58ACDF1CB4A /* objects.inv */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = objects.inv; path = Docs/build/html/objects.inv; sourceTree = ""; }; - B7B65FDB561C56F43FEF705A460B2D69 /* RobotoSlab-Bold.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "RobotoSlab-Bold.ttf"; path = "Docs/build/html/_static/fonts/RobotoSlab-Bold.ttf"; sourceTree = ""; }; - B7D2E886936673F46B3ADEEE4C155AF6 /* serialpassthrough.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = serialpassthrough.cpp; sourceTree = ""; }; - B86D8D46F4B973EF1E0D5D66A6B9B56D /* MblMwGattChar.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MblMwGattChar.swift; sourceTree = ""; }; + B63F9B9F7BDAE3C2D1A99017A48D4C8E /* accelerometer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer.cpp; sourceTree = ""; }; + B69D599AAFD0A9D835E0CEF64BE9814D /* FirmwareBuild.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FirmwareBuild.swift; path = MetaWear/DFU/FirmwareBuild.swift; sourceTree = ""; }; + B83AA79D41272316A3114303985BB4F0 /* moduleinfo.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = moduleinfo.cpp; sourceTree = ""; }; B876E0D4A3F50F454DC20BD74E467B32 /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension.debug.xcconfig"; sourceTree = ""; }; - B877E8FDE4B1A21BB615CCCDFFEBBB1E /* minus.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = minus.png; path = Docs/build/html/_static/minus.png; sourceTree = ""; }; B880930B9DA7C2371D6E05ED7CDC76B2 /* Pods-MetaWearIntegrationTests-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWearIntegrationTests-macOS.modulemap"; sourceTree = ""; }; - B8C303105C8F0BE828799CFB61EF6037 /* ibeacon.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ibeacon.cpp; sourceTree = ""; }; - B8EE8262EAFA205D053E02F9DD0B2BC1 /* documentation_options.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = documentation_options.js; path = Docs/build/html/_static/documentation_options.js; sourceTree = ""; }; B8FCB726B5BF324DE5E3DBF04E36E12E /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-dummy.m"; sourceTree = ""; }; - B96070473785FC109F4DF1B95A23E0C9 /* DeviceInformation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DeviceInformation.swift; sourceTree = ""; }; + B91F1C9A6EAB40C8B17FAC50BAD8CE94 /* i2c.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = i2c.rst; path = Docs/source/i2c.rst; sourceTree = ""; }; + B9DE04807240DAD7B7615C77F2C88E0E /* lato-bold-italic.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-bold-italic.woff2"; path = "Docs/build/html/_static/css/fonts/lato-bold-italic.woff2"; sourceTree = ""; }; + BA09895315AED647C4679C191B80F007 /* sensors.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = sensors.rst.txt; path = Docs/build/html/_sources/sensors.rst.txt; sourceTree = ""; }; + BA6D9315DF7722D1CBA54A84730A431B /* metawearboard.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearboard.doctree; path = Docs/build/doctrees/metawearboard.doctree; sourceTree = ""; }; BBA029B34AF11D91E7C23C3BA4EEAD6F /* Bolts-Swift-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Bolts-Swift-iOS.modulemap"; sourceTree = ""; }; BBE6BE9F290F399278452EF43CA4D1B9 /* iOSDFULibrary-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "iOSDFULibrary-macOS.release.xcconfig"; path = "../iOSDFULibrary-macOS/iOSDFULibrary-macOS.release.xcconfig"; sourceTree = ""; }; BC30364AD3168CD204AC57BFFB1936FA /* LegacyDFUService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LegacyDFUService.swift; path = iOSDFULibrary/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift; sourceTree = ""; }; + BC4B70F9F0E4EAAE94860B390EEC84A5 /* MetaWear+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+Async.swift"; path = "MetaWear/AsyncUtils/MetaWear+Async.swift"; sourceTree = ""; }; BC7F3645E8994A3A164C80B4BAF8B8E8 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-Info.plist"; sourceTree = ""; }; - BDFACC6AF305A7494159DF42B26EB163 /* MblMwDataSignal+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MblMwDataSignal+Async.swift"; path = "MetaWear/AsyncUtils/MblMwDataSignal+Async.swift"; sourceTree = ""; }; + BCE1CF16C54DD96420E6A5AAB43244C4 /* accelerometer_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer_bosch.cpp; sourceTree = ""; }; + BE81155C54FB572EC008598255A83F98 /* sensor_fusion.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = sensor_fusion.doctree; path = Docs/build/doctrees/sensor_fusion.doctree; sourceTree = ""; }; + BEF0743B28C3D9777CDD2245E75150D7 /* conductance.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = conductance.cpp; sourceTree = ""; }; + BFAA633966C968BF70362AFA2B44336F /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h"; sourceTree = ""; }; + BFEAA5C46CEC3615548C77D7E8DBB3C7 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch"; sourceTree = ""; }; + C0FB3ABB2BB2B9595997C842A141AEBC /* event.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = event.doctree; path = Docs/build/doctrees/event.doctree; sourceTree = ""; }; + C0FFFB6700BEC9C36BFFEFCA6F08B772 /* ibeacon.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ibeacon.cpp; sourceTree = ""; }; + C116B2146C21545E9C6286225384C304 /* ambientlight_ltr329.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ambientlight_ltr329.cpp; sourceTree = ""; }; + C165784B2F3FBC73025B5730BD84A454 /* colordetector_tcs34725.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = colordetector_tcs34725.cpp; sourceTree = ""; }; + C1B910DE72812567B6DFD9510F7A5FDE /* core_modules.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = core_modules.rst.txt; path = Docs/build/html/_sources/core_modules.rst.txt; sourceTree = ""; }; C20B24F55F0CFEBCD610216AA9691067 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-acknowledgements.markdown"; sourceTree = ""; }; - C2AD95DF74CB58E8CCBE29F347B61EBE /* modernizr.min.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = modernizr.min.js; path = Docs/build/html/_static/js/modernizr.min.js; sourceTree = ""; }; - C60154A98FA6CA33BA0AECEC621F8FEA /* magnetometer_bmm150.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = magnetometer_bmm150.cpp; sourceTree = ""; }; + C22749D2B8E00599A0F94B486EEAF752 /* humidity_bme280.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = humidity_bme280.cpp; sourceTree = ""; }; + C393E99AF46B41DC9FDFECDD8627EF5B /* Roboto-Slab-Bold.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "Roboto-Slab-Bold.woff2"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Bold.woff2"; sourceTree = ""; }; + C48F81905939F13E116B931697115385 /* ambientlightsensor.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = ambientlightsensor.rst; path = Docs/source/ambientlightsensor.rst; sourceTree = ""; }; + C4C44D4B1A5357B81BE64B8843779793 /* cppbridge.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = cppbridge.doctree; path = Docs/build/doctrees/cppbridge.doctree; sourceTree = ""; }; C626F85A8564BCF486B43AC72451FC24 /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-dummy.m"; sourceTree = ""; }; - C6C1DA89237E8DE7D918026F83CFF2C6 /* lato-bold.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bold.woff"; path = "Docs/build/html/_static/fonts/Lato/lato-bold.woff"; sourceTree = ""; }; - C78FA1EB0C8AD1053070D8211005C342 /* MetaWear.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWear.swift; sourceTree = ""; }; + C702ED0809CC0E4E97F466336F3EA047 /* Makefile */ = {isa = PBXFileReference; includeInIndex = 1; name = Makefile; path = Docs/Makefile; sourceTree = ""; }; + C71508F7B93AE559E77814E3E7A2FA27 /* core_modules.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = core_modules.rst; path = Docs/source/core_modules.rst; sourceTree = ""; }; + C7D0FDF991487027613374C0F7701226 /* LogDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = LogDelegate.swift; sourceTree = ""; }; + C7D96C1FB9ED1E49325F6E92F2AE4F33 /* task.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = task.cpp; sourceTree = ""; }; C7E8E5C03C74D4FEB1A37C2CB0DC3B12 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-Info.plist"; sourceTree = ""; }; C8147C4850AEABDA11389CD1C19E9ECE /* Pods-MetaWearIntegrationTests-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWearIntegrationTests-iOS.debug.xcconfig"; sourceTree = ""; }; C84784ABFBF917BB22BF2077A55A8FAA /* Data+Serialization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Data+Serialization.swift"; path = "Sources/ZIPFoundation/Data+Serialization.swift"; sourceTree = ""; }; C88285F433CF218408492BC8304A0044 /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-frameworks.sh"; sourceTree = ""; }; - C8C2558A12ABD13B44687E76729580A3 /* barometer_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = barometer_bosch.cpp; sourceTree = ""; }; C9059A703233CE911E22855733F6AFEB /* DFUPeripheralSelector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUPeripheralSelector.swift; path = iOSDFULibrary/Classes/Implementation/DFUPeripheralSelector.swift; sourceTree = ""; }; - CA02E0EC039FEBB54570073617E3F3A3 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m"; sourceTree = ""; }; - CA4615841E2C1E8157D02E95B64E71C4 /* MetaWear+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+Async.swift"; path = "MetaWear/AsyncUtils/MetaWear+Async.swift"; sourceTree = ""; }; - CA4A4A14BB3B59C035B57D04E38B630B /* index.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = index.html; path = Docs/build/html/index.html; sourceTree = ""; }; + CA4BB0314E9D78D56FD5027D6B01DD6A /* dataprocessor.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = dataprocessor.rst; path = Docs/source/dataprocessor.rst; sourceTree = ""; }; CA99C2A255521A7E4969446E2550F350 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-umbrella.h"; sourceTree = ""; }; - CAFE7B77DDA4A1D7142D97690D04C84E /* project_setup.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = project_setup.rst; path = Docs/source/project_setup.rst; sourceTree = ""; }; + CACDA00D168FB45E46CEC36074EFB198 /* temperature.html */ = {isa = PBXFileReference; includeInIndex = 1; name = temperature.html; path = Docs/build/html/temperature.html; sourceTree = ""; }; + CC54A8F259F505BE581162985789AB82 /* settings.html */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.html; path = Docs/build/html/settings.html; sourceTree = ""; }; CC664CACE8271F6C72F9F07D47468A39 /* SecureDFUService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SecureDFUService.swift; path = iOSDFULibrary/Classes/Implementation/SecureDFU/Services/SecureDFUService.swift; sourceTree = ""; }; - CC835314AACD55C592376464CE791137 /* LICENSE.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; path = LICENSE.md; sourceTree = ""; }; - CCC6F0BB303761D0D1CE724666AE1B71 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.release.xcconfig"; sourceTree = ""; }; - CE1E0DEFFE017C0C2E2985A366A992F9 /* Bridging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Bridging.swift; sourceTree = ""; }; - CF3B9FF9F2E473C5D5F46037E64ACB75 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch"; sourceTree = ""; }; - CF72D18E567E8911AF7A4304814B9F37 /* roboto-slab-v7-regular.eot */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "roboto-slab-v7-regular.eot"; path = "Docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot"; sourceTree = ""; }; + CC82E3F634ECDF89CE55E835D0005849 /* peripherals.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = peripherals.doctree; path = Docs/build/doctrees/peripherals.doctree; sourceTree = ""; }; + CD21CD6E45D18F771B094E6ABEC8C67F /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist"; sourceTree = ""; }; + CE69A2567D12B12C2B107E5850828454 /* haptic.html */ = {isa = PBXFileReference; includeInIndex = 1; name = haptic.html; path = Docs/build/html/haptic.html; sourceTree = ""; }; + CFD843C82D19CF619F26E922A6612134 /* dataprocessor_config.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dataprocessor_config.cpp; sourceTree = ""; }; D09FB64A86FF74F0E70311D16B77A1F3 /* ZIPFoundation-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "ZIPFoundation-macOS-Info.plist"; path = "../ZIPFoundation-macOS/ZIPFoundation-macOS-Info.plist"; sourceTree = ""; }; + D116DFA4679AFCC77CE41D2A4F735077 /* MetaWearScanner+Mock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWearScanner+Mock.swift"; path = "MetaWear/Mocks/MetaWearScanner+Mock.swift"; sourceTree = ""; }; D11B9606AF00BF65E342847EF05B8AEB /* iOSDFULibrary.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = iOSDFULibrary.framework; sourceTree = BUILT_PRODUCTS_DIR; }; D12D376B2FB3C5BF3FDF1DB158DB3C0C /* Bolts-Swift-watchOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-watchOS.release.xcconfig"; path = "../Bolts-Swift-watchOS/Bolts-Swift-watchOS.release.xcconfig"; sourceTree = ""; }; - D478768EE86CA3C5F1C572EAC53FAF90 /* threadpool.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = threadpool.cpp; sourceTree = ""; }; - D49C1615224D14933CE6F81A9FEE23D8 /* lato-regular.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-regular.woff"; path = "Docs/build/html/_static/fonts/Lato/lato-regular.woff"; sourceTree = ""; }; - D5E133000ABA8F10FA6F13CB0871577E /* iOSDFULibrary.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = iOSDFULibrary.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + D1BEC515335A4A180470B94CAF11CDB7 /* gyro_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = gyro_bosch.cpp; sourceTree = ""; }; + D345321EDE2EE8B59FF85A74DB084CE4 /* accelerometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = accelerometer.doctree; path = Docs/build/doctrees/accelerometer.doctree; sourceTree = ""; }; + D5B93887430E6C591556A0EF02C766B0 /* core_modules.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = core_modules.doctree; path = Docs/build/doctrees/core_modules.doctree; sourceTree = ""; }; + D5D8D9BB704897DB80AEF35223822F59 /* led.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = led.rst.txt; path = Docs/build/html/_sources/led.rst.txt; sourceTree = ""; }; + D5E133000ABA8F10FA6F13CB0871577E /* iOSDFULibrary.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = iOSDFULibrary.framework; path = "iOSDFULibrary-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + D64E6CDBA4D2E8418FC7A8D31F7A6A54 /* logging.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.doctree; path = Docs/build/doctrees/logging.doctree; sourceTree = ""; }; D67806B7EF620D21EEB845FE7B2BF36C /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS.debug.xcconfig"; sourceTree = ""; }; - D6EBD44A988733A7C08E5D153EC8D7C1 /* language_data.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = language_data.js; path = Docs/build/html/_static/language_data.js; sourceTree = ""; }; - D74FEE9457637D85A707A2FADECBCD12 /* MetaWear+Mock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+Mock.swift"; path = "MetaWear/Mocks/MetaWear+Mock.swift"; sourceTree = ""; }; - D78D5C00D78D3B53BD3323F7FA705860 /* metawearboard.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = metawearboard.rst; path = Docs/source/metawearboard.rst; sourceTree = ""; }; - D7F8D4E75D865FC8EC3FA837AF68BCCE /* lato-regular.eot */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-regular.eot"; path = "Docs/build/html/_static/fonts/Lato/lato-regular.eot"; sourceTree = ""; }; - D8D46793DF8922FD403600571425F7AD /* metawearboard.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = metawearboard.rst.txt; path = Docs/build/html/_sources/metawearboard.rst.txt; sourceTree = ""; }; + D68405B5CAE3BEB51AA16FD72FE685E6 /* spi.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = spi.rst.txt; path = Docs/build/html/_sources/spi.rst.txt; sourceTree = ""; }; + D715619D059164B067FC6E5C2BF2CCFA /* lato-normal-italic.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-normal-italic.woff"; path = "Docs/build/html/_static/css/fonts/lato-normal-italic.woff"; sourceTree = ""; }; + D71AFCE59F7E5D0E3C3C14DB7E71A34E /* sensor_fusion.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = sensor_fusion.cpp; sourceTree = ""; }; + D79846913C5C3DB9B906408EA67CDBE4 /* MetaWearData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWearData.swift; sourceTree = ""; }; + D7B6FF697AF15FAD5B996B730D32226F /* MetaWear.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWear.swift; sourceTree = ""; }; + D884DF08ED52525ED6047FFED870B836 /* fontawesome-webfont.eot */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.eot"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.eot"; sourceTree = ""; }; D928D6F667DCB346AB64385873DBCEC4 /* Pods-MetaWearIntegrationTests-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWearIntegrationTests-iOS.release.xcconfig"; sourceTree = ""; }; + D9722619DF8B6D03DC8CB4379C169217 /* ibeacon.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = ibeacon.rst.txt; path = Docs/build/html/_sources/ibeacon.rst.txt; sourceTree = ""; }; + D9B3EDDDD55372316292289426ACEB2A /* dataprocessor.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = dataprocessor.rst.txt; path = Docs/build/html/_sources/dataprocessor.rst.txt; sourceTree = ""; }; D9D0F940E407571A9D2C3CC137C7217E /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS.modulemap"; sourceTree = ""; }; - DA1054D29F7E38837DE2E72B2AA58216 /* lato-bolditalic.eot */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bolditalic.eot"; path = "Docs/build/html/_static/fonts/Lato/lato-bolditalic.eot"; sourceTree = ""; }; - DA27407ABCCF4256DD50BCF3A84FC4BC /* RobotoSlab-Regular.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "RobotoSlab-Regular.ttf"; path = "Docs/build/html/_static/fonts/RobotoSlab-Regular.ttf"; sourceTree = ""; }; - DA54BF72E064B1C35C8E39D0A4DD88FB /* roboto-slab-v7-bold.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "roboto-slab-v7-bold.woff"; path = "Docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff"; sourceTree = ""; }; - DAC7FB72D61C137AE357C3C90E848DAC /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.debug.xcconfig"; sourceTree = ""; }; + DA367DEDE4621CF8CD3DAE036431A3E1 /* MetaWear+Mock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+Mock.swift"; path = "MetaWear/Mocks/MetaWear+Mock.swift"; sourceTree = ""; }; + DB1185C771E66593125CF8CDD0EB8DB0 /* CSharpGenerator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = CSharpGenerator.cpp; sourceTree = ""; }; DBB36CF618A7EA2BCDD2F8FE59B83C9F /* Bolts-Swift-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-tvOS-prefix.pch"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS-prefix.pch"; sourceTree = ""; }; DBC0B44C8FB29FE5F9CAA480D7FC5222 /* DFUServiceInitiator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUServiceInitiator.swift; path = iOSDFULibrary/Classes/Implementation/DFUServiceInitiator.swift; sourceTree = ""; }; - DC05B55C8E50D3344CC11348925701D7 /* dataprocessor.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dataprocessor.cpp; sourceTree = ""; }; - DC112E70B6C61DDB793D7E4D3987AD6A /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.release.xcconfig"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.release.xcconfig"; sourceTree = ""; }; DC3832F63755F2711E07CE499A57479E /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-frameworks.sh"; sourceTree = ""; }; - DD4ACD0AB6CA3263FFD6FADEAC6D2806 /* Pods_MetaWear_MetaWear_iOS_MetaWearUnitTests_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWear_MetaWear_iOS_MetaWearUnitTests_iOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - DE81B0A2EDDC15BDCC3EF582E40D6D3B /* jquery.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = jquery.js; path = Docs/build/html/_static/jquery.js; sourceTree = ""; }; - E02CAE5C7D8C165C61273617EE44B517 /* Inconsolata.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = Inconsolata.ttf; path = Docs/build/html/_static/fonts/Inconsolata.ttf; sourceTree = ""; }; - E0D05D977C38746146221CF5D41C3E3B /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.modulemap"; sourceTree = ""; }; - E246335CB932FE248C468993795938D3 /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - E3087BD47353952D3722FA7CA40E81C4 /* project_setup.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = project_setup.html; path = Docs/build/html/project_setup.html; sourceTree = ""; }; - E328DFF0E848278274D43506C91398A2 /* accelerometer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer.cpp; sourceTree = ""; }; + DC74A8C206ABDA0979899B483C9DD1AA /* JavaScriptGenerator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = JavaScriptGenerator.cpp; sourceTree = ""; }; + DD223C6AEAA57760FEBCFC7B233F76DF /* metawearboard.html */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearboard.html; path = Docs/build/html/metawearboard.html; sourceTree = ""; }; + DD4ACD0AB6CA3263FFD6FADEAC6D2806 /* Pods_MetaWear_MetaWear_iOS_MetaWearUnitTests_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWear_MetaWear_iOS_MetaWearUnitTests_iOS.framework; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + DE34A01D996FD05426F39C73144DEE3B /* logger.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = logger.rst.txt; path = Docs/build/html/_sources/logger.rst.txt; sourceTree = ""; }; + E0EF817B8ACF2B742709EEB078D73948 /* html5shiv.min.js */ = {isa = PBXFileReference; includeInIndex = 1; name = html5shiv.min.js; path = Docs/build/html/_static/js/html5shiv.min.js; sourceTree = ""; }; + E11C052B3CED55F30D1DEDDFAAA7E408 /* async_creator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = async_creator.cpp; sourceTree = ""; }; + E14BDF534FA1AE0403D1BF3B178BA512 /* humidity.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = humidity.rst.txt; path = Docs/build/html/_sources/humidity.rst.txt; sourceTree = ""; }; + E1BAE33B69D5B09EF1A9FC27B6F9104C /* cbindings.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = cbindings.swift; sourceTree = ""; }; + E235F6D9ABDD5F5648321517AE0873C0 /* haptic.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = haptic.rst; path = Docs/source/haptic.rst; sourceTree = ""; }; + E236F0C7316A3ED6DB87F905B6188019 /* searchindex.js */ = {isa = PBXFileReference; includeInIndex = 1; name = searchindex.js; path = Docs/build/html/searchindex.js; sourceTree = ""; }; + E246335CB932FE248C468993795938D3 /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = BoltsSwift.framework; path = "Bolts-Swift-watchOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + E263A509D6D173F177A0D7C86EDFF2AB /* ambientlightsensor.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = ambientlightsensor.doctree; path = Docs/build/doctrees/ambientlightsensor.doctree; sourceTree = ""; }; + E27D22C5334E9B4D5A2A6D07C03A2D06 /* barometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = barometer.rst.txt; path = Docs/build/html/_sources/barometer.rst.txt; sourceTree = ""; }; + E2EFE9D6C87239704BBC5413982E2438 /* led.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = led.cpp; sourceTree = ""; }; + E39D91CF240BF79A063CA446F493AA94 /* barometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = barometer.doctree; path = Docs/build/doctrees/barometer.doctree; sourceTree = ""; }; E43893E60AA833FD5CE59855FFBCA9CF /* TaskCompletionSource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskCompletionSource.swift; path = Sources/BoltsSwift/TaskCompletionSource.swift; sourceTree = ""; }; - E45BB009C3E8B39CDDBB7967C6BB20E4 /* conf.py */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.python; name = conf.py; path = Docs/source/conf.py; sourceTree = ""; }; - E8EF759174C33810CE720C98CAB60552 /* colordetector_tcs34725.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = colordetector_tcs34725.cpp; sourceTree = ""; }; + E4A59430561A111DB9F99CFA9FC7796C /* upload.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; name = upload.sh; path = Docs/upload.sh; sourceTree = ""; }; + E4EA3B4DDA717762D1BEED67A285324C /* macro.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = macro.rst.txt; path = Docs/build/html/_sources/macro.rst.txt; sourceTree = ""; }; + E611B7FB86FBA0CB0FAC5D47D53C5AB7 /* event.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = event.cpp; sourceTree = ""; }; + E698377A71CB8AF4779D7846D77AF57C /* i2c.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = i2c.rst.txt; path = Docs/build/html/_sources/i2c.rst.txt; sourceTree = ""; }; + E8BC482C61CBAE6CB05B493775955BDE /* logging.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = logging.cpp; sourceTree = ""; }; E92D86C475B17A3AB3793FC4EB6D4E99 /* iOSDFULibrary-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "iOSDFULibrary-macOS-dummy.m"; path = "../iOSDFULibrary-macOS/iOSDFULibrary-macOS-dummy.m"; sourceTree = ""; }; - E978168E500A5904584DFE71F5239B36 /* MetaWearScanner+Mock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWearScanner+Mock.swift"; path = "MetaWear/Mocks/MetaWearScanner+Mock.swift"; sourceTree = ""; }; - E9AF0AFF425D0015BA54FDFB5BF52DA5 /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - EABC01310722C277D019E6C2DB9517E7 /* async_creator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = async_creator.cpp; sourceTree = ""; }; - EAF29DB335832647F87F4775D7DE5BB7 /* Pods_MetaWearIntegrationTests_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWearIntegrationTests_macOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - EC74BD0C5E76033B10A5D6EB416F031B /* miniz.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = miniz.cpp; sourceTree = ""; }; - ECD45F0CFF163D5FC6D44B1AE9AC82A5 /* MetaWear-AsyncUtils-Core-UI-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MetaWear-AsyncUtils-Core-UI-tvOS.modulemap"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.modulemap"; sourceTree = ""; }; + E9AF0AFF425D0015BA54FDFB5BF52DA5 /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = BoltsSwift.framework; path = "Bolts-Swift-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + EAF29DB335832647F87F4775D7DE5BB7 /* Pods_MetaWearIntegrationTests_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWearIntegrationTests_macOS.framework; path = "Pods-MetaWearIntegrationTests-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + ED30FE0D206D2DEB526E26E7D3A002BD /* MblMwDataSignal+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MblMwDataSignal+Async.swift"; path = "MetaWear/AsyncUtils/MblMwDataSignal+Async.swift"; sourceTree = ""; }; + ED58B4B256AA26B8E0D5EE629023B10F /* ambientlightsensor.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = ambientlightsensor.rst.txt; path = Docs/build/html/_sources/ambientlightsensor.rst.txt; sourceTree = ""; }; ED716A1D05AB6938853D4091D6F8F559 /* DFUStreamHex.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUStreamHex.swift; path = iOSDFULibrary/Classes/Utilities/Streams/DFUStreamHex.swift; sourceTree = ""; }; - EDE1CE76B901CA6A6EE5A0736A9E0736 /* Pods_MetaWear_MetaWear_macOS_MetaWearUnitTests_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWear_MetaWear_macOS_MetaWearUnitTests_macOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + EDE1CE76B901CA6A6EE5A0736A9E0736 /* Pods_MetaWear_MetaWear_macOS_MetaWearUnitTests_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWear_MetaWear_macOS_MetaWearUnitTests_macOS.framework; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + EDEA9B8D4A6C78359421B18F6D8BEF21 /* layout.html */ = {isa = PBXFileReference; includeInIndex = 1; name = layout.html; path = Docs/source/_templates/layout.html; sourceTree = ""; }; EE1BFCB3F1461B4BFBEB3D809F511712 /* DFUServiceController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUServiceController.swift; path = iOSDFULibrary/Classes/Implementation/DFUServiceController.swift; sourceTree = ""; }; + EE25A9247D4788AD16B427E2C8AF7537 /* magnetometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = magnetometer.rst; path = Docs/source/magnetometer.rst; sourceTree = ""; }; EE3D0F73A6653041193A830938A672A5 /* iOSDFULibrary-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "iOSDFULibrary-macOS-umbrella.h"; path = "../iOSDFULibrary-macOS/iOSDFULibrary-macOS-umbrella.h"; sourceTree = ""; }; - EE406B828EADA04316B92391ABCB3284 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist"; sourceTree = ""; }; - EF34EB256255B71089C801BAB95F8822 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MetaWear.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - F04651D024BB9AA934A83292ECEE0F6B /* MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch"; sourceTree = ""; }; - F0E32B7BD057ACF329409780425BCAF8 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h"; sourceTree = ""; }; + EF34EB256255B71089C801BAB95F8822 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MetaWear.framework; path = "MetaWear-AsyncUtils-Core-UI-watchOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + EF66C281C1B0C3D03EAA4F00432DBED2 /* cppbridge.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = cppbridge.rst; path = Docs/source/cppbridge.rst; sourceTree = ""; }; + EF6AC1C6C417468EA7F148210B469862 /* fontawesome-webfont.svg */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.svg"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.svg"; sourceTree = ""; }; + F1A627A8DD7F9FBBF8952FE393BEC265 /* sensor_fusion.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = sensor_fusion.rst; path = Docs/source/sensor_fusion.rst; sourceTree = ""; }; + F28F4FB76B2B65A671A7F0342CC64711 /* DeviceInformation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DeviceInformation.swift; sourceTree = ""; }; F2EE0CC34C014504301CE5D84714CE4E /* ZIPFoundation-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ZIPFoundation-iOS-umbrella.h"; sourceTree = ""; }; F2F403E27DBF07E56940860662756CB3 /* Manifest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Manifest.swift; path = iOSDFULibrary/Classes/Utilities/DFUPackage/Manifest/Manifest.swift; sourceTree = ""; }; F50536BAD847A62129397161AB3353B0 /* ManifestFirmwareInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ManifestFirmwareInfo.swift; path = iOSDFULibrary/Classes/Utilities/DFUPackage/Manifest/ManifestFirmwareInfo.swift; sourceTree = ""; }; + F561F46581972559F90E50096FFE0D68 /* fontawesome-webfont.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.woff"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.woff"; sourceTree = ""; }; + F59C202178C076EDA446977F2FEFCD12 /* index.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = index.rst.txt; path = Docs/build/html/_sources/index.rst.txt; sourceTree = ""; }; + F5B2809F72B0544508607C4E1AD38065 /* macro.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = macro.cpp; sourceTree = ""; }; F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Cocoa.framework; sourceTree = DEVELOPER_DIR; }; + F65FD667B6AF9DC18ADA3F036A17D751 /* genindex.html */ = {isa = PBXFileReference; includeInIndex = 1; name = genindex.html; path = Docs/build/html/genindex.html; sourceTree = ""; }; F666FA2CBC156AC724FC36C8FA56C963 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS.modulemap"; sourceTree = ""; }; - F69D9DEEAEF7D7E9568EE5C30A0AB5FA /* logging.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = logging.cpp; sourceTree = ""; }; + F671E9F4ADCCBF97B74EC54AA341E8F6 /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m"; sourceTree = ""; }; + F69F488242700F24D60C5C01A27E5F9C /* magnetometer_bmm150.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = magnetometer_bmm150.cpp; sourceTree = ""; }; F6D5B615CEC629B84F8D01C126CDDBAF /* Bolts-Swift-watchOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-watchOS.debug.xcconfig"; path = "../Bolts-Swift-watchOS/Bolts-Swift-watchOS.debug.xcconfig"; sourceTree = ""; }; F76864CFCBA1480F3B682B71128820A5 /* iOSDFULibrary-macOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "iOSDFULibrary-macOS-prefix.pch"; path = "../iOSDFULibrary-macOS/iOSDFULibrary-macOS-prefix.pch"; sourceTree = ""; }; F7B8882026B8D908567C13E297BD6436 /* Bolts-Swift-watchOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-watchOS-umbrella.h"; path = "../Bolts-Swift-watchOS/Bolts-Swift-watchOS-umbrella.h"; sourceTree = ""; }; F7D4003C2F97282E3C82E5711C7F8C46 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS14.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; F85B983DE4FFFAFAF0F7E87BB5CE2FF9 /* DFUUuidHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUUuidHelper.swift; path = iOSDFULibrary/Classes/Implementation/DFUUuidHelper.swift; sourceTree = ""; }; - F8BD4D50909896D979EFF9650C009BFF /* String+VersionCompare.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "String+VersionCompare.swift"; sourceTree = ""; }; - FA2889C481CC87D163A33A66963375A5 /* plus.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = plus.png; path = Docs/build/html/_static/plus.png; sourceTree = ""; }; + F860B790D62343F8134E5954F4C4366D /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.modulemap"; sourceTree = ""; }; + F880D193B51445AAF2927FB1E01099CF /* event.html */ = {isa = PBXFileReference; includeInIndex = 1; name = event.html; path = Docs/build/html/event.html; sourceTree = ""; }; + FACEF7A2C43428C48F8D9064DBDFE262 /* gyro.html */ = {isa = PBXFileReference; includeInIndex = 1; name = gyro.html; path = Docs/build/html/gyro.html; sourceTree = ""; }; FAF9B7ACE4773B4D39C8F25F3B7E77C9 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.release.xcconfig"; sourceTree = ""; }; - FB233AD05DEC52256AD3CAF1AC2EEAD7 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m"; sourceTree = ""; }; + FB0DD21CB704F683E0A6CF1532AA860C /* timer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.rst.txt; path = Docs/build/html/_sources/timer.rst.txt; sourceTree = ""; }; FB77A25C245095329AF91D690A2BE70A /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/WatchOS.platform/Developer/SDKs/WatchOS7.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; + FBE9F7026ACDB8291BF9EA7BC156FC58 /* MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist"; sourceTree = ""; }; + FC2DEB55514859BAD3CF4DA5A03DBA15 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.release.xcconfig"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.release.xcconfig"; sourceTree = ""; }; FC3F5F9EFAF6F59EB814261D256C5F2F /* Pods-MetaWearIntegrationTests-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWearIntegrationTests-iOS-umbrella.h"; sourceTree = ""; }; - FC9C68AF9502D238049DC2150D5F5341 /* underscore.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = underscore.js; path = Docs/build/html/_static/underscore.js; sourceTree = ""; }; - FD4E54F47B2E03CB9F2E2C8A721864A8 /* project_setup.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = project_setup.doctree; path = Docs/build/doctrees/project_setup.doctree; sourceTree = ""; }; + FC53B70009CA08373DF91D7B6A55785E /* peripherals.html */ = {isa = PBXFileReference; includeInIndex = 1; name = peripherals.html; path = Docs/build/html/peripherals.html; sourceTree = ""; }; + FD76483586B514A5C673056B7A731FE8 /* MetaWear+Firmware.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+Firmware.swift"; path = "MetaWear/DFU/MetaWear+Firmware.swift"; sourceTree = ""; }; FDAB73F304877FD4585F078B919261FC /* ZipArchive.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ZipArchive.swift; path = iOSDFULibrary/Classes/Utilities/ZipArchive.swift; sourceTree = ""; }; FDDABF26A26EF18A186D1EE57BF9A884 /* Pods-MetaWearIntegrationTests-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWearIntegrationTests-tvOS-dummy.m"; sourceTree = ""; }; FDDEEF001B39C50489B492A3EAD87AC9 /* Pods-MetaWearIntegrationTests-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWearIntegrationTests-tvOS.modulemap"; sourceTree = ""; }; FDE3D37DD489EAD78FB0EA6897F9D991 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-umbrella.h"; sourceTree = ""; }; FDF52030FE274FEC72DE7FD300FE48D3 /* LegacyDFUPeripheral.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LegacyDFUPeripheral.swift; path = iOSDFULibrary/Classes/Implementation/LegacyDFU/Peripherals/LegacyDFUPeripheral.swift; sourceTree = ""; }; - FEB8B99D59A5F75DF28B679BFBAADDAC /* lato-bold.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bold.ttf"; path = "Docs/build/html/_static/fonts/Lato/lato-bold.ttf"; sourceTree = ""; }; + FE4DE47D314987E0F452D7DCD0416DB2 /* file_operations.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = file_operations.cpp; sourceTree = ""; }; + FEF8B7DBE8F65750D1E171E1F79C410B /* i2c.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = i2c.doctree; path = Docs/build/doctrees/i2c.doctree; sourceTree = ""; }; FF09F8084F7DCF227B244653A4135332 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-acknowledgements.plist"; sourceTree = ""; }; - FF46D6EFAB8DAD5E788925F8871905B2 /* ambientlight_ltr329.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ambientlight_ltr329.cpp; sourceTree = ""; }; + FF2AA8233135C47CC5AC6C25FBD6A516 /* settings.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = settings.cpp; sourceTree = ""; }; + FFC67266CA93B9F91719C19A38CE3E82 /* theme.js */ = {isa = PBXFileReference; includeInIndex = 1; name = theme.js; path = Docs/build/html/_static/js/theme.js; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -1148,11 +1265,22 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 1D4DA408911C22B9CE92ACD320D939D5 /* Frameworks */ = { + 188BFBC13E2010BB6C5A35FD234E3D98 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - CBAD44174198C7E6820159CCE59F6DB7 /* Cocoa.framework in Frameworks */, + 126B864FD5B9D3B79BA674EEBF8131E8 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 1C5C1A73253B010AD8C259AA95FAA698 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + A8ECBE25D5BF892F76F29248EA41D29B /* BoltsSwift.framework in Frameworks */, + 6071E48F737A11BC76CF9F7D0AD0A27C /* CoreBluetooth.framework in Frameworks */, + B7F9890DA52935259F88791A5175AC5F /* Foundation.framework in Frameworks */, + F6809A948DB09B744EAAA02F7716A602 /* iOSDFULibrary.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1172,22 +1300,19 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 32B87607DE1D9355AA5C68500BCE7E87 /* Frameworks */ = { + 3307C818888C400F656B37EFB4B0503E /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 54823A75E564478A26B7829F94E6F107 /* BoltsSwift.framework in Frameworks */, - 97AAAA105CBD4F01F3B9639FB41ABDCE /* Cocoa.framework in Frameworks */, - D97DC90A6C7A759A93044FF2C9CBADE7 /* CoreBluetooth.framework in Frameworks */, - A2F0B801E6F361C4C3978C2DBF0A8FC7 /* iOSDFULibrary.framework in Frameworks */, + EF151BD9E0597C91523D5427BFFADDDA /* Cocoa.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 3307C818888C400F656B37EFB4B0503E /* Frameworks */ = { + 3FACD50741EF96C7700D554DA50482C9 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - EF151BD9E0597C91523D5427BFFADDDA /* Cocoa.framework in Frameworks */, + D519C222962A0DA43CED7F37127AC60D /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1199,30 +1324,32 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 7254513FBB40D23ECF62BBF721E062D1 /* Frameworks */ = { + 68E3DA2904A9227CB8FB0662ED8AC1EB /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - FE1779E8FC6E02A5F862C44182F9DCC9 /* Foundation.framework in Frameworks */, + 1B259F8D638758507076CF53E0D5F385 /* BoltsSwift.framework in Frameworks */, + 8EA9F3D6FE3BA71834FD3BC20D58F16D /* CoreBluetooth.framework in Frameworks */, + A6CA40D0AFFC130126BA57464CA1EA03 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 8D8F63998F7A532026EE473DD12E3D49 /* Frameworks */ = { + 7254513FBB40D23ECF62BBF721E062D1 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - FC7AA766956F20EC418DF852EB980191 /* BoltsSwift.framework in Frameworks */, - 2221EF07AD9EA07D21AB339401CBF99A /* CoreBluetooth.framework in Frameworks */, - BF0FE7560C9DA63FBD8DAAA194CF695A /* Foundation.framework in Frameworks */, + FE1779E8FC6E02A5F862C44182F9DCC9 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 953F0DDE8E8AB9AEA547081EF3E076F1 /* Frameworks */ = { + 83591A8A1939BDA251052A14239FFC42 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - B0F112FE2386AA529A2687C52C6C4D37 /* Cocoa.framework in Frameworks */, - A5112CFFF5361FCB82B4DC4864F01ADA /* ZIPFoundation.framework in Frameworks */, + 887FEA896B88053C97317E53E87B8FD3 /* BoltsSwift.framework in Frameworks */, + 2C1907D0785CFB6C1FC5C2C0071EFA28 /* Cocoa.framework in Frameworks */, + 0936DDEF5A4B9650C5ECD5C663515D2B /* CoreBluetooth.framework in Frameworks */, + F08B321D7E3C926EDAFB5462535CB86E /* iOSDFULibrary.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1242,32 +1369,13 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 9B6ABFE44C8BEF42176B28EF75604578 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - F4AAAAA9EF801C5CEE3A8D6595F17285 /* BoltsSwift.framework in Frameworks */, - 6AF1592BB698329EBC1D18917C7F89CF /* CoreBluetooth.framework in Frameworks */, - BA954476EFD16379C89A5598B716C028 /* Foundation.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - A4EB7C114B1C367FD5F95D5E5B6311C3 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - DDC3D0310D20F17CB03007936F42F5FF /* BoltsSwift.framework in Frameworks */, - 18409AAD5C7E82D5049A2610FABD7FD9 /* CoreBluetooth.framework in Frameworks */, - C42881A7C4D99FE9206779541733750E /* Foundation.framework in Frameworks */, - 9300138FE7693FCBFAC2C3F02B324D0C /* iOSDFULibrary.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - A5C6EE4C71F54601B2874699CBDE64AA /* Frameworks */ = { + ABEF92D0CBC742D571A4A2579E0F7715 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 3B054A7BB18AA2DA031669506836F84B /* Foundation.framework in Frameworks */, + 53855E4FB33EAD16A2F39AD607AB01DC /* BoltsSwift.framework in Frameworks */, + 8CE840023AEBD9CA850183FEFEA7D41E /* CoreBluetooth.framework in Frameworks */, + 21CC738C0902AC17332D3AE2731C3029 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1295,6 +1403,15 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + D1B62453835FE722C8144C28016F1587 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 8F45F401EC45EFACA04EB237E3CA3E3D /* Foundation.framework in Frameworks */, + 7A6C843BC6A55BEE9B49AA332A462C63 /* ZIPFoundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; D1ED09B16FF152696F258A418A669B39 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -1303,24 +1420,26 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - D8A457F5B83A2D84B98DB9BD2598E5B1 /* Frameworks */ = { + E92196D2BFFB948DCF5E66C8725278A6 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 49E1FA0316DEAB59F1662F30FFE403CF /* Foundation.framework in Frameworks */, - 7F1F76A44C2BA0CE89364DCF035B9259 /* ZIPFoundation.framework in Frameworks */, + 64A222ADB2B5A14846D38D0641863452 /* Cocoa.framework in Frameworks */, + 07F7F397A569ABA0B41AB17F699C0312 /* ZIPFoundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 034902BCCDCE98C16A17216CD7ADDE45 /* platform */ = { + 0303FBB22509CCA0D6D7F4D1945F5B38 /* DFU */ = { isa = PBXGroup; children = ( - FC6EBE503F139A27F5C8E2F46D5F2089 /* cpp */, + B69D599AAFD0A9D835E0CEF64BE9814D /* FirmwareBuild.swift */, + 80C496E7C90E9994CC0590530ADB9D9C /* FirmwareServer.swift */, + FD76483586B514A5C673056B7A731FE8 /* MetaWear+Firmware.swift */, ); - path = platform; + name = DFU; sourceTree = ""; }; 03BAA4C01BFE0B127EC2BA2A62DB6476 /* ZIPFoundation */ = { @@ -1335,14 +1454,24 @@ 60BEE52C89C924410FA20A8C8FDEFDA7 /* FileManager+ZIP.swift */, 7B59D2B5FA7674A77769690EC31B69E0 /* Support Files */, ); + name = ZIPFoundation; path = ZIPFoundation; sourceTree = ""; }; - 07948616D4CA77DCAE1A628B70D77F12 /* Core */ = { + 03F2399154FDB3AC562243870DC2B39D /* core */ = { + isa = PBXGroup; + children = ( + 8BA14648532FAD77B1D0C4E4AAAC530B /* cpp */, + ); + name = core; + path = core; + sourceTree = ""; + }; + 09AF99F7ADB313EFE8D9BEA6A3E4B478 /* Core */ = { isa = PBXGroup; children = ( - 2385A4BEEE7AA2A4F48B03859BB94E79 /* Core */, - 49DF77C325AF648CADF515A169E57E6E /* MetaWear-SDK-Cpp */, + 92D5A60EEF60447A3C8B4F9A2D6CBED2 /* Core */, + 4CE2C3FBFDB34E2BA9965CC7ED8DDDFB /* MetaWear-SDK-Cpp */, ); name = Core; sourceTree = ""; @@ -1361,26 +1490,12 @@ name = Frameworks; sourceTree = ""; }; - 100319EBECF55DF66E6E53C636CBD345 /* Mocks */ = { + 13BC394ED500FB5D749341AD51D6F5D3 /* UI */ = { isa = PBXGroup; children = ( - D74FEE9457637D85A707A2FADECBCD12 /* MetaWear+Mock.swift */, - E978168E500A5904584DFE71F5239B36 /* MetaWearScanner+Mock.swift */, - A3932A0E4D8A7E610C888E51B1A2166B /* MockModule.swift */, + 6CB6950BDD7E3014E744A1D82DCD7D8F /* ScannerModel.swift */, ); - name = Mocks; - sourceTree = ""; - }; - 114165BF5E06149264F6C3E114823695 /* cpp */ = { - isa = PBXGroup; - children = ( - 9F0F46F4797EDE9ACBCC6734FBB4699A /* dfu_operations.cpp */, - 0FF9550C9A8C8656880258CF8CD98C53 /* dfu_operations_details.cpp */, - B44C98BF6416042DDD7BB9563F79641F /* dfu_utility.cpp */, - 357E5635098F2378732DB33A5AE27106 /* file_operations.cpp */, - EC74BD0C5E76033B10A5D6EB416F031B /* miniz.cpp */, - ); - path = cpp; + name = UI; sourceTree = ""; }; 1E0839D9CE2AC495A60627404DFB0895 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS */ = { @@ -1400,31 +1515,6 @@ path = "Target Support Files/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS"; sourceTree = ""; }; - 2385A4BEEE7AA2A4F48B03859BB94E79 /* Core */ = { - isa = PBXGroup; - children = ( - CE1E0DEFFE017C0C2E2985A366A992F9 /* Bridging.swift */, - 6BCFD5EC59A041BE47D94C79D15215C9 /* CBUUID.swift */, - B96070473785FC109F4DF1B95A23E0C9 /* DeviceInformation.swift */, - B593D24B4AEAD32B5C64065C49EA830B /* LogDelegate.swift */, - B86D8D46F4B973EF1E0D5D66A6B9B56D /* MblMwGattChar.swift */, - C78FA1EB0C8AD1053070D8211005C342 /* MetaWear.swift */, - 089F056E9C04BBB61149090737132FAC /* MetaWearData.swift */, - 10A7CBD15778697655DDC81F8D561124 /* MetaWearScanner.swift */, - F8BD4D50909896D979EFF9650C009BFF /* String+VersionCompare.swift */, - ); - name = Core; - path = MetaWear/Core; - sourceTree = ""; - }; - 2FA5FB607F01780AF93871FA439A46E9 /* UI */ = { - isa = PBXGroup; - children = ( - 7630F0709266D733990F496E97069A68 /* ScannerModel.swift */, - ); - name = UI; - sourceTree = ""; - }; 311305D77133BD41A30CA4BD548B1F01 /* Pods-MetaWearIntegrationTests-tvOS */ = { isa = PBXGroup; children = ( @@ -1441,33 +1531,40 @@ path = "Target Support Files/Pods-MetaWearIntegrationTests-tvOS"; sourceTree = ""; }; - 351B5A5CD7F44001691C1835D650CA2C /* dfu */ = { + 32711B679FCD2A62E893D391E4822167 /* src */ = { isa = PBXGroup; children = ( - 114165BF5E06149264F6C3E114823695 /* cpp */, + 3DA7B381901D7ED3F11CF702426BBE92 /* metawear */, ); - path = dfu; + name = src; + path = src; sourceTree = ""; }; - 353AA8FFB9E100EC8432769F9E8D024A /* src */ = { + 3626EA163A7603EF0BF70CB7128D48A6 /* cpp */ = { isa = PBXGroup; children = ( - 369BFBEF844578FB2A59255F25E30F27 /* metawear */, + 0FCF2F5A5C94712F9BAE705347593E4A /* haptic.cpp */, + C0FFFB6700BEC9C36BFFEFCA6F08B772 /* ibeacon.cpp */, + E2EFE9D6C87239704BBC5413982E2438 /* led.cpp */, + 73948BE2C0569FB3BF68F6A4A189B95F /* neopixel.cpp */, ); - path = src; + name = cpp; + path = cpp; sourceTree = ""; }; - 369BFBEF844578FB2A59255F25E30F27 /* metawear */ = { + 3DA7B381901D7ED3F11CF702426BBE92 /* metawear */ = { isa = PBXGroup; children = ( - EF0C386A83776D0A8E3B7687EB326181 /* core */, - 351B5A5CD7F44001691C1835D650CA2C /* dfu */, - 6835FD6AC70BDD6C38988E231992E5B0 /* impl */, - 841F7EBD9053FFECCA63F29C660244D1 /* peripheral */, - 034902BCCDCE98C16A17216CD7ADDE45 /* platform */, - F1276031D47A9035C8BF9B7501332E7A /* processor */, - B1D13BA5D705082104ADE27E5C6858D4 /* sensor */, - ); + 03F2399154FDB3AC562243870DC2B39D /* core */, + 67D29520CBB3BA8180B1DE136EA75EB6 /* dfu */, + 4BF6868D519E398C9B20A49BE44750D7 /* generator */, + A9EBA85700A2C273EB2C6FA2138C8E66 /* impl */, + FE1E12BF53AA453246E280FE6167B1B4 /* peripheral */, + 810C28BAB686C4E6FD8F77E4A2067ECB /* platform */, + 777D3F3A51492B71055685C25D623DF9 /* processor */, + F219E3586AB5AE6305C127B1E97E78FB /* sensor */, + ); + name = metawear; path = metawear; sourceTree = ""; }; @@ -1488,21 +1585,6 @@ path = "Target Support Files/Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS"; sourceTree = ""; }; - 410C274F8DCF06D1F37E9C35947C4215 /* MetaWear */ = { - isa = PBXGroup; - children = ( - C6A87C63CF1687C08376A8DA3AAA919C /* AsyncUtils */, - 07948616D4CA77DCAE1A628B70D77F12 /* Core */, - 54998DF3F34F8B1269CEB6F09AA406A3 /* DFU */, - 100319EBECF55DF66E6E53C636CBD345 /* Mocks */, - 49FC7773DA5B0C4E33F0E25D30D42F92 /* Pod */, - F9C3E01003B2D3D01A4D03C90F073476 /* Support Files */, - 2FA5FB607F01780AF93871FA439A46E9 /* UI */, - ); - name = MetaWear; - path = ../..; - sourceTree = ""; - }; 45AF4E87754CE06F6E6937E76D066B36 /* watchOS */ = { isa = PBXGroup; children = ( @@ -1521,101 +1603,38 @@ name = "OS X"; sourceTree = ""; }; - 49DF77C325AF648CADF515A169E57E6E /* MetaWear-SDK-Cpp */ = { + 4B4319F3FB5EA78CBD754F80F2E2BE31 /* cpp */ = { isa = PBXGroup; children = ( - E3EECC88ABA24F58071D970E3C2C9A49 /* bindings */, - 353AA8FFB9E100EC8432769F9E8D024A /* src */, - ); - name = "MetaWear-SDK-Cpp"; - path = "MetaWear/MetaWear-SDK-Cpp"; + B63F9B9F7BDAE3C2D1A99017A48D4C8E /* accelerometer.cpp */, + BCE1CF16C54DD96420E6A5AAB43244C4 /* accelerometer_bosch.cpp */, + AB77385D74E1D2C5ED9DF53F991E41CA /* accelerometer_mma8452q.cpp */, + C116B2146C21545E9C6286225384C304 /* ambientlight_ltr329.cpp */, + 262B515345D9A281E9DB178889EAB01F /* barometer_bosch.cpp */, + C165784B2F3FBC73025B5730BD84A454 /* colordetector_tcs34725.cpp */, + BEF0743B28C3D9777CDD2245E75150D7 /* conductance.cpp */, + 20B0727D623002B7F4C82B61F2E53BCE /* gpio.cpp */, + D1BEC515335A4A180470B94CAF11CDB7 /* gyro_bosch.cpp */, + C22749D2B8E00599A0F94B486EEAF752 /* humidity_bme280.cpp */, + F69F488242700F24D60C5C01A27E5F9C /* magnetometer_bmm150.cpp */, + B4ECB2BFD9EC71AEC3128B318A9BA8CB /* multichanneltemperature.cpp */, + 827E9F987EB8540D345C89BCCF2B194C /* proximity_tsl2671.cpp */, + D71AFCE59F7E5D0E3C3C14DB7E71A34E /* sensor_fusion.cpp */, + AEE665D716662DBB922425D97CDB83CC /* serialpassthrough.cpp */, + 1AB700AD1E77526C1584F3E4CA6A880C /* switch.cpp */, + 5F6357DB75F21135B725219F131B8F8B /* utils.cpp */, + ); + name = cpp; + path = cpp; sourceTree = ""; }; - 49FC7773DA5B0C4E33F0E25D30D42F92 /* Pod */ = { + 4BF6868D519E398C9B20A49BE44750D7 /* generator */ = { isa = PBXGroup; children = ( - 8550956DE23274B90A98C0D657C2B4BE /* badge_only.css */, - 10F2FD057FD341AB68DCC7494C5DFDB7 /* basic.css */, - E45BB009C3E8B39CDDBB7967C6BB20E4 /* conf.py */, - 870B494DE6F84AE00A63B3AAB734B3EC /* doctools.js */, - B8EE8262EAFA205D053E02F9DD0B2BC1 /* documentation_options.js */, - 74DAFBB11CC0ED64F684442DF9A92D93 /* environment.pickle */, - 6A2CF8242C6BEA5AE65A948C455204BD /* file.png */, - 3FAC5D57E3C7FFB17E229B298A173A58 /* fontawesome-webfont.eot */, - 65E49A98A3EDBAFEEE8484F383ADF20C /* fontawesome-webfont.svg */, - 7554CB696AFCB1FCF3D72C650561A2D9 /* fontawesome-webfont.ttf */, - 5DF7F41EDEF372E6249CFB9EC582A549 /* fontawesome-webfont.woff */, - 7AFE92FE57921F58A90B67AE1892F450 /* fontawesome-webfont.woff2 */, - 5085158E9696265C1D84D5AED1A69B20 /* genindex.html */, - E02CAE5C7D8C165C61273617EE44B517 /* Inconsolata.ttf */, - 76C3E554372F6AEEBBE928C44B40BC23 /* Inconsolata-Bold.ttf */, - 69C4F4120F41A0168DBD214ADBC03CDB /* Inconsolata-Regular.ttf */, - AAE50FD99694245A4A0B675B49C15390 /* index.doctree */, - CA4A4A14BB3B59C035B57D04E38B630B /* index.html */, - 0E8622F09E6CB668D6A071E72158EE53 /* index.rst */, - 6B77EF08F13EE5488ED0BC7FE51224BA /* index.rst.txt */, - DE81B0A2EDDC15BDCC3EF582E40D6D3B /* jquery.js */, - 468D62D2F2023CEA82E05FAA1A40B641 /* jquery-3.2.1.js */, - D6EBD44A988733A7C08E5D153EC8D7C1 /* language_data.js */, - 802624AF8E1531E08BCA4B5CB33A1E45 /* lato-bold.eot */, - 3DEFBC2BEAFD0EEE811ACE88610A7399 /* Lato-Bold.ttf */, - FEB8B99D59A5F75DF28B679BFBAADDAC /* lato-bold.ttf */, - C6C1DA89237E8DE7D918026F83CFF2C6 /* lato-bold.woff */, - 01EBFA9D9682C4C8EE1BC2745DF4BD74 /* lato-bold.woff2 */, - DA1054D29F7E38837DE2E72B2AA58216 /* lato-bolditalic.eot */, - 57F46DC0408512A02AB13A4D00146BDF /* lato-bolditalic.ttf */, - 1D8C4C8B14D70A509549DA2A45B06417 /* lato-bolditalic.woff */, - 574830202B9AAC242B41646372312E88 /* lato-bolditalic.woff2 */, - 7D94C1FAB02FB40820981C7A49B5E7FE /* lato-italic.eot */, - 718CD83F2538F19D7AA7C502D7DC6D80 /* lato-italic.ttf */, - 06E38BE96ED7F90EBB53A885E4F12324 /* lato-italic.woff */, - 5F1EF697E085057B51DFEF7D8FE26178 /* lato-italic.woff2 */, - D7F8D4E75D865FC8EC3FA837AF68BCCE /* lato-regular.eot */, - 41CCD77B794E8E191A9A1E792AF7BF32 /* Lato-Regular.ttf */, - 201A7D4272065F0C4D31F2DF5826620D /* lato-regular.ttf */, - D49C1615224D14933CE6F81A9FEE23D8 /* lato-regular.woff */, - 062A656E426FE8A40C3C4511EC063781 /* lato-regular.woff2 */, - 2487128CCAF698CD32BC9F7356D067D3 /* layout.html */, - CC835314AACD55C592376464CE791137 /* LICENSE.md */, - 98B715897ED0B62BCB3F2FF2CC2F5E4E /* Makefile */, - 1C8740D360CAB1AD5E8DC6787AD171A1 /* MetaWear.podspec */, - 49F4FED4993A402B48D2B293284C4F28 /* metawearboard.doctree */, - 30F561FD3CDE2CC34316A596BFD4F28E /* metawearboard.html */, - D78D5C00D78D3B53BD3323F7FA705860 /* metawearboard.rst */, - D8D46793DF8922FD403600571425F7AD /* metawearboard.rst.txt */, - 26C860EAB358F3DD8AA5262C8744B2AA /* metawearscanner.doctree */, - 9D91C5DF9A4246540D7A29F032A7873E /* metawearscanner.html */, - 9DB9ACC7A563D660A2B7C97BFDCAAF06 /* metawearscanner.rst */, - 97153EF2ACDF91237C9A2C16FAAE9C1D /* metawearscanner.rst.txt */, - B877E8FDE4B1A21BB615CCCDFFEBBB1E /* minus.png */, - C2AD95DF74CB58E8CCBE29F347B61EBE /* modernizr.min.js */, - B7AE4901194EF1802421C58ACDF1CB4A /* objects.inv */, - FA2889C481CC87D163A33A66963375A5 /* plus.png */, - FD4E54F47B2E03CB9F2E2C8A721864A8 /* project_setup.doctree */, - E3087BD47353952D3722FA7CA40E81C4 /* project_setup.html */, - CAFE7B77DDA4A1D7142D97690D04C84E /* project_setup.rst */, - 4A44F19BF4D105E5613D5F4FEE673725 /* project_setup.rst.txt */, - B61F4E31067F0A112E7BDD9B78A29055 /* pygments.css */, - 6DA467E97C62CCFB52F57139A0BFB80A /* README.md */, - 3A240542A20A713FB7039D7E70157EC5 /* roboto-slab-v7-bold.eot */, - 13EEBC8CB139D6A0EED2CE04FC2BBEFB /* roboto-slab-v7-bold.ttf */, - DA54BF72E064B1C35C8E39D0A4DD88FB /* roboto-slab-v7-bold.woff */, - 5B7F9023B4DC197F8BE7CC42D8EA0C9D /* roboto-slab-v7-bold.woff2 */, - CF72D18E567E8911AF7A4304814B9F37 /* roboto-slab-v7-regular.eot */, - 4D175864EAE5385AD57CFC286B6092BF /* roboto-slab-v7-regular.ttf */, - 233C55C0F8D778F8B627C9DCB62E2E4D /* roboto-slab-v7-regular.woff */, - A6EB15038408EF32C06C1BF3D64E55C4 /* roboto-slab-v7-regular.woff2 */, - B7B65FDB561C56F43FEF705A460B2D69 /* RobotoSlab-Bold.ttf */, - DA27407ABCCF4256DD50BCF3A84FC4BC /* RobotoSlab-Regular.ttf */, - A7C4C123E2D3E779854962316FDBAFF9 /* search.html */, - 500B033E617D7BC5C64253A3BBBB085A /* searchindex.js */, - 63E047A1DC9EE228ED5E52B30A389DDD /* searchtools.js */, - 1163C159F0C301F918C8605EF5BB3FD9 /* theme.css */, - 6D32FFCCAB39D19A608CE7C0E7553D32 /* theme.js */, - FC9C68AF9502D238049DC2150D5F5341 /* underscore.js */, - 6E0788A0D08E6334F10AC94743953174 /* underscore-1.3.1.js */, + DBFFFB2D69AC3ECD5FDA323B6C279422 /* cpp */, ); - name = Pod; + name = generator; + path = generator; sourceTree = ""; }; 4C331B0E08CEDD601AF9FF76827198FC /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS */ = { @@ -1648,9 +1667,20 @@ E43893E60AA833FD5CE59855FFBCA9CF /* TaskCompletionSource.swift */, F1A1AC3BB4A89AA1E39895BA4B77E06A /* Support Files */, ); + name = "Bolts-Swift"; path = "Bolts-Swift"; sourceTree = ""; }; + 4CE2C3FBFDB34E2BA9965CC7ED8DDDFB /* MetaWear-SDK-Cpp */ = { + isa = PBXGroup; + children = ( + 74EA8693466C057CF8FDABE82AC19D93 /* bindings */, + 32711B679FCD2A62E893D391E4822167 /* src */, + ); + name = "MetaWear-SDK-Cpp"; + path = "MetaWear/MetaWear-SDK-Cpp"; + sourceTree = ""; + }; 4E025A61715011D0B2A1AA6A0B32FED5 /* iOS */ = { isa = PBXGroup; children = ( @@ -1677,23 +1707,32 @@ path = "Target Support Files/Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS"; sourceTree = ""; }; - 5266B6EA4049D45EABC8B05E21B4182B /* cpp */ = { + 62A37558BA95823811F8CEFA1874A990 /* cpp */ = { isa = PBXGroup; children = ( - DC05B55C8E50D3344CC11348925701D7 /* dataprocessor.cpp */, - 1899A2B7831D2DEABC5102099AD9E6E0 /* dataprocessor_config.cpp */, + 48D266E399A4AD8C456953D262CD9B0E /* dfu_operations.cpp */, + 70F6B686369511CDB37017E366F11DFA /* dfu_operations_details.cpp */, + 8BFD6B2E301BA8ACDC2D3BCD0E758C1D /* dfu_utility.cpp */, + FE4DE47D314987E0F452D7DCD0416DB2 /* file_operations.cpp */, + 004F2B2F88E223F15641B8434DF89667 /* miniz.cpp */, ); + name = cpp; path = cpp; sourceTree = ""; }; - 54998DF3F34F8B1269CEB6F09AA406A3 /* DFU */ = { + 6452AAADCFDD30471C76FD59718DC0B8 /* MetaWear */ = { isa = PBXGroup; children = ( - 0F6551260609078AA629619C9CCEC4AA /* FirmwareBuild.swift */, - 84595EA72B446FDF423987A80F1CABB5 /* FirmwareServer.swift */, - 718E68D5B9B0F507C9C5DAB63E0926F4 /* MetaWear+Firmware.swift */, + BAB8DF9597D00B9CE9A12AB6B2D5B5E4 /* AsyncUtils */, + 09AF99F7ADB313EFE8D9BEA6A3E4B478 /* Core */, + 0303FBB22509CCA0D6D7F4D1945F5B38 /* DFU */, + 9961DF2EC9D74F860531C3F81627F6F6 /* Mocks */, + B839C121B8C9B0FD803452985816E29D /* Pod */, + A868111BEADE1A81142D2F936CBF0D55 /* Support Files */, + 13BC394ED500FB5D749341AD51D6F5D3 /* UI */, ); - name = DFU; + name = MetaWear; + path = ../..; sourceTree = ""; }; 64EF2407AF477D3C4EA28183E96F7486 /* Pods */ = { @@ -1706,6 +1745,25 @@ name = Pods; sourceTree = ""; }; + 66F8BAC8698C48EC514EC917367F47D6 /* cpp */ = { + isa = PBXGroup; + children = ( + 10B5EE02F081CB150B64BC4FB70FBF7B /* datainterpreter.cpp */, + 687FF210AC568843A9F8C1CDA491ECC7 /* metawearboard.cpp */, + ); + name = cpp; + path = cpp; + sourceTree = ""; + }; + 67D29520CBB3BA8180B1DE136EA75EB6 /* dfu */ = { + isa = PBXGroup; + children = ( + 62A37558BA95823811F8CEFA1874A990 /* cpp */, + ); + name = dfu; + path = dfu; + sourceTree = ""; + }; 6834BAF960218FEF459A4BC5DF80C641 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS */ = { isa = PBXGroup; children = ( @@ -1723,14 +1781,6 @@ path = "Target Support Files/Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS"; sourceTree = ""; }; - 6835FD6AC70BDD6C38988E231992E5B0 /* impl */ = { - isa = PBXGroup; - children = ( - C0F597F561087DFBB8DEAB9A2681AA3F /* cpp */, - ); - path = impl; - sourceTree = ""; - }; 6FA53FF751BB23DBE4F9BA733E785630 /* Products */ = { isa = PBXGroup; children = ( @@ -1782,6 +1832,24 @@ path = "../Target Support Files/iOSDFULibrary-iOS"; sourceTree = ""; }; + 74EA8693466C057CF8FDABE82AC19D93 /* bindings */ = { + isa = PBXGroup; + children = ( + B5A81ADA70C6AA946CCCB90576766106 /* swift */, + ); + name = bindings; + path = bindings; + sourceTree = ""; + }; + 777D3F3A51492B71055685C25D623DF9 /* processor */ = { + isa = PBXGroup; + children = ( + C185FD33C3AF7739349C3ACF020C88B8 /* cpp */, + ); + name = processor; + path = processor; + sourceTree = ""; + }; 7B59D2B5FA7674A77769690EC31B69E0 /* Support Files */ = { isa = PBXGroup; children = ( @@ -1804,41 +1872,49 @@ path = "../Target Support Files/ZIPFoundation-iOS"; sourceTree = ""; }; - 841F7EBD9053FFECCA63F29C660244D1 /* peripheral */ = { + 810C28BAB686C4E6FD8F77E4A2067ECB /* platform */ = { isa = PBXGroup; children = ( - 970E0563C5C84033A1C1D19DE7CE8AE1 /* cpp */, + E05067ADEB4444D99C9909B8C9B4104A /* cpp */, ); - path = peripheral; + name = platform; + path = platform; sourceTree = ""; }; - 911FE041753DEBFAC347E2408C7D9FAE /* cpp */ = { + 8BA14648532FAD77B1D0C4E4AAAC530B /* cpp */ = { isa = PBXGroup; children = ( - 1F5A0A0E96458AC5D9A29D4B38AC875F /* anonymous_datasignal.cpp */, - 6815A76152D2B6E658D68110E116BF9A /* datasignal.cpp */, - A8EC5526D0BEE7D5ADBABFEFFB0AF46D /* debug.cpp */, - 40D28FBC8418308A8188AE6A59CCA5BA /* event.cpp */, - F69D9DEEAEF7D7E9568EE5C30A0AB5FA /* logging.cpp */, - 12F259C70E58E19EE9E4657BA663A5A0 /* macro.cpp */, - 1D32438A3E37C2538BCEF7DEF8B76D91 /* moduleinfo.cpp */, - 32BC530DD23022E2E1B595E7AF36B83F /* responseheader.cpp */, - 156218A27163C74F4FF3A8B88B84FDB0 /* settings.cpp */, - 34053E679B634F86E79B0EA7A85D3463 /* timer.cpp */, - 3F979CABDF820E04886A9E5CF79FD7A7 /* version.cpp */, - ); + 1055045CA95BD2B47B08BD783A980121 /* anonymous_datasignal.cpp */, + 2C439C24DEA34C216997BFDB48274C53 /* datasignal.cpp */, + 028E0B50105A41869AE9683AA8EF087F /* debug.cpp */, + E611B7FB86FBA0CB0FAC5D47D53C5AB7 /* event.cpp */, + E8BC482C61CBAE6CB05B493775955BDE /* logging.cpp */, + F5B2809F72B0544508607C4E1AD38065 /* macro.cpp */, + B83AA79D41272316A3114303985BB4F0 /* moduleinfo.cpp */, + 3AF105819F0CF98F677510BD677E9C91 /* responseheader.cpp */, + FF2AA8233135C47CC5AC6C25FBD6A516 /* settings.cpp */, + 9E0362A7CDF8C01C9D967F8417265F7C /* timer.cpp */, + 1FEAD48A2DC9006470AEA6A870085C76 /* version.cpp */, + ); + name = cpp; path = cpp; sourceTree = ""; }; - 970E0563C5C84033A1C1D19DE7CE8AE1 /* cpp */ = { + 92D5A60EEF60447A3C8B4F9A2D6CBED2 /* Core */ = { isa = PBXGroup; children = ( - 96C187B8B764C5AEB4EC2F301BBE940B /* haptic.cpp */, - B8C303105C8F0BE828799CFB61EF6037 /* ibeacon.cpp */, - 987F4CFE622139EC278269C11A1070A2 /* led.cpp */, - 43AC3751B2F2988747E79D26B073C548 /* neopixel.cpp */, + 150D817BA455C92B497629C15EB2969A /* Bridging.swift */, + 82D6BB676A3452CF143E065E861A4B89 /* CBUUID.swift */, + F28F4FB76B2B65A671A7F0342CC64711 /* DeviceInformation.swift */, + C7D0FDF991487027613374C0F7701226 /* LogDelegate.swift */, + 2C6E0959E06A9BC6D49824DCEC497E3B /* MblMwGattChar.swift */, + D7B6FF697AF15FAD5B996B730D32226F /* MetaWear.swift */, + D79846913C5C3DB9B906408EA67CDBE4 /* MetaWearData.swift */, + 61374778F4B640C23FAAD145DB6958F2 /* MetaWearScanner.swift */, + 0BF6180B8C72293B7BA5EB27B28FA560 /* String+VersionCompare.swift */, ); - path = cpp; + name = Core; + path = MetaWear/Core; sourceTree = ""; }; 9957DE25779F623D89FE0445846B4B0C /* iOSDFULibrary */ = { @@ -1891,16 +1967,27 @@ FDAB73F304877FD4585F078B919261FC /* ZipArchive.swift */, 71BA9937DBE20F4EF08BE1DE86EB8335 /* Support Files */, ); + name = iOSDFULibrary; path = iOSDFULibrary; sourceTree = ""; }; - 9B0C2126EFBCFC7D478E00078FEC301C /* tvOS */ = { + 9961DF2EC9D74F860531C3F81627F6F6 /* Mocks */ = { isa = PBXGroup; children = ( - 0196948ACFF051DD8861A6C465F8CE3F /* CoreBluetooth.framework */, - F7D4003C2F97282E3C82E5711C7F8C46 /* Foundation.framework */, + DA367DEDE4621CF8CD3DAE036431A3E1 /* MetaWear+Mock.swift */, + D116DFA4679AFCC77CE41D2A4F735077 /* MetaWearScanner+Mock.swift */, + 2BD2D2BB4D92665D01ACDFCE31BBC15B /* MockModule.swift */, ); - name = tvOS; + name = Mocks; + sourceTree = ""; + }; + 9B0C2126EFBCFC7D478E00078FEC301C /* tvOS */ = { + isa = PBXGroup; + children = ( + 0196948ACFF051DD8861A6C465F8CE3F /* CoreBluetooth.framework */, + F7D4003C2F97282E3C82E5711C7F8C46 /* Foundation.framework */, + ); + name = tvOS; sourceTree = ""; }; A30314C16F29B7EF72A2FE3A43D26717 /* Pods-MetaWearIntegrationTests-iOS */ = { @@ -1919,12 +2006,49 @@ path = "Target Support Files/Pods-MetaWearIntegrationTests-iOS"; sourceTree = ""; }; - B1D13BA5D705082104ADE27E5C6858D4 /* sensor */ = { + A868111BEADE1A81142D2F936CBF0D55 /* Support Files */ = { isa = PBXGroup; children = ( - E45667E673CDC5210DC68217EE71C5E6 /* cpp */, + F860B790D62343F8134E5954F4C4366D /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.modulemap */, + A6F258AF5B520A69684A5F72D7F51E17 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m */, + AE64C0498D8FA63678FB1804701156AB /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist */, + 2E60F458071A86FFE0F81E3486039F3D /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-prefix.pch */, + 5F88F3C950B2435CD21FD23C8D341C23 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h */, + AB0851094434AE3AB131EAA5B548883F /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.debug.xcconfig */, + 1881483EDF6FAA713D89C78E866AEDF8 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.release.xcconfig */, + 04C6362C74068C59599ACDB1ABD11C44 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap */, + 07774B397919BA3B2A371F29C47F646E /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m */, + CD21CD6E45D18F771B094E6ABEC8C67F /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist */, + BFEAA5C46CEC3615548C77D7E8DBB3C7 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch */, + 9D33E3506F1148C04329908970491D35 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h */, + 03F1E3102C3F890C45FE08306FFD60EF /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.debug.xcconfig */, + FC2DEB55514859BAD3CF4DA5A03DBA15 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.release.xcconfig */, + 672DB1967DAC409A8FA6A8594D4D5E1A /* MetaWear-AsyncUtils-Core-UI-tvOS.modulemap */, + F671E9F4ADCCBF97B74EC54AA341E8F6 /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m */, + 26A488517176F845577DBC09E94C2DA9 /* MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist */, + 15846FC0DBF518C187A55CDA92587321 /* MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch */, + BFAA633966C968BF70362AFA2B44336F /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h */, + 480D43633F8D604BCC70A3AED00509EB /* MetaWear-AsyncUtils-Core-UI-tvOS.debug.xcconfig */, + 7D53C4762331E313543557FEEFC58092 /* MetaWear-AsyncUtils-Core-UI-tvOS.release.xcconfig */, + 70DF358FE7A2143E5B4227575929C6B2 /* MetaWear-AsyncUtils-Core-UI-watchOS.modulemap */, + 404A96C52A94C9574CC02A2A53C0D18D /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m */, + FBE9F7026ACDB8291BF9EA7BC156FC58 /* MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist */, + 4E9A83075A09FD9BDE74BE1E67C5A7B2 /* MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch */, + AB0670C7A0A1C99783AB3946244DD414 /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h */, + 9F800835A6F77B0E3045D698A12979F1 /* MetaWear-AsyncUtils-Core-UI-watchOS.debug.xcconfig */, + 0421114FF4A72C4B6114B97C28A38C3A /* MetaWear-AsyncUtils-Core-UI-watchOS.release.xcconfig */, ); - path = sensor; + name = "Support Files"; + path = "MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; + sourceTree = ""; + }; + A9EBA85700A2C273EB2C6FA2138C8E66 /* impl */ = { + isa = PBXGroup; + children = ( + 66F8BAC8698C48EC514EC917367F47D6 /* cpp */, + ); + name = impl; + path = impl; sourceTree = ""; }; B571877CC4D490AD2DCF5FC4D5F5F290 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS */ = { @@ -1944,40 +2068,221 @@ path = "Target Support Files/Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS"; sourceTree = ""; }; - C0F597F561087DFBB8DEAB9A2681AA3F /* cpp */ = { + B5A81ADA70C6AA946CCCB90576766106 /* swift */ = { isa = PBXGroup; children = ( - 87859CACBA3B3EAD7779E437E2108045 /* datainterpreter.cpp */, - B3B544A8CA50CA8E1AF96A0582DE5218 /* metawearboard.cpp */, + E1BAE33B69D5B09EF1A9FC27B6F9104C /* cbindings.swift */, ); - path = cpp; + name = swift; + path = swift; sourceTree = ""; }; - C32B69DF97E92F5EBEF89B5AEB18800D /* Development Pods */ = { + B839C121B8C9B0FD803452985816E29D /* Pod */ = { isa = PBXGroup; children = ( - 410C274F8DCF06D1F37E9C35947C4215 /* MetaWear */, + D345321EDE2EE8B59FF85A74DB084CE4 /* accelerometer.doctree */, + 514460527B164C2C158F0F4C80FD9A7C /* accelerometer.html */, + 935D1394AE639E8F00BE3081913443F7 /* accelerometer.rst */, + 91FE19D118211B202B45011055DBB4D7 /* accelerometer.rst.txt */, + 4AA1701D1A0307E77BEFC6CE5848A6A2 /* advanced_features.doctree */, + AE12E6F73BE35D420EB8C194BF598725 /* advanced_features.html */, + 97D05E467C307ABB9635B28110FA349E /* advanced_features.rst */, + 1D07E927F7D808F604AF5624418F4F14 /* advanced_features.rst.txt */, + E263A509D6D173F177A0D7C86EDFF2AB /* ambientlightsensor.doctree */, + 4B0F720B27CAD8659810EDA5A6C35DA9 /* ambientlightsensor.html */, + C48F81905939F13E116B931697115385 /* ambientlightsensor.rst */, + ED58B4B256AA26B8E0D5EE629023B10F /* ambientlightsensor.rst.txt */, + 26CD56EFF4847CE728D5433E2DB7AFD1 /* badge_only.css */, + 15D2FB5A458C72908F44B10B63D71EF7 /* badge_only.js */, + E39D91CF240BF79A063CA446F493AA94 /* barometer.doctree */, + 0AC46E876C3E1B90B4DFE9C79D18A0E1 /* barometer.html */, + 1DB0754FCFAA5EB6F0F312EBB3B8F528 /* barometer.rst */, + E27D22C5334E9B4D5A2A6D07C03A2D06 /* barometer.rst.txt */, + 7EFA8928A7D73201A6861C54687033CC /* basic.css */, + 8DE8452EC12E2741702A570A088DEAC7 /* conf.py */, + D5B93887430E6C591556A0EF02C766B0 /* core_modules.doctree */, + 4B2223E12D44FB73DAB5D6F7891EF8E5 /* core_modules.html */, + C71508F7B93AE559E77814E3E7A2FA27 /* core_modules.rst */, + C1B910DE72812567B6DFD9510F7A5FDE /* core_modules.rst.txt */, + C4C44D4B1A5357B81BE64B8843779793 /* cppbridge.doctree */, + 658733D97A210807EE17BB34B195AE8D /* cppbridge.html */, + EF66C281C1B0C3D03EAA4F00432DBED2 /* cppbridge.rst */, + 1DBB1FB0B10FBF78D05ADF85318B6529 /* cppbridge.rst.txt */, + 3900651C6419D97D66B3CE4CC38E0293 /* dataprocessor.doctree */, + 04F1146BEBA5AADD27791BB2E2AAA4EB /* dataprocessor.html */, + CA4BB0314E9D78D56FD5027D6B01DD6A /* dataprocessor.rst */, + D9B3EDDDD55372316292289426ACEB2A /* dataprocessor.rst.txt */, + 4216C5024631D84CC9C285B13B5BDFC6 /* datasignal.doctree */, + ACFC7B105FC5C65A1C19F17E04F17015 /* datasignal.html */, + 7ADBB8E2ADA5627BE9240BCE2E1E4F1D /* datasignal.rst */, + 331BCE7E8A4E6CAC55A76D56AA68EA82 /* datasignal.rst.txt */, + 8D3652B146CA2A7F874401124545A2F0 /* doctools.js */, + AF305215DFE9A27CE1ADBE7E7B770BFB /* documentation_options.js */, + 032CEC809A22F93CB6C3F5E5A317521C /* environment.pickle */, + C0FB3ABB2BB2B9595997C842A141AEBC /* event.doctree */, + F880D193B51445AAF2927FB1E01099CF /* event.html */, + 435B486F13B6505CA701B00C43A96144 /* event.rst */, + 4673FCA4465DD7964AE1990F01D5A03C /* event.rst.txt */, + 51189966EA72E1BB869E16AD41078072 /* file.png */, + D884DF08ED52525ED6047FFED870B836 /* fontawesome-webfont.eot */, + EF6AC1C6C417468EA7F148210B469862 /* fontawesome-webfont.svg */, + 324E2FE9A0F859A4365077C4FF606DBA /* fontawesome-webfont.ttf */, + F561F46581972559F90E50096FFE0D68 /* fontawesome-webfont.woff */, + 5AC5DFA72F02AB91382E962E3A359F7A /* fontawesome-webfont.woff2 */, + F65FD667B6AF9DC18ADA3F036A17D751 /* genindex.html */, + 11CADFF53C91E1A30202D8FF4E333388 /* gpio.doctree */, + 6699D0CB02E787285C092BE4A823805C /* gpio.html */, + 3436227BE8D2D5C12C6BB7932BBB9564 /* gpio.rst */, + 58071458C3E37173B5E9FB77B0B402B6 /* gpio.rst.txt */, + 4821C5ECED4C42454F1906EB1AB599A1 /* gyro.doctree */, + FACEF7A2C43428C48F8D9064DBDFE262 /* gyro.html */, + 298FBFA2961E0ABE180C7D3500ABC25E /* gyro.rst */, + 50692CB646BDCD767666CDE52F27C1B5 /* gyro.rst.txt */, + 03D31D20DBC3442CB19A9F770F0F669B /* haptic.doctree */, + CE69A2567D12B12C2B107E5850828454 /* haptic.html */, + E235F6D9ABDD5F5648321517AE0873C0 /* haptic.rst */, + 63DB63974E1D8A4DE90926A7EC7E85F6 /* haptic.rst.txt */, + 6BBCB51C4982A10638899AD215F08324 /* html5shiv-printshiv.min.js */, + E0EF817B8ACF2B742709EEB078D73948 /* html5shiv.min.js */, + 48F8F2BDEC18CA3064EA81017692099B /* humidity.doctree */, + 520A92BC8C90DCB592994BC47170F913 /* humidity.html */, + 4211F351A32AB011F5605555A8BF3D12 /* humidity.rst */, + E14BDF534FA1AE0403D1BF3B178BA512 /* humidity.rst.txt */, + FEF8B7DBE8F65750D1E171E1F79C410B /* i2c.doctree */, + 3241C05D8C5E343CF0B2BAB01F725786 /* i2c.html */, + B91F1C9A6EAB40C8B17FAC50BAD8CE94 /* i2c.rst */, + E698377A71CB8AF4779D7846D77AF57C /* i2c.rst.txt */, + 8238F7B09D7BE1CEAF69B873EC0D0393 /* ibeacon.doctree */, + 869157F2C8657463A638538E4A4D4542 /* ibeacon.html */, + 083209CBEC7188026918DF4412D0A88C /* ibeacon.rst */, + D9722619DF8B6D03DC8CB4379C169217 /* ibeacon.rst.txt */, + 1630E35F3CDA6F4D83398862B274956F /* index.doctree */, + 1DEAEE66CB7A6E65AA70C29F4C092CEE /* index.html */, + 8AA20D9BF6393C428E6E50D1E08642CF /* index.rst */, + F59C202178C076EDA446977F2FEFCD12 /* index.rst.txt */, + 501284F1E104D14C18436A424A19E883 /* jquery.js */, + 5DB5789E22EE88A6BFC93CA12B1FD2C6 /* jquery-3.5.1.js */, + 497A3D8D030881DB6CB6B5B326C990C0 /* language_data.js */, + 43702C7E71143F7A58027486BF754B2A /* lato-bold.woff */, + 6B9EDE710F3548E412213762FDCADC66 /* lato-bold.woff2 */, + 67A38240C2F6AB3D988103B06FDA2E56 /* lato-bold-italic.woff */, + B9DE04807240DAD7B7615C77F2C88E0E /* lato-bold-italic.woff2 */, + 23DEC02CD53AF8DC02BA2775736F0B88 /* lato-normal.woff */, + 7CF37884298133CBFBC43F4FEFD1F96F /* lato-normal.woff2 */, + D715619D059164B067FC6E5C2BF2CCFA /* lato-normal-italic.woff */, + A5B4FB7363E1CAB3F67C07B1E02C3AB5 /* lato-normal-italic.woff2 */, + EDEA9B8D4A6C78359421B18F6D8BEF21 /* layout.html */, + 30CBD70D5E2C9D164E5B0A50AB856B7B /* led.doctree */, + AB51FA4A873B8D6D3BBE74CE5C51B01E /* led.html */, + 00582FE3731876451149806FBB0E5A28 /* led.rst */, + D5D8D9BB704897DB80AEF35223822F59 /* led.rst.txt */, + 5662EC03B5572F934B93D68A89840281 /* LICENSE.md */, + 84678036820087139307A0D5A9DD0AEF /* logger.doctree */, + 404E52D706E88C3E2D21665D3787BD3F /* logger.html */, + 0CB733F1ABB28FD09CC24CAFF4208936 /* logger.rst */, + DE34A01D996FD05426F39C73144DEE3B /* logger.rst.txt */, + D64E6CDBA4D2E8418FC7A8D31F7A6A54 /* logging.doctree */, + 0A3CA4C5806BBDE749B2721D6009C367 /* logging.html */, + 130F499F721C1B377D36A98D02F77DD8 /* logging.rst */, + 917DB45A8FEE7B728716F772FBF8E126 /* logging.rst.txt */, + 17CCDA63A1BE61939C8547776C1A883B /* macro.doctree */, + 741F76A53255EB4BC0727D609E6089B9 /* macro.html */, + 0C5FB000D6B6DDBC03223EA811B3D032 /* macro.rst */, + E4EA3B4DDA717762D1BEED67A285324C /* macro.rst.txt */, + 72928F4CC81798BC3C646D23CA73DF97 /* magnetometer.doctree */, + 81339F75DCE72B5AE681B25A8DB18914 /* magnetometer.html */, + EE25A9247D4788AD16B427E2C8AF7537 /* magnetometer.rst */, + AD3D2DC5607A28C341643D91B5403730 /* magnetometer.rst.txt */, + C702ED0809CC0E4E97F466336F3EA047 /* Makefile */, + 65A2066632648F45012E132A371FDFEA /* MetaWear.podspec */, + BA6D9315DF7722D1CBA54A84730A431B /* metawearboard.doctree */, + DD223C6AEAA57760FEBCFC7B233F76DF /* metawearboard.html */, + 1225B2929A00F38CEC6D51ADA16F1AC0 /* metawearboard.rst */, + 4704E1F7A5A48B0E8FAB31DE03DC6677 /* metawearboard.rst.txt */, + 5CDF0BF0876C2225488C3E38AF10B72A /* metawearscanner.doctree */, + 8360F1633C74840A0D782F57C0CA2FBE /* metawearscanner.html */, + 2E392B44F6DBAEA7B61F13E33DE5355D /* metawearscanner.rst */, + 345ABF33B8336E5C17E9A833DBAC86E1 /* metawearscanner.rst.txt */, + 57460BDA6ED4060B16C109DBB0C06D17 /* minus.png */, + 1841D19E78EC3951F80B2F159EB39BB6 /* objects.inv */, + CC82E3F634ECDF89CE55E835D0005849 /* peripherals.doctree */, + FC53B70009CA08373DF91D7B6A55785E /* peripherals.html */, + 1D5AAA0720CDB17B211FFF8D4037D68C /* peripherals.rst */, + 7BD4CEEA8B02382D430964158161A432 /* peripherals.rst.txt */, + 52FAF418AD94109385FA1D3AC0AFCD2B /* plus.png */, + 7AE36CBB6092A9591700292C286683A3 /* project.doctree */, + 944953FB01FBE8D198344E47AFF13C77 /* project.html */, + 22B736D3FC1B0B4BFBA2053785D7DA8D /* project.rst */, + 97D77859A95F9FF7EF1BDB0F7A1068ED /* project.rst.txt */, + 4072A5BE975773E7CFDF4BFC8339D23A /* pygments.css */, + 74F43548816C5AB91261972E941D884F /* README.md */, + A72C83474F51912B437DDBB99635529C /* Roboto-Slab-Bold.woff */, + C393E99AF46B41DC9FDFECDD8627EF5B /* Roboto-Slab-Bold.woff2 */, + 3B52446E71CE54FAE4CD18972CC07B81 /* Roboto-Slab-Regular.woff */, + A8EA025156B2B2B4253BA7971E51513D /* Roboto-Slab-Regular.woff2 */, + 3F885996234BEE8561A281623A50A68C /* search.html */, + E236F0C7316A3ED6DB87F905B6188019 /* searchindex.js */, + 2C8D80D65202BB8439A01802C09D6B78 /* searchtools.js */, + BE81155C54FB572EC008598255A83F98 /* sensor_fusion.doctree */, + 411B3D554AF16BD66FA67215A26B8FF0 /* sensor_fusion.html */, + F1A627A8DD7F9FBBF8952FE393BEC265 /* sensor_fusion.rst */, + 3794B3C15BC07E0E2EC76B0024A06914 /* sensor_fusion.rst.txt */, + 3562CFA855EC2EE37012CDA3F992E2B4 /* sensors.doctree */, + 1411C15BEC5AF49F39FEBE09D9673803 /* sensors.html */, + B3F719EDFB984964533497C04A536A14 /* sensors.rst */, + BA09895315AED647C4679C191B80F007 /* sensors.rst.txt */, + 633D81E45903968FFC677683B3A3F959 /* settings.doctree */, + CC54A8F259F505BE581162985789AB82 /* settings.html */, + AA3F0486442D250B585153BC0B50AB16 /* settings.rst */, + 0F1EB82D49AB88821356CA73A0771FD5 /* settings.rst.txt */, + AA2F5A0B9829FA254786E60EEF5D6B41 /* spi.doctree */, + 192093A37DD2B580540A720F1C1EDBB0 /* spi.html */, + 75DED9099614D8712B0635C463327671 /* spi.rst */, + D68405B5CAE3BEB51AA16FD72FE685E6 /* spi.rst.txt */, + 0D9DFE8A544DE8FAD30184591A1A9EC3 /* temperature.doctree */, + CACDA00D168FB45E46CEC36074EFB198 /* temperature.html */, + 11D7E43CE0EF603C44855E4593EAB0BA /* temperature.rst */, + 9138B3C087F2809AADC4A5C030F4518C /* temperature.rst.txt */, + 074889A87EA13F8E63B6FF6CEDBB3038 /* theme.css */, + FFC67266CA93B9F91719C19A38CE3E82 /* theme.js */, + B581D3CA36F57D8DE2568093A974DC0A /* timer.doctree */, + 548D0D8C70C6E8B79D50BD75D74ACBFA /* timer.html */, + 95AD9E24CD1B164E8D6D3A8B3C8A45EF /* timer.rst */, + FB0DD21CB704F683E0A6CF1532AA860C /* timer.rst.txt */, + 814C461CEADC4525DC008CBFD193DC1F /* underscore.js */, + 32CB9E5FAD9892725D6936A428426733 /* underscore-1.3.1.js */, + E4A59430561A111DB9F99CFA9FC7796C /* upload.sh */, ); - name = "Development Pods"; + name = Pod; sourceTree = ""; }; - C5D03155B163389E89DF100593A5EC38 /* swift */ = { + BAB8DF9597D00B9CE9A12AB6B2D5B5E4 /* AsyncUtils */ = { isa = PBXGroup; children = ( - AA8C4E4954F577DC5838552C26A95F21 /* cbindings.swift */, + ED30FE0D206D2DEB526E26E7D3A002BD /* MblMwDataSignal+Async.swift */, + 60E262EDBD11C805D5B628157982C484 /* MblMwEvent+Async.swift */, + BC4B70F9F0E4EAAE94860B390EEC84A5 /* MetaWear+Async.swift */, + 326C7A13414F85997D21C1DB7AF746AC /* MetaWear+LED.swift */, ); - path = swift; + name = AsyncUtils; sourceTree = ""; }; - C6A87C63CF1687C08376A8DA3AAA919C /* AsyncUtils */ = { + C185FD33C3AF7739349C3ACF020C88B8 /* cpp */ = { isa = PBXGroup; children = ( - BDFACC6AF305A7494159DF42B26EB163 /* MblMwDataSignal+Async.swift */, - 7B8D3D8E73DE294535A22E4052635474 /* MblMwEvent+Async.swift */, - CA4615841E2C1E8157D02E95B64E71C4 /* MetaWear+Async.swift */, - 35DF09B838AFE914ED26D06CCF9A534A /* MetaWear+LED.swift */, + 9E7D6F9807103C2CE80B3165286C6ED0 /* dataprocessor.cpp */, + CFD843C82D19CF619F26E922A6612134 /* dataprocessor_config.cpp */, ); - name = AsyncUtils; + name = cpp; + path = cpp; + sourceTree = ""; + }; + C32B69DF97E92F5EBEF89B5AEB18800D /* Development Pods */ = { + isa = PBXGroup; + children = ( + 6452AAADCFDD30471C76FD59718DC0B8 /* MetaWear */, + ); + name = "Development Pods"; sourceTree = ""; }; CF1408CF629C7361332E53B88F7BD30C = { @@ -2009,6 +2314,31 @@ name = "Targets Support Files"; sourceTree = ""; }; + DBFFFB2D69AC3ECD5FDA323B6C279422 /* cpp */ = { + isa = PBXGroup; + children = ( + 79039E935AA8A9170F0A2AA8C3F03298 /* common.cpp */, + DB1185C771E66593125CF8CDD0EB8DB0 /* CSharpGenerator.cpp */, + DC74A8C206ABDA0979899B483C9DD1AA /* JavaScriptGenerator.cpp */, + 3EC1C6520D805971B93CEE5E29C7C7B8 /* PythonGenerator.cpp */, + B2DFE15A0E62BE06D2CF9D4AE53F927D /* SwiftGenerator.cpp */, + ); + name = cpp; + path = cpp; + sourceTree = ""; + }; + E05067ADEB4444D99C9909B8C9B4104A /* cpp */ = { + isa = PBXGroup; + children = ( + E11C052B3CED55F30D1DEDDFAAA7E408 /* async_creator.cpp */, + 92A6AEE6F244210ACF8B60C22AFA8B6C /* memory.cpp */, + C7D96C1FB9ED1E49325F6E92F2AE4F33 /* task.cpp */, + 871C3E184118A1C65B2DAEAA3016D788 /* threadpool.cpp */, + ); + name = cpp; + path = cpp; + sourceTree = ""; + }; E26B388969235E8564664B12AD9BD7DE /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension */ = { isa = PBXGroup; children = ( @@ -2026,54 +2356,6 @@ path = "Target Support Files/Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension"; sourceTree = ""; }; - E3EECC88ABA24F58071D970E3C2C9A49 /* bindings */ = { - isa = PBXGroup; - children = ( - C5D03155B163389E89DF100593A5EC38 /* swift */, - ); - path = bindings; - sourceTree = ""; - }; - E45667E673CDC5210DC68217EE71C5E6 /* cpp */ = { - isa = PBXGroup; - children = ( - E328DFF0E848278274D43506C91398A2 /* accelerometer.cpp */, - 508B72A1332DB45B29517F8C078A5B9F /* accelerometer_bosch.cpp */, - 5AE6AD7941189A82EF88895867E33CEB /* accelerometer_mma8452q.cpp */, - FF46D6EFAB8DAD5E788925F8871905B2 /* ambientlight_ltr329.cpp */, - C8C2558A12ABD13B44687E76729580A3 /* barometer_bosch.cpp */, - E8EF759174C33810CE720C98CAB60552 /* colordetector_tcs34725.cpp */, - 62ADBF1A253BFDC62623319DA3174DCC /* conductance.cpp */, - 24A13113E387EC83E9B0377DA7C515D0 /* gpio.cpp */, - 6948E117F8C4ABF920FD4BD166D6F08B /* gyro_bmi160.cpp */, - 34A8066D3D9A5135273080AF0ECAA244 /* humidity_bme280.cpp */, - C60154A98FA6CA33BA0AECEC621F8FEA /* magnetometer_bmm150.cpp */, - 2D8FA78546C4335D20357CC4567FD305 /* multichanneltemperature.cpp */, - 3950A3826BAA4FD2F305A186CD1B5F75 /* proximity_tsl2671.cpp */, - 151AE9FA75AEEAF352A67C395BAE1AD7 /* sensor_fusion.cpp */, - B7D2E886936673F46B3ADEEE4C155AF6 /* serialpassthrough.cpp */, - AFD17B5704C5009F44F9A60B6FF5DBCF /* switch.cpp */, - 6A33FF544CA30169E9B6900CC8263EBE /* utils.cpp */, - ); - path = cpp; - sourceTree = ""; - }; - EF0C386A83776D0A8E3B7687EB326181 /* core */ = { - isa = PBXGroup; - children = ( - 911FE041753DEBFAC347E2408C7D9FAE /* cpp */, - ); - path = core; - sourceTree = ""; - }; - F1276031D47A9035C8BF9B7501332E7A /* processor */ = { - isa = PBXGroup; - children = ( - 5266B6EA4049D45EABC8B05E21B4182B /* cpp */, - ); - path = processor; - sourceTree = ""; - }; F1A1AC3BB4A89AA1E39895BA4B77E06A /* Support Files */ = { isa = PBXGroup; children = ( @@ -2110,51 +2392,22 @@ path = "../Target Support Files/Bolts-Swift-iOS"; sourceTree = ""; }; - F9C3E01003B2D3D01A4D03C90F073476 /* Support Files */ = { + F219E3586AB5AE6305C127B1E97E78FB /* sensor */ = { isa = PBXGroup; children = ( - E0D05D977C38746146221CF5D41C3E3B /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.modulemap */, - FB233AD05DEC52256AD3CAF1AC2EEAD7 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m */, - B36C9F83877B7D7C69AF31BAA98B13D1 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist */, - AFD331B576BADC6292746268886CAC85 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-prefix.pch */, - 9B8FC7C2272DC23B97564CF4692CB4C3 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h */, - DAC7FB72D61C137AE357C3C90E848DAC /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.debug.xcconfig */, - CCC6F0BB303761D0D1CE724666AE1B71 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.release.xcconfig */, - 9E7547F332C36731C98EE5EB9132D405 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap */, - CA02E0EC039FEBB54570073617E3F3A3 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m */, - EE406B828EADA04316B92391ABCB3284 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist */, - CF3B9FF9F2E473C5D5F46037E64ACB75 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch */, - F0E32B7BD057ACF329409780425BCAF8 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h */, - A245C5D0AA47340FD2954B4AA314C11C /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.debug.xcconfig */, - DC112E70B6C61DDB793D7E4D3987AD6A /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.release.xcconfig */, - ECD45F0CFF163D5FC6D44B1AE9AC82A5 /* MetaWear-AsyncUtils-Core-UI-tvOS.modulemap */, - 42397083F482953900FFDC203831BB02 /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m */, - 8CABA87F84CCA806629497A2FA68E5AD /* MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist */, - F04651D024BB9AA934A83292ECEE0F6B /* MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch */, - 6B91C3B3123AB2E3A23111FCEB9CC1B9 /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h */, - 744C574986A6E5F66BD0D268A667940D /* MetaWear-AsyncUtils-Core-UI-tvOS.debug.xcconfig */, - 77114046A4A3FE14DB1472E7AF34ECE0 /* MetaWear-AsyncUtils-Core-UI-tvOS.release.xcconfig */, - 2547169A3CD980A3B3334E5ACCD35A90 /* MetaWear-AsyncUtils-Core-UI-watchOS.modulemap */, - 1EC5F814B3A60C94EDF55FB05EEFA124 /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m */, - 3711E4C793C5FAC69D3C998E37E02980 /* MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist */, - 370F5445DBB346752166F0102315DAA8 /* MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch */, - 278588D3780F675E87F91A89D50D9BBA /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h */, - 15AF8752D2B4DE1B1A24F1B233E457CD /* MetaWear-AsyncUtils-Core-UI-watchOS.debug.xcconfig */, - 8F73760084FBD03CCEF6CFF50D15C3D2 /* MetaWear-AsyncUtils-Core-UI-watchOS.release.xcconfig */, + 4B4319F3FB5EA78CBD754F80F2E2BE31 /* cpp */, ); - name = "Support Files"; - path = "MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; + name = sensor; + path = sensor; sourceTree = ""; }; - FC6EBE503F139A27F5C8E2F46D5F2089 /* cpp */ = { + FE1E12BF53AA453246E280FE6167B1B4 /* peripheral */ = { isa = PBXGroup; children = ( - EABC01310722C277D019E6C2DB9517E7 /* async_creator.cpp */, - 628908291910B17BE8A3DC6FD29A7CF9 /* memory.cpp */, - 4B3F29D4C5BD9B02000722D3D5FCF208 /* task.cpp */, - D478768EE86CA3C5F1C572EAC53FAF90 /* threadpool.cpp */, + 3626EA163A7603EF0BF70CB7128D48A6 /* cpp */, ); - path = cpp; + name = peripheral; + path = peripheral; sourceTree = ""; }; FF5B84E7E5CC018492AFD5659AFAF887 /* Pods-MetaWearIntegrationTests-macOS */ = { @@ -2192,43 +2445,43 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 26B6AA402000C693054B5A0CFFF02728 /* Headers */ = { + 28DF15EC00E0072CB001938690D35782 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 70AB09964E5D702EDBBD9DADA80FAD1D /* iOSDFULibrary-iOS-umbrella.h in Headers */, + CAAA1842F5F7F4D105FAC2951DA031CE /* Bolts-Swift-macOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 28DF15EC00E0072CB001938690D35782 /* Headers */ = { + 3033C27A10F2ED0A7D0D06BA1DEEAEF1 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - CAAA1842F5F7F4D105FAC2951DA031CE /* Bolts-Swift-macOS-umbrella.h in Headers */, + 4372F9E0D0AD29E55CDCF6C48016A505 /* ZIPFoundation-iOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 42649B7A363AEEB4FC11934679FBA3A7 /* Headers */ = { + 3AA6503654418AA521C4D7BBFE26CF82 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 1F5E15976D948FEBBE265FC121F0BE7A /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h in Headers */, + 592B337FA5931F1F3E682E46975D1CBB /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 84DE145FE943840F1071D68340C7147F /* Headers */ = { + 64D22000C2FDA8E68386CD6CF9277CF2 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 27CE81CBE47F1F2BBFA60340F9BF2595 /* ZIPFoundation-macOS-umbrella.h in Headers */, + EDA28C957C97A0F5433AC3DA8977C640 /* ZIPFoundation-macOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 8A2C520CA885D832714EBBBF3D163947 /* Headers */ = { + 827CA640E25C74A814ABD0EEFEBC152E /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 33061445861134D6DA1C0153992EB665 /* iOSDFULibrary-macOS-umbrella.h in Headers */, + 30B1037AEE08E9DFF03B5458E5D9AEE3 /* iOSDFULibrary-macOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2240,6 +2493,14 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 979B5E4E7AE4F7DC3B3DB45C6F89E85B /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + D069ACD4764F38EDC6E2129A03EA7A7C /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 9A5D86E7A0420CF118F00621A5298502 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -2256,19 +2517,19 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - A985F2F35C09D3BB9631ADD8CD04F10E /* Headers */ = { + AADEE0C7368F8DFF333732CEAF53E5FD /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 538AB836189BCE4210CAA24B170E26DA /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h in Headers */, + 3611004D23F30DCBD3C8247A2AF37FDA /* Pods-MetaWearIntegrationTests-macOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - AADEE0C7368F8DFF333732CEAF53E5FD /* Headers */ = { + B0B09555022026A5FC925D1426A4F8FB /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 3611004D23F30DCBD3C8247A2AF37FDA /* Pods-MetaWearIntegrationTests-macOS-umbrella.h in Headers */, + 20864E5EE9812F5F3E0BC8EED1F520D3 /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2288,11 +2549,11 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - B6BE6E4FB293EC60A9F42D3CB0ECBD7B /* Headers */ = { + BEE876BC24A0E51E512E7D10A5802A7B /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 618C2E0152378DD659637F45561A830C /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h in Headers */, + CB2CAA055B3C04CC3BD57AB26B4022A4 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2304,14 +2565,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - E9EDCA496805C9261DF70484C504EE9D /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - B188D7D39FCAD27DE9C8A3054AD74D40 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; EA0B2C660F4BE850B2C7FF025F1E9FE0 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -2336,19 +2589,19 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - F94F8AFD57362F6B65193D1728AA0E8E /* Headers */ = { + FBA5EDEB4A16B969AD05251B1008BF4A /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 8A9114EDA6B9D0DFBDD14FADBF0C4F6F /* ZIPFoundation-iOS-umbrella.h in Headers */, + 1FC046B9C2C69BDD0CB06413583C42A6 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - FBA5EDEB4A16B969AD05251B1008BF4A /* Headers */ = { + FEDAEA035557C683661E9394BF8A97C0 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 1FC046B9C2C69BDD0CB06413583C42A6 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-umbrella.h in Headers */, + CA3CACD4BD19D74A7DC7AACFD228CEAA /* iOSDFULibrary-iOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2385,10 +2638,10 @@ buildRules = ( ); dependencies = ( - F43F5F8DCE91BFBD05E04223117C2707 /* PBXTargetDependency */, - BB65607A5F49909AA44B7315A426A23F /* PBXTargetDependency */, - 11709C1E0465EA760F31D7B830DA343F /* PBXTargetDependency */, - F939E81A22EA9BD95099879278780783 /* PBXTargetDependency */, + 71611EF2F78A917F33AF736D2856ADD9 /* PBXTargetDependency */, + 89D8BF044049A4B5FE34B86CADF48AB1 /* PBXTargetDependency */, + 079A8D57CB3BA54A0B22B7486EF377C4 /* PBXTargetDependency */, + FCD46C66D111F00D78F6CB4EBF09FA9D /* PBXTargetDependency */, ); name = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS"; productName = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS"; @@ -2397,18 +2650,18 @@ }; 285D0CB5C235EDD5B3B0975146484BE0 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS */ = { isa = PBXNativeTarget; - buildConfigurationList = E04EC46CB2314773E61FC314A05B05F8 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS" */; + buildConfigurationList = 2F4F90BF93F6FEC582100163F3CCA8BE /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS" */; buildPhases = ( - E9EDCA496805C9261DF70484C504EE9D /* Headers */, - DBDA90E432F0460FCDB7611C566DABD1 /* Sources */, - A4EB7C114B1C367FD5F95D5E5B6311C3 /* Frameworks */, - EBCC7D65D184C942708C9880E6F76404 /* Resources */, + BEE876BC24A0E51E512E7D10A5802A7B /* Headers */, + 77C61F9A9D4702C968DB7CD10CB18CAD /* Sources */, + 1C5C1A73253B010AD8C259AA95FAA698 /* Frameworks */, + 482175E6692DCA4222178A88C05B623D /* Resources */, ); buildRules = ( ); dependencies = ( - 9887273622398B3C2E775D20539BAF93 /* PBXTargetDependency */, - 761C2E28439C7D4B2902FC57DEEB00EE /* PBXTargetDependency */, + B88684C6B1812C1021FE2999413A2306 /* PBXTargetDependency */, + 2C068D6689112805BDCE38728DF36AFA /* PBXTargetDependency */, ); name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; productName = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; @@ -2417,18 +2670,18 @@ }; 42FE80E7F4B82634FE879096E38AF67E /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 4E68E76D640A5A3FA22B853334D37E38 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS" */; + buildConfigurationList = FB874F0DBDC55C5513173BE0C143D5EB /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS" */; buildPhases = ( - B6BE6E4FB293EC60A9F42D3CB0ECBD7B /* Headers */, - 207666CA5FF92A607C6EB5105CC7DE54 /* Sources */, - 32B87607DE1D9355AA5C68500BCE7E87 /* Frameworks */, - 355D667085C76B18F1104B9B6CF0EA75 /* Resources */, + 3AA6503654418AA521C4D7BBFE26CF82 /* Headers */, + 40B8FDBA598274F8CC505AC2CEA4AC88 /* Sources */, + 83591A8A1939BDA251052A14239FFC42 /* Frameworks */, + DF7EF825EB2DD2343328AB1B9985AD1E /* Resources */, ); buildRules = ( ); dependencies = ( - 8A641ECB1B2961978C2B2870C00ED4D6 /* PBXTargetDependency */, - B0CCDC085A76F06827B16E4936565384 /* PBXTargetDependency */, + 6CE2CCD50B23851198168E503F8AF353 /* PBXTargetDependency */, + 87A2714FD722D52DA60800C1BC4D7E1A /* PBXTargetDependency */, ); name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; productName = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; @@ -2447,8 +2700,8 @@ buildRules = ( ); dependencies = ( - 3518F81DDAC042A92237B483B25BF9CD /* PBXTargetDependency */, - 2B2C0417744A42DB7A1508F8E18D585C /* PBXTargetDependency */, + A7FC9D747F1AE8BAC97BBB188203490A /* PBXTargetDependency */, + 4E1CB07D44E9A1861F66C98DA4ABD512 /* PBXTargetDependency */, ); name = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension"; productName = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension"; @@ -2493,17 +2746,17 @@ }; 667F340C7624C4E82D66A02A17E0B33D /* MetaWear-AsyncUtils-Core-UI-watchOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 0F9414FB0836F7F4A5F8B1D2248F60F0 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-UI-watchOS" */; + buildConfigurationList = 40B3C411F942B04A8F769CB88A944DAD /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-UI-watchOS" */; buildPhases = ( - 42649B7A363AEEB4FC11934679FBA3A7 /* Headers */, - 4E44439886B297D22654F949FE080854 /* Sources */, - 8D8F63998F7A532026EE473DD12E3D49 /* Frameworks */, - 2AC08857FB320B46FB22270391F8FB10 /* Resources */, + 979B5E4E7AE4F7DC3B3DB45C6F89E85B /* Headers */, + 39A94AEDBAF79BEC22748DCD2292E067 /* Sources */, + 68E3DA2904A9227CB8FB0662ED8AC1EB /* Frameworks */, + 0CC9498288F2D2D8823DB3AE8E46D35E /* Resources */, ); buildRules = ( ); dependencies = ( - 1367212B79CDC3645EC4F6F73283BE5A /* PBXTargetDependency */, + D4775D319C2D7C9BAA4F34CB6927ACDF /* PBXTargetDependency */, ); name = "MetaWear-AsyncUtils-Core-UI-watchOS"; productName = "MetaWear-AsyncUtils-Core-UI-watchOS"; @@ -2512,17 +2765,17 @@ }; 79F9638EA00F4594D84B597FE45CD2DC /* iOSDFULibrary-macOS */ = { isa = PBXNativeTarget; - buildConfigurationList = C47EF85DA72C5F871433D935D5B09A26 /* Build configuration list for PBXNativeTarget "iOSDFULibrary-macOS" */; + buildConfigurationList = 23777FCC2AB054866C68B9DFE7934AD7 /* Build configuration list for PBXNativeTarget "iOSDFULibrary-macOS" */; buildPhases = ( - 8A2C520CA885D832714EBBBF3D163947 /* Headers */, - 25E3991792FA8954AE221FB4E35D74B5 /* Sources */, - 953F0DDE8E8AB9AEA547081EF3E076F1 /* Frameworks */, - 46B057B1F511B9A933F6C08C617E2C4A /* Resources */, + 827CA640E25C74A814ABD0EEFEBC152E /* Headers */, + D1D6CF4D5E9CA6BDBDC90A15FEED77A3 /* Sources */, + E92196D2BFFB948DCF5E66C8725278A6 /* Frameworks */, + F0249FE6D454D5718B7F7F1F52160B3F /* Resources */, ); buildRules = ( ); dependencies = ( - 3B41630F2E42001FD052B198A5E2D308 /* PBXTargetDependency */, + 2D1A0F7701A1420FDD6D7BB3D22F9D99 /* PBXTargetDependency */, ); name = "iOSDFULibrary-macOS"; productName = "iOSDFULibrary-macOS"; @@ -2541,8 +2794,8 @@ buildRules = ( ); dependencies = ( - E1D7C4508951E638BBDB16B3DB7AB5CB /* PBXTargetDependency */, - F6223B0FFEF85B310D5BC6DC54DD832A /* PBXTargetDependency */, + 2C22C3A9F47F79DCEC63E04FF3E8A878 /* PBXTargetDependency */, + EA3D1AFEA43653FD4C5DA0D3ED04091B /* PBXTargetDependency */, ); name = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS"; productName = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS"; @@ -2551,17 +2804,17 @@ }; 8804FF230B80287816DD00C23D7C3AFB /* MetaWear-AsyncUtils-Core-UI-tvOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 165A0C60F81957823324F36997AE8171 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-UI-tvOS" */; + buildConfigurationList = 6F6ACB325DC7480C7D93A67FBE0D6472 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-UI-tvOS" */; buildPhases = ( - A985F2F35C09D3BB9631ADD8CD04F10E /* Headers */, - 2450F9513EE407B2BDB15068F8B4B02B /* Sources */, - 9B6ABFE44C8BEF42176B28EF75604578 /* Frameworks */, - 59ACC97EC962BE76113F6E696856387C /* Resources */, + B0B09555022026A5FC925D1426A4F8FB /* Headers */, + 716C1241C4C5D47A855CFEC9F8D09690 /* Sources */, + ABEF92D0CBC742D571A4A2579E0F7715 /* Frameworks */, + FB0107DA7861C6FF47BFFEC431532BC5 /* Resources */, ); buildRules = ( ); dependencies = ( - 3B9C19CD12F8079C310304667F9EA029 /* PBXTargetDependency */, + B45CB4F6C6AA4DB8B34735411BEDE1F0 /* PBXTargetDependency */, ); name = "MetaWear-AsyncUtils-Core-UI-tvOS"; productName = "MetaWear-AsyncUtils-Core-UI-tvOS"; @@ -2570,12 +2823,12 @@ }; 8B5BB2050078EFCACBEDC5B4195B80CD /* ZIPFoundation-macOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 33FBF094DF6ED15B18196B55ABEEA52E /* Build configuration list for PBXNativeTarget "ZIPFoundation-macOS" */; + buildConfigurationList = 605C826BCDB00CF8B50903B0EF1EF2A3 /* Build configuration list for PBXNativeTarget "ZIPFoundation-macOS" */; buildPhases = ( - 84DE145FE943840F1071D68340C7147F /* Headers */, - 3A5B820CC43CFBAEE41E2AE86652A11A /* Sources */, - 1D4DA408911C22B9CE92ACD320D939D5 /* Frameworks */, - 5F99ED7F8257CE568DC44D03BC705441 /* Resources */, + 64D22000C2FDA8E68386CD6CF9277CF2 /* Headers */, + 71C033570A17242F42A504C15BF12409 /* Sources */, + 188BFBC13E2010BB6C5A35FD234E3D98 /* Frameworks */, + F83795A95B03C0C8F572DF2EC3FFA796 /* Resources */, ); buildRules = ( ); @@ -2588,12 +2841,12 @@ }; 9AF8AE8821E967844EEF26BBB341564D /* ZIPFoundation-iOS */ = { isa = PBXNativeTarget; - buildConfigurationList = B9EEC09E8E7C050B5829EC60E59A5195 /* Build configuration list for PBXNativeTarget "ZIPFoundation-iOS" */; + buildConfigurationList = 591E3BE00906A2A9ADB253E6B9529947 /* Build configuration list for PBXNativeTarget "ZIPFoundation-iOS" */; buildPhases = ( - F94F8AFD57362F6B65193D1728AA0E8E /* Headers */, - 3590841F240BF2CE0031D6B329866F94 /* Sources */, - A5C6EE4C71F54601B2874699CBDE64AA /* Frameworks */, - 5B5A72B0C466792C17CEFE0586AD954D /* Resources */, + 3033C27A10F2ED0A7D0D06BA1DEEAEF1 /* Headers */, + F2253E4CDEFB243F76B4E99B5F6F2759 /* Sources */, + 3FACD50741EF96C7700D554DA50482C9 /* Frameworks */, + 02F8B72FB6E8B42F5D69BC7B6AA2B4C7 /* Resources */, ); buildRules = ( ); @@ -2634,10 +2887,10 @@ buildRules = ( ); dependencies = ( - 467D3E95EF20E614E9A00A66162EF58E /* PBXTargetDependency */, - C4C001F845D70FE7FECB60CF2B2C6D16 /* PBXTargetDependency */, - 4137BDDDF104DB51573F616EB74658E0 /* PBXTargetDependency */, - C0B5F76901A0B5B7EBADAB80B357476D /* PBXTargetDependency */, + D620C620B8C3B51FE68AAC58EB87B988 /* PBXTargetDependency */, + 2BE45CE86595EE4B41860C7B496B35F8 /* PBXTargetDependency */, + BAFCF6E87F4C45DE0426C5B09E8E695E /* PBXTargetDependency */, + CF6E2CCFEFDE8852F13398D462105425 /* PBXTargetDependency */, ); name = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS"; productName = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS"; @@ -2656,7 +2909,7 @@ buildRules = ( ); dependencies = ( - 47DF4B75EEF270A5E68D14DB492987AB /* PBXTargetDependency */, + 487A458D5A75D6451A1D1F1455C09F88 /* PBXTargetDependency */, ); name = "Pods-MetaWearIntegrationTests-macOS"; productName = "Pods-MetaWearIntegrationTests-macOS"; @@ -2675,7 +2928,7 @@ buildRules = ( ); dependencies = ( - 25C671E6EA4A38B59564C242A45C477F /* PBXTargetDependency */, + 782403B8CCE6FE8592259F4FDE9CCF88 /* PBXTargetDependency */, ); name = "Pods-MetaWearIntegrationTests-tvOS"; productName = "Pods-MetaWearIntegrationTests-tvOS"; @@ -2694,10 +2947,10 @@ buildRules = ( ); dependencies = ( - CEED945C8BDC354EEBA17A2BCBEABE8A /* PBXTargetDependency */, - 077B459507208B60114870F970ACAD64 /* PBXTargetDependency */, - 759C21B8E4BFE834946AE720A975D13E /* PBXTargetDependency */, - B3ED30B8C48D2DA73BCAF1ADD571F694 /* PBXTargetDependency */, + D4DFCBE4E799F8310AC9D1A23CDE1054 /* PBXTargetDependency */, + E92E57414ED46106EF21D68D331A34B4 /* PBXTargetDependency */, + 629A1127E60231EBE67605EA16F58991 /* PBXTargetDependency */, + 615E3F20B7DEED298C8A6D84F7F97176 /* PBXTargetDependency */, ); name = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS"; productName = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS"; @@ -2706,17 +2959,17 @@ }; D5D94E351BD6926C6DC33FBD834E16AC /* iOSDFULibrary-iOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 55D8DCD965D251C3105AB0BA31703B8B /* Build configuration list for PBXNativeTarget "iOSDFULibrary-iOS" */; + buildConfigurationList = CA3FF7C1A2DCC5CBDF2CCC91996FE6FA /* Build configuration list for PBXNativeTarget "iOSDFULibrary-iOS" */; buildPhases = ( - 26B6AA402000C693054B5A0CFFF02728 /* Headers */, - 06D61564D59C6C550E79FE2C564CEDCE /* Sources */, - D8A457F5B83A2D84B98DB9BD2598E5B1 /* Frameworks */, - 90EACC80294A13523D6D3C3492AB4444 /* Resources */, + FEDAEA035557C683661E9394BF8A97C0 /* Headers */, + 1A48BD74C9395E8E229BD3BE39EADDFF /* Sources */, + D1B62453835FE722C8144C28016F1587 /* Frameworks */, + 5BDF15C22DEFD657DC16B457650E1CBB /* Resources */, ); buildRules = ( ); dependencies = ( - DD81FBFD32AC3333E5634D187501F9F1 /* PBXTargetDependency */, + 1285FC91DD8D2E04239EF5E7D43816B1 /* PBXTargetDependency */, ); name = "iOSDFULibrary-iOS"; productName = "iOSDFULibrary-iOS"; @@ -2735,10 +2988,10 @@ buildRules = ( ); dependencies = ( - 765A9DCBDD432391B148A55072BC6893 /* PBXTargetDependency */, - 3F914F4ACEA9077C36C2D9F5801E68B2 /* PBXTargetDependency */, - E3FDF2649DEBB0D75A915D307C733B56 /* PBXTargetDependency */, - 7AFEAC130E39F6C4562CB085C1DEB932 /* PBXTargetDependency */, + 2EBDDC15435A98F403EBB67111DFBB80 /* PBXTargetDependency */, + C993AF623745FD530B5A25F265C8E50E /* PBXTargetDependency */, + F2832AC7076F272759BEDF224B918D29 /* PBXTargetDependency */, + 393F1632B86CA53F8222A2AA04D341BC /* PBXTargetDependency */, ); name = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS"; productName = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS"; @@ -2757,7 +3010,7 @@ buildRules = ( ); dependencies = ( - 136D24552B720DF472D716244289F5A9 /* PBXTargetDependency */, + F66F1927E22203B8CBD8D3A9630A16D1 /* PBXTargetDependency */, ); name = "Pods-MetaWearIntegrationTests-iOS"; productName = "Pods-MetaWearIntegrationTests-iOS"; @@ -2776,8 +3029,8 @@ buildRules = ( ); dependencies = ( - E3242FBA40972813885042793CACACDE /* PBXTargetDependency */, - E13686AD86675BE6F3B86053205E90E9 /* PBXTargetDependency */, + AD5ADE6638A6DF92B41DAF315B1B8A58 /* PBXTargetDependency */, + F2612DFC1564ADE930C3215603234BC0 /* PBXTargetDependency */, ); name = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS"; productName = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS"; @@ -2840,42 +3093,42 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 12D4B625E3BC1609ABC8BB1B93740CB5 /* Resources */ = { + 02F8B72FB6E8B42F5D69BC7B6AA2B4C7 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 17EBC057BC92603A1001E439704EC412 /* Resources */ = { + 0CC9498288F2D2D8823DB3AE8E46D35E /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 1D18BB4CA0ECD260ADD53D6EF75DBA7A /* Resources */ = { + 12D4B625E3BC1609ABC8BB1B93740CB5 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 1DC3B8FDC7B7E3D24BCB0F3046FC9624 /* Resources */ = { + 17EBC057BC92603A1001E439704EC412 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 2AC08857FB320B46FB22270391F8FB10 /* Resources */ = { + 1D18BB4CA0ECD260ADD53D6EF75DBA7A /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 355D667085C76B18F1104B9B6CF0EA75 /* Resources */ = { + 1DC3B8FDC7B7E3D24BCB0F3046FC9624 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( @@ -2896,91 +3149,91 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 46B057B1F511B9A933F6C08C617E2C4A /* Resources */ = { + 482175E6692DCA4222178A88C05B623D /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 59ACC97EC962BE76113F6E696856387C /* Resources */ = { + 5BDF15C22DEFD657DC16B457650E1CBB /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 5B5A72B0C466792C17CEFE0586AD954D /* Resources */ = { + 62DB6EAD6FD03C1CF02766C0CF3F74B5 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 5F99ED7F8257CE568DC44D03BC705441 /* Resources */ = { + 664531C3A506014CECE76816E0D5FDC9 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 62DB6EAD6FD03C1CF02766C0CF3F74B5 /* Resources */ = { + 69C71F6FF452FF019C60EF1CBFD78407 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 664531C3A506014CECE76816E0D5FDC9 /* Resources */ = { + 7FAADF1790BDBC2A1A39B9CCD58322B8 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 69C71F6FF452FF019C60EF1CBFD78407 /* Resources */ = { + DF7EF825EB2DD2343328AB1B9985AD1E /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 7FAADF1790BDBC2A1A39B9CCD58322B8 /* Resources */ = { + E244DD6A01FC4823C8E7D98C6256AF2E /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 90EACC80294A13523D6D3C3492AB4444 /* Resources */ = { + F0249FE6D454D5718B7F7F1F52160B3F /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - E244DD6A01FC4823C8E7D98C6256AF2E /* Resources */ = { + F0E124A4FA91AD44F3B03B4C3C0EDD02 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - EBCC7D65D184C942708C9880E6F76404 /* Resources */ = { + F60AAF1F2F5C5595422B9AF0AD0C23AF /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - F0E124A4FA91AD44F3B03B4C3C0EDD02 /* Resources */ = { + F83795A95B03C0C8F572DF2EC3FFA796 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - F60AAF1F2F5C5595422B9AF0AD0C23AF /* Resources */ = { + FB0107DA7861C6FF47BFFEC431532BC5 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( @@ -2990,59 +3243,6 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ - 06D61564D59C6C550E79FE2C564CEDCE /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 0B5195A0520A3479381DFE79CEA0AD06 /* ButtonlessDFU.swift in Sources */, - 4CEBB04BFAF443819C7CFD2CE0C774E6 /* crc32.swift in Sources */, - E2D00F2A2CC08B551BB973D06512DF9F /* Data.swift in Sources */, - 68EB3D05F9D2686283779E6E91EE6052 /* DFUCharacteristic.swift in Sources */, - 26B396BE2D2944159A7DCE3235F4DA7F /* DFUController.swift in Sources */, - 95645DE5D6DA2D4EA261D36F5A9A9A5D /* DFUControlPoint.swift in Sources */, - 1D2752827AE095A857F2F96F85CA951F /* DFUExecutor.swift in Sources */, - AA703245FC216C9D3076261B623E8F81 /* DFUFirmware.swift in Sources */, - E4C3B64FD7B8B2FB96D367C13532DA6F /* DFUPacket.swift in Sources */, - 0F61F361940815407E660A41D66A7DF4 /* DFUPeripheral.swift in Sources */, - B55709B1DEA74844742490A6B0B1C8BC /* DFUPeripheralDelegate.swift in Sources */, - F7E2BA30DDF7BFA7EE55252D2B9F2040 /* DFUPeripheralSelector.swift in Sources */, - 9E28235B5093C392DA360F58F007EBAC /* DFUPeripheralSelectorDelegate.swift in Sources */, - 3E0EEE6166C8F8BB4A25D87D5141FBB6 /* DFUService.swift in Sources */, - 8C1986D098244A0A4DF045179F36FDC5 /* DFUServiceController.swift in Sources */, - 9B229A348FA956DCFFF546AAC39D66F4 /* DFUServiceDelegate.swift in Sources */, - 09D89182D85C100D55500D36243A1580 /* DFUServiceInitiator.swift in Sources */, - AC8A2BDB812636F1AE5E4B708E1BEDFF /* DFUServiceSelector.swift in Sources */, - FDDEAFD52023F4D1138B5F4D2AE1B969 /* DFUStarterPeripheral.swift in Sources */, - 1250784C2A6D54AD90DF20F8943AF3D9 /* DFUStream.swift in Sources */, - 536EF2CD1BDCA1B0AEE3BD15D8A237B1 /* DFUStreamBin.swift in Sources */, - A207D826FE6B1C9FB4BEC14E378732C4 /* DFUStreamHex.swift in Sources */, - CEB80958BC83F11671C3B064A1432016 /* DFUStreamZip.swift in Sources */, - 129FD75C4CD6A7A0348AD29515B323D9 /* DFUUuidHelper.swift in Sources */, - 60EE841307BD21B2DAAB325EDC67BB65 /* DFUVersion.swift in Sources */, - 13097D4B5C8BFF3FD3CFF46CB873719A /* Double.swift in Sources */, - 365FB5651784725D7257C0DF986FB82A /* IntelHex2BinConverter.swift in Sources */, - EEE4D32D5B23362D3F6D1DD2453B9E25 /* iOSDFULibrary-iOS-dummy.m in Sources */, - C9FFC67B36C4C3BCC8A32451938F0C30 /* LegacyDFUExecutor.swift in Sources */, - 940D20C0B2F5122D49947C5631D7A465 /* LegacyDFUPeripheral.swift in Sources */, - 8986F6576B312D0BA45A85630E830E10 /* LegacyDFUPeripheralDelegate.swift in Sources */, - 5B9911A5C50CBAE304302C3EFCA29F44 /* LegacyDFUService.swift in Sources */, - D6FB031CA848CC5A0A0238B14FF7A9FF /* LegacyDFUServiceInitiator.swift in Sources */, - A786C5411CA27E02F6B99FC7C80D2E25 /* LoggerDelegate.swift in Sources */, - 8C401303B66748834343DEF0196467F2 /* LoggerHelper.swift in Sources */, - 2AB34B8AFFA74307998D5E1E2C730DC2 /* Manifest.swift in Sources */, - B031BE5617B55C865E7CA90133A57317 /* ManifestFirmwareInfo.swift in Sources */, - 4734DE71E9177A673F9210807D7CA53C /* SecureDFUControlPoint.swift in Sources */, - C0BC7F8EAEDE4B0FBC74AE22ABF9E0DE /* SecureDFUExecutor.swift in Sources */, - C96ECA87A86225866080908D47203996 /* SecureDFUPacket.swift in Sources */, - FC9BB8CBCDADC5CE7E13AE47EA189068 /* SecureDFUPeripheral.swift in Sources */, - B93CC8541145A5FEDC4895BE000A8162 /* SecureDFUPeripheralDelegate.swift in Sources */, - 655DB88705AEDB7BE22B7518D1AED7C8 /* SecureDFUService.swift in Sources */, - 759ABE84E5C03EDF6DAEB327B84C4793 /* SecureDFUServiceInitiator.swift in Sources */, - DDA9596249D32D2C265FE34C4B484835 /* SoftdeviceBootloaderInfo.swift in Sources */, - BE5DA74FDFE550BD07C3438D733FA555 /* ZipArchive.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 0D67D570288528561EBA8674131AE032 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -3067,312 +3267,391 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 207666CA5FF92A607C6EB5105CC7DE54 /* Sources */ = { + 1A48BD74C9395E8E229BD3BE39EADDFF /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 9476AEC1127A32CA971AFD2B1C5DF321 /* accelerometer.cpp in Sources */, - 7BE212CF550AD818F66626514300AB06 /* accelerometer_bosch.cpp in Sources */, - D69408C50EF78E01C74414B645D19EDB /* accelerometer_mma8452q.cpp in Sources */, - 477355B2E241649335E42FB788ECAFC3 /* ambientlight_ltr329.cpp in Sources */, - 792278C62CBFB62C15484D7EF5112329 /* anonymous_datasignal.cpp in Sources */, - 18B3536F76AA6D5805A3D54FB293A9BA /* async_creator.cpp in Sources */, - 1138F2DBE851211F15E0EDF7F780086D /* barometer_bosch.cpp in Sources */, - 00E32AA029E165EFEBF1149B0B1B23D8 /* Bridging.swift in Sources */, - A41F5DD36A92C1B7769BE81B5D5D9A92 /* cbindings.swift in Sources */, - C6B755D4A0ED01827A62F298D9E0E0A0 /* CBUUID.swift in Sources */, - 58BFA96A3836B9FB559175426F03FC8D /* colordetector_tcs34725.cpp in Sources */, - 61ADD75622CBECD6246886A980C8098A /* conductance.cpp in Sources */, - 4620AFE130D8087075260610DB3BCF97 /* datainterpreter.cpp in Sources */, - 80C8E3A29759E7348E33D271B776BDAD /* dataprocessor.cpp in Sources */, - 05C38057BBC7DC7B906AE940C965C9C5 /* dataprocessor_config.cpp in Sources */, - 6F6D8FCCA6362710DCA64D356D440233 /* datasignal.cpp in Sources */, - E398630A2AA2F153A3574DB3A9191E6C /* debug.cpp in Sources */, - AAB07233F932C37D80A3C80070947012 /* DeviceInformation.swift in Sources */, - C2A4F6F0456F19A76DD271EDC935A83C /* dfu_operations.cpp in Sources */, - 7DCF1A53C34A6676E53E58977B01CB81 /* dfu_operations_details.cpp in Sources */, - 11A3D5E6268E628BEB094E0F862B9B17 /* dfu_utility.cpp in Sources */, - AD20BC69E0C3BC852FFA41C353257A67 /* event.cpp in Sources */, - 262BD614CCF0F3F1D29AB9ABFDEEF898 /* file_operations.cpp in Sources */, - 0CB888E0514B852F57B603DE8F24464C /* FirmwareBuild.swift in Sources */, - D82F8113E318FA8A873FC495733A41B3 /* FirmwareServer.swift in Sources */, - 5011FE4E8871C7AE681791ABC2759BD9 /* gpio.cpp in Sources */, - 1828A674642F9601D3EE9DF8349F906A /* gyro_bmi160.cpp in Sources */, - 1594F90575CC6B6CE520E590AACF5CA1 /* haptic.cpp in Sources */, - F074429419BBF6F8FC4180167C84D997 /* humidity_bme280.cpp in Sources */, - BC0AFCB8457D881B50133859E3CD4EA9 /* ibeacon.cpp in Sources */, - 9D497A6BC135BDC8D5C73E5DD30E08CC /* led.cpp in Sources */, - BF53063B16EBA5DDA925B32F0D20CE04 /* LogDelegate.swift in Sources */, - 225E119D952C1EBBAA5B3229B45F27DE /* logging.cpp in Sources */, - 7ED6EAAA9BB7F7E5692147519B416F82 /* macro.cpp in Sources */, - 3CC98CBCE74994DFD1154697E65582C8 /* magnetometer_bmm150.cpp in Sources */, - FD53239C13079D754289A993D1E02EEA /* MblMwDataSignal+Async.swift in Sources */, - 912BE7C9447963C1B2A361B08E075DE8 /* MblMwEvent+Async.swift in Sources */, - EB9E30E82080FD2FB5AF92572A84D626 /* MblMwGattChar.swift in Sources */, - 32C083C864B1F136CA2B39B172F3DEB2 /* memory.cpp in Sources */, - 1F53B49C2588587431798F94B8E535C6 /* MetaWear+Async.swift in Sources */, - 3462C96F20729079AEB8BEDA081F25F0 /* MetaWear+Firmware.swift in Sources */, - F67581601E4C0EDE701DCE2EE53B2BDD /* MetaWear+LED.swift in Sources */, - 35EB122A9477D982A48040BD7B186071 /* MetaWear+Mock.swift in Sources */, - 0C31DB07E9004E396E3C7DBA62C60B71 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m in Sources */, - 76A6B1C23FDF0A781C4006579AD847F6 /* MetaWear.swift in Sources */, - C7A0AB3EB1323B6861C8EE0B5A766138 /* metawearboard.cpp in Sources */, - AFF9E19C7D0196EB611581D3A3397E62 /* MetaWearData.swift in Sources */, - 79FF160AF9C1FF6F69FCDD2F46619969 /* MetaWearScanner+Mock.swift in Sources */, - E3615CE2E186ECB627C02C046A88F2F2 /* MetaWearScanner.swift in Sources */, - B2B2D20C2FCD771970CDA6E1A78A0ACE /* miniz.cpp in Sources */, - DAB450A18A1CA171ABA86697F0436B6B /* MockModule.swift in Sources */, - E592CD07ED4670C2EEEF4E6607D53F1B /* moduleinfo.cpp in Sources */, - 0A25F5DC4BF3CD15ACE5118ED41C3829 /* multichanneltemperature.cpp in Sources */, - 3CAF76BC10F474CA9855523B81A06D45 /* neopixel.cpp in Sources */, - D1ED3493BDE5FB7E9CFC3FB26C7AF7F4 /* proximity_tsl2671.cpp in Sources */, - 3F3144431C4F7DE30C700044B8290B79 /* responseheader.cpp in Sources */, - 2D73F130E5B5F0785ACEA9950C6DA9F6 /* ScannerModel.swift in Sources */, - 9B1299E77FE224675F09B2899BCDB8CE /* sensor_fusion.cpp in Sources */, - BCB1123501E3217FFC6E33EE9B6A4F9B /* serialpassthrough.cpp in Sources */, - BB815D1EEF956169BF6AFEFD6A26B9B5 /* settings.cpp in Sources */, - 1B2BC0BEF4CA1068B94161312E332B28 /* String+VersionCompare.swift in Sources */, - D2E1C1E8E8963DE1A2A10E434D937B01 /* switch.cpp in Sources */, - 5669886DD9E24EA4CA2A8900D3D4B5CB /* task.cpp in Sources */, - 443958B53F59B8176F18F52F5A7D60C8 /* threadpool.cpp in Sources */, - A75574BB0F718AD01CD4D507544549C2 /* timer.cpp in Sources */, - 25AAC3038012569529CDFE0CCFD37FA9 /* utils.cpp in Sources */, - FED8E917DDB644108E8A3FC3F44A238A /* version.cpp in Sources */, + 1CADD7A896823EF5185631C6D57635F1 /* ButtonlessDFU.swift in Sources */, + 735531D156980870A7645451DCECA66A /* crc32.swift in Sources */, + AD0B82CB7D4B5F5986DEAA4FC8478BCE /* Data.swift in Sources */, + B2C1EF48ECD31E16654BC0A75B5DE06E /* DFUCharacteristic.swift in Sources */, + C6079D6D42B7C2F367FE07828465C83E /* DFUController.swift in Sources */, + 9FFBF3B43DEE945F23D3D77DA91ECD43 /* DFUControlPoint.swift in Sources */, + AC7FBD000833CE0AA0780000DF877CAD /* DFUExecutor.swift in Sources */, + 308B17F7F30282DF493B081CC6A5FD8A /* DFUFirmware.swift in Sources */, + 188275890C0D3FCCD5A67D9DD8CC65B2 /* DFUPacket.swift in Sources */, + 9C22643BAAA91B75CCA6B27C4D3E2FB7 /* DFUPeripheral.swift in Sources */, + 14AF0B18A01840828ED5089E3379B526 /* DFUPeripheralDelegate.swift in Sources */, + 0E29E57AF6AC1AD2248240AB57A012EB /* DFUPeripheralSelector.swift in Sources */, + C493373E17CB73BBEA93E5F64C12C67D /* DFUPeripheralSelectorDelegate.swift in Sources */, + A65164131E4320DB3DD1584E83E9289D /* DFUService.swift in Sources */, + 347BB2B062D84D6B7C9B09AFBC09FB91 /* DFUServiceController.swift in Sources */, + 0C88FBBCF68DBA46CCB126C90BD75594 /* DFUServiceDelegate.swift in Sources */, + 032AD90C350C65248D85DD7B25E5EB6E /* DFUServiceInitiator.swift in Sources */, + 5103287D213950F50D47EBD676DB310E /* DFUServiceSelector.swift in Sources */, + E187D829EF2B2402CD757DCBE80B1C01 /* DFUStarterPeripheral.swift in Sources */, + 5FC52D268FF641B1B0E32B8F0ABD7DEA /* DFUStream.swift in Sources */, + 24A23AB2F7913D2EB87D6FD27603B43E /* DFUStreamBin.swift in Sources */, + F8A1B033F66B444C07EB86007CD8EF57 /* DFUStreamHex.swift in Sources */, + 911168D7D46ED8BA905F46FCFC1962F4 /* DFUStreamZip.swift in Sources */, + 728713D831E5C67953D1AE2618596FDB /* DFUUuidHelper.swift in Sources */, + 19432894F6F393BF6771768267E52499 /* DFUVersion.swift in Sources */, + 48EB9E2ADEFB89AB57A7391C6E142443 /* Double.swift in Sources */, + F85E374B772FEAC1A66A8BD7D16ED810 /* IntelHex2BinConverter.swift in Sources */, + 5FC4771416BF2F0BF2EC39721D21B6D0 /* iOSDFULibrary-iOS-dummy.m in Sources */, + 2F22343EC96BC393C5FA93697BBAE4E7 /* LegacyDFUExecutor.swift in Sources */, + BD0ADC1BD42C7848938BAD55D6188199 /* LegacyDFUPeripheral.swift in Sources */, + 337ABFE1F4D627B5183D0E4F51EA5C4C /* LegacyDFUPeripheralDelegate.swift in Sources */, + FE8E8A89D9CC670638401151217C6B9B /* LegacyDFUService.swift in Sources */, + 80CF7D6D10372DBEDD73460E1C0EC1AE /* LegacyDFUServiceInitiator.swift in Sources */, + 44EAA1152D17331DC98B1641AC153A2B /* LoggerDelegate.swift in Sources */, + FDF8F0F97587C116BD5E31F7EB019D2E /* LoggerHelper.swift in Sources */, + DB326AC92EB7EB9211A2F91781039C24 /* Manifest.swift in Sources */, + 441CDA6387C0EEF565E8B8F28331DC75 /* ManifestFirmwareInfo.swift in Sources */, + 3888442616EB83A0FB442B67A69805C2 /* SecureDFUControlPoint.swift in Sources */, + B70303F911F288B8B6A0FE5D784D31E2 /* SecureDFUExecutor.swift in Sources */, + 080AF0D1D25D654E04B7B5A1891C52E5 /* SecureDFUPacket.swift in Sources */, + DB9F68E99658F947BDCD4604BA95555C /* SecureDFUPeripheral.swift in Sources */, + E5D58DCFABE47A3A63B32EEBAB7A72AB /* SecureDFUPeripheralDelegate.swift in Sources */, + A3E475AC83D7DAEF0DCEED394B555B40 /* SecureDFUService.swift in Sources */, + 538E57A469E7D1132B6B6F02A23C9CCD /* SecureDFUServiceInitiator.swift in Sources */, + D0746507FCC6B3E82619FF2FA087B270 /* SoftdeviceBootloaderInfo.swift in Sources */, + C797F038C09DAB332331F0D0F37832BB /* ZipArchive.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 2450F9513EE407B2BDB15068F8B4B02B /* Sources */ = { + 3544CE63F45B4B93587C02D4B3CA618E /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - D20BEE53B9A83DD5A200FEE2C7F31FF1 /* accelerometer.cpp in Sources */, - 347C773436F0CB0B1372BA87ABBC346C /* accelerometer_bosch.cpp in Sources */, - 76C499CA49126EEEEA27D02B81681577 /* accelerometer_mma8452q.cpp in Sources */, - BDD82E36C8C5AAC0766182E9E965A463 /* ambientlight_ltr329.cpp in Sources */, - 25818D8E29482D465A586C059BD64323 /* anonymous_datasignal.cpp in Sources */, - 8DD8DABA98294317B553E7FE1A5426FB /* async_creator.cpp in Sources */, - F1B5A1914E30E5240AE7AF819B4CAEBD /* barometer_bosch.cpp in Sources */, - 73BD2C1E78718EFD3D12ED76CA376E5C /* Bridging.swift in Sources */, - 975B072325DEF9CF689F68C35E807D74 /* cbindings.swift in Sources */, - 24FAC638583F5C110B37457A5FEF1009 /* CBUUID.swift in Sources */, - 25FA3F46BC4F73D6AFDF4B1826B7D8E1 /* colordetector_tcs34725.cpp in Sources */, - 866E35EF38D680E744CD94CF171DAC20 /* conductance.cpp in Sources */, - 09811DA092D67D596A28A36D57646478 /* datainterpreter.cpp in Sources */, - CA232F7A239EFACF78FFFA0D9A1154EA /* dataprocessor.cpp in Sources */, - C2A03BB514BDCD37F1EC7E405C6DC996 /* dataprocessor_config.cpp in Sources */, - 0BC46EDDA306B2C3606C9A8C20115542 /* datasignal.cpp in Sources */, - A758F6998731DE1C23DE492B0301D395 /* debug.cpp in Sources */, - 8D5C63A2A830334B71345DD7D133110F /* DeviceInformation.swift in Sources */, - A559186A5C8AD32503AB56E525B88F47 /* dfu_operations.cpp in Sources */, - EF1987B67C008EFFA73F3F7E5FDACE4D /* dfu_operations_details.cpp in Sources */, - BDBE5B3C69DC237DA25144647F7FAF15 /* dfu_utility.cpp in Sources */, - 48A80D29A5184F6E0D03C46D72AFE632 /* event.cpp in Sources */, - 2BE90797E4BF39D5BAD13E8E8DF5D5CD /* file_operations.cpp in Sources */, - 2B0C0DDB69A91BB85292877FC981AF35 /* gpio.cpp in Sources */, - 198C920283F48BF1E567D61BBA50C0EB /* gyro_bmi160.cpp in Sources */, - FF17670D631D8A332D0E99B9AE91A98F /* haptic.cpp in Sources */, - 63CE6FED54F065D299205FCDCFCC7CD1 /* humidity_bme280.cpp in Sources */, - 43F84EBFD25FF7692EA9C8271E48016C /* ibeacon.cpp in Sources */, - AF8A01337ED94522ED7B1C9E42412DB0 /* led.cpp in Sources */, - 53E28A669D9B85C7BB3166CFDE347D4B /* LogDelegate.swift in Sources */, - 5B3D990314D6755101EF521AC190A706 /* logging.cpp in Sources */, - E221C001BC872E41C9F79C73F4091296 /* macro.cpp in Sources */, - D505BA670AA99167F1412BDA92868EC5 /* magnetometer_bmm150.cpp in Sources */, - B7F7EFAE652DC56EC417623E638FEA31 /* MblMwDataSignal+Async.swift in Sources */, - B165FDC91DBB050AB7D8D82A4F2BDF0C /* MblMwEvent+Async.swift in Sources */, - 10CC0242408FF9C1C16B6CAC5332338C /* MblMwGattChar.swift in Sources */, - 3E88A6098213BF5B25DC9C3336F486DA /* memory.cpp in Sources */, - 53069B4A6DE78E2C5B5454D83780D8AB /* MetaWear+Async.swift in Sources */, - 01C38E14055D12DBA754BA5F537ABD9F /* MetaWear+LED.swift in Sources */, - 30538FCE4B6ADDF689A5CE895EAC342B /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m in Sources */, - 93A909FCD0CA9A831A467183F6A08B37 /* MetaWear.swift in Sources */, - 176C6C44C5D906F5C8EEAE3AC94349DE /* metawearboard.cpp in Sources */, - 87AE2BB3F24BC6BF2464740AA4ACD311 /* MetaWearData.swift in Sources */, - 52CA4649086C6932F2DBE1119CB12442 /* MetaWearScanner.swift in Sources */, - 678ECADAC5F1F8E0C185A7432B3338E2 /* miniz.cpp in Sources */, - 93DC6715D6B420614AE6AE754C0486F3 /* moduleinfo.cpp in Sources */, - 19155E6CE340324EC4B2CB23B5186C49 /* multichanneltemperature.cpp in Sources */, - 7003C0C2B43B6EEB99DDB0906B59125A /* neopixel.cpp in Sources */, - EBCBB2E159172BDCB21F3AC5626347E5 /* proximity_tsl2671.cpp in Sources */, - 3094EB7CAB4FAFDE84808789C9F59DA7 /* responseheader.cpp in Sources */, - 8834B4808BFD94DD2510B5AB358F1F4D /* ScannerModel.swift in Sources */, - 18911D8F9D18B8C0F580060AEFE19972 /* sensor_fusion.cpp in Sources */, - FEE61533F230A26DB488B1EA5DD71143 /* serialpassthrough.cpp in Sources */, - 537A574F74C9DF3B85A7E20770E7379C /* settings.cpp in Sources */, - 8CC3D6806FA3922A49636038205F0670 /* String+VersionCompare.swift in Sources */, - A7CAD3DC3FA7A0EF154BFB4DA0E8D0B4 /* switch.cpp in Sources */, - 3FCAAC39D3C466AD413438AAAD56C760 /* task.cpp in Sources */, - 2DC628F682D49792191510A7778E1F8B /* threadpool.cpp in Sources */, - 153DD0AA266D78BA7F4CDC359702E993 /* timer.cpp in Sources */, - C0C2F1815C8D630025CAC0BCC10000B0 /* utils.cpp in Sources */, - 5A0DEBA33A6C501F1C380F11BE3482BF /* version.cpp in Sources */, + 501586404F73DC62B61210C361AD0953 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 25E3991792FA8954AE221FB4E35D74B5 /* Sources */ = { + 39A94AEDBAF79BEC22748DCD2292E067 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 8D480F5154EF81BCD26E18F918AEC062 /* ButtonlessDFU.swift in Sources */, - ABB726B84F6B78582476A3A802F1C096 /* crc32.swift in Sources */, - EABAB90BFD47406BF36C284E7B3F41C5 /* Data.swift in Sources */, - D20F1561BD678714BFC98F248A3C4515 /* DFUCharacteristic.swift in Sources */, - 467289BD1F01461746D2FC6578933868 /* DFUController.swift in Sources */, - 044AE2CABFFA31952B87AEFCE95093A3 /* DFUControlPoint.swift in Sources */, - A0A9D7815FF8458A7317519D11EE18A4 /* DFUExecutor.swift in Sources */, - 4141395478FF86165B425DA9DD2BAF0B /* DFUFirmware.swift in Sources */, - 44DCE155A511B8796548473EDFE2596F /* DFUPacket.swift in Sources */, - B68DBA1D6BAB4B8F1F487A6481A2B08E /* DFUPeripheral.swift in Sources */, - 54E3FEE5CA70AEF657C320A4B9A57361 /* DFUPeripheralDelegate.swift in Sources */, - 33AB882F9A7265FEA30B0D419A0431AB /* DFUPeripheralSelector.swift in Sources */, - 21BA78FE24694377400B24863A53215D /* DFUPeripheralSelectorDelegate.swift in Sources */, - 37BFEB91EF5B1138FF008EBF481723FC /* DFUService.swift in Sources */, - A2FBEDC65AA7483754308E2320B87121 /* DFUServiceController.swift in Sources */, - B224BA4D0A7EF855C4B2F9C54611F4AC /* DFUServiceDelegate.swift in Sources */, - 242F7A73F641AF5D1BA454BC32186F62 /* DFUServiceInitiator.swift in Sources */, - CA86B6B0AD7F679F1D9AC07EE6605B69 /* DFUServiceSelector.swift in Sources */, - 5D326075FAF116363D24C54A158DBFCD /* DFUStarterPeripheral.swift in Sources */, - 9E2B17497A93E88A8A5FCB1A3268B136 /* DFUStream.swift in Sources */, - D028F8577472CBA385AE4262402C5E27 /* DFUStreamBin.swift in Sources */, - 894AE8C364FD742927DBD36285E34709 /* DFUStreamHex.swift in Sources */, - 087928801293830146E469DD10BCFD0F /* DFUStreamZip.swift in Sources */, - D08530890240DEF36B6ADB633731BD46 /* DFUUuidHelper.swift in Sources */, - FE614EC3F0A551654215C18C85E02F67 /* DFUVersion.swift in Sources */, - 355E1C7794CCB9F67EEC12F03FDBEAE8 /* Double.swift in Sources */, - ECD5F32E5E40C9304166BBFCB5BC3F24 /* IntelHex2BinConverter.swift in Sources */, - CAF04329EF4818BAD34765B657DD2452 /* iOSDFULibrary-macOS-dummy.m in Sources */, - 93B352D21A4AEE1C2E8C2EB01B4B8B4D /* LegacyDFUExecutor.swift in Sources */, - 8FEC4A0A687A70D100B0C6BBA49617C3 /* LegacyDFUPeripheral.swift in Sources */, - 4A3979DE1CC7B8878DB73DCE53E1FB6F /* LegacyDFUPeripheralDelegate.swift in Sources */, - FE24E2664A9E7C4C10401A435D7FFD7E /* LegacyDFUService.swift in Sources */, - 764446DD3366ABB4F722FEFF7B443127 /* LegacyDFUServiceInitiator.swift in Sources */, - A9BCD21216D252881B483AE0E9C800FE /* LoggerDelegate.swift in Sources */, - 465A06C1F1470EA1D2892397CDE8D4A1 /* LoggerHelper.swift in Sources */, - 1B09635D62697DA6999C83F10B697764 /* Manifest.swift in Sources */, - 10C302FE9F397742CE5464FD8F5D3AC5 /* ManifestFirmwareInfo.swift in Sources */, - 732A901165DF50D57A5D71D699393EDB /* SecureDFUControlPoint.swift in Sources */, - F6F5D0068C8E86E396E993D56845D6E2 /* SecureDFUExecutor.swift in Sources */, - 1CDE0B11B612BD4F89155727AEF40AB5 /* SecureDFUPacket.swift in Sources */, - 84CBE5F631E84A2484CA3149D69341EC /* SecureDFUPeripheral.swift in Sources */, - 9FC5DDD788489A1EC9FDB353E3BBB409 /* SecureDFUPeripheralDelegate.swift in Sources */, - 4C94AB58FE80412DB72B7F703D7A53BA /* SecureDFUService.swift in Sources */, - 13856ABA4F83D632AEAFE91C34D8594D /* SecureDFUServiceInitiator.swift in Sources */, - 7B9AF34A76124EC75FED6B179308F304 /* SoftdeviceBootloaderInfo.swift in Sources */, - 4B99B8ADEB41211944CB809FEF064163 /* ZipArchive.swift in Sources */, + AA3DC456A3184043ACF9A93876020294 /* accelerometer.cpp in Sources */, + BC508B43C0018E7C55710E543F70E3A6 /* accelerometer_bosch.cpp in Sources */, + 6631A90F61FE28E275B84EF59EA779FD /* accelerometer_mma8452q.cpp in Sources */, + B86EEB4D325EB05D800D1EC7A00FACD5 /* ambientlight_ltr329.cpp in Sources */, + 1ECAE15DEE3FD1676A8943959E89504C /* anonymous_datasignal.cpp in Sources */, + 53B58CE01638361725C6D6CDAD7DF223 /* async_creator.cpp in Sources */, + 23717EDBDE66946CC5ABD25186F96940 /* barometer_bosch.cpp in Sources */, + 1E952BF9706F06DFB81D9EAB50CF6177 /* Bridging.swift in Sources */, + 9A6F94B6A6E6297F0EFBB4BBA3C8F97E /* cbindings.swift in Sources */, + 42D282A333A0D042BD3A0B33D5567B7C /* CBUUID.swift in Sources */, + DB84782D1150C106FFDF5871FE405345 /* colordetector_tcs34725.cpp in Sources */, + 6DB8D54A28C2D885DB64C626F26C60CD /* common.cpp in Sources */, + AD5B208C305A0EF22D7903FFF64D830C /* conductance.cpp in Sources */, + FBC3FCCDEF86C946AFE7E39E616469D9 /* CSharpGenerator.cpp in Sources */, + 5652EAF28961A67935A4D58794FA63BB /* datainterpreter.cpp in Sources */, + 8AC8CADF691259CA357090F5B3F824E9 /* dataprocessor.cpp in Sources */, + 16E1904BB69FE6FD2073EAC3988F1721 /* dataprocessor_config.cpp in Sources */, + 2E2C24531F94DA5B766F87CA8B1BB4F3 /* datasignal.cpp in Sources */, + 4694B1C1CFE06D6715FA86553E59BB2B /* debug.cpp in Sources */, + 6857EB6BF165B523C2B853251CCF0CF0 /* DeviceInformation.swift in Sources */, + 1B3C6EDA792A5929A9D79A718B93CB20 /* dfu_operations.cpp in Sources */, + 5040CA784DF27201EEBBD5F0C70BD649 /* dfu_operations_details.cpp in Sources */, + EF3A748A398DDEEC2E0DEDACAF4AD24C /* dfu_utility.cpp in Sources */, + B4846254F71C4583A921A5511A235D19 /* event.cpp in Sources */, + 44231CFA2D62E08A5696662CB8B566F9 /* file_operations.cpp in Sources */, + CEDD84CCA0498F69C16D2267A817C627 /* gpio.cpp in Sources */, + B1EF93D0DEE708C0E687D236E39A8B89 /* gyro_bosch.cpp in Sources */, + 82FAADC4B6AEC1DC79D34AB75E366643 /* haptic.cpp in Sources */, + 121CE3D082190454BE774638A91B9043 /* humidity_bme280.cpp in Sources */, + DA666289E3AA5470F666BEF965B130AB /* ibeacon.cpp in Sources */, + C158A6C2AEFEB850F911470CC3AF276E /* JavaScriptGenerator.cpp in Sources */, + 8864ADD8424DD563982A26E87ED08400 /* led.cpp in Sources */, + C8124E181BAA74061EFE90C6AE399FCD /* LogDelegate.swift in Sources */, + B993A438129B64CF0E2960DE75F0B491 /* logging.cpp in Sources */, + A27DA1A3FCEDC68D2F68F58288BD83D3 /* macro.cpp in Sources */, + 1C42D298B1810B38EF8942B962BD20B9 /* magnetometer_bmm150.cpp in Sources */, + 741FD18B0865F56C50CA18F676017440 /* MblMwDataSignal+Async.swift in Sources */, + C77E40965F7B880597F05FF883784307 /* MblMwEvent+Async.swift in Sources */, + CD0BEB14777A580B49E9689899DCB69A /* MblMwGattChar.swift in Sources */, + 654533983CAA68AE1692775450809AD5 /* memory.cpp in Sources */, + B9986ED8A04C38F3659E19DDB5139066 /* MetaWear+Async.swift in Sources */, + CF10CC5ECE77A9237B2F5423B84D736D /* MetaWear+LED.swift in Sources */, + 797077F72F2CFDB09A7A1F61B770AC32 /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m in Sources */, + 5ECF35964FFEF36AB9CCD3DB3BB74488 /* MetaWear.swift in Sources */, + 260059DF33C18038565B57D41636D093 /* metawearboard.cpp in Sources */, + F65759A24D22201808A645D31AFD9CFC /* MetaWearData.swift in Sources */, + BFC145230F8030BF4DE7F0E8FCD9B0A8 /* MetaWearScanner.swift in Sources */, + 4E02097259EF9CA0D2DC7799706132BF /* miniz.cpp in Sources */, + 572AC3EEB55914EA02B785C02FA1C996 /* moduleinfo.cpp in Sources */, + 68B002D2945773B0574B1C7623A478D4 /* multichanneltemperature.cpp in Sources */, + ECCADC2D5BA9340742A57723E261B438 /* neopixel.cpp in Sources */, + FA7017AB9BEE677131AE7169B258206A /* proximity_tsl2671.cpp in Sources */, + 472BC998AD8EF60986351D1BD2CB31CB /* PythonGenerator.cpp in Sources */, + BFDFE7B666719136AB925DE93D779227 /* responseheader.cpp in Sources */, + 777439BF8F46CC57F35E6201185BB042 /* ScannerModel.swift in Sources */, + B5462793A724585049DCEFF4BAE2E6DB /* sensor_fusion.cpp in Sources */, + CC419409FE48638E26CF081C974A0CE8 /* serialpassthrough.cpp in Sources */, + 9DD909CD9309B5790D57ED5BF0526324 /* settings.cpp in Sources */, + 1C2D4B3CD377BE734D743D0037859335 /* String+VersionCompare.swift in Sources */, + 85AA10B7785FD166D3AFEA762A1D1A7B /* SwiftGenerator.cpp in Sources */, + 292D328A092F8BFEDF5AAB807F193EBD /* switch.cpp in Sources */, + 385ACA3C7FEE0EDD7DD83B25128433E7 /* task.cpp in Sources */, + 5C83264B240E63DA8FBB2CE4B75ACDE0 /* threadpool.cpp in Sources */, + F56733AF54DC5642779F3F65257572C2 /* timer.cpp in Sources */, + 7261B57C2B8E8DBCF1107D9779C32FAA /* utils.cpp in Sources */, + 71562FFD8C12FDF1978B60393AE5EAEA /* version.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 3544CE63F45B4B93587C02D4B3CA618E /* Sources */ = { + 40B8FDBA598274F8CC505AC2CEA4AC88 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 501586404F73DC62B61210C361AD0953 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-dummy.m in Sources */, + 3CF4CEF79C228EB2A435E35AAA64FABC /* accelerometer.cpp in Sources */, + DD892482240EDC8423F5D3341CC3CFEB /* accelerometer_bosch.cpp in Sources */, + 3C8E28CCF6A9BA8C16E4C5A41AB0A363 /* accelerometer_mma8452q.cpp in Sources */, + 342787FC1F70B003C274C5B33794B812 /* ambientlight_ltr329.cpp in Sources */, + EDF49FE8F36AE454CE64A5F87B2B98F4 /* anonymous_datasignal.cpp in Sources */, + 6C7D2B2FBBE071A385704C85C325DE04 /* async_creator.cpp in Sources */, + B2B50106670E062A597105B5BFEC5538 /* barometer_bosch.cpp in Sources */, + 7C1BC588855DA6520E54B04D9C608A2A /* Bridging.swift in Sources */, + 91AC75396FE57029698CC2F7D77610E6 /* cbindings.swift in Sources */, + 94A1D9E3E4FDB2F784ABA4D16C43DEC7 /* CBUUID.swift in Sources */, + DCC31370219FF51E63ACF29AB118A5B0 /* colordetector_tcs34725.cpp in Sources */, + 6724AAE499F3043B1EA87C88346D3F4F /* common.cpp in Sources */, + 012B01012542A4CBB87158298D49A506 /* conductance.cpp in Sources */, + F5B015389FF1D05AB43E9DA28518F2D1 /* CSharpGenerator.cpp in Sources */, + 53F9B07D3B24ED26D48BDB6BD539A7B1 /* datainterpreter.cpp in Sources */, + 8CE5F98795C15D2E9AE0FBC38EDD497D /* dataprocessor.cpp in Sources */, + 2D0F244586918C3F6A39CCA821E0C0AF /* dataprocessor_config.cpp in Sources */, + AEEFAD74B9F7BE54BA20672922FB61B1 /* datasignal.cpp in Sources */, + 1A7B4E7FC45FA90D0DD30F0D940FBB4E /* debug.cpp in Sources */, + F78498E278FAAF3AEE2C9403D4E17B31 /* DeviceInformation.swift in Sources */, + 730D6F99EE75836E854A5CCAC22B9403 /* dfu_operations.cpp in Sources */, + A62E76430F1C10F25DFA3D9AC833B94D /* dfu_operations_details.cpp in Sources */, + 56369CD53A39D173A3401AEB41EC4F72 /* dfu_utility.cpp in Sources */, + B05F2A46B68EA620F131D05A8431D1A0 /* event.cpp in Sources */, + ABF1688875AD5A44084F20FB88E90DA7 /* file_operations.cpp in Sources */, + 2D30E37BBB05F6E5EE52C864109DB47A /* FirmwareBuild.swift in Sources */, + 1A98E01F9B9D25C199A6BF3CBCA8557A /* FirmwareServer.swift in Sources */, + 29132300AE6148203E0C2729AA2C8BB3 /* gpio.cpp in Sources */, + 15D53A1770AA72CF04FF651B94F63545 /* gyro_bosch.cpp in Sources */, + 771FEC36B502B1DC50C60978F41AE216 /* haptic.cpp in Sources */, + 69D375F2A849BF9373FE6551BF51772B /* humidity_bme280.cpp in Sources */, + 26B93A39DB6DBB7AD878332626A0B876 /* ibeacon.cpp in Sources */, + D281B43E4BF5A23318C8B34CC565B246 /* JavaScriptGenerator.cpp in Sources */, + 28AA1948C15F28A8B93DD71122D901EB /* led.cpp in Sources */, + 069EAE37E2606DE282CD5FAD098BCB58 /* LogDelegate.swift in Sources */, + CCE14D48B264F002F71AFEE9B68DFEA6 /* logging.cpp in Sources */, + D36C1E42978B57A75A0F94FD2130AAB8 /* macro.cpp in Sources */, + A28897D5B7E6ABBAFBAEAEDEAA82C280 /* magnetometer_bmm150.cpp in Sources */, + CB16E626268E9A409C05FA8CD4C1100D /* MblMwDataSignal+Async.swift in Sources */, + 2B3093F48320EE09AAC65B70C3F78A19 /* MblMwEvent+Async.swift in Sources */, + 96E6D2DACBD45D85A2B17F71ED234377 /* MblMwGattChar.swift in Sources */, + 40229AB80A82AAC04915D9E7158D22C4 /* memory.cpp in Sources */, + D34948C7A95097D458D1BF75219FB6E2 /* MetaWear+Async.swift in Sources */, + BC83A6F7CBAF0DAA200E54D893CE569D /* MetaWear+Firmware.swift in Sources */, + 4D8501DF1BB35763D41F30DDE3A73306 /* MetaWear+LED.swift in Sources */, + C7CB77C4CA6D22238AD774FB5689743B /* MetaWear+Mock.swift in Sources */, + 11E33FD9ACC6CF62AE80A452494679D9 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m in Sources */, + DFB7A90D2517FDA86C0388F92A95A26A /* MetaWear.swift in Sources */, + 947A5BA2B9D514958793256DFD9F85F1 /* metawearboard.cpp in Sources */, + C97C9BEFC76CE330365FECA64436CE36 /* MetaWearData.swift in Sources */, + D544F16A2F4EA6474217584164401012 /* MetaWearScanner+Mock.swift in Sources */, + 51B4FE440E78A79358510DAA40C9AD5B /* MetaWearScanner.swift in Sources */, + 35595B3C00C29CE6E079A0E81C17E1F7 /* miniz.cpp in Sources */, + 895347D5EC33FA6796A037ED304926CD /* MockModule.swift in Sources */, + 938174C63286604B37276B0C53C24976 /* moduleinfo.cpp in Sources */, + 80E37510D2A68AE5AB97BBA53D5B04CE /* multichanneltemperature.cpp in Sources */, + 172113A26B091458004E8C76139B865F /* neopixel.cpp in Sources */, + 966C4097A45E3EC7B84DA0AE19A048A3 /* proximity_tsl2671.cpp in Sources */, + C799407B659F535B187BADB41ADAEDCF /* PythonGenerator.cpp in Sources */, + 5036B9BC274E8B0C182DED918E5FFE2C /* responseheader.cpp in Sources */, + DA0BA96FBE4C30FE7C490744AFB595DE /* ScannerModel.swift in Sources */, + FA1AC83BEA313F5231D1A22DE9DF8BB3 /* sensor_fusion.cpp in Sources */, + 70838D5B656235CB6DF1B3C8C7E49FE7 /* serialpassthrough.cpp in Sources */, + 2968BC36D6BD17ED1B3473B365EFF462 /* settings.cpp in Sources */, + F6CC8F5C1ECDD542E127270FB6DABEB2 /* String+VersionCompare.swift in Sources */, + A705F4529D45553B3FAE4000B9AAD0CB /* SwiftGenerator.cpp in Sources */, + 8F97BF934C618374309585B62A557127 /* switch.cpp in Sources */, + 9FA0CD0897D8242D8E77DADCA8671BFB /* task.cpp in Sources */, + 36EB6DF354242389CF80833E6E8193F2 /* threadpool.cpp in Sources */, + 614E22AE1596BB4B98D4A17A6F7635B4 /* timer.cpp in Sources */, + DC64F62C4B48F921340DB96DE8EC9D62 /* utils.cpp in Sources */, + 9CDA2E36DA0CD2BCD1B5F33A237CEF81 /* version.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 3590841F240BF2CE0031D6B329866F94 /* Sources */ = { + 5FE6DB0EA207496BBE5281631D98CB03 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 9D71636BA5B172AA91465939CF72C0E2 /* Archive+Reading.swift in Sources */, - A94A207676CA864F6A52A7B95EFE3CD4 /* Archive+Writing.swift in Sources */, - 49E00F58A94BCC95DEEE7FDA74E281BA /* Archive.swift in Sources */, - B2C85ACC56358CA856AE4FFB686E8C07 /* Data+Compression.swift in Sources */, - AF92386A1673FCD2617EE52958A6C84F /* Data+Serialization.swift in Sources */, - AF85BC5459A1F2438AE2701F827E2123 /* Entry.swift in Sources */, - A3D21BC87DAA59246B2B44259AC3F81F /* FileManager+ZIP.swift in Sources */, - 810A57F947C7FE7E95ACB006074C9F14 /* ZIPFoundation-iOS-dummy.m in Sources */, + 1EFD82B98118369A8821D338DC1E85B2 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 3A5B820CC43CFBAEE41E2AE86652A11A /* Sources */ = { + 716C1241C4C5D47A855CFEC9F8D09690 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 0ACE818B427AD61CA6AE6681A2F9C523 /* Archive+Reading.swift in Sources */, - A267D4DFF383A99F92739E6F3CE92941 /* Archive+Writing.swift in Sources */, - 91CA3F88B4B77DBFA4E944555F6265CB /* Archive.swift in Sources */, - C944F5B0589C851F82CD65B0BFA012EC /* Data+Compression.swift in Sources */, - AFE275CE00056BDB63279B106CC754D3 /* Data+Serialization.swift in Sources */, - A03C93A50914414D55EA80ADADCEC58A /* Entry.swift in Sources */, - A0737843F3CE1DD48F35E5F5FA7155ED /* FileManager+ZIP.swift in Sources */, - F4D0790ED01B33D024EA5BA0A958BBC9 /* ZIPFoundation-macOS-dummy.m in Sources */, + FF5ECDE3099FEBC82CE167472A464B05 /* accelerometer.cpp in Sources */, + EEF9385072F5934435F5AB64EF45E101 /* accelerometer_bosch.cpp in Sources */, + 7F0699DAD8E64CEE03A8A1FBACAFFE92 /* accelerometer_mma8452q.cpp in Sources */, + CFC38370084E6BB3041D4DA073A9B9FE /* ambientlight_ltr329.cpp in Sources */, + 03351672B147CBDEFCFD62387D16B043 /* anonymous_datasignal.cpp in Sources */, + 5E3142A6EC11EB7F74600E077FD6BD21 /* async_creator.cpp in Sources */, + 261E2F3792214C4D434F1E826BFF268B /* barometer_bosch.cpp in Sources */, + D236D689B19D10C2F59BCC1C6690C4D2 /* Bridging.swift in Sources */, + 67E4F1F394AA3F4EEA504DC1DD0446FF /* cbindings.swift in Sources */, + 47D4B15ED860746F0CD77E274445ABA2 /* CBUUID.swift in Sources */, + E935FB9E9488C6879B2AEB8ECCAB4CCF /* colordetector_tcs34725.cpp in Sources */, + 72588964D8A3E73418C3574AA4625199 /* common.cpp in Sources */, + 40B56B448EC6A6EAD2EE9DB98160B66B /* conductance.cpp in Sources */, + BF83787F96799A45A45B1FABDC52B8C2 /* CSharpGenerator.cpp in Sources */, + 6306891733ECBA778D442410C7819E45 /* datainterpreter.cpp in Sources */, + 816B88E736DCFFE2A081EE0039C9AE70 /* dataprocessor.cpp in Sources */, + DD4C6800D6538DB9EC454347F385EE00 /* dataprocessor_config.cpp in Sources */, + FD955F3FF63408645E99B278B1762E0A /* datasignal.cpp in Sources */, + 2F5B3DDDDE2CE882B690B114B82955E5 /* debug.cpp in Sources */, + B7A503FDE7EAC9604C952B224A199F44 /* DeviceInformation.swift in Sources */, + 596B2B65357FC1D22F21CC14FC9128E6 /* dfu_operations.cpp in Sources */, + 411855DB839A2FA0F451F55F4FFDFE9D /* dfu_operations_details.cpp in Sources */, + 994B8516758EFA2B44BE235D6A2A87D7 /* dfu_utility.cpp in Sources */, + 9C3E15B210514C397386139A6C0517D3 /* event.cpp in Sources */, + 17A2DFBBB983925803335F35C3CFDDE7 /* file_operations.cpp in Sources */, + BFDF22FB742012E5700994D1C2553DE6 /* gpio.cpp in Sources */, + 00A82355034F26A4E7961A3AF89E1E45 /* gyro_bosch.cpp in Sources */, + 093FC2EF5E8C383EC4AF8679223C2119 /* haptic.cpp in Sources */, + 56EE5C0F33D84D5C6A26E559A033D0B5 /* humidity_bme280.cpp in Sources */, + 20BAA558AF83D38B7956AB017E79D089 /* ibeacon.cpp in Sources */, + DD2457A5153A813B135AF112C1B6CCDB /* JavaScriptGenerator.cpp in Sources */, + DC79127714493BA1091228E5D6D6218C /* led.cpp in Sources */, + 5EC11317DF6D83502516A73E16FF279F /* LogDelegate.swift in Sources */, + 21CEE4FD5D05B2A684D87854BEA96076 /* logging.cpp in Sources */, + FD67251885303BE1F329465F700C7010 /* macro.cpp in Sources */, + 17C0653B080B861ACBD6C6078FC8B5AD /* magnetometer_bmm150.cpp in Sources */, + 6270EB3BDC0A42EBECD688410FCE6D58 /* MblMwDataSignal+Async.swift in Sources */, + 7A02A8B89A814A1EDF029AF046DEE3B7 /* MblMwEvent+Async.swift in Sources */, + 92BB8641DBDC196D136EE749FEAD441F /* MblMwGattChar.swift in Sources */, + DD281E84F4BA2B4FA140F3FFA35DE28D /* memory.cpp in Sources */, + 3ADDAF25F52F7F8AE55FEBA3951FBC8E /* MetaWear+Async.swift in Sources */, + 92BFBE5048C1AF55A728D2E6A085DE79 /* MetaWear+LED.swift in Sources */, + AC7517337C6231AC406982FFD82253DF /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m in Sources */, + FA6DB392671A30FE07ACF393B6053C95 /* MetaWear.swift in Sources */, + 4B4A77925C01BB8EEBC6A24D40D85FED /* metawearboard.cpp in Sources */, + 3F66629C41DD84033EC1806492DC139F /* MetaWearData.swift in Sources */, + A758F76254D736A71B87F785E55EDAB3 /* MetaWearScanner.swift in Sources */, + 6B9DFD70B46996F96C59208EF3F12668 /* miniz.cpp in Sources */, + CC1F26589EFC481F3C3C3C005508D143 /* moduleinfo.cpp in Sources */, + FEE445EF8846C7B4FFCAEB050873DB67 /* multichanneltemperature.cpp in Sources */, + B2E54F2688DDF34A1A01DADFDC180914 /* neopixel.cpp in Sources */, + 9A69153E0A2554072903708090DA6D71 /* proximity_tsl2671.cpp in Sources */, + 00ECB95D9E1BE0B3A6969D10E551FD83 /* PythonGenerator.cpp in Sources */, + B3CDB8F487FBE468BC06F6D4099BC3FE /* responseheader.cpp in Sources */, + CF9AB22BAF140F99F510FD93DEA501E0 /* ScannerModel.swift in Sources */, + B06F042F8CC36AEF18F8E151A9C20A56 /* sensor_fusion.cpp in Sources */, + 488DDB8D9BF32B5B77710336DE4B352F /* serialpassthrough.cpp in Sources */, + F4A12C8A6329FADD5A332FE3798F981C /* settings.cpp in Sources */, + 95B8233C27C01902BBE1F08E8C77855B /* String+VersionCompare.swift in Sources */, + 9F50C2AC9D099359C885BEC5E3EFA855 /* SwiftGenerator.cpp in Sources */, + A20E9D62144F5FF38D5ABA566954F042 /* switch.cpp in Sources */, + 7AEA8B8F8198FAB859EDE3F61DD7A7E0 /* task.cpp in Sources */, + A49A81968CD3E8F51F3C46A2A6F7BC8A /* threadpool.cpp in Sources */, + 5D6135675F984E450A947ACDE9ADD921 /* timer.cpp in Sources */, + CE91AD2F62B01F558ABF753C68EE6224 /* utils.cpp in Sources */, + A0AB5C2107D30D947314FF5F3DE9C058 /* version.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 4E44439886B297D22654F949FE080854 /* Sources */ = { + 71C033570A17242F42A504C15BF12409 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - AA824688BCC5765358E78D4EAC60C6DF /* accelerometer.cpp in Sources */, - 61CAC6ACEB5FDA1FA2C39F5CAE1BBAE7 /* accelerometer_bosch.cpp in Sources */, - 5A146B9BB0B56E0277C9F0A60968C3ED /* accelerometer_mma8452q.cpp in Sources */, - F42BA670785299FC5275FF2B33486CD7 /* ambientlight_ltr329.cpp in Sources */, - EA57A3871FE55469A8BE7A40EFFB2BE1 /* anonymous_datasignal.cpp in Sources */, - FFD59C37119BD8329CB6671A18860BCB /* async_creator.cpp in Sources */, - 451FB510939E8D5E3DAF8837A433759A /* barometer_bosch.cpp in Sources */, - 3708B5CA484C247C59E70582EF4CC155 /* Bridging.swift in Sources */, - AC78FFD48DFE2A09FFBD364C93418CA9 /* cbindings.swift in Sources */, - 9B9D2C2179C78AC47CF7E9F4000183EC /* CBUUID.swift in Sources */, - AE6B1D63606A868B00E901D24AC255E4 /* colordetector_tcs34725.cpp in Sources */, - 3EC94834ED682D28A126011CD9785B0B /* conductance.cpp in Sources */, - 655A6CFACBEDD518DDCCA128A2CF97D1 /* datainterpreter.cpp in Sources */, - 04835D90097AA6593E95A8334BDD41A8 /* dataprocessor.cpp in Sources */, - E793DD153AF3B7D6549CC5B72B9C7CBD /* dataprocessor_config.cpp in Sources */, - E36A0E20150121A4156557B33A0B0025 /* datasignal.cpp in Sources */, - FB4B040DB8250C036C8A237ABC47DD53 /* debug.cpp in Sources */, - AD09F0C6ABAF819011BE7BFC0B5E8C86 /* DeviceInformation.swift in Sources */, - 0BB6F9961E0820C9F6F2A9099CE04C19 /* dfu_operations.cpp in Sources */, - 1D38CBD7FCE2DB3E753E23A78258D235 /* dfu_operations_details.cpp in Sources */, - 8CFA33DDECF79645C68B93CBCDEABB7C /* dfu_utility.cpp in Sources */, - 428179FEBEDC98B766752F98E061ADF0 /* event.cpp in Sources */, - 2E8F91FFA759077621E70121A16366E7 /* file_operations.cpp in Sources */, - C423BEFE58331137BA10C8BC38978F75 /* gpio.cpp in Sources */, - 27D6816E5AD6D9D126B26717651A45A5 /* gyro_bmi160.cpp in Sources */, - 821E05BA9354D961757A1841586421D6 /* haptic.cpp in Sources */, - 8A9F2625278E8AF124C9578B64CBC82B /* humidity_bme280.cpp in Sources */, - 61E277265DEF113ED4E4ED2DA10E114D /* ibeacon.cpp in Sources */, - CC028F600773DB74088E7617C75C3C8F /* led.cpp in Sources */, - C03AA5F3B2846BE9DF56A4FAE2346E53 /* LogDelegate.swift in Sources */, - BF6BC391C06820466C9141DCB95B5453 /* logging.cpp in Sources */, - BDE52062E551D62483780B7B0F19B32D /* macro.cpp in Sources */, - 46B107827D5816D059853CC05EFFF608 /* magnetometer_bmm150.cpp in Sources */, - D24FA2BC6EEB9681C4281C71E28ADA6C /* MblMwDataSignal+Async.swift in Sources */, - 23E61B3D2DD95D47CFCA5048B6442456 /* MblMwEvent+Async.swift in Sources */, - 793820C2B7CF2B2E9255DF4E7880A684 /* MblMwGattChar.swift in Sources */, - CED5F668E87F706B9D438D4484751D80 /* memory.cpp in Sources */, - 3B39ACF181EF9960F0AE8C0A6CE190AD /* MetaWear+Async.swift in Sources */, - 5F7F870391DDD48E136C827DC1A0CA0F /* MetaWear+LED.swift in Sources */, - D20F030DE8AB093994572E9FD8BE3CDD /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m in Sources */, - 62B398AEBF63A158C954057C6A1B4818 /* MetaWear.swift in Sources */, - 637219251630417B2B159B8D912EEA08 /* metawearboard.cpp in Sources */, - D98394A280A1BA5290AB8A37511EEF7A /* MetaWearData.swift in Sources */, - E0FEB09BC6F7A90AE4B65CF06302833B /* MetaWearScanner.swift in Sources */, - 35FF54F26D73BF450F05CC92BFBD1C2F /* miniz.cpp in Sources */, - 87189938108F931ECD211E29F77B915E /* moduleinfo.cpp in Sources */, - 8E709D741D8E84FF6516AAF65009237C /* multichanneltemperature.cpp in Sources */, - 48F03C15261EB26E4DCCBA1FDB7B5F32 /* neopixel.cpp in Sources */, - 13B9FD12101B587CAF54A71590C56D7A /* proximity_tsl2671.cpp in Sources */, - E6304B0EFD3C690FE5130891713F6226 /* responseheader.cpp in Sources */, - A839669FE1ADBF2C4002E9357CD542BC /* ScannerModel.swift in Sources */, - D27E8D11F9D97B50B419230EB066CCC3 /* sensor_fusion.cpp in Sources */, - 697F10FE2C90CA9B23E2D41E741B2896 /* serialpassthrough.cpp in Sources */, - 26D3D26ECBE79A53740D7C45161ACCA8 /* settings.cpp in Sources */, - 72764295FBD26A9DE86A0F3E15D842D0 /* String+VersionCompare.swift in Sources */, - EC082AF6EF596037105FA9628517AECB /* switch.cpp in Sources */, - C6206E3BC317DBD05A62E4574137A930 /* task.cpp in Sources */, - 2C232B6EFA1870117100CD09CC516CFC /* threadpool.cpp in Sources */, - 2FCD92D9BA257E932BEC9EF414126396 /* timer.cpp in Sources */, - AB2D593DE9B596E644EF647D7325F360 /* utils.cpp in Sources */, - BF601F8DA01F028A29E4CBF50EE31688 /* version.cpp in Sources */, + 5FDC7FDB83669C1A6FAF361A010DA604 /* Archive+Reading.swift in Sources */, + 9D14B66E82F3275CC7E8528B426A98DB /* Archive+Writing.swift in Sources */, + 33100723B5271F7198C07886C025E42A /* Archive.swift in Sources */, + 956C38486C6F0DF54D466808AB391974 /* Data+Compression.swift in Sources */, + 0581438223EEBD568ADA85ACD5FF8778 /* Data+Serialization.swift in Sources */, + EE15B6389BC5DB5DB8C78B3F5114A756 /* Entry.swift in Sources */, + 4B5A2E535E4D34B20EA0A82FBA645094 /* FileManager+ZIP.swift in Sources */, + 7C71B5D451BEED1E9E6F2AE6A903D135 /* ZIPFoundation-macOS-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 5FE6DB0EA207496BBE5281631D98CB03 /* Sources */ = { + 77C61F9A9D4702C968DB7CD10CB18CAD /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 1EFD82B98118369A8821D338DC1E85B2 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-dummy.m in Sources */, + 3C965716FF953D89F35CF59126237A50 /* accelerometer.cpp in Sources */, + 8DEFC823822730871231F6CCEA0A1880 /* accelerometer_bosch.cpp in Sources */, + 6533E8F44A82D67EF9ECC6F9CBFB57ED /* accelerometer_mma8452q.cpp in Sources */, + EBEBFD91F79EC1D2B6752E450DBC112A /* ambientlight_ltr329.cpp in Sources */, + CB0C5EBE0273D65A11DF2E441518732C /* anonymous_datasignal.cpp in Sources */, + 6E1C3A0A127DBF0C59643863E01B8C64 /* async_creator.cpp in Sources */, + 732B7286A2F03F048EF8FE2FE57CCB1D /* barometer_bosch.cpp in Sources */, + A0E6BFB8BB7C5506226DCFAC65AE894D /* Bridging.swift in Sources */, + 9C3406F2A86B170F7981D5E7EA225A08 /* cbindings.swift in Sources */, + 06709CCD489C7FDE4DE94255D49DE405 /* CBUUID.swift in Sources */, + E32B4AAA2A4370ECE632AD00BC598CE0 /* colordetector_tcs34725.cpp in Sources */, + D29F777663A6514EC2500CF18FBFF3CE /* common.cpp in Sources */, + 904C09BA1550659B7F1F7A59D5E13EFD /* conductance.cpp in Sources */, + 0B27031AAACDA81E8E849E219A1F4CDE /* CSharpGenerator.cpp in Sources */, + D3A6BE91393D5FBB0506700791D0A188 /* datainterpreter.cpp in Sources */, + 85DD21C28C500B7B461FB8A78537C195 /* dataprocessor.cpp in Sources */, + E179EA57EE13138294FCDC8F041E9200 /* dataprocessor_config.cpp in Sources */, + 417668ECDFFE05C356D2F2C98E6FCF2E /* datasignal.cpp in Sources */, + 5B008EC07535202F35B7EBAE64EC8AAD /* debug.cpp in Sources */, + CB1350F27E336490823BD587185AC1DE /* DeviceInformation.swift in Sources */, + 46EACB73E7AA6910B55E4F2B1E2DCF8D /* dfu_operations.cpp in Sources */, + E61E48D565CA7D1251666921044E0023 /* dfu_operations_details.cpp in Sources */, + 72845BD38C34D42F747AF687E5CC51D5 /* dfu_utility.cpp in Sources */, + AA7463920DDA1674EB4887984C87C1E3 /* event.cpp in Sources */, + B0B9C4AE34FEC3A2354D7A0EB4D056E1 /* file_operations.cpp in Sources */, + 117E14EB164B7AF6F08D59EE5CA9F5F3 /* FirmwareBuild.swift in Sources */, + D6228F29D7BA7EC921D3B408E3AA1B2E /* FirmwareServer.swift in Sources */, + 3CCE7FE57D2900872C671C3C89299B68 /* gpio.cpp in Sources */, + D9F84B12B689E30F40E573EBA21F6F55 /* gyro_bosch.cpp in Sources */, + CE504D2DACDEFD0E36CDEEE2788210B2 /* haptic.cpp in Sources */, + C433FB4CBD429C9314FFA6630097FC31 /* humidity_bme280.cpp in Sources */, + 27E5E1FB12794AE58BCC10FE671B3FB5 /* ibeacon.cpp in Sources */, + 03CFA0B8079E6576425F4835DDE77ED0 /* JavaScriptGenerator.cpp in Sources */, + 771BACA6A2B750B6609346439736FC2A /* led.cpp in Sources */, + 247DF9AD5289D103B7F22A2F5A930A27 /* LogDelegate.swift in Sources */, + 2674F1682601B71874AE8D8CC995E2F8 /* logging.cpp in Sources */, + 064CE382AE40C174C1DC8BA796B5AE05 /* macro.cpp in Sources */, + F89FF8564BE515E32A9E4070451E8754 /* magnetometer_bmm150.cpp in Sources */, + F75C621B8FFA6B0398E95DE3B2260F9F /* MblMwDataSignal+Async.swift in Sources */, + 4A7416818F69F179DEB912E1E0387A97 /* MblMwEvent+Async.swift in Sources */, + 410F5DFCFD4E62BCF79717F6687AD971 /* MblMwGattChar.swift in Sources */, + 58692948A131C4CD93CB5B896839C0D2 /* memory.cpp in Sources */, + 857853F39816FEACB8D3C0E57107EFA0 /* MetaWear+Async.swift in Sources */, + 22419F8867C810F51EF0CC7AF432FB83 /* MetaWear+Firmware.swift in Sources */, + 3A8706725957E819D8DC3615F70A46C1 /* MetaWear+LED.swift in Sources */, + B3B679E3C1B86869166B297890624A5B /* MetaWear+Mock.swift in Sources */, + 093DA195BCD14D219407DA9BCE156938 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m in Sources */, + 27FC097670EF6169E41D06FAE06F663F /* MetaWear.swift in Sources */, + D5C1D44CA11068BFB66A2403185B8E11 /* metawearboard.cpp in Sources */, + 045BA212BE52B8EDE106B91E414DB964 /* MetaWearData.swift in Sources */, + AE86ED24982F1028DD71C5EE416BDCBA /* MetaWearScanner+Mock.swift in Sources */, + 1C5D66653EB9C9204FAB73D5DB0F3EFD /* MetaWearScanner.swift in Sources */, + 135DD576FCB7F363D39568A049B0AFBB /* miniz.cpp in Sources */, + C35A4A3DE2DE3C77DDAA685D72FE1C1C /* MockModule.swift in Sources */, + DEB8D4240C6E91F02C1B14E5BBBC5551 /* moduleinfo.cpp in Sources */, + 330A63C562FA1E5B405D7E923242BA00 /* multichanneltemperature.cpp in Sources */, + 8E402F1738B72CE43094753C240DB916 /* neopixel.cpp in Sources */, + 43E82F86E8A7615D81CFCD92A5CB798B /* proximity_tsl2671.cpp in Sources */, + 1A28AB5C7E329BE1AB1AC09F80307C29 /* PythonGenerator.cpp in Sources */, + 31B350AF75DC001266B48EC6C6993119 /* responseheader.cpp in Sources */, + 44285E104F9F75358A972F911E17CF03 /* ScannerModel.swift in Sources */, + EEC6CC69EE2C35A01AF0B00A1E0AA951 /* sensor_fusion.cpp in Sources */, + 4DD385F0EE9337783A3DB10D34B07ADA /* serialpassthrough.cpp in Sources */, + E2222C652943059B25FE74A766BF2CA4 /* settings.cpp in Sources */, + 3C2AE8F311EB26FD27E7E2C7A67D53BB /* String+VersionCompare.swift in Sources */, + 28165A59FF99E7B34602554A862862FD /* SwiftGenerator.cpp in Sources */, + 336FEFCF9EE2E66243E6A6278ED6EB8C /* switch.cpp in Sources */, + 521AA91B3FB3349AACFDB81C7B28CB17 /* task.cpp in Sources */, + 8D5758068C67709E82B54A8974B68A82 /* threadpool.cpp in Sources */, + 1CB7EF48662BF5C27BDE484D646E0191 /* timer.cpp in Sources */, + 874C6150F3EFD75188A8A5936EEE0F7A /* utils.cpp in Sources */, + 05DA9279F033674F3AD45EAA20C12B06 /* version.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3448,77 +3727,56 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - DBDA90E432F0460FCDB7611C566DABD1 /* Sources */ = { + D1D6CF4D5E9CA6BDBDC90A15FEED77A3 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - F20E1527CDDFBED36E389F5DE3EE3BA5 /* accelerometer.cpp in Sources */, - C56B4925ABF0D5964A300B07089E91FC /* accelerometer_bosch.cpp in Sources */, - 71DBA30B059CD5D0C8CA1FDFCD5082DB /* accelerometer_mma8452q.cpp in Sources */, - CB38E1A93DCF1C78D73809F12E920BA6 /* ambientlight_ltr329.cpp in Sources */, - 39C3496F4681C3698BEA2F2B673B591A /* anonymous_datasignal.cpp in Sources */, - BA677A5546651A44DE54951EC462B9FF /* async_creator.cpp in Sources */, - 4CCCAC704214F2678F15F5369C0A26CE /* barometer_bosch.cpp in Sources */, - 5179320B541D2B71B010AFB2866DFB08 /* Bridging.swift in Sources */, - 5DE892D3FEDA1E4DE722273B8246A3A5 /* cbindings.swift in Sources */, - 62C615D4948E2A2CA0198AEFA5ABF779 /* CBUUID.swift in Sources */, - B003B9700D0945BE3FF8EDE35CB6D001 /* colordetector_tcs34725.cpp in Sources */, - 4004C74D08F648421683BFB4F88436BE /* conductance.cpp in Sources */, - BA942E90FA582152CCA60A05E95CBBF0 /* datainterpreter.cpp in Sources */, - 84467CE4CEBCAE1E3E93362CC3BB5DEC /* dataprocessor.cpp in Sources */, - 38E4A0CD6FFD3039A7F6CD1D0A29EC27 /* dataprocessor_config.cpp in Sources */, - CFB1704E4403508345A77D8F62660759 /* datasignal.cpp in Sources */, - FA4C9EB851ACC60743D3DCF9D9163CD8 /* debug.cpp in Sources */, - 9866F7EB9A791B1F71412A9518F4DDA2 /* DeviceInformation.swift in Sources */, - F6581BDC2361231DC94E3EC60420A7C6 /* dfu_operations.cpp in Sources */, - 73C8D3922614656DBDB801E3F5EDD742 /* dfu_operations_details.cpp in Sources */, - 2641A220BB2C96304F65E60C357F1DE0 /* dfu_utility.cpp in Sources */, - E1B68941DD05A4A33D72DEC904357BE7 /* event.cpp in Sources */, - 3E98B9EC7A351CDCA1C4EFBF62B90C81 /* file_operations.cpp in Sources */, - B14EA4E7064C760AC032E21BC6625559 /* FirmwareBuild.swift in Sources */, - C6E1A4AF07DE69B813031FD82CD71E81 /* FirmwareServer.swift in Sources */, - 3312E10704D574542E267ECA909C3416 /* gpio.cpp in Sources */, - 1ED7AD14E2DAE13E034B34D10F937241 /* gyro_bmi160.cpp in Sources */, - DB5A9D068E02D006A6997A57EFC01DCD /* haptic.cpp in Sources */, - 74D5B1A504F078C89022CD5CD114548C /* humidity_bme280.cpp in Sources */, - BFA2700C0E8B100D781808CE27E4BA20 /* ibeacon.cpp in Sources */, - DAC626B91B02EEAD8274C8EB9C676F25 /* led.cpp in Sources */, - EED95F559709D6E001D4A77EEF0CC9C2 /* LogDelegate.swift in Sources */, - CB67AC3249391CF49FFF401DACB29617 /* logging.cpp in Sources */, - A227CECA7F5EC292353ACB2E7F5A4252 /* macro.cpp in Sources */, - B4563CEAA2CDA3FB37F2C4682FF96E8D /* magnetometer_bmm150.cpp in Sources */, - 45188555A3FD996EF0ED1890967BA787 /* MblMwDataSignal+Async.swift in Sources */, - CEBB6BC483E13123F715485FA54444B2 /* MblMwEvent+Async.swift in Sources */, - 3E7721697FDEEC862326383F08C73726 /* MblMwGattChar.swift in Sources */, - D3571698251BBE1535216CC94C73D517 /* memory.cpp in Sources */, - CED3D50F6EF2C7CB5AD25D3638BF923D /* MetaWear+Async.swift in Sources */, - 05098827647E9C8D9EF0DB0684F8462B /* MetaWear+Firmware.swift in Sources */, - 3249EC0194A22DF7DDD1B1853F576ACC /* MetaWear+LED.swift in Sources */, - B3515E51AC940580F4D15C1830082B21 /* MetaWear+Mock.swift in Sources */, - 86E108ABCDDE720D87B2724637CB6C52 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m in Sources */, - 90C50DBAA49818A5B2F5EFCBC92F3121 /* MetaWear.swift in Sources */, - 1FBA290F317A5157880F484D889FB2BD /* metawearboard.cpp in Sources */, - C0B51B8F81D0F9641B56D3AC009D743A /* MetaWearData.swift in Sources */, - 684FC84A09A9C0CEB7F57748A4D42A54 /* MetaWearScanner+Mock.swift in Sources */, - 7620F5AD19E3BD1052F96D7230A20185 /* MetaWearScanner.swift in Sources */, - B83018EEBAAD3221D77F1AA539BFBC96 /* miniz.cpp in Sources */, - 38D674D4E1EEB4DE001F2AF085786DFB /* MockModule.swift in Sources */, - 4950E2A09827C947066B01B3EFA2C6F0 /* moduleinfo.cpp in Sources */, - E3150FAC392F12EB2341DE531523A8D8 /* multichanneltemperature.cpp in Sources */, - 9F47BCA2BD290F2A195806E0F56BB118 /* neopixel.cpp in Sources */, - F531C9740241B064179B66DDACCD873A /* proximity_tsl2671.cpp in Sources */, - 74A7B6B952EBE570BF8D3743E6D4CE08 /* responseheader.cpp in Sources */, - F90C0E0365F5C32E15CAA7D35454AB7E /* ScannerModel.swift in Sources */, - 5418B51DF0D2B9FC317A29E2F24828D9 /* sensor_fusion.cpp in Sources */, - A9AA5DA8FBB5B57AD246ED2534C0B1BB /* serialpassthrough.cpp in Sources */, - 3A39F0244C5A1E3E49D7BDBEA7DF0E93 /* settings.cpp in Sources */, - 844553CECA298E5F22C7718AEDC562CC /* String+VersionCompare.swift in Sources */, - D1548556A5EF0201DE7D7A1F9E730500 /* switch.cpp in Sources */, - B3921D8807492B99CF4F0AC4B4009521 /* task.cpp in Sources */, - D1C9A5098B57B742D71A811FFF129E16 /* threadpool.cpp in Sources */, - 04207C8E94AB38EB8B9A199E0C5F389C /* timer.cpp in Sources */, - 3088C7CD20C8B7BB1906C39B08B6577D /* utils.cpp in Sources */, - 88813C9B1DFA19FFF6307CEA865CAA64 /* version.cpp in Sources */, + 4CD0373B8830051BB7C6B42624F26BC5 /* ButtonlessDFU.swift in Sources */, + C387EA43B4C5143DD9A3C20CCF72AD0B /* crc32.swift in Sources */, + E15B47C69F2CEFC62720FC4ACA1693EF /* Data.swift in Sources */, + BEBD14234307840C13A72E7FBDAF3A2D /* DFUCharacteristic.swift in Sources */, + 7024D2881CE0B18F21E03D6B84DA75E7 /* DFUController.swift in Sources */, + 5A58FBE68A6B181E246E27F35678AD0D /* DFUControlPoint.swift in Sources */, + 6E701F7BB609CE128911B2743D6992A8 /* DFUExecutor.swift in Sources */, + 59E2D5D6787F2235391DCF079896CCDA /* DFUFirmware.swift in Sources */, + CF12A219994F7C66E871F5E9A530A7EA /* DFUPacket.swift in Sources */, + FAD68810E64D49FAC279EFBCC79FCAB7 /* DFUPeripheral.swift in Sources */, + 477DCCCFDEC5D3D2169E45B8264D6C76 /* DFUPeripheralDelegate.swift in Sources */, + 6CB9AE2B0DE03C9374C6B5CAC5597758 /* DFUPeripheralSelector.swift in Sources */, + 55BA23285A52A36F6C1FB31B1014913C /* DFUPeripheralSelectorDelegate.swift in Sources */, + F4804A768A6923BF6813DFA584CD0ADD /* DFUService.swift in Sources */, + E59AB5B99D0CDB0BAE2318DB92D35418 /* DFUServiceController.swift in Sources */, + 76B94E1A4B7BEB7E5905729C925304A6 /* DFUServiceDelegate.swift in Sources */, + 3F9A7A995F700B220AC36AA42F260A75 /* DFUServiceInitiator.swift in Sources */, + 7A5E4A83A26D7708E334CCE253704BF9 /* DFUServiceSelector.swift in Sources */, + 41295ECCE911F0108FEA0CB75D6F27D6 /* DFUStarterPeripheral.swift in Sources */, + 95873C61174D8D481393D4E906C081E1 /* DFUStream.swift in Sources */, + 891ED6BA8008F52EC301721E47958D30 /* DFUStreamBin.swift in Sources */, + C0DC4ABA6A0EB55932C53F7C533056F7 /* DFUStreamHex.swift in Sources */, + DA5CF7C3FA05E0E1A01D6C300F6DCC6A /* DFUStreamZip.swift in Sources */, + 58BC765CC7F9D60976B1F2846F9C443D /* DFUUuidHelper.swift in Sources */, + 757D3DAEAE3CFF8069844FAA26995346 /* DFUVersion.swift in Sources */, + 9AC34EBED2E65C0B6C239DB90EEB31B3 /* Double.swift in Sources */, + 0EDEAD15EA76CF20CC0CF0E1A767568C /* IntelHex2BinConverter.swift in Sources */, + EAA9FDA26FCC68FFA825EE1DE534B221 /* iOSDFULibrary-macOS-dummy.m in Sources */, + C6827AC15EC5E1612F6E4738AE162C57 /* LegacyDFUExecutor.swift in Sources */, + 18D1A8C4E85B6FBBB2079E8C5183FF3E /* LegacyDFUPeripheral.swift in Sources */, + 1EE2372DC27AA0C43FEC83A5C1E13963 /* LegacyDFUPeripheralDelegate.swift in Sources */, + 5F013013A3C0736A18EB56E1BA6921E7 /* LegacyDFUService.swift in Sources */, + FAEDD66CCEAA1CC94BC0BF339D273F86 /* LegacyDFUServiceInitiator.swift in Sources */, + 2342BB1503FC3BE2631E0ECB2B4CEE63 /* LoggerDelegate.swift in Sources */, + EF243877934AA8AB72605F69ACC81732 /* LoggerHelper.swift in Sources */, + 4F748795613245C9147640C9E7CD40A5 /* Manifest.swift in Sources */, + 31B3118D1630004A69B06C8287AEB8B6 /* ManifestFirmwareInfo.swift in Sources */, + 4F007320E788168C353D6ECB13A5DDFE /* SecureDFUControlPoint.swift in Sources */, + AFF41C17A7B544A3D8802249E9D46E34 /* SecureDFUExecutor.swift in Sources */, + 701F0207B3673657A585DF64BFB8E37B /* SecureDFUPacket.swift in Sources */, + 12570F94509FE8973817A526E54481D6 /* SecureDFUPeripheral.swift in Sources */, + 67659BDF47AD29C95A7758B3E3F19B98 /* SecureDFUPeripheralDelegate.swift in Sources */, + 0FE210F8580B0064D862A9029568F087 /* SecureDFUService.swift in Sources */, + 4D08513111FE8AD054634756086260D9 /* SecureDFUServiceInitiator.swift in Sources */, + 60F9D875CB58B072487CEECD78E27295 /* SoftdeviceBootloaderInfo.swift in Sources */, + 20591D483411BD8648DF767C557D51DE /* ZipArchive.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3554,214 +3812,230 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + F2253E4CDEFB243F76B4E99B5F6F2759 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + EA35A488DAE44CAE90F52CF3717FE92F /* Archive+Reading.swift in Sources */, + 7077BC573851D7D38D1D3B6CDED72989 /* Archive+Writing.swift in Sources */, + 0FBBDCB27DF56346CC85D9E88F62CB52 /* Archive.swift in Sources */, + 62FBDA31A22BCB5D9FC3045283D65F03 /* Data+Compression.swift in Sources */, + AF1FD8F583ECB1D76FE192EC70CBDC16 /* Data+Serialization.swift in Sources */, + 6F8B57571C7FF9B3E281B21985E3E72D /* Entry.swift in Sources */, + 20DD8171D33AE77417653D045FD65319 /* FileManager+ZIP.swift in Sources */, + 56E511ED0A9C5F7FC5D40A3AE34ED45E /* ZIPFoundation-iOS-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 077B459507208B60114870F970ACAD64 /* PBXTargetDependency */ = { + 079A8D57CB3BA54A0B22B7486EF377C4 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; - target = 42FE80E7F4B82634FE879096E38AF67E /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS */; - targetProxy = 49D890C5D3B9EE181DD33F403312F614 /* PBXContainerItemProxy */; + name = "ZIPFoundation-iOS"; + target = 9AF8AE8821E967844EEF26BBB341564D /* ZIPFoundation-iOS */; + targetProxy = 2CA06FA7571CF5AD6639EA503136410A /* PBXContainerItemProxy */; }; - 11709C1E0465EA760F31D7B830DA343F /* PBXTargetDependency */ = { + 1285FC91DD8D2E04239EF5E7D43816B1 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "ZIPFoundation-iOS"; target = 9AF8AE8821E967844EEF26BBB341564D /* ZIPFoundation-iOS */; - targetProxy = 0FDEB0DDBDA06F5AF64B54FFFA9271B9 /* PBXContainerItemProxy */; + targetProxy = D4B29AD9073326D336410C13DF4B6915 /* PBXContainerItemProxy */; }; - 1367212B79CDC3645EC4F6F73283BE5A /* PBXTargetDependency */ = { + 2BE45CE86595EE4B41860C7B496B35F8 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-watchOS"; - target = 04C10A816CC356F24E80EFDC360742A5 /* Bolts-Swift-watchOS */; - targetProxy = 6C305A41A53F61139F5A55A6640D6A69 /* PBXContainerItemProxy */; + name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; + target = 42FE80E7F4B82634FE879096E38AF67E /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS */; + targetProxy = F39A203151A809E55F4EE7F052EE034F /* PBXContainerItemProxy */; }; - 136D24552B720DF472D716244289F5A9 /* PBXTargetDependency */ = { + 2C068D6689112805BDCE38728DF36AFA /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS"; - target = DC73C4CD23208E5286814B153B7BF656 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS */; - targetProxy = 11835FE8E1EE4298B58DAC2FA5E22C48 /* PBXContainerItemProxy */; + name = "iOSDFULibrary-iOS"; + target = D5D94E351BD6926C6DC33FBD834E16AC /* iOSDFULibrary-iOS */; + targetProxy = B400E8DD5417A408BC8F45BE8A94C88F /* PBXContainerItemProxy */; }; - 25C671E6EA4A38B59564C242A45C477F /* PBXTargetDependency */ = { + 2C22C3A9F47F79DCEC63E04FF3E8A878 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS"; - target = E495A89A7F691DD1EF5E2278AD5C03B0 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS */; - targetProxy = C38CA1D919E290CEF9439A4D8FF0FC98 /* PBXContainerItemProxy */; + name = "Bolts-Swift-tvOS"; + target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; + targetProxy = 791C07C26EE4252511A485D94AEBA2F1 /* PBXContainerItemProxy */; }; - 2B2C0417744A42DB7A1508F8E18D585C /* PBXTargetDependency */ = { + 2D1A0F7701A1420FDD6D7BB3D22F9D99 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "MetaWear-AsyncUtils-Core-UI-watchOS"; - target = 667F340C7624C4E82D66A02A17E0B33D /* MetaWear-AsyncUtils-Core-UI-watchOS */; - targetProxy = 32EF5687BA6BF2BA293C94804E0C9786 /* PBXContainerItemProxy */; + name = "ZIPFoundation-macOS"; + target = 8B5BB2050078EFCACBEDC5B4195B80CD /* ZIPFoundation-macOS */; + targetProxy = 13F640600278E83472F3461DD4CC6A38 /* PBXContainerItemProxy */; }; - 3518F81DDAC042A92237B483B25BF9CD /* PBXTargetDependency */ = { + 2EBDDC15435A98F403EBB67111DFBB80 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-watchOS"; - target = 04C10A816CC356F24E80EFDC360742A5 /* Bolts-Swift-watchOS */; - targetProxy = 7E23C97419384FC4ADDDCAC55E5B1AE3 /* PBXContainerItemProxy */; + name = "Bolts-Swift-iOS"; + target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; + targetProxy = 9B8A9D3CED50028C926E1A46B32A91D0 /* PBXContainerItemProxy */; }; - 3B41630F2E42001FD052B198A5E2D308 /* PBXTargetDependency */ = { + 393F1632B86CA53F8222A2AA04D341BC /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "ZIPFoundation-macOS"; - target = 8B5BB2050078EFCACBEDC5B4195B80CD /* ZIPFoundation-macOS */; - targetProxy = C8DE5EE9B66EAB51063E8ED9298E0B35 /* PBXContainerItemProxy */; + name = "iOSDFULibrary-iOS"; + target = D5D94E351BD6926C6DC33FBD834E16AC /* iOSDFULibrary-iOS */; + targetProxy = 711010DD4018732EF2B69AD110191064 /* PBXContainerItemProxy */; }; - 3B9C19CD12F8079C310304667F9EA029 /* PBXTargetDependency */ = { + 487A458D5A75D6451A1D1F1455C09F88 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-tvOS"; - target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; - targetProxy = 0BEF9C2E8203EA7821EE7AEC45541B62 /* PBXContainerItemProxy */; + name = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS"; + target = D34323F62557B06705361E449443F967 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS */; + targetProxy = 10775978D240B3CC0700D712E73A833F /* PBXContainerItemProxy */; }; - 3F914F4ACEA9077C36C2D9F5801E68B2 /* PBXTargetDependency */ = { + 4E1CB07D44E9A1861F66C98DA4ABD512 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; - target = 285D0CB5C235EDD5B3B0975146484BE0 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS */; - targetProxy = 21CC4C6113945E0C8A7FB607C14D7970 /* PBXContainerItemProxy */; + name = "MetaWear-AsyncUtils-Core-UI-watchOS"; + target = 667F340C7624C4E82D66A02A17E0B33D /* MetaWear-AsyncUtils-Core-UI-watchOS */; + targetProxy = 887048131DC8D0273A24B249EF0F454D /* PBXContainerItemProxy */; + }; + 615E3F20B7DEED298C8A6D84F7F97176 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "iOSDFULibrary-macOS"; + target = 79F9638EA00F4594D84B597FE45CD2DC /* iOSDFULibrary-macOS */; + targetProxy = 2945BAB3488A9392C91743BB6FC81DF0 /* PBXContainerItemProxy */; }; - 4137BDDDF104DB51573F616EB74658E0 /* PBXTargetDependency */ = { + 629A1127E60231EBE67605EA16F58991 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "ZIPFoundation-macOS"; target = 8B5BB2050078EFCACBEDC5B4195B80CD /* ZIPFoundation-macOS */; - targetProxy = BFAD268935102BE2D8D80CC7BEA0767C /* PBXContainerItemProxy */; + targetProxy = E7BA52ED09E4D626E7C312225546CF0F /* PBXContainerItemProxy */; }; - 467D3E95EF20E614E9A00A66162EF58E /* PBXTargetDependency */ = { + 6CE2CCD50B23851198168E503F8AF353 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "Bolts-Swift-macOS"; target = 60E729C6D466746E969FA5CA967B984D /* Bolts-Swift-macOS */; - targetProxy = F0BA04EFCCB38A53A566258694C6DAC0 /* PBXContainerItemProxy */; + targetProxy = AF2AD260DFEAA7D8168ED456B6FCB3D3 /* PBXContainerItemProxy */; }; - 47DF4B75EEF270A5E68D14DB492987AB /* PBXTargetDependency */ = { + 71611EF2F78A917F33AF736D2856ADD9 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS"; - target = D34323F62557B06705361E449443F967 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS */; - targetProxy = 65809AB61A8A83D8B9BBA228EBD961AD /* PBXContainerItemProxy */; + name = "Bolts-Swift-iOS"; + target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; + targetProxy = 73098E235892B2F60AB2910EB335AA94 /* PBXContainerItemProxy */; }; - 759C21B8E4BFE834946AE720A975D13E /* PBXTargetDependency */ = { + 782403B8CCE6FE8592259F4FDE9CCF88 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "ZIPFoundation-macOS"; - target = 8B5BB2050078EFCACBEDC5B4195B80CD /* ZIPFoundation-macOS */; - targetProxy = 210F09BDE02F25EEEA23C288F58BDB41 /* PBXContainerItemProxy */; + name = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS"; + target = E495A89A7F691DD1EF5E2278AD5C03B0 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS */; + targetProxy = 864C61A1A60EF337AD9CB7AC5F7FF7E8 /* PBXContainerItemProxy */; }; - 761C2E28439C7D4B2902FC57DEEB00EE /* PBXTargetDependency */ = { + 87A2714FD722D52DA60800C1BC4D7E1A /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "iOSDFULibrary-iOS"; - target = D5D94E351BD6926C6DC33FBD834E16AC /* iOSDFULibrary-iOS */; - targetProxy = 4685F0A604496096F5C620C4974E05DE /* PBXContainerItemProxy */; + name = "iOSDFULibrary-macOS"; + target = 79F9638EA00F4594D84B597FE45CD2DC /* iOSDFULibrary-macOS */; + targetProxy = 27BB945EAE3344C06679570DD14C005F /* PBXContainerItemProxy */; }; - 765A9DCBDD432391B148A55072BC6893 /* PBXTargetDependency */ = { + 89D8BF044049A4B5FE34B86CADF48AB1 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-iOS"; - target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; - targetProxy = AC7921DAF607AE375C0F6A05991CBD52 /* PBXContainerItemProxy */; + name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; + target = 285D0CB5C235EDD5B3B0975146484BE0 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS */; + targetProxy = F6CA060E8BE65E7804E4E2BDAA4C9E94 /* PBXContainerItemProxy */; }; - 7AFEAC130E39F6C4562CB085C1DEB932 /* PBXTargetDependency */ = { + A7FC9D747F1AE8BAC97BBB188203490A /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "iOSDFULibrary-iOS"; - target = D5D94E351BD6926C6DC33FBD834E16AC /* iOSDFULibrary-iOS */; - targetProxy = B820B8D139A4BD87C7D1A2EFFE89E6A4 /* PBXContainerItemProxy */; + name = "Bolts-Swift-watchOS"; + target = 04C10A816CC356F24E80EFDC360742A5 /* Bolts-Swift-watchOS */; + targetProxy = 7B78FA778BAAC88D8722ECB221FE9C83 /* PBXContainerItemProxy */; }; - 8A641ECB1B2961978C2B2870C00ED4D6 /* PBXTargetDependency */ = { + AD5ADE6638A6DF92B41DAF315B1B8A58 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-macOS"; - target = 60E729C6D466746E969FA5CA967B984D /* Bolts-Swift-macOS */; - targetProxy = D5213F83CBBC717B0C08E4A78948E222 /* PBXContainerItemProxy */; + name = "Bolts-Swift-tvOS"; + target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; + targetProxy = 237511C50C9BE09BCF94D3C53BDDCD2C /* PBXContainerItemProxy */; }; - 9887273622398B3C2E775D20539BAF93 /* PBXTargetDependency */ = { + B45CB4F6C6AA4DB8B34735411BEDE1F0 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-iOS"; - target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; - targetProxy = FEFDBF5D749F7CB920039948DC4C578C /* PBXContainerItemProxy */; + name = "Bolts-Swift-tvOS"; + target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; + targetProxy = DD1B8670BCA35060346E26C7C8DBE590 /* PBXContainerItemProxy */; }; - B0CCDC085A76F06827B16E4936565384 /* PBXTargetDependency */ = { + B88684C6B1812C1021FE2999413A2306 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "iOSDFULibrary-macOS"; - target = 79F9638EA00F4594D84B597FE45CD2DC /* iOSDFULibrary-macOS */; - targetProxy = 9AD21880D44FC1BAAC46F2F8246C2DCF /* PBXContainerItemProxy */; + name = "Bolts-Swift-iOS"; + target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; + targetProxy = E56AF568A4DCBD7FDD6C199F0261AEB5 /* PBXContainerItemProxy */; }; - B3ED30B8C48D2DA73BCAF1ADD571F694 /* PBXTargetDependency */ = { + BAFCF6E87F4C45DE0426C5B09E8E695E /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "iOSDFULibrary-macOS"; - target = 79F9638EA00F4594D84B597FE45CD2DC /* iOSDFULibrary-macOS */; - targetProxy = B36C6E17DFAB59FB1814CB57221F7C1E /* PBXContainerItemProxy */; + name = "ZIPFoundation-macOS"; + target = 8B5BB2050078EFCACBEDC5B4195B80CD /* ZIPFoundation-macOS */; + targetProxy = 75554CF568A2719BD9E97BFE2D63AB84 /* PBXContainerItemProxy */; }; - BB65607A5F49909AA44B7315A426A23F /* PBXTargetDependency */ = { + C993AF623745FD530B5A25F265C8E50E /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; target = 285D0CB5C235EDD5B3B0975146484BE0 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS */; - targetProxy = 5232AB2C1E2E9E97ECBEB618FEC70AF9 /* PBXContainerItemProxy */; + targetProxy = 3B6B4690C5DFA62472184E4E90947D27 /* PBXContainerItemProxy */; }; - C0B5F76901A0B5B7EBADAB80B357476D /* PBXTargetDependency */ = { + CF6E2CCFEFDE8852F13398D462105425 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "iOSDFULibrary-macOS"; target = 79F9638EA00F4594D84B597FE45CD2DC /* iOSDFULibrary-macOS */; - targetProxy = 9C96A3CB0A5DD2FBC5B660E13E045CD4 /* PBXContainerItemProxy */; + targetProxy = 585CE3983175E44568815D3D7380A15C /* PBXContainerItemProxy */; }; - C4C001F845D70FE7FECB60CF2B2C6D16 /* PBXTargetDependency */ = { + D4775D319C2D7C9BAA4F34CB6927ACDF /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; - target = 42FE80E7F4B82634FE879096E38AF67E /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS */; - targetProxy = 5B4BD6C4C52E86A54E6B47B3C3EE2511 /* PBXContainerItemProxy */; + name = "Bolts-Swift-watchOS"; + target = 04C10A816CC356F24E80EFDC360742A5 /* Bolts-Swift-watchOS */; + targetProxy = 42A95F515F9634ACDBEA3C34E99C338C /* PBXContainerItemProxy */; }; - CEED945C8BDC354EEBA17A2BCBEABE8A /* PBXTargetDependency */ = { + D4DFCBE4E799F8310AC9D1A23CDE1054 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "Bolts-Swift-macOS"; target = 60E729C6D466746E969FA5CA967B984D /* Bolts-Swift-macOS */; - targetProxy = 22C99B03D283B84BB1B730DC88978266 /* PBXContainerItemProxy */; + targetProxy = 05C9E3CF3394D544FDA9B3754F3AD569 /* PBXContainerItemProxy */; }; - DD81FBFD32AC3333E5634D187501F9F1 /* PBXTargetDependency */ = { + D620C620B8C3B51FE68AAC58EB87B988 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "ZIPFoundation-iOS"; - target = 9AF8AE8821E967844EEF26BBB341564D /* ZIPFoundation-iOS */; - targetProxy = F3B140480689C35CDC403865AEA5806A /* PBXContainerItemProxy */; + name = "Bolts-Swift-macOS"; + target = 60E729C6D466746E969FA5CA967B984D /* Bolts-Swift-macOS */; + targetProxy = DBD458533DEA2D394E7724C8AD02DE25 /* PBXContainerItemProxy */; }; - E13686AD86675BE6F3B86053205E90E9 /* PBXTargetDependency */ = { + E92E57414ED46106EF21D68D331A34B4 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "MetaWear-AsyncUtils-Core-UI-tvOS"; - target = 8804FF230B80287816DD00C23D7C3AFB /* MetaWear-AsyncUtils-Core-UI-tvOS */; - targetProxy = 3896F97F3B1DEC87A648891D70FB6566 /* PBXContainerItemProxy */; + name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; + target = 42FE80E7F4B82634FE879096E38AF67E /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS */; + targetProxy = 66C484EC310615B38CAD918AB122E7B9 /* PBXContainerItemProxy */; }; - E1D7C4508951E638BBDB16B3DB7AB5CB /* PBXTargetDependency */ = { + EA3D1AFEA43653FD4C5DA0D3ED04091B /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-tvOS"; - target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; - targetProxy = 8564BEB49B4065D02019C8B87A3A8B2E /* PBXContainerItemProxy */; + name = "MetaWear-AsyncUtils-Core-UI-tvOS"; + target = 8804FF230B80287816DD00C23D7C3AFB /* MetaWear-AsyncUtils-Core-UI-tvOS */; + targetProxy = A4B9DBA1C6AA546EE0201EF8C1E68BEA /* PBXContainerItemProxy */; }; - E3242FBA40972813885042793CACACDE /* PBXTargetDependency */ = { + F2612DFC1564ADE930C3215603234BC0 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-tvOS"; - target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; - targetProxy = 0655B606BD24EE7119D274E3AEB23B2E /* PBXContainerItemProxy */; + name = "MetaWear-AsyncUtils-Core-UI-tvOS"; + target = 8804FF230B80287816DD00C23D7C3AFB /* MetaWear-AsyncUtils-Core-UI-tvOS */; + targetProxy = 8C02976A56F3D589D7A255F59BF5B253 /* PBXContainerItemProxy */; }; - E3FDF2649DEBB0D75A915D307C733B56 /* PBXTargetDependency */ = { + F2832AC7076F272759BEDF224B918D29 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "ZIPFoundation-iOS"; target = 9AF8AE8821E967844EEF26BBB341564D /* ZIPFoundation-iOS */; - targetProxy = 607D22D1E0E38308B597167E03D4D8F2 /* PBXContainerItemProxy */; - }; - F43F5F8DCE91BFBD05E04223117C2707 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = "Bolts-Swift-iOS"; - target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; - targetProxy = 4231EAAB063DA581842AADCA7B6241ED /* PBXContainerItemProxy */; + targetProxy = BE897FE97B811C3234548B168D63920E /* PBXContainerItemProxy */; }; - F6223B0FFEF85B310D5BC6DC54DD832A /* PBXTargetDependency */ = { + F66F1927E22203B8CBD8D3A9630A16D1 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "MetaWear-AsyncUtils-Core-UI-tvOS"; - target = 8804FF230B80287816DD00C23D7C3AFB /* MetaWear-AsyncUtils-Core-UI-tvOS */; - targetProxy = 05A634CE8D0C517899910F427312D93B /* PBXContainerItemProxy */; + name = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS"; + target = DC73C4CD23208E5286814B153B7BF656 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS */; + targetProxy = AB84B45FACF93E9EA61A82A7217D013B /* PBXContainerItemProxy */; }; - F939E81A22EA9BD95099879278780783 /* PBXTargetDependency */ = { + FCD46C66D111F00D78F6CB4EBF09FA9D /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "iOSDFULibrary-iOS"; target = D5D94E351BD6926C6DC33FBD834E16AC /* iOSDFULibrary-iOS */; - targetProxy = 710021FEC41391194F3182AF8653F86B /* PBXContainerItemProxy */; + targetProxy = 44E242F977B9B5141D1F8E58A1699C32 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ - 0208EA2EF4D2BA5AE00178F030B8EB60 /* Debug */ = { + 0776BD3DFF054C321E8441FCB696120C /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 744C574986A6E5F66BD0D268A667940D /* MetaWear-AsyncUtils-Core-UI-tvOS.debug.xcconfig */; + baseConfigurationReference = 910DB833579EEEB4A5DFC605DEEAD46E /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.debug.xcconfig */; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; @@ -3770,38 +4044,7 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - 0776BD3DFF054C321E8441FCB696120C /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 910DB833579EEEB4A5DFC605DEEAD46E /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.debug.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS/Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS/Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MACH_O_TYPE = staticlib; @@ -3820,38 +4063,6 @@ }; name = Debug; }; - 091BA31EA2AE0A6ECB4EADB26E42AFA3 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = BBE6BE9F290F399278452EF43CA4D1B9 /* iOSDFULibrary-macOS.release.xcconfig */; - buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; - CLANG_ENABLE_OBJC_WEAK = NO; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.14; - MODULEMAP_FILE = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS.modulemap"; - PRODUCT_MODULE_NAME = iOSDFULibrary; - PRODUCT_NAME = iOSDFULibrary; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; 0B26D470104DE87DD6D2FBBAB979E2BF /* Release */ = { isa = XCBuildConfiguration; baseConfigurationReference = 0A6BB5254DA6F253B7F224A37040448D /* Bolts-Swift-tvOS.release.xcconfig */; @@ -3876,78 +4087,77 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 9.0; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Release; }; - 0F410233F246C5F4B88558DB4F7F366F /* Release */ = { + 0F855A972F62B109CFC6D68335120CF2 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = CCC6F0BB303761D0D1CE724666AE1B71 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.release.xcconfig */; + baseConfigurationReference = FAF9B7ACE4773B4D39C8F25F3B7E77C9 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.release.xcconfig */; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = iphoneos; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MODULEMAP_FILE = "Target Support Files/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = macosx; SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Release; }; - 0F855A972F62B109CFC6D68335120CF2 /* Release */ = { + 12089D2662B226914136156E4A72830F /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = FAF9B7ACE4773B4D39C8F25F3B7E77C9 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.release.xcconfig */; + baseConfigurationReference = AB0851094434AE3AB131EAA5B548883F /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.debug.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MACOSX_DEPLOYMENT_TARGET = 10.14; - MODULEMAP_FILE = "Target Support Files/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SDKROOT = macosx; + IPHONEOS_DEPLOYMENT_TARGET = 10.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = iphoneos; SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; 1501E793691B36AA9E564008201D5469 /* Debug */ = { isa = XCBuildConfiguration; @@ -4114,35 +4324,35 @@ }; name = Debug; }; - 24000EFC4A0E69F06352484844F7E9D9 /* Release */ = { + 2BCDCD2DBFD68EA69C03D48B18652979 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 8940A499B23F205CC27EDBA8204CED90 /* ZIPFoundation-macOS.release.xcconfig */; + baseConfigurationReference = 0421114FF4A72C4B6114B97C28A38C3A /* MetaWear-AsyncUtils-Core-UI-watchOS.release.xcconfig */; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; - CLANG_ENABLE_OBJC_WEAK = NO; + APPLICATION_EXTENSION_API_ONLY = YES; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.11; - MODULEMAP_FILE = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS.modulemap"; - PRODUCT_MODULE_NAME = ZIPFoundation; - PRODUCT_NAME = ZIPFoundation; - SDKROOT = macosx; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = watchos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 4; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; + WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; @@ -4481,32 +4691,33 @@ }; name = Debug; }; - 67A23365A164A2E0838BB8CDD18F45A8 /* Release */ = { + 61A424B662B5FD67E6A97BC4E6957026 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 7728E7D9EBAE97ECA45528D9287757A0 /* iOSDFULibrary-iOS.release.xcconfig */; + baseConfigurationReference = FC2DEB55514859BAD3CF4DA5A03DBA15 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.release.xcconfig */; buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS.modulemap"; - PRODUCT_MODULE_NAME = iOSDFULibrary; - PRODUCT_NAME = iOSDFULibrary; - SDKROOT = iphoneos; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = macosx; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; @@ -4612,75 +4823,72 @@ }; name = Release; }; - 79C08B404AFA3CFF8CA0560EBAB18FAF /* Debug */ = { + 6FD985B0E1326D7E1721575B80BBCB82 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 597BB4FDABFB4BEA9A3862A562CED887 /* ZIPFoundation-macOS.debug.xcconfig */; + baseConfigurationReference = 1881483EDF6FAA713D89C78E866AEDF8 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.release.xcconfig */; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.11; - MODULEMAP_FILE = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS.modulemap"; - PRODUCT_MODULE_NAME = ZIPFoundation; - PRODUCT_NAME = ZIPFoundation; - SDKROOT = macosx; + IPHONEOS_DEPLOYMENT_TARGET = 10.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; + name = Release; }; - 7B9B758043B0D11439E3E6B524A4FCEC /* Release */ = { + 759135CCC8A9C1F75F5125FD976986A0 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = DC112E70B6C61DDB793D7E4D3987AD6A /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.release.xcconfig */; + baseConfigurationReference = AC14F27D31997A9BAB52F11719E73EB8 /* iOSDFULibrary-iOS.debug.xcconfig */; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; - CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.14; - MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = macosx; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS.modulemap"; + PRODUCT_MODULE_NAME = iOSDFULibrary; + PRODUCT_NAME = iOSDFULibrary; + SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; - 7DDF4755581705C01FBAF7A4841DA64F /* Release */ = { + 771C8875D07B25A057B25A2748837466 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 8F73760084FBD03CCEF6CFF50D15C3D2 /* MetaWear-AsyncUtils-Core-UI-watchOS.release.xcconfig */; + baseConfigurationReference = 7D53C4762331E313543557FEEFC58092 /* MetaWear-AsyncUtils-Core-UI-tvOS.release.xcconfig */; buildSettings = { - APPLICATION_EXTENSION_API_ONLY = YES; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; @@ -4689,183 +4897,186 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.modulemap"; + MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.modulemap"; PRODUCT_MODULE_NAME = MetaWear; PRODUCT_NAME = MetaWear; - SDKROOT = watchos; + SDKROOT = appletvos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 4; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 10.0; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; - WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - 83C8FCC2A568EC7265063248854D1F8B /* Debug */ = { + 789DA5440EA708A6660FA34900936456 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = AC14F27D31997A9BAB52F11719E73EB8 /* iOSDFULibrary-iOS.debug.xcconfig */; + baseConfigurationReference = AC68A1B035D2F7A706C5CEC4FAAB22F9 /* iOSDFULibrary-macOS.debug.xcconfig */; buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS.modulemap"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MODULEMAP_FILE = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS.modulemap"; PRODUCT_MODULE_NAME = iOSDFULibrary; PRODUCT_NAME = iOSDFULibrary; - SDKROOT = iphoneos; + SDKROOT = macosx; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Debug; }; - 86FC65F43749AE836E1827AF03DF8384 /* Debug */ = { + 793C6C46B72C17F315A9989AD8D61419 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 7A6B9FEEAA92367CFC5CD79E0FCAF8B2 /* Bolts-Swift-tvOS.debug.xcconfig */; + baseConfigurationReference = BBE6BE9F290F399278452EF43CA4D1B9 /* iOSDFULibrary-macOS.release.xcconfig */; buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS.modulemap"; - PRODUCT_MODULE_NAME = BoltsSwift; - PRODUCT_NAME = BoltsSwift; - SDKROOT = appletvos; - SKIP_INSTALL = YES; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MODULEMAP_FILE = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS.modulemap"; + PRODUCT_MODULE_NAME = iOSDFULibrary; + PRODUCT_NAME = iOSDFULibrary; + SDKROOT = macosx; + SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; + name = Release; }; - 8B95F84E1A5EFC66B91EA976EAC4A4B2 /* Debug */ = { + 86FC65F43749AE836E1827AF03DF8384 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = A245C5D0AA47340FD2954B4AA314C11C /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.debug.xcconfig */; + baseConfigurationReference = 7A6B9FEEAA92367CFC5CD79E0FCAF8B2 /* Bolts-Swift-tvOS.debug.xcconfig */; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; - CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.14; - MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = macosx; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS.modulemap"; + PRODUCT_MODULE_NAME = BoltsSwift; + PRODUCT_NAME = BoltsSwift; + SDKROOT = appletvos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 9.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Debug; }; - 8C5430FBA4AFA088101DDA680A2A8119 /* Release */ = { + 880FC9D63AC2701AACB0B1D834350F69 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 98F7AF2CE23CC1930AC18ED6BAA3A177 /* ZIPFoundation-iOS.release.xcconfig */; + baseConfigurationReference = 8940A499B23F205CC27EDBA8204CED90 /* ZIPFoundation-macOS.release.xcconfig */; buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS.modulemap"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MODULEMAP_FILE = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS.modulemap"; PRODUCT_MODULE_NAME = ZIPFoundation; PRODUCT_NAME = ZIPFoundation; - SDKROOT = iphoneos; + SDKROOT = macosx; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Release; }; - 97A43AB452331A86357A1DCF328465C8 /* Release */ = { + 9281AB9050F4B185C2E05A687F9776EB /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = D12D376B2FB3C5BF3FDF1DB158DB3C0C /* Bolts-Swift-watchOS.release.xcconfig */; + baseConfigurationReference = 03F1E3102C3F890C45FE08306FFD60EF /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.debug.xcconfig */; buildSettings = { - APPLICATION_EXTENSION_API_ONLY = YES; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-watchOS/Bolts-Swift-watchOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Bolts-Swift-watchOS/Bolts-Swift-watchOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Bolts-Swift-watchOS/Bolts-Swift-watchOS.modulemap"; - PRODUCT_MODULE_NAME = BoltsSwift; - PRODUCT_NAME = BoltsSwift; - SDKROOT = watchos; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = macosx; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 4; - VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; - WATCHOS_DEPLOYMENT_TARGET = 2.0; }; - name = Release; + name = Debug; }; - 9A584149B4C42DA8FF3C32B613F6D47E /* Debug */ = { + 97A43AB452331A86357A1DCF328465C8 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 15AF8752D2B4DE1B1A24F1B233E457CD /* MetaWear-AsyncUtils-Core-UI-watchOS.debug.xcconfig */; + baseConfigurationReference = D12D376B2FB3C5BF3FDF1DB158DB3C0C /* Bolts-Swift-watchOS.release.xcconfig */; buildSettings = { APPLICATION_EXTENSION_API_ONLY = YES; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -4876,23 +5087,24 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-watchOS/Bolts-Swift-watchOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Bolts-Swift-watchOS/Bolts-Swift-watchOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; + MODULEMAP_FILE = "Target Support Files/Bolts-Swift-watchOS/Bolts-Swift-watchOS.modulemap"; + PRODUCT_MODULE_NAME = BoltsSwift; + PRODUCT_NAME = BoltsSwift; SDKROOT = watchos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 4; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; - WATCHOS_DEPLOYMENT_TARGET = 4.0; + WATCHOS_DEPLOYMENT_TARGET = 2.0; }; - name = Debug; + name = Release; }; 9D65AF463D9644BC297E5D1293AC40CF /* Release */ = { isa = XCBuildConfiguration; @@ -4927,11 +5139,10 @@ }; name = Release; }; - 9EBFAC548B18447D85E8D91457E5C3D0 /* Debug */ = { + A463E25A1D3D1C73661131206EA6655D /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = DAC7FB72D61C137AE357C3C90E848DAC /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.debug.xcconfig */; + baseConfigurationReference = 98F7AF2CE23CC1930AC18ED6BAA3A177 /* ZIPFoundation-iOS.release.xcconfig */; buildSettings = { - CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; @@ -4940,23 +5151,24 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; + MODULEMAP_FILE = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS.modulemap"; + PRODUCT_MODULE_NAME = ZIPFoundation; + PRODUCT_NAME = ZIPFoundation; SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; + SWIFT_VERSION = 4.0; TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; + name = Release; }; A8DA88E84817140B6C25E2DC6D561501 /* Debug */ = { isa = XCBuildConfiguration; @@ -5025,38 +5237,6 @@ }; name = Release; }; - AAB2C2F3EDCC25D0FC004CE3A4A819B6 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = AC68A1B035D2F7A706C5CEC4FAAB22F9 /* iOSDFULibrary-macOS.debug.xcconfig */; - buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; - CLANG_ENABLE_OBJC_WEAK = NO; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.14; - MODULEMAP_FILE = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS.modulemap"; - PRODUCT_MODULE_NAME = iOSDFULibrary; - PRODUCT_NAME = iOSDFULibrary; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; B1FEAF5BAD79A74C1EAE4065A1479D0A /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = F6D5B615CEC629B84F8D01C126CDDBAF /* Bolts-Swift-watchOS.debug.xcconfig */; @@ -5144,7 +5324,8 @@ MTL_FAST_MATH = YES; PRODUCT_NAME = "$(TARGET_NAME)"; STRIP_INSTALLED_PRODUCT = NO; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; SWIFT_VERSION = 5.0; SYMROOT = "${SRCROOT}/../build"; TVOS_DEPLOYMENT_TARGET = 10.0; @@ -5152,36 +5333,37 @@ }; name = Release; }; - D9362D5536BB08EFEC49B4CF3672F910 /* Release */ = { + D5544B4A7063878360B3D460D3EC2216 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 77114046A4A3FE14DB1472E7AF34ECE0 /* MetaWear-AsyncUtils-Core-UI-tvOS.release.xcconfig */; + baseConfigurationReference = 597BB4FDABFB4BEA9A3862A562CED887 /* ZIPFoundation-macOS.debug.xcconfig */; buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = appletvos; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MODULEMAP_FILE = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS.modulemap"; + PRODUCT_MODULE_NAME = ZIPFoundation; + PRODUCT_NAME = ZIPFoundation; + SDKROOT = macosx; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; - VALIDATE_PRODUCT = YES; + SWIFT_VERSION = 4.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; DB83D1EE7C501C29FFB56136E79CA377 /* Debug */ = { isa = XCBuildConfiguration; @@ -5232,7 +5414,7 @@ GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-prefix.pch"; INFOPLIST_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS.modulemap"; PRODUCT_MODULE_NAME = BoltsSwift; @@ -5248,7 +5430,68 @@ }; name = Release; }; - DF5E834FD122494538C582C747281EC5 /* Debug */ = { + EABCCFB6E292CA069E37FB26AE0D948F /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7728E7D9EBAE97ECA45528D9287757A0 /* iOSDFULibrary-iOS.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS.modulemap"; + PRODUCT_MODULE_NAME = iOSDFULibrary; + PRODUCT_NAME = iOSDFULibrary; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + EBA4F48B2CD0C545F960A5246EBA2C72 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 480D43633F8D604BCC70A3AED00509EB /* MetaWear-AsyncUtils-Core-UI-tvOS.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 10.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + F0A8955FFF11A43A63F5E7BCAB1D574D /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = 471949DE1C588949EA675BC34BD52CF8 /* ZIPFoundation-iOS.debug.xcconfig */; buildSettings = { @@ -5263,7 +5506,7 @@ GCC_PREFIX_HEADER = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS-prefix.pch"; INFOPLIST_FILE = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS.modulemap"; PRODUCT_MODULE_NAME = ZIPFoundation; @@ -5293,7 +5536,7 @@ GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-prefix.pch"; INFOPLIST_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS.modulemap"; PRODUCT_MODULE_NAME = BoltsSwift; @@ -5308,32 +5551,63 @@ }; name = Debug; }; + F75255A785BEEA81E640056DF57C2848 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9F800835A6F77B0E3045D698A12979F1 /* MetaWear-AsyncUtils-Core-UI-watchOS.debug.xcconfig */; + buildSettings = { + APPLICATION_EXTENSION_API_ONLY = YES; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = watchos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 4; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + WATCHOS_DEPLOYMENT_TARGET = 4.0; + }; + name = Debug; + }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 0F9414FB0836F7F4A5F8B1D2248F60F0 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-UI-watchOS" */ = { + 13C25D9AC9187FA38F346C47190DCCAD /* Build configuration list for PBXNativeTarget "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 9A584149B4C42DA8FF3C32B613F6D47E /* Debug */, - 7DDF4755581705C01FBAF7A4841DA64F /* Release */, + A8DA88E84817140B6C25E2DC6D561501 /* Debug */, + 2E2E4BABBE4CBB387811A7F5E669B850 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 13C25D9AC9187FA38F346C47190DCCAD /* Build configuration list for PBXNativeTarget "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS" */ = { + 23777FCC2AB054866C68B9DFE7934AD7 /* Build configuration list for PBXNativeTarget "iOSDFULibrary-macOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - A8DA88E84817140B6C25E2DC6D561501 /* Debug */, - 2E2E4BABBE4CBB387811A7F5E669B850 /* Release */, + 789DA5440EA708A6660FA34900936456 /* Debug */, + 793C6C46B72C17F315A9989AD8D61419 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 165A0C60F81957823324F36997AE8171 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-UI-tvOS" */ = { + 2F4F90BF93F6FEC582100163F3CCA8BE /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 0208EA2EF4D2BA5AE00178F030B8EB60 /* Debug */, - D9362D5536BB08EFEC49B4CF3672F910 /* Release */, + 12089D2662B226914136156E4A72830F /* Debug */, + 6FD985B0E1326D7E1721575B80BBCB82 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -5347,11 +5621,11 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 33FBF094DF6ED15B18196B55ABEEA52E /* Build configuration list for PBXNativeTarget "ZIPFoundation-macOS" */ = { + 40B3C411F942B04A8F769CB88A944DAD /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-UI-watchOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 79C08B404AFA3CFF8CA0560EBAB18FAF /* Debug */, - 24000EFC4A0E69F06352484844F7E9D9 /* Release */, + F75255A785BEEA81E640056DF57C2848 /* Debug */, + 2BCDCD2DBFD68EA69C03D48B18652979 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -5374,29 +5648,38 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 4E68E76D640A5A3FA22B853334D37E38 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS" */ = { + 550272F0F798FD0777D7AB355A95393E /* Build configuration list for PBXNativeTarget "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 0776BD3DFF054C321E8441FCB696120C /* Debug */, + 9D65AF463D9644BC297E5D1293AC40CF /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 591E3BE00906A2A9ADB253E6B9529947 /* Build configuration list for PBXNativeTarget "ZIPFoundation-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 8B95F84E1A5EFC66B91EA976EAC4A4B2 /* Debug */, - 7B9B758043B0D11439E3E6B524A4FCEC /* Release */, + F0A8955FFF11A43A63F5E7BCAB1D574D /* Debug */, + A463E25A1D3D1C73661131206EA6655D /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 550272F0F798FD0777D7AB355A95393E /* Build configuration list for PBXNativeTarget "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS" */ = { + 605C826BCDB00CF8B50903B0EF1EF2A3 /* Build configuration list for PBXNativeTarget "ZIPFoundation-macOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 0776BD3DFF054C321E8441FCB696120C /* Debug */, - 9D65AF463D9644BC297E5D1293AC40CF /* Release */, + D5544B4A7063878360B3D460D3EC2216 /* Debug */, + 880FC9D63AC2701AACB0B1D834350F69 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 55D8DCD965D251C3105AB0BA31703B8B /* Build configuration list for PBXNativeTarget "iOSDFULibrary-iOS" */ = { + 6F6ACB325DC7480C7D93A67FBE0D6472 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-UI-tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 83C8FCC2A568EC7265063248854D1F8B /* Debug */, - 67A23365A164A2E0838BB8CDD18F45A8 /* Release */, + EBA4F48B2CD0C545F960A5246EBA2C72 /* Debug */, + 771C8875D07B25A057B25A2748837466 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -5428,15 +5711,6 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - B9EEC09E8E7C050B5829EC60E59A5195 /* Build configuration list for PBXNativeTarget "ZIPFoundation-iOS" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - DF5E834FD122494538C582C747281EC5 /* Debug */, - 8C5430FBA4AFA088101DDA680A2A8119 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; B9FC540E31BEBB49B1B63BAF780F3610 /* Build configuration list for PBXNativeTarget "Pods-MetaWearIntegrationTests-tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( @@ -5446,11 +5720,11 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - C47EF85DA72C5F871433D935D5B09A26 /* Build configuration list for PBXNativeTarget "iOSDFULibrary-macOS" */ = { + CA3FF7C1A2DCC5CBDF2CCC91996FE6FA /* Build configuration list for PBXNativeTarget "iOSDFULibrary-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - AAB2C2F3EDCC25D0FC004CE3A4A819B6 /* Debug */, - 091BA31EA2AE0A6ECB4EADB26E42AFA3 /* Release */, + 759135CCC8A9C1F75F5125FD976986A0 /* Debug */, + EABCCFB6E292CA069E37FB26AE0D948F /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -5464,15 +5738,6 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - E04EC46CB2314773E61FC314A05B05F8 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 9EBFAC548B18447D85E8D91457E5C3D0 /* Debug */, - 0F410233F246C5F4B88558DB4F7F366F /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; F1F9E75DA7E11F7B56837CB3A93D2E91 /* Build configuration list for PBXNativeTarget "Bolts-Swift-tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( @@ -5509,6 +5774,15 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + FB874F0DBDC55C5513173BE0C143D5EB /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 9281AB9050F4B185C2E05A687F9776EB /* Debug */, + 61A424B662B5FD67E6A97BC4E6957026 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; FEDE60CFF2EB4F90C736D4BAA0EC99B5 /* Build configuration list for PBXNativeTarget "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/StarterProject/Podfile.lock b/StarterProject/Podfile.lock index 21d6d09..eccf1be 100644 --- a/StarterProject/Podfile.lock +++ b/StarterProject/Podfile.lock @@ -31,4 +31,4 @@ SPEC CHECKSUMS: PODFILE CHECKSUM: d30d97d5dcee211c7dad6cd6aecaa18d5c5a49a6 -COCOAPODS: 1.10.0 +COCOAPODS: 1.10.1 diff --git a/StarterProject/Pods/Manifest.lock b/StarterProject/Pods/Manifest.lock index 21d6d09..eccf1be 100644 --- a/StarterProject/Pods/Manifest.lock +++ b/StarterProject/Pods/Manifest.lock @@ -31,4 +31,4 @@ SPEC CHECKSUMS: PODFILE CHECKSUM: d30d97d5dcee211c7dad6cd6aecaa18d5c5a49a6 -COCOAPODS: 1.10.0 +COCOAPODS: 1.10.1 diff --git a/StarterProject/Pods/Pods.xcodeproj/project.pbxproj b/StarterProject/Pods/Pods.xcodeproj/project.pbxproj index 2ecb21e..a5809a1 100644 --- a/StarterProject/Pods/Pods.xcodeproj/project.pbxproj +++ b/StarterProject/Pods/Pods.xcodeproj/project.pbxproj @@ -7,596 +7,708 @@ objects = { /* Begin PBXBuildFile section */ - 003CE272585C3D7829A4148E28546A58 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F931CAD74B17C63AD52FD67AE5A2F34 /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 003F1F6FBCA64A5E2593488D62AD45C2 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 34C4ABD1292B4164296A397B4EB10664 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 026372D1AE70961F7AD006C101EE52DB /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 06F74B12B8035AD12B5B35BE94E4F7B8 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0014A31142F45CF8DD8F97158A923F16 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D8F6F4A39D77B7B09DBEBC03CD050624 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 03A692AEF2ED48F470E6B7CF1019ACA0 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 30D64E2A8AC33A4E6F9E7E3BF5CD1722 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 041123E8BDF49911B13644D05184CA05 /* TaskCompletionSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 837B192127E7B12E08CEDCC250CC101A /* TaskCompletionSource.swift */; }; - 047AC10563CA1F9EA9A438A868BA5E3D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 62ACBD4662324E90BCD96BA7EA2BF812 /* Foundation.framework */; }; - 056A4CB1BFCCF6F1EFA8D47BCD41FF3B /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 893FBF17B6E430F370B617C6E8FB3D7D /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 06020BD42B48485B4E23BC936E124039 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FBB3BF4C348A1B541964B842801B6189 /* Cocoa.framework */; }; - 07A625D87175E12AE1C0FF6F9226BBD9 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F25EA797F93CB223B36BE127474FCA5 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 083935BC0448C642A03CB33A83879622 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FC408262F06AC644ABCAE4D49B817E51 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 084E83803E305FCE00C037EEE395C766 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EB6E78CDFB71172C1FA2C102D9A7DB98 /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 0ACFB4B3F6A4A43EAEDB18EA6FA8B884 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 63202BF8662D83220A327EC8394242FD /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 0B91CC274CEAE3EC38AE9C3412FDCD89 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F931CAD74B17C63AD52FD67AE5A2F34 /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 04CA6E7EF20337F2D62C7FF0406922D4 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3301A15FC2949AEA2784492EDBC7A70C /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 06C0D6BAB5F22A3ED733A4E29D9A2B14 /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CC22EA09F1BA863F9EE8B97CAD40EF /* MetaWear+Async.swift */; }; + 06D5336482F5A360B1620719ED27C1D9 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D4FB7A5D78EE1FDB4857D9EDF07615C /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 077D1E27C1B0490BDD74BF5B01EEF534 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E3BE72C2F05F975EB0586FF2EBE41C3F /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0A80CAD573E2FA8014579F77DB102016 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E201522B79ACA9E5B191D8CA137B0533 /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0B099FCA3E21389F64648E54928C0520 /* common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73596A17D39152C54F79907E905F484D /* common.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0B6036686D5D49DC8295B31477BB26FC /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D0608D15485BBD00C2D02C2A174FB451 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 0C77D9E19D871ECAC707564A2BB53EEE /* Pods-Starter-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = BB8FF63AAD949B90017C1EA691426A74 /* Pods-Starter-tvOS-dummy.m */; }; - 0C7D0A5E831647A58B25AE5961DCEC04 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F25EA797F93CB223B36BE127474FCA5 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 0CDDF1ADE6B9D045638F72D8FBAD6BB3 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 34C4ABD1292B4164296A397B4EB10664 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 0D35F57A15E0A8D30C9AA56620ECE6C1 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5BF8451FA1D8D38FC918289C35C17E03 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 0F950DE0B9A437B9E542D3E46E6C340C /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED53380A0A114872E470B5B57206AD93 /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 10A9BFB432D78C377188196A78408971 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 826015182EA06E37BCEE4EFED2CE837D /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 11C13FE2EC6BD93B63F9D764A13158CD /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3F24632E7D719A0FDF0E71C9D046A818 /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1246A668F45228D24F69367D70E864F6 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F931CAD74B17C63AD52FD67AE5A2F34 /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 16128E646B7C50F7BF6E4C2AEDCF5AD6 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51872806369046ED62159DC54D3BD266 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 15524AF80C7687EEFE178820AA44AB60 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B36557E57399D9FE06D3DD94D7C1713 /* MblMwDataSignal+Async.swift */; }; + 16180C74AE6F9E2575B1384CAFE9FCC2 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FBC3AE734CABE764F2BA471459498219 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 16F0830A853B092479C886A507DE2CC2 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B36557E57399D9FE06D3DD94D7C1713 /* MblMwDataSignal+Async.swift */; }; + 178F103D7EC8B9D156D85E4C0FC770F6 /* common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73596A17D39152C54F79907E905F484D /* common.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 17EEFEFFC71F0AC6D1D8B82606F976B2 /* Task+Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 36E8749BB2603A491F9958EE2A3A12F0 /* Task+Delay.swift */; }; - 18EA0937F8CCE4557F3CFE38E96B1380 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EB6E78CDFB71172C1FA2C102D9A7DB98 /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1A220371293C20B6F2131C43F667C33F /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6377C5E70A1C4BA32865B1D99A214C32 /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1850BB07DCAEDB7428DEF05A7594C283 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3301A15FC2949AEA2784492EDBC7A70C /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 187F7B3780CB90BDEA7E3DDB113F5550 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E35692E77DA1D9DEE753AD3CD06C59C8 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 18F89FCB2CB100B4BF83ADE71DF739E2 /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5611B1879BD77C08A4F191EBA98F7DC5 /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 19152FFD996FC9CF163B024D24F02270 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46A0EA664A6D23D23970F2B50FA1ED0F /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1A725BCF419EB201AAD7F0A77BF28710 /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AE6DEF4DCC0A14478137AC7E5923734 /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 1A85E25520CBEB05A133319ACEA5A56C /* Task+WhenAny.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD84494AE611F8C6D2420C8D5A578A8B /* Task+WhenAny.swift */; }; - 1B5FCD9311B5A1A836596A74B652045D /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FC408262F06AC644ABCAE4D49B817E51 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1B82B8A22FA2C51784AAADD7E8C8B48B /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D955BDD745F47E1B8406183BDE233D9 /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1BA0656DB10DB9148FAF4E92B32EEB0D /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = E741D524F0F7A8260E73F6096F2908B6 /* MetaWear+Async.swift */; }; - 1CBF1919EF7D1006D74A6C168FF752B3 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 893FBF17B6E430F370B617C6E8FB3D7D /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1D81F77AE5D3C7FDC00C7BCACB3B4D51 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F4852EE83AA77321ABC3A1A6AE8A905 /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1DA0C6BDC6B61A0DF2290ABFD9C952E1 /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = E741D524F0F7A8260E73F6096F2908B6 /* MetaWear+Async.swift */; }; - 1F51362959883D6E4CF35E1AECCBFA85 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 221DB28F92CAE942ECB6740869A62AFF /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 20BF41B39B59B6153EAF9F808F6D44DF /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CBB09CC6652C4BFD15FBEAC24D07AA9D /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2124D3F54CA5F44622B9DFF1C5A32664 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 178698ACB3F7786613B760BCE2640721 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 22DE1013D4770FFEB480F1D5853B5D10 /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 865E20BDB258D3FE1092ACE87FEDA5E1 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 23C3449CBCC53A51F107348C63038FFB /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B1B052EBC55735DE28377B2625D00DE /* MblMwEvent+Async.swift */; }; - 248CFC8DEB91B2DC116C4FE36B02E1AD /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED53380A0A114872E470B5B57206AD93 /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 252E1AC346AD118A87C59598888F1E8C /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7B211D047FCFBF46341001154127BF4 /* ScannerModel.swift */; }; - 252ECE1DC1D91808C1740B3A7E62B97D /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B6B63DE1E7846CE38C0AD83FCEFCB4 /* MblMwDataSignal+Async.swift */; }; + 1CAF919B7200F1B12A25BC720B8712FA /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8E5337698F92619E772C69177B31FF2D /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1CFB6D47E17FB3C8EDAE2F6EB8747650 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A1BC54611F59DDB9DA105EFA630CE88A /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1F821F1315630039027C4B742E6C0751 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CB218E81B6C29AF1C2468898A82CF981 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1FA32DF6191FEBB8583ADF7B79EC2A95 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E513416C0B1E25C2439AB961BAA5B742 /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 201A8D3006004DC77C228E3D570F6CAE /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0374A8966340D6C6F204AEDDE7195E09 /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 203844E7708938ED22151CD5C0BDD1E6 /* SwiftGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2C5A74F26A5F693ED79C88FA42343DD5 /* SwiftGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 20669C43F983528EFB1C457F3D2A322B /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FFAEA4E7DEC191F4EB7AFFE15AD8C887 /* BoltsSwift.framework */; }; + 21DD5796A46589CC7E3D8D3FE21E8622 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 469B8B015B60FEA92F8C92251AF6AE31 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 22027B209730C10381D3A5EF7998F75D /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EF2AF82017A5DF639AB80DA9167CB62D /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 228A4AC6B7608A5222B4955AB11F08C7 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46A0EA664A6D23D23970F2B50FA1ED0F /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 231C6C3D6A36B403E06ED2DE5D0277FF /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 940B1A78A509FC5E861E0F33B9FF2955 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 24D828C45E6F71B2082242FEC478A6D9 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CB218E81B6C29AF1C2468898A82CF981 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 256865952B85AD41E9BD93E916A0A0DD /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87D659F1465356AA74B9A092439A6D8A /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 2575109DD723D9A21749C10103DEBEC5 /* Task+ContinueWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5D65D6F3D9A1EC0060BD382ED9DE1ED /* Task+ContinueWith.swift */; }; - 25EF6C2F66DBE39797CB631DD70C683E /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5595461B73D80542004FC6C7CE9BFFD8 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 262D1A0EB8F5EEE3FFDF806A65E80540 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 06F74B12B8035AD12B5B35BE94E4F7B8 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 28BEF1C4841B15B4013EBF4C4FAA044B /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C8045AA5021492B94729509C5E981A1C /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 259E2EB27A2359C48F7958CF9E78CECB /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9282C71969A1439C75E173883400052A /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2628224ABCBDFEC7A2567C2A848000E5 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D8F6F4A39D77B7B09DBEBC03CD050624 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2687D31A9F75D0A73139754E456628E9 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9282C71969A1439C75E173883400052A /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 26995070AFF602D3165DAD25B3FAC067 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A1BC54611F59DDB9DA105EFA630CE88A /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 26BC7FD4E1C7AAECFFA19356465D2DD0 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD9A2A311869B111F0574EA193B10550 /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 26E737FBDD43E67DA5AF78F8C5ADC85E /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F8D4FEE512423AEBA199921A57ADEF46 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2719F65CC486072C543ABE92DEBEDC37 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A8A76DCFF9440906C34B2692D420CFD /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 280392E00A51885851356F6F55EC59D0 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DB26455D1DB0B9B017F42AF23632D353 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2970478C2D5DF00B038205E8E7AFE7F2 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB6ECAA2DC4375581C0E7143B4B4F2B1 /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2A1068BADE74247CBE0A05BDF2E52634 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 469B8B015B60FEA92F8C92251AF6AE31 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 2A13229A19D2F7E8499904F2796D7E69 /* Pods-Starter-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B1B3569712E32522356304FB6B9DF2A5 /* Pods-Starter-macOS-dummy.m */; }; - 2B80506F5EEB1463288BA31FAE5E5EE6 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F64DCC3E4FF0E3AC424CE8AEE5EFA963 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2B9846E70ABF19B52615395BEEF0D893 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 907627F49775562029F574A13C5B8B33 /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2C40DFAD110D4ACE356B93EAFC6A5B39 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C537212A7BF3A3EF1A67474ECB74FC1E /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2BF42E06871308B91BDD5E17AA9753F1 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D4FB7A5D78EE1FDB4857D9EDF07615C /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 2C4D89B5A708C91CE814A3FDF4FE2608 /* MBProgressHUD-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A4A6B497310165A8A16BDFC2E6DC8B0D /* MBProgressHUD-tvOS-dummy.m */; }; - 2D6D60E9E1EBCC1D52A579DAF38E4DD2 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51872806369046ED62159DC54D3BD266 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2D6693FA2CF1931EAFCDF745534354A1 /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 048875C8ECDAE11D7003057D8B992756 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 2DC6DB0B644E11CF6F5F3BB01E3ACAC4 /* MBProgressHUD.h in Headers */ = {isa = PBXBuildFile; fileRef = 363FA38843C2836FEF61C1DBC3EC40C0 /* MBProgressHUD.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 2FE7C89D197C4E871C15BC0074260334 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F64DCC3E4FF0E3AC424CE8AEE5EFA963 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2FE192EFAFFD820C7C6B3503F44B717D /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CC22EA09F1BA863F9EE8B97CAD40EF /* MetaWear+Async.swift */; }; 2FF24404FE5B2EB0AAF24C6CC239A360 /* Task+Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 36E8749BB2603A491F9958EE2A3A12F0 /* Task+Delay.swift */; }; - 30449DC8344D1CFC4885BDE0CDDB8040 /* MetaWear-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 7FE070A2C8266CD6A000200A88E2E91C /* MetaWear-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 3079F3CDE8028A0924394CEEF920BE79 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D955BDD745F47E1B8406183BDE233D9 /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3080FF80951762FC08ABC1804F464293 /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0E8278B0B767AA3CC959A249ADE465C0 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 31F27E5A4B3572D873D292277DADC314 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 178698ACB3F7786613B760BCE2640721 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3338DE2826EB241079F8FE76E5AD782F /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1A5B7E578496C7E56CC31DA39874036 /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 33D85E2C66651AD7B7571C30611FB885 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5BF8451FA1D8D38FC918289C35C17E03 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 341B30CD151A9C072522850561CA3B37 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3733DDA76793063E68DCC38AF59946CA /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 347CCA92B7852EDDE7254805F8EB4852 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C8045AA5021492B94729509C5E981A1C /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3591F2E559A996A99D1A48F21A3E36A4 /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 368B609454A40BCA2D47E0559091B55D /* CoreBluetooth.framework */; }; + 2FF37A9085F3AE8B4F5D818D1B437F3B /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FFAEA4E7DEC191F4EB7AFFE15AD8C887 /* BoltsSwift.framework */; }; + 3002C8371B19C2E0A24643652A227D46 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 45940F0CF94A548FC9F3B4FA33051F8E /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3100EB2B963D0392824F2632AECBEF00 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E9F0F9BC85B1D451DE7DA97C59957ECD /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 33A4B1DCD85F8E6CA6A7676F01BED65E /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B36557E57399D9FE06D3DD94D7C1713 /* MblMwDataSignal+Async.swift */; }; + 3500A3C847D19046F4C42180349B781F /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = E149DBCDF48543804B2104AEAB54637E /* MetaWear+LED.swift */; }; + 353F993E28096768AC6691BF74212084 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7AD861E0372523DEECEF815D9FA7F8EE /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3543EA7C331150D535FFAAEA77718AB2 /* CSharpGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8DA8F605306A00A56093264E789638F9 /* CSharpGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3559EE0E1B4664C757A4571C06775274 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 30D64E2A8AC33A4E6F9E7E3BF5CD1722 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 35D1D588025EF2D15D8F95BBA7041C57 /* MBProgressHUD-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 8754823756355F1A18C60F348C8B8CFA /* MBProgressHUD-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 36715F7D4231F68897612B2161B5E7C1 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = 918FC3DE68A7D67638CE2C5367825308 /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 36B390E1BC8AE659460C94B68DEC8AB0 /* MetaWear-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = C8F152C5AD993A29A3666BB5A2A549AA /* MetaWear-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 372CED977A51A706403D4A5F5F20B841 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C537212A7BF3A3EF1A67474ECB74FC1E /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 378EF77F5188972349F21A546F6B9566 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FC408262F06AC644ABCAE4D49B817E51 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 38866C4F499B7C987A7BD75B79718765 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9282C71969A1439C75E173883400052A /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 38976BB25614C69769492DA355DFB469 /* MetaWear-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2AD5AA094AC651E9C924FEE31376C333 /* MetaWear-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 38AA5C3ADAAB8085BA56AFE8782B345E /* Task+Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 36E8749BB2603A491F9958EE2A3A12F0 /* Task+Delay.swift */; }; - 38D5A60BEB74B6A0E9685DBB59F70A41 /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CBB09CC6652C4BFD15FBEAC24D07AA9D /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 3941A75CC188FE7BDED71339B96CC1C7 /* Pods-Starter-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 03F915EA8DA168A6746EE05A27437E6B /* Pods-Starter-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 3A494176DE760CDAF835D0D9683AF929 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8CA6689CB7FA588F54527326B12A6E30 /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 39FCE0410151B5721D3BE3604ACA380F /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31FB69DDB532444DA82167E53E4B1683 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 3B8192DDEB643B6066EE1E5156ADD514 /* Task+WhenAny.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD84494AE611F8C6D2420C8D5A578A8B /* Task+WhenAny.swift */; }; - 3C556AE08864791342C468ED2A4F5696 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8C6131EDD4157BA3E09B3FCD4A545D45 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3CA2921E80354F7D0EE0A6F03E338143 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C537212A7BF3A3EF1A67474ECB74FC1E /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3F9C75932D13C44AB7E0811A4BE43D43 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE5ED46159BEF6773B69101984FDAFB4 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 40F8D7A9B9A74ACC65090E27BB5746AF /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 21E19269DEF954C4E94A038E57D001CF /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3B9C8B3B7CE4FC381B73B4D49DF09E14 /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FFAEA4E7DEC191F4EB7AFFE15AD8C887 /* BoltsSwift.framework */; }; + 3CC3B7943A8409B33D729827E92A7C10 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6C947102CABC6CF1B03A3CC74BFE1143 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3DA9EC6C9DC71F587494883CEC122F1E /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DBF5C8F2E797539E9CAA66EC26BC6E5E /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3E4265511D9A5AC5B8829F574822B343 /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8E5337698F92619E772C69177B31FF2D /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3E6B292275D6F2E3CB23119707E3CF00 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 45940F0CF94A548FC9F3B4FA33051F8E /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 41497E852551A843D068FCCA6095AD53 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 497DB20EAE931C659A46172B75E5B8E6 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 418F3DAFDC4AF200D7CDE275A94997C2 /* MBProgressHUD.m in Sources */ = {isa = PBXBuildFile; fileRef = D85F0CF7B03ECBB29CF09997E90A440E /* MBProgressHUD.m */; }; + 424DF1FC4751C62203EEB0959811735E /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B71604572313E9BB286E64E29DBC6732 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 428D9B67876EC88BE60B452EAD5F84A5 /* MBProgressHUD-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 33BF957528576B66622BDA86E26B08A2 /* MBProgressHUD-iOS-dummy.m */; }; - 43AD9CF7685210A107962B132C7361F4 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A62291A5BDCE9814866986CD77D9E7F /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 428F82ED9C61A6EB96D25452050E8D77 /* MetaWear-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 6F4DFDD326DF0F687E3A573D7C34CB4D /* MetaWear-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 42AA346EECAD5AE9FEE7DE6BA5ADB909 /* PythonGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E390F0DA33824EEA188BADFECC38820 /* PythonGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 43C9A6DE352D1908736E7F0AAFD22A83 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 62ACBD4662324E90BCD96BA7EA2BF812 /* Foundation.framework */; }; - 4781B7E2148E7296D191ADD91230F145 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 183E58681A7669557B97BCC0366023CA /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 47FC98FFD348C37F94612300A41A6334 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 06F74B12B8035AD12B5B35BE94E4F7B8 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 4834370D8A237E1BB8301B2FE1161C45 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A73E478EC7934D547293BEDFB36AE2B /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 44D90BE3E3A318A2DE2B765A539BE606 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = E149DBCDF48543804B2104AEAB54637E /* MetaWear+LED.swift */; }; + 4839B890D86547C12E28C1B9984C7BF2 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DBF5C8F2E797539E9CAA66EC26BC6E5E /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 484EB9AA3C52F20DCA088502F5483EB3 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 62ACBD4662324E90BCD96BA7EA2BF812 /* Foundation.framework */; }; - 4AC74425D3226AA6985D7DBB667C2E0E /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 84E5BF7240129CED344F9415DA07F9F7 /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 48D32CD4FB4E7356AAEE1D089DB27C47 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 69478DF70155827E5C4A8D65FE8544EA /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4BAF6EE2DABB8814F27CDEB8EFE5CCDF /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 915C92E52AD291DB12C9D2632199C9A3 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4D0507DB2116EC1F1DF1FAE69E367736 /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E61CD130A90592403E1785F55D129BF6 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 4D07CF26DFE82FEAB36B03293E884E3A /* Executor.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEFC2E63C96F3AA31A529BF1F51E6C74 /* Executor.swift */; }; - 4DFC14C7FC4293924AB082025F703D6C /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A35C8D69BE0B5B80DA9A76A0C521F741 /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 4E448ECB4DF3032C769BE1C72BD4CB4E /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 238ACDC0B8F4E0C3EF7E67BEDCC2A096 /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 519C9A134E67B901CBB3A67992B746D8 /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CBB09CC6652C4BFD15FBEAC24D07AA9D /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 522CBF780EE3F0888C3BDFEAD1920B92 /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A6754BDA792552A0657AC4594E371944 /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5387C60FBD25EADDC98629494925FD4D /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80137C1F4D67156FD92C9727976687BC /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5411E66404827A4B7786C79C9ED7F02E /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 468B1640EDE11E2E78934419F3E9C319 /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 55FE80EBF752CC471CF1163456371B8B /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3FE57D99928841AF0F589776CE63598B /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 576FD0090014EA4AF2F1A496C6A35CBE /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6F05254446FC44134AB1FCB505181E8D /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5861CD592B1B140AC4AAD97D9E1C2D35 /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 21E19269DEF954C4E94A038E57D001CF /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4DF390DBA13DEB209AB2D5B6A72C5B07 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 497DB20EAE931C659A46172B75E5B8E6 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4E11F70E0B418E9719C2111C08FD6047 /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F8F58A4DB3EC7AB82C245D76694985D7 /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4F16EC419BE5AD01EDE65419E1258D7E /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 469B8B015B60FEA92F8C92251AF6AE31 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 503FE1CA27065E51E9571B19A89EBEC8 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EF3984D14110A5F2723454D510C554B8 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5245DE8BDA3CEF69FD3F68960DFD5212 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5B1FDC1A446A4999A70F9AD891F6203 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 55011E1376E4542939FEF78AC4577BEE /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 048875C8ECDAE11D7003057D8B992756 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 555CF92B5CF0860E6382A3D99BED516B /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5611B1879BD77C08A4F191EBA98F7DC5 /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 57BCC7D7C52D44A32C2FE28DDC51FBE4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 62ACBD4662324E90BCD96BA7EA2BF812 /* Foundation.framework */; }; 58DA6845EFFC6FDA03D7933277AB36CD /* Task+WhenAny.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD84494AE611F8C6D2420C8D5A578A8B /* Task+WhenAny.swift */; }; 591CFE7E7431D4ACAF447FA33F19FBD6 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8A94499076F43ED27622B582C18A1DD8 /* CoreGraphics.framework */; }; - 5A637715D8B6D25661A080405B942F1F /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B1B052EBC55735DE28377B2625D00DE /* MblMwEvent+Async.swift */; }; - 5B61CA907E803D7F492D02D3C4AACD2C /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 468B1640EDE11E2E78934419F3E9C319 /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5E2C11270AC9A27B5F3B8B5C59971AC5 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3733DDA76793063E68DCC38AF59946CA /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 598E9CADA08B465439642DDDFB6650FA /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6C947102CABC6CF1B03A3CC74BFE1143 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5A90FE173B59A4604C5C032C68493EDD /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FBC3AE734CABE764F2BA471459498219 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5E296B37789E0CC1DBFEABD2AA4095C9 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F64EC134A32A2E2619915856F128C5C /* MblMwEvent+Async.swift */; }; 5E8C6E9C84996C14D7754D8C9FE0ACFE /* TaskCompletionSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 837B192127E7B12E08CEDCC250CC101A /* TaskCompletionSource.swift */; }; - 6001860B94566C9B0D1C09AAD89EDB9D /* MetaWear-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7398100F920A07F383AB555139B9AB22 /* MetaWear-iOS-dummy.m */; }; - 600D4369945D5109940F3E9B8F337F62 /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0E8278B0B767AA3CC959A249ADE465C0 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 6016899346D2C439D466C959F051E566 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9DC9077D61C1F98C3178577A231EDCFA /* CoreGraphics.framework */; }; - 6048E3AEFF529C38B5D0D400F8130114 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B8589B881C3662FF6987875F057E1266 /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 628C6D944FDB6FFEEEB7E575B0AC541F /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 067C52443C7E95555DCF585276CEEDF3 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 632575C30239F52E6515742DDBED6BD2 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6F05254446FC44134AB1FCB505181E8D /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 647B509A1437BD608EFD12FCC0E935FF /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A801E26691F85C79F93EC7FB13F7932D /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 62C1023A5E2F8B3F34B4E6C5366A4014 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 01D834C2C6B1749521F45F5CAE05A0AF /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6386469E50D711E0B9F43C1109686548 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A8A76DCFF9440906C34B2692D420CFD /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 63DDB564AD84EB019AC65C93AB8F81F0 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E513416C0B1E25C2439AB961BAA5B742 /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 63FAD868B24E6B7748160B6B2A8DF8E0 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 01D834C2C6B1749521F45F5CAE05A0AF /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 652C419571AB0F8B86D47417A11CDF1C /* TaskCompletionSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 837B192127E7B12E08CEDCC250CC101A /* TaskCompletionSource.swift */; }; 66506341EC41A72C818EB1B795046A62 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FBB3BF4C348A1B541964B842801B6189 /* Cocoa.framework */; }; - 684AEAC260CC0A58F5F0C86701CEE61F /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = D40A6D2FD7C5D6CDBD2E9FF2211BF82D /* MetaWear+LED.swift */; }; - 68BF82E86BB7FAA3D5623AFD0BBFABCD /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80137C1F4D67156FD92C9727976687BC /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 66AAC37B28988CAF55464DCCF661F6BD /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F64EC134A32A2E2619915856F128C5C /* MblMwEvent+Async.swift */; }; + 67C66BB7856B3DE85F4E1C321B150C7B /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D4FB7A5D78EE1FDB4857D9EDF07615C /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 67E33686A3B8D4DB42F9AEDB84ADBBC5 /* PythonGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E390F0DA33824EEA188BADFECC38820 /* PythonGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 697CCE81E02FD15611AD5B4C86D3B2C8 /* Bolts-Swift-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = F1CFA36BBDAADC3C7B435BF2E42672A3 /* Bolts-Swift-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 6A0C8BE9B60F47F4186F89E3598F26EF /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = 918FC3DE68A7D67638CE2C5367825308 /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6B72C8A68368F1D36F1BEE2451748DB2 /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FFAEA4E7DEC191F4EB7AFFE15AD8C887 /* BoltsSwift.framework */; }; - 6B85ECB1B815564CEFE96EDC09980393 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6377C5E70A1C4BA32865B1D99A214C32 /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6C22E21AB9A2A4E64EDC69E126506556 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE5ED46159BEF6773B69101984FDAFB4 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6E7AB991D01CE02BA3C487571F39F907 /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7344DC86ADC723702CC76DF0D5AE0312 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 71D8C1333995F1FBDEFF21DC52C88CD2 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F25EA797F93CB223B36BE127474FCA5 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 72287033749A8D018D09F9A942D03CB4 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80137C1F4D67156FD92C9727976687BC /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6AF38C98C1734B226BFBA56F13BDA5E8 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D08C199309C453DFB18384D427ACC20F /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6B0F09B34EC1DED9C1944FD4AA1C199E /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5B1FDC1A446A4999A70F9AD891F6203 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6B2B9202D95431A8D50317F45BD9FB63 /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AE6DEF4DCC0A14478137AC7E5923734 /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6B6BA1766438B75C02F7A53F19E9E3A6 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31FB69DDB532444DA82167E53E4B1683 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6FAC24D771A5F5409D7FAD1AF4108C06 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 01D834C2C6B1749521F45F5CAE05A0AF /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7081CC1291BA714647C51F53AD604B9E /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 960E6CF8D16AAFA541846C643B412CED /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 70D34329E457DB5A73EA3908FCA04B63 /* common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73596A17D39152C54F79907E905F484D /* common.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 71368054D134564D3F572F0294BBC05E /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB6ECAA2DC4375581C0E7143B4B4F2B1 /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 715835AA319F6B00102B8EA41FAFD9BC /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D0608D15485BBD00C2D02C2A174FB451 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 724843BE996C01CBF81F06DFD1788B2D /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FFB774922242F93A433397808756C1EE /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 72D27DF79BEEA067C9707C5FDFC8A6FF /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7DFA7E1CF90980A0A17D88F03E86FD05 /* Errors.swift */; }; 72E60F7411C6077AED13F9800054438C /* Task.swift in Sources */ = {isa = PBXBuildFile; fileRef = B15555497F693B6A99DE2F485EF4A1AC /* Task.swift */; }; - 73AB41D5C367969CA0EFB24DDBC98388 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A73E478EC7934D547293BEDFB36AE2B /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 7418E427690ED5C01886CE4578342416 /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 865E20BDB258D3FE1092ACE87FEDA5E1 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 78BF048AD44317C6B630154231ACBFC2 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F5452D656D9A83AD9DE7F1B8DB9583C /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 7984A9E934C748F59B9F1117F26B5065 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 87F5D6D28DFB09B6A494C12C0CAF0CD3 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 748599986A02CB3A1CD0BAA30ECCFD65 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E35692E77DA1D9DEE753AD3CD06C59C8 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 770616CEC8F8011DC53F21C2C9DC0382 /* JavaScriptGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08A673C854AF0D8C3D944940AF04ADF4 /* JavaScriptGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 79DCFD5516667F253580E607C9CB73D5 /* MBProgressHUD.m in Sources */ = {isa = PBXBuildFile; fileRef = D85F0CF7B03ECBB29CF09997E90A440E /* MBProgressHUD.m */; }; 7A04D5CD995C5E94005A7A2F304035AD /* Executor.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEFC2E63C96F3AA31A529BF1F51E6C74 /* Executor.swift */; }; - 7A189904A5CCF6CBC53265863DE41F23 /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A801E26691F85C79F93EC7FB13F7932D /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 7A8E22F83821002DED80E7CD4720324E /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 36C32A8482A53C656EAF7C5ED2E3C5E5 /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 7B191AFF5067E87545FB80092A529B43 /* Task.swift in Sources */ = {isa = PBXBuildFile; fileRef = B15555497F693B6A99DE2F485EF4A1AC /* Task.swift */; }; - 7B27D753EF8DDA24F76814740C95B097 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F5452D656D9A83AD9DE7F1B8DB9583C /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 7B2A9A2F689362926390F928987CD04C /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 468B1640EDE11E2E78934419F3E9C319 /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 7CF1CC012C49A82301FD028C9A32A40F /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51872806369046ED62159DC54D3BD266 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 7D0D2355F24951B4A0B35C9ACCEDE121 /* Task.swift in Sources */ = {isa = PBXBuildFile; fileRef = B15555497F693B6A99DE2F485EF4A1AC /* Task.swift */; }; - 7DEDCE9D86BE99EF8CB602EE0C93BBB5 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = D40A6D2FD7C5D6CDBD2E9FF2211BF82D /* MetaWear+LED.swift */; }; - 7E55A81CC856B32A42BE776AF461E2A6 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED53380A0A114872E470B5B57206AD93 /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7E37C424389699B98AE505D080DE49EA /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CC22EA09F1BA863F9EE8B97CAD40EF /* MetaWear+Async.swift */; }; 7FAE07C224FA939BFF0FC044A8EFC0CF /* MBProgressHUD.h in Headers */ = {isa = PBXBuildFile; fileRef = 363FA38843C2836FEF61C1DBC3EC40C0 /* MBProgressHUD.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 8205E488561FEFBED9C40E4A24E736EF /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F5452D656D9A83AD9DE7F1B8DB9583C /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8228BD67E637491478B8D54FC2CCB299 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 87F5D6D28DFB09B6A494C12C0CAF0CD3 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 826865F5AD07820E37748DFACBF2AF3F /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE5ED46159BEF6773B69101984FDAFB4 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8271A2F92207C9EE120B5B59145DE228 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 826015182EA06E37BCEE4EFED2CE837D /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 82E8DE998E15C1C5F74F856280AAF6AE /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 11CB2C6911BDAA75F30EE843D041EB3D /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 81D37212609958C8D4AC676289AB798B /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 47B0FA97D88DC55F5C8D9B70618CFE50 /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 82182EB272D1C8BA20E584BF77492BB3 /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE6B25EA7F6BAC20B469AFA0E9107547 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8221AD2CFA3AE7A89AA7844C5963F651 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BC285E1A6866C9A5A6611C0D1144A7A /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8393D965460E8FD5BF384DF8F7D92EDB /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE6B25EA7F6BAC20B469AFA0E9107547 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 83B1B34720AA1EAAE7D713AEDE74A678 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2930A596A32FF425D7DAB104DFA2F73B /* Foundation.framework */; }; - 86D024AE4187C91A86D881BF1E97737F /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8CA6689CB7FA588F54527326B12A6E30 /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 87FA84139939C0F02D908392C5ADE8EE /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FFAEA4E7DEC191F4EB7AFFE15AD8C887 /* BoltsSwift.framework */; }; - 8A51ABC1DD853532C95365F71E6205AD /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 221DB28F92CAE942ECB6740869A62AFF /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8AE3296315100B21953F2D76448E6447 /* gyro_bmi160.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F04FAE2FEFA0EC2728DAB52C7CFEFC81 /* gyro_bmi160.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8B8DF6E1707A82461D84F12E35CA12D7 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6F05254446FC44134AB1FCB505181E8D /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8B9143393CA0B1220539BD2715C8A5E4 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = D40A6D2FD7C5D6CDBD2E9FF2211BF82D /* MetaWear+LED.swift */; }; - 8BBD771765F04E7674FEA4138CE57EFE /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A35C8D69BE0B5B80DA9A76A0C521F741 /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8BC1E13BEE212AE8FD7A872ADDB787FD /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A801E26691F85C79F93EC7FB13F7932D /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8D77B9CEF1F58B0A20CFB86636BBC217 /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 865E20BDB258D3FE1092ACE87FEDA5E1 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8DB2E537968884AF15C661EDECEAD1C0 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = 918FC3DE68A7D67638CE2C5367825308 /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8F88D4AC6B5A25FBCDBD1B9731547EBA /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5595461B73D80542004FC6C7CE9BFFD8 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9146A0F5F526E43321157DAF500E7AE0 /* gyro_bmi160.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F04FAE2FEFA0EC2728DAB52C7CFEFC81 /* gyro_bmi160.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9201D2C46B69D793BDC50C3BAFE48405 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 067C52443C7E95555DCF585276CEEDF3 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 923BE8531BF867F184094A797E81A010 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 826015182EA06E37BCEE4EFED2CE837D /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 92407FF85BC7B3171D174ECBA1884D6B /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A62291A5BDCE9814866986CD77D9E7F /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 92BF34B6E75520A0C28859CA08674985 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3733DDA76793063E68DCC38AF59946CA /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 92F413330907629B1855F6A860F948A7 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 87F5D6D28DFB09B6A494C12C0CAF0CD3 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 94FF8BE1DE8AF7216574A5C6AB93EF85 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 63202BF8662D83220A327EC8394242FD /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 854120AC9CE144D477BBA7CB28B5F138 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 258260CAA5679A15FCBAADAAE4B672B4 /* ScannerModel.swift */; }; + 885A384CD3D953975CBF0D878B6E00B2 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EB4834A2855D12DEF11E3933422A1571 /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 89CB4C55AD20FC80C63E0303C3AF2AF3 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9144025DABE270C8035839AAC2D6CF6 /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8A0E255FADB60E45BA3CFAA6A2BD45E2 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = E149DBCDF48543804B2104AEAB54637E /* MetaWear+LED.swift */; }; + 8A973496271A2FC9105041839921C465 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A8A76DCFF9440906C34B2692D420CFD /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8B2718D2EF1537DEC60EA3368C0C82FA /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F8F58A4DB3EC7AB82C245D76694985D7 /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8B2CDF9CEDE2AC82249DA185DC6987D2 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7AD861E0372523DEECEF815D9FA7F8EE /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8C63607B4BC81098C084E5D480C67C79 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BC285E1A6866C9A5A6611C0D1144A7A /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8E3EBF7FB5A144669ACA9C2A9959014B /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31FB69DDB532444DA82167E53E4B1683 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8F31B09D782302C8B46EA7097F5F73B1 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC95E47A76D8C1A2E83EC0B0254B906C /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 91BF982A6325FF30EAB98ECE8CD7D696 /* MetaWear-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 563914C0B411345CAB35522A89CCFB92 /* MetaWear-tvOS-dummy.m */; }; + 927E64C0AF69CB582A45203A0D5717E5 /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D0608D15485BBD00C2D02C2A174FB451 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 92CBA17BE5DAC2E731014601D2EDBFCD /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5B1FDC1A446A4999A70F9AD891F6203 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9473BD6B6B45FE028524DAD62B1DEC5C /* SwiftGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2C5A74F26A5F693ED79C88FA42343DD5 /* SwiftGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 94F569ACF894EE4C4F077232344C893C /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EF3984D14110A5F2723454D510C554B8 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9560D784E84B61CEE051D7FDB234BD13 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46A0EA664A6D23D23970F2B50FA1ED0F /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 96842388F596B35029DAF34B0C8197CD /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7DFA7E1CF90980A0A17D88F03E86FD05 /* Errors.swift */; }; - 974BEA2CE9A81D5102ACB6272A9381C6 /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0E8278B0B767AA3CC959A249ADE465C0 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 97BDDC17BF7DE69A0D308627CDAAB668 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B8589B881C3662FF6987875F057E1266 /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 972B08A105885405DE062AB73B41A25D /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87D659F1465356AA74B9A092439A6D8A /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9A1E7047ECBA60B34392CF1D33CADE5C /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DBF5C8F2E797539E9CAA66EC26BC6E5E /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 9A2C4B49C5E9259DD74393605004741A /* Task+ContinueWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5D65D6F3D9A1EC0060BD382ED9DE1ED /* Task+ContinueWith.swift */; }; - 9AB659B7961ED5E2CCFB089929B89695 /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A6754BDA792552A0657AC4594E371944 /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9ADCD356FA0AB3AEB08D68BEEB4E1E51 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B8589B881C3662FF6987875F057E1266 /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9D01EF28305B32BD44177A60F1FF7A1F /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F4852EE83AA77321ABC3A1A6AE8A905 /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9DB56599DAFDA6FD9EE2747AEA7B917C /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1A5B7E578496C7E56CC31DA39874036 /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9EC536B249231615809AAC970745176D /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3FE57D99928841AF0F589776CE63598B /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A2F964532AA62DB11487C0549EB80E06 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 36C32A8482A53C656EAF7C5ED2E3C5E5 /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9A4CF5EFA1053D34BDBFABC39197DDAE /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EB4834A2855D12DEF11E3933422A1571 /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9A9B6E40AA20B07E1693848F9CDE92D3 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E3BE72C2F05F975EB0586FF2EBE41C3F /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9CA40DFBCF4374057B3F7537C222DCF1 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 497DB20EAE931C659A46172B75E5B8E6 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9CAFF904B28525D0C60F45C37C34BAF2 /* MetaWear-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 7BF15712AABD985A36C7041D143B0F7B /* MetaWear-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9D3A1B52DF5E8B33527CCE0276D539A3 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3301A15FC2949AEA2784492EDBC7A70C /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9D52C1B12AE41F8836F47B06C7A9F59D /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0374A8966340D6C6F204AEDDE7195E09 /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9D68C3DBB769842B31FF920093973CA5 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D08C199309C453DFB18384D427ACC20F /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9E9760F57A75A0871F52BC26A237DB89 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FBC3AE734CABE764F2BA471459498219 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A0E0AB7C968ECA9161DA46965657DA78 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B71604572313E9BB286E64E29DBC6732 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A2F8503188C73215D66397BA592E002E /* CSharpGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8DA8F605306A00A56093264E789638F9 /* CSharpGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A31CC0581975A93AC672339085FC808C /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AE6DEF4DCC0A14478137AC7E5923734 /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; A3761FD6656A8ABE4D9413ACA5CF8D13 /* Task+WhenAll.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB5787F377410A3566126C52B31A1EE0 /* Task+WhenAll.swift */; }; - A6983B4A50D6D63ACA836DC9A5AA94C0 /* MetaWear-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 1DE697492D68A6BCD4D5165B1175E5C9 /* MetaWear-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - A80A5CCCCD6F2C9B32981A304608BB20 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B6B63DE1E7846CE38C0AD83FCEFCB4 /* MblMwDataSignal+Async.swift */; }; + A3B0A71DB6AB6BB8213F93E627B45BA9 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 30D64E2A8AC33A4E6F9E7E3BF5CD1722 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A5431868A4FC4E3593BC18891CAFA0FD /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7AD861E0372523DEECEF815D9FA7F8EE /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A54D3D09A6EBA2A545EA48140E598611 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BC285E1A6866C9A5A6611C0D1144A7A /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; A8466FE5C48C1E85637CE4BB79265262 /* Bolts-Swift-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 26AA8BF3E47F5213AC49F51A2F14D082 /* Bolts-Swift-tvOS-dummy.m */; }; - A876FE129671970C0F8177A288AC8285 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B1B052EBC55735DE28377B2625D00DE /* MblMwEvent+Async.swift */; }; - AC1D6866EC38761E2E1B4ABC76049E24 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 238ACDC0B8F4E0C3EF7E67BEDCC2A096 /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - AC540DF16965C5E66697AC598D461318 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 95AAE18A0142541C9FBA8A918F24504D /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - ADEED9C5DEC035CA92AF12AB8B47981F /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5595461B73D80542004FC6C7CE9BFFD8 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - AE466034BA767EC8CA9E852A0509999F /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4A4EAE6EA74F73B92B0EBABA0F7283A7 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A88A44078E834A3F0E9AC5B32E3E9C4D /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE6B25EA7F6BAC20B469AFA0E9107547 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A9F2382185A6ACBE738DC06FA4A70052 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AF9BE72D3F724EFB9A6ADFDE7CF0DC2E /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + AD4D3C81A904AE78FB14DA7D98F0A6DB /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5611B1879BD77C08A4F191EBA98F7DC5 /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + ADB060AC0D87EDA5F01642AF5C37EDB1 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AF9BE72D3F724EFB9A6ADFDE7CF0DC2E /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; AE820863AA78013E03649B1A70CD6E2B /* Pods-Starter-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F13FC7E2EA6900A8A2228E057CB9D94D /* Pods-Starter-iOS-dummy.m */; }; - AFECEE94F3A6B88A57A7BEF547D44D5A /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A62291A5BDCE9814866986CD77D9E7F /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B1D7ABC16EB42B64290A692E3B046053 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 067C52443C7E95555DCF585276CEEDF3 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B207248AB2BE3CD9C53DF3F983AF6B5D /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5BF8451FA1D8D38FC918289C35C17E03 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B241B3807469C876CDDD23032B657ABB /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3F24632E7D719A0FDF0E71C9D046A818 /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B357ADFA4D5EE7815F401CEDE9710673 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 183E58681A7669557B97BCC0366023CA /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B36400D7BF4CBAF148BE7A5AAEA68C4E /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 84E5BF7240129CED344F9415DA07F9F7 /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B013EAE133CA81919DAA21A77FB8667B /* CSharpGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8DA8F605306A00A56093264E789638F9 /* CSharpGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B1BD375B7DED21AC3C11F34FC9597489 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EF3984D14110A5F2723454D510C554B8 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B2599F065389E1B19785D81A0600D8ED /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC95E47A76D8C1A2E83EC0B0254B906C /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B2F56D4605F8876AA6762A10C77BC484 /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 69BBBFBD413E4347F9175B0DC4182489 /* CoreBluetooth.framework */; }; + B3602E2EDFE23F1EB99EA8C2F4FC2DBB /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E61CD130A90592403E1785F55D129BF6 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B406DE7B106F854062DB2327F9B83189 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 940B1A78A509FC5E861E0F33B9FF2955 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; B44201DB8888C4AE1997955FADAA80AD /* Bolts-Swift-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A32F3EA739395EC8FBF864B3A8E08B49 /* Bolts-Swift-macOS-dummy.m */; }; - B55CC6648E796BF40A1E8ADBCA721DC1 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 36C32A8482A53C656EAF7C5ED2E3C5E5 /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; B5A87D8B501C5D8AC39EF9B02F943317 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 16B794F4704C79E1632AA45BFE6195EB /* QuartzCore.framework */; }; - B6948CCE31AA831E04A4D3F499740890 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 84E5BF7240129CED344F9415DA07F9F7 /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B871A587F3D91D6CA939CC7B0732EE77 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EB6E78CDFB71172C1FA2C102D9A7DB98 /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BE671E9ED7B91747B766F44CFF66B6F8 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 183E58681A7669557B97BCC0366023CA /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BF15A2F4563C8A3246B3FBD7864AFC85 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D955BDD745F47E1B8406183BDE233D9 /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BF546AE0F9CB72921B2FE140DC9A776F /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8C6131EDD4157BA3E09B3FCD4A545D45 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C0577446230EEF4E74C279C123C64516 /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A6754BDA792552A0657AC4594E371944 /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C1D97339A423A30152846CDE6B0A5EE0 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 893FBF17B6E430F370B617C6E8FB3D7D /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C29ECC91ADDB8A61BB78A1210B0B418D /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4A4EAE6EA74F73B92B0EBABA0F7283A7 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B65EBEF57C8A6F85C807D7E78CC16599 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C129BF0B3E163B2A9A5AE98ADD5A9BD /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B7FB87FD9851479B332A0E30036E9765 /* PythonGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E390F0DA33824EEA188BADFECC38820 /* PythonGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B915520A8230401BC8CC78CBBDE26716 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E9F0F9BC85B1D451DE7DA97C59957ECD /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BBB2E266B8D0F3DB111DAFBB8A099256 /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F8D4FEE512423AEBA199921A57ADEF46 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BF96E928E9BC3AD8F27382CF69C120D3 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D08C199309C453DFB18384D427ACC20F /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C05E69FEF419B1B2ACC8C10ABEA3D9B1 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FBB3BF4C348A1B541964B842801B6189 /* Cocoa.framework */; }; + C1A011DF8AEBB597474C9980724D8DE1 /* JavaScriptGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08A673C854AF0D8C3D944940AF04ADF4 /* JavaScriptGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; C2B1EFCD372318999D8C5CB07C9DD356 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2930A596A32FF425D7DAB104DFA2F73B /* Foundation.framework */; }; - C3E6DFAE5304199B0F47337F8C7B9A26 /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1A5B7E578496C7E56CC31DA39874036 /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C475DB31D65DD5BC2B9A9A3296852A8C /* MetaWear-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0084429AA6FD4EC9C9F59B3E5F321DF7 /* MetaWear-macOS-dummy.m */; }; - C48C469F16DCB5D87F8C7720FF4C03FE /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A35C8D69BE0B5B80DA9A76A0C521F741 /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C5515538EB26C099F9611AF9E4561919 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 907627F49775562029F574A13C5B8B33 /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C392A8F80289A97FEBB033BE8AFE5E95 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA0560F3124490759DBB7E2EF9B80E4D /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C3B0F4102AD116AF702E8871E4FD94AE /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 960E6CF8D16AAFA541846C643B412CED /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C4973E0B17208E272C5A5BFE5731F152 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E9F0F9BC85B1D451DE7DA97C59957ECD /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C4DC237CE3DFD050F68ED6D9432A658F /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E513416C0B1E25C2439AB961BAA5B742 /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C4EF1F475B020B6EBE6E212DF5ED07D1 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FFB774922242F93A433397808756C1EE /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C56F79C59AA42C0D80590F31F7D1A471 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CB218E81B6C29AF1C2468898A82CF981 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; C5DE41F9FBE09C47A75C9CACA8E8E1FC /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 62ACBD4662324E90BCD96BA7EA2BF812 /* Foundation.framework */; }; - C882CFB7E602407FC48C7C8D02B944F4 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7B211D047FCFBF46341001154127BF4 /* ScannerModel.swift */; }; - CA30DBC2FB8EF95126A8B390AFA8FCCF /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FFAEA4E7DEC191F4EB7AFFE15AD8C887 /* BoltsSwift.framework */; }; + C6176DBD76096CBA50BC837DA24E3300 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B71604572313E9BB286E64E29DBC6732 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C97B5F59C9526A216427A8D2C00C4317 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA0560F3124490759DBB7E2EF9B80E4D /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C99E708777B6973FD80EB672C0FAFEB7 /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EF2AF82017A5DF639AB80DA9167CB62D /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; CAAA1842F5F7F4D105FAC2951DA031CE /* Bolts-Swift-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 53D5B262CE0C7571E16E6B9C0D0B5B7C /* Bolts-Swift-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - CBEDA069D8FFE07DBF9310B6AE834B1A /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7344DC86ADC723702CC76DF0D5AE0312 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CC31ED49BA3CC429838C9668848F7EA8 /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3F24632E7D719A0FDF0E71C9D046A818 /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CE662C3F25298E40E6BED723AD1EDC0F /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 69BBBFBD413E4347F9175B0DC4182489 /* CoreBluetooth.framework */; }; - CF54785ACA89EF4526CDC92300F8519A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2930A596A32FF425D7DAB104DFA2F73B /* Foundation.framework */; }; + CB2BD4123FAE4E8F14022AAE583AE0B2 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E3BE72C2F05F975EB0586FF2EBE41C3F /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CB9482CC3E8245F0FAB34B0D181284D3 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DB26455D1DB0B9B017F42AF23632D353 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CE380E59B294F3007EFE85BD51E0FA99 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DB26455D1DB0B9B017F42AF23632D353 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CEE1471416C2501F7C384880DBCC69C7 /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87D659F1465356AA74B9A092439A6D8A /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CFA33D37F27FAFAABC4C419DB374D247 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D8F6F4A39D77B7B09DBEBC03CD050624 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; CFF15CE790676F06D91D07660424585C /* Pods-Starter-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 702271784BFC1B5B9BBAB107FDE921EC /* Pods-Starter-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - D0A52E9A64E5B8C05C1A217F980585A1 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 95AAE18A0142541C9FBA8A918F24504D /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D4DFC174F1291F63081DF68DEC00283E /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F4852EE83AA77321ABC3A1A6AE8A905 /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D5B8666C5705F3AFEAA0503ED6C078D9 /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7344DC86ADC723702CC76DF0D5AE0312 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D09E7CD344CB9E3667F5F2FC7695F032 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 69478DF70155827E5C4A8D65FE8544EA /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D0E93DC0A5D5F5FDCCF75DD024B9369E /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0374A8966340D6C6F204AEDDE7195E09 /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D11A164E1ADECBEFAF91F4F82F4D17AC /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 915C92E52AD291DB12C9D2632199C9A3 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D3041EC87A6A4A8E12EF5EEA9874FDEE /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2930A596A32FF425D7DAB104DFA2F73B /* Foundation.framework */; }; + D3FF604F71C60C1D685353352999C113 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9144025DABE270C8035839AAC2D6CF6 /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D434CC3561FF32AAE8B406C050D9C9F2 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9144025DABE270C8035839AAC2D6CF6 /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D47786F6190D073C88E50E931F973810 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 258260CAA5679A15FCBAADAAE4B672B4 /* ScannerModel.swift */; }; + D5D14F31FB56F36DF45CCFD1885D33DB /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA0560F3124490759DBB7E2EF9B80E4D /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D6A5E773E3A5D7CB2EC5154110DAF031 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB6ECAA2DC4375581C0E7143B4B4F2B1 /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D735AF60094DA5DD2F4F960BC82F9CF0 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AF9BE72D3F724EFB9A6ADFDE7CF0DC2E /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D7A774958B3D3D390D493339FBD76484 /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EF2AF82017A5DF639AB80DA9167CB62D /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; D7C318ECB2D5345DE5BE1CAF2925D26F /* Task+WhenAll.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB5787F377410A3566126C52B31A1EE0 /* Task+WhenAll.swift */; }; - D867B278780512382B977A8AD1513F56 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A73E478EC7934D547293BEDFB36AE2B /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; D8E64CBAD5BB57243A5A56C5077FE779 /* Bolts-Swift-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2BBB101F67AAC195E7CEDB4588BB57FB /* Bolts-Swift-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - D92AE3B6301C4F4794D5C85E079AF471 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 907627F49775562029F574A13C5B8B33 /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D947047846547C3438EC17FB74B6E47F /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8E5337698F92619E772C69177B31FF2D /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; D9AA07C34C9AAEED782F2E5E3A7AD02A /* Executor.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEFC2E63C96F3AA31A529BF1F51E6C74 /* Executor.swift */; }; - DC30A9E3A306323E9E0B3377496B0FF3 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8CA6689CB7FA588F54527326B12A6E30 /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DA64460CC47A15B3F1A29518C1774F1A /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC95E47A76D8C1A2E83EC0B0254B906C /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DC2C04B6DF676F0A3B7FA65BE0E62955 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FFB774922242F93A433397808756C1EE /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DC88C64635B1BC7776A165C66EF7222C /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6C947102CABC6CF1B03A3CC74BFE1143 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; DD92E7F3D43A224CA28560550FB7C9E9 /* Pods-Starter-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 605A1D4036ADEF955D22C5B3FD98B178 /* Pods-Starter-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + DE669BCAB3DE3D874895C3814B0F4648 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 45940F0CF94A548FC9F3B4FA33051F8E /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DE7081D6B52EF09A3A227090795DEF9B /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E201522B79ACA9E5B191D8CA137B0533 /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DE7F2478D252EFFD020FD8E798E30AA2 /* MetaWear-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 666264D4C3954BEDBA107D17B1224431 /* MetaWear-iOS-dummy.m */; }; E127C713A2F3FE8C6C35D4196C55E2C5 /* Task+ContinueWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5D65D6F3D9A1EC0060BD382ED9DE1ED /* Task+ContinueWith.swift */; }; - E2D5AEE6E2EB3A180D5B5B43E04745BF /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7B211D047FCFBF46341001154127BF4 /* ScannerModel.swift */; }; - E30310298874AF97944DDD7E3082E9A9 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F64DCC3E4FF0E3AC424CE8AEE5EFA963 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E37A31B6C75F560C1F63492061D3F1A7 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 11CB2C6911BDAA75F30EE843D041EB3D /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E40423342155C8FE8771AC962952A72F /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 21E19269DEF954C4E94A038E57D001CF /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E59149D981F986EC5417FC35E17CDC8D /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4A4EAE6EA74F73B92B0EBABA0F7283A7 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E879987C4F685FA33BEDFC1D52AEE2DF /* MetaWear-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 451F5DF3FBB0BDCAECFADD95E4348CCC /* MetaWear-tvOS-dummy.m */; }; - E8EC9E811C3B7D80FF3135CE1C27CEF1 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B6B63DE1E7846CE38C0AD83FCEFCB4 /* MblMwDataSignal+Async.swift */; }; + E483729863968734FEB19457C32435BC /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 048875C8ECDAE11D7003057D8B992756 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E66C17787D4D3865650EA18C44524756 /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 368B609454A40BCA2D47E0559091B55D /* CoreBluetooth.framework */; }; + E70CB0D0FC3ED4B33F3130CC11E220E7 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD9A2A311869B111F0574EA193B10550 /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E8470C571EECD48E33CF2A08CF0DBB08 /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F8F58A4DB3EC7AB82C245D76694985D7 /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E88A141537735E1A2D31665CBCA7BF7A /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A1BC54611F59DDB9DA105EFA630CE88A /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E8ADA1E221617221D85DCBDE5D623FD5 /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E61CD130A90592403E1785F55D129BF6 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; E90AC37B868C0143CB8C1345DC8C332D /* Task+WhenAll.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB5787F377410A3566126C52B31A1EE0 /* Task+WhenAll.swift */; }; - E951EEC74C7F6A3657EE400E25F30C9D /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8C6131EDD4157BA3E09B3FCD4A545D45 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E91CF3FED5BF4AA027E07AAC3863F4F8 /* SwiftGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2C5A74F26A5F693ED79C88FA42343DD5 /* SwiftGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E942EBF8884BD390011C52E257427BBF /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E35692E77DA1D9DEE753AD3CD06C59C8 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E94F87589CA2FE250F58B7CD18379E1C /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F64EC134A32A2E2619915856F128C5C /* MblMwEvent+Async.swift */; }; E980520A402A130D8E25337D5857249B /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9E0D7E61DB92369D72A5735D8D562C0C /* QuartzCore.framework */; }; - EB86221592AF06DF0A14ECD1B1B604CC /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 95AAE18A0142541C9FBA8A918F24504D /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; EC81B6C016677EDE69A61A1D8DF3159A /* Bolts-Swift-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 08CEB11F49F203041F68DAFA500A3812 /* Bolts-Swift-iOS-dummy.m */; }; - EC9BF0EB0DCA6111D9EE50ED013FEB52 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 63202BF8662D83220A327EC8394242FD /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - ECB7720BC7529EE3CD9BF8E1D869FB3E /* gyro_bmi160.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F04FAE2FEFA0EC2728DAB52C7CFEFC81 /* gyro_bmi160.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - ED5EA1099D99F98C6A616C1A97201BE8 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 178698ACB3F7786613B760BCE2640721 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - EE72F7F65A5FE57C361D6CCA8B4AE89E /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 238ACDC0B8F4E0C3EF7E67BEDCC2A096 /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + ED606D536497058B453CD6D65F008119 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD9A2A311869B111F0574EA193B10550 /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + ED60FE4915E23F355DF4D4C93B24FDFA /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C129BF0B3E163B2A9A5AE98ADD5A9BD /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + EDB942C181CC5A63745CB605B62BC5D8 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 940B1A78A509FC5E861E0F33B9FF2955 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; EF151BD9E0597C91523D5427BFFADDDA /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FBB3BF4C348A1B541964B842801B6189 /* Cocoa.framework */; }; - F04916D5C3C333F26A5730667D8E98DA /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C8045AA5021492B94729509C5E981A1C /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F120AD5DB1FB2CCBBD3E0650262F2C62 /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 355399F4FBDB7CF0B09DCC84CAB74461 /* CoreBluetooth.framework */; }; F1369AA6A64A78DEA0419CEF01AF6A13 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7DFA7E1CF90980A0A17D88F03E86FD05 /* Errors.swift */; }; F20EA11CACA3864CE3D296CE2C76B245 /* MBProgressHUD-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 35CBECF0D39F356FB46856D69398C895 /* MBProgressHUD-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F2EDE8191CEA87329B753CA620C24548 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3FE57D99928841AF0F589776CE63598B /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F6E99F47BF17CC3BB86149860BC07E5D /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 221DB28F92CAE942ECB6740869A62AFF /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F28EEC4865C8387880774C41BE4B92FB /* JavaScriptGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08A673C854AF0D8C3D944940AF04ADF4 /* JavaScriptGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F39D6049A4B18D62BE71CDB3BA622371 /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 355399F4FBDB7CF0B09DCC84CAB74461 /* CoreBluetooth.framework */; }; + F5D6C9E67F7B014B8C2B60F3B15C1B06 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 47B0FA97D88DC55F5C8D9B70618CFE50 /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; F792091BA4AF3AA326959CBE19A3D7B3 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2930A596A32FF425D7DAB104DFA2F73B /* Foundation.framework */; }; - FA991D3D61C92F9A9E7BBA437A8D21F7 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 34C4ABD1292B4164296A397B4EB10664 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FADECBBFE77F51D01B013F5F1F447746 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 11CB2C6911BDAA75F30EE843D041EB3D /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FB3E5BFF1168175220CAF04688F234AA /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = E741D524F0F7A8260E73F6096F2908B6 /* MetaWear+Async.swift */; }; - FE251D1697DBCCDBACAE09107C128AA7 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6377C5E70A1C4BA32865B1D99A214C32 /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F79930322639B789FB1B122B9EED7D38 /* MetaWear-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 84A1AFD074DA79FEDE0E4400345D85C2 /* MetaWear-macOS-dummy.m */; }; + F7C1820889CD2E8F3A8E5A4655EFE760 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 47B0FA97D88DC55F5C8D9B70618CFE50 /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F7D038AE8757B89603D707C7B6097AB8 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 69478DF70155827E5C4A8D65FE8544EA /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F80F92FF236F74F61BAD5B4D87D77420 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 258260CAA5679A15FCBAADAAE4B672B4 /* ScannerModel.swift */; }; + F9A34D3177F33BC772DB96A984982190 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EB4834A2855D12DEF11E3933422A1571 /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FAA68C92A88427C050D9D3AC9E6DA316 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E201522B79ACA9E5B191D8CA137B0533 /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FD804026EDA455AAA55B88F26170D69C /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C129BF0B3E163B2A9A5AE98ADD5A9BD /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FE5789F2A48C54986B1595B610855338 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 960E6CF8D16AAFA541846C643B412CED /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FE87D4AE37801E46E203F1095BD93F28 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 915C92E52AD291DB12C9D2632199C9A3 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FF30CF63B2D546D8C2F5F735AE32584D /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F8D4FEE512423AEBA199921A57ADEF46 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 22622854FF6DE74FAE4161671569D266 /* PBXContainerItemProxy */ = { + 156FE86E1EF71429A33FA248CA0C7064 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; - remoteInfo = "Bolts-Swift-iOS"; + remoteGlobalIDString = 3EAD5FC7EE8E8D39DBDCCF711B0F7D75; + remoteInfo = "MetaWear-macOS"; }; - 36575E9B0150998EB02BC4F5998EFAD7 /* PBXContainerItemProxy */ = { + 19C0968DF1BACECFB3E048780BC0BA93 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 4ACB068906486CDBA8800775159A069C; remoteInfo = "MBProgressHUD-tvOS"; }; - 4F2C90169EDF3C19FC3CB7CBA4B1D362 /* PBXContainerItemProxy */ = { + 1C7BAAC7CFE214F0E12769A44B73EB39 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = AFF87B4D6717C0C808A53295373A8AD4; - remoteInfo = "MBProgressHUD-iOS"; + remoteGlobalIDString = 40F96C8785C4CCB505582120F8B02D1A; + remoteInfo = "MetaWear-iOS"; }; - 6D3AA6E7E9A1A3A26A786287EF2EF351 /* PBXContainerItemProxy */ = { + 245792CBF382DE157EBF64316430E63A /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; remoteInfo = "Bolts-Swift-tvOS"; }; - 975D40A21B2A5BBB7C95BCC5BAAAC8B1 /* PBXContainerItemProxy */ = { + 3E122BB9935D05146AC1E9A8FA6087F2 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; remoteInfo = "Bolts-Swift-macOS"; }; - 995E46AC4FBDC51D4FDBBE7DB8E06ADC /* PBXContainerItemProxy */ = { + 5BC6785D2AACBB742D4DB22DF11194C5 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 3EAD5FC7EE8E8D39DBDCCF711B0F7D75; - remoteInfo = "MetaWear-macOS"; + remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; + remoteInfo = "Bolts-Swift-tvOS"; }; - 9E9D38896247D0E96704E1E4A2D8FE40 /* PBXContainerItemProxy */ = { + 92C68114804FA8D83E197D764C95BF5A /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; - remoteInfo = "Bolts-Swift-iOS"; + remoteGlobalIDString = AFF87B4D6717C0C808A53295373A8AD4; + remoteInfo = "MBProgressHUD-iOS"; }; - CF69136D9F8B36A924005CF2DE0D0948 /* PBXContainerItemProxy */ = { + AAE0C3466C81C64F38536F4A913538A4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; - remoteInfo = "Bolts-Swift-tvOS"; + remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; + remoteInfo = "Bolts-Swift-iOS"; }; - F2EB3D14F213EE1732902684F9D79B3E /* PBXContainerItemProxy */ = { + B2EBE82B0FF66AE592E0DEEAA45D2C10 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 33D1D149C44676165C3F0A61912DB392; remoteInfo = "MetaWear-tvOS"; }; - F4FAFCBCF7153DBB7B1CE1FEC35BE6CA /* PBXContainerItemProxy */ = { + C5D7716F2FC4EEC62AA874B25F424962 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 40F96C8785C4CCB505582120F8B02D1A; - remoteInfo = "MetaWear-iOS"; + remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; + remoteInfo = "Bolts-Swift-macOS"; }; - FCC7BD28ECB119AA1741F3D7479D2B44 /* PBXContainerItemProxy */ = { + E314C30E409D604711D71CE41E1F4414 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; - remoteInfo = "Bolts-Swift-macOS"; + remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; + remoteInfo = "Bolts-Swift-iOS"; }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 0084429AA6FD4EC9C9F59B3E5F321DF7 /* MetaWear-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MetaWear-macOS-dummy.m"; path = "../MetaWear-macOS/MetaWear-macOS-dummy.m"; sourceTree = ""; }; - 034C44FC134B1A7CFABBFDAD306A8C0C /* MetaWear-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "MetaWear-iOS.release.xcconfig"; sourceTree = ""; }; + 0006F7B0D08B2D67969A4FB893737AD3 /* MetaWear-macOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-macOS-prefix.pch"; path = "../MetaWear-macOS/MetaWear-macOS-prefix.pch"; sourceTree = ""; }; + 01488C26AFC0D2544C9ADE4CF38E8855 /* MetaWear.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = MetaWear.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 01D834C2C6B1749521F45F5CAE05A0AF /* threadpool.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = threadpool.cpp; sourceTree = ""; }; + 0374A8966340D6C6F204AEDDE7195E09 /* debug.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = debug.cpp; sourceTree = ""; }; + 03838BEF07C051D1F8F5375360BBBA69 /* magnetometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = magnetometer.doctree; path = Docs/build/doctrees/magnetometer.doctree; sourceTree = ""; }; 03F915EA8DA168A6746EE05A27437E6B /* Pods-Starter-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Starter-macOS-umbrella.h"; sourceTree = ""; }; - 04379AEFC1C04D42EB377A9E629C3502 /* project_setup.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = project_setup.rst.txt; path = Docs/build/html/_sources/project_setup.rst.txt; sourceTree = ""; }; - 05C04FA7D0FD231BB1714B9A65140703 /* file.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = file.png; path = Docs/build/html/_static/file.png; sourceTree = ""; }; - 067C52443C7E95555DCF585276CEEDF3 /* MetaWearScanner.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWearScanner.swift; sourceTree = ""; }; + 0412B5403776349A6C516A885FA009E7 /* searchtools.js */ = {isa = PBXFileReference; includeInIndex = 1; name = searchtools.js; path = Docs/build/html/_static/searchtools.js; sourceTree = ""; }; + 048875C8ECDAE11D7003057D8B992756 /* dataprocessor.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dataprocessor.cpp; sourceTree = ""; }; + 057454DD2370EC453F053CA27F37A766 /* spi.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = spi.doctree; path = Docs/build/doctrees/spi.doctree; sourceTree = ""; }; + 058732315A312FAFF8765B72FA8AB8F6 /* cppbridge.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = cppbridge.doctree; path = Docs/build/doctrees/cppbridge.doctree; sourceTree = ""; }; + 05DD842BF1C13349319CEFA2420D3DE5 /* fontawesome-webfont.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.woff"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.woff"; sourceTree = ""; }; 0693D0FA75EBDE90846C9525204EB8D2 /* MBProgressHUD-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MBProgressHUD-tvOS.release.xcconfig"; path = "../MBProgressHUD-tvOS/MBProgressHUD-tvOS.release.xcconfig"; sourceTree = ""; }; - 06F74B12B8035AD12B5B35BE94E4F7B8 /* humidity_bme280.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = humidity_bme280.cpp; sourceTree = ""; }; - 070745E3CECAAD2810ABE7886F1A0B79 /* RobotoSlab-Regular.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "RobotoSlab-Regular.ttf"; path = "Docs/build/html/_static/fonts/RobotoSlab-Regular.ttf"; sourceTree = ""; }; - 0738A0239BA951BEF64D032AF3726472 /* lato-bold.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bold.woff"; path = "Docs/build/html/_static/fonts/Lato/lato-bold.woff"; sourceTree = ""; }; - 088D4E57B5EE1C47EA81093CB69DD195 /* basic.css */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.css; name = basic.css; path = Docs/build/html/_static/basic.css; sourceTree = ""; }; + 08185502D871F2BD8FABF5075EE174A1 /* objects.inv */ = {isa = PBXFileReference; includeInIndex = 1; name = objects.inv; path = Docs/build/html/objects.inv; sourceTree = ""; }; + 08A673C854AF0D8C3D944940AF04ADF4 /* JavaScriptGenerator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = JavaScriptGenerator.cpp; sourceTree = ""; }; 08CEB11F49F203041F68DAFA500A3812 /* Bolts-Swift-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Bolts-Swift-iOS-dummy.m"; sourceTree = ""; }; + 08E88EDE1D59330A49B314797739B243 /* sensors.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = sensors.rst; path = Docs/source/sensors.rst; sourceTree = ""; }; 08F333B4B493B043971FC11A23114CAB /* Bolts-Swift-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Bolts-Swift-iOS.modulemap"; sourceTree = ""; }; - 0B1B052EBC55735DE28377B2625D00DE /* MblMwEvent+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MblMwEvent+Async.swift"; path = "MetaWear/AsyncUtils/MblMwEvent+Async.swift"; sourceTree = ""; }; - 0DB998D40EEF4133EED093525C5EF48F /* genindex.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = genindex.html; path = Docs/build/html/genindex.html; sourceTree = ""; }; - 0E01CEBBC16426ED5BB22722E986FBF2 /* Pods_Starter_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Starter_iOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 0E8278B0B767AA3CC959A249ADE465C0 /* serialpassthrough.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = serialpassthrough.cpp; sourceTree = ""; }; - 0F4852EE83AA77321ABC3A1A6AE8A905 /* dataprocessor_config.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dataprocessor_config.cpp; sourceTree = ""; }; - 11CB2C6911BDAA75F30EE843D041EB3D /* led.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = led.cpp; sourceTree = ""; }; - 144734E72160EFDC6AD21BD976CFD0DF /* Pods_Starter_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Starter_macOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 14EA83E70D61266F5A9E74DF3627859C /* MetaWear-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MetaWear-macOS.modulemap"; path = "../MetaWear-macOS/MetaWear-macOS.modulemap"; sourceTree = ""; }; + 0A72C8099B3F5C20BDA1A182DFF81082 /* lato-normal.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-normal.woff2"; path = "Docs/build/html/_static/css/fonts/lato-normal.woff2"; sourceTree = ""; }; + 0AB4412AD9BFFD8726C27BE359704CAC /* MetaWear-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MetaWear-macOS.modulemap"; path = "../MetaWear-macOS/MetaWear-macOS.modulemap"; sourceTree = ""; }; + 0ABF10E8AF299DE8EB83811C69E2C4BD /* core_modules.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = core_modules.doctree; path = Docs/build/doctrees/core_modules.doctree; sourceTree = ""; }; + 0AEC34E824AF9D524ACDF06F2B7ACFB8 /* logger.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = logger.rst; path = Docs/source/logger.rst; sourceTree = ""; }; + 0B065D025FB92FC7BD543899B8E5FC59 /* index.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = index.rst.txt; path = Docs/build/html/_sources/index.rst.txt; sourceTree = ""; }; + 0BB52EA77C6EDC0F1C3AD4616510ECAB /* i2c.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = i2c.rst; path = Docs/source/i2c.rst; sourceTree = ""; }; + 0C02738DBE1AFED83CD5B42C63960A03 /* haptic.html */ = {isa = PBXFileReference; includeInIndex = 1; name = haptic.html; path = Docs/build/html/haptic.html; sourceTree = ""; }; + 0C35F45A266CA9EE072F62A986F232A7 /* sensors.html */ = {isa = PBXFileReference; includeInIndex = 1; name = sensors.html; path = Docs/build/html/sensors.html; sourceTree = ""; }; + 0D7A15C510ABBE1A396BB616131D9806 /* led.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = led.doctree; path = Docs/build/doctrees/led.doctree; sourceTree = ""; }; + 0D903B36E6CF67AE30923660C0519F60 /* magnetometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = magnetometer.rst; path = Docs/source/magnetometer.rst; sourceTree = ""; }; + 0E01CEBBC16426ED5BB22722E986FBF2 /* Pods_Starter_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_Starter_iOS.framework; path = "Pods-Starter-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 10B61FC3444C41C97D322F6E68AFB029 /* project.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = project.rst; path = Docs/source/project.rst; sourceTree = ""; }; + 129D1E286656EEAEFF8B6A555D5BD147 /* peripherals.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = peripherals.doctree; path = Docs/build/doctrees/peripherals.doctree; sourceTree = ""; }; + 1350D30F6595F9C36056A886C9810565 /* lato-bold-italic.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-bold-italic.woff"; path = "Docs/build/html/_static/css/fonts/lato-bold-italic.woff"; sourceTree = ""; }; + 144734E72160EFDC6AD21BD976CFD0DF /* Pods_Starter_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_Starter_macOS.framework; path = "Pods-Starter-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 150DF75EB461C9BF5B66F0BC81FFDE92 /* search.html */ = {isa = PBXFileReference; includeInIndex = 1; name = search.html; path = Docs/build/html/search.html; sourceTree = ""; }; + 15EBEBB4C3654969622C3D50CE1A580D /* project.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = project.doctree; path = Docs/build/doctrees/project.doctree; sourceTree = ""; }; 16B794F4704C79E1632AA45BFE6195EB /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS14.0.sdk/System/Library/Frameworks/QuartzCore.framework; sourceTree = DEVELOPER_DIR; }; - 178698ACB3F7786613B760BCE2640721 /* responseheader.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = responseheader.cpp; sourceTree = ""; }; + 17DFB82FD21C5682380223E33925C025 /* dataprocessor.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = dataprocessor.doctree; path = Docs/build/doctrees/dataprocessor.doctree; sourceTree = ""; }; 17E3C6A09FDDC2761D9AB30C52368CC3 /* Pods-Starter-macOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Starter-macOS-acknowledgements.markdown"; sourceTree = ""; }; - 183E58681A7669557B97BCC0366023CA /* magnetometer_bmm150.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = magnetometer_bmm150.cpp; sourceTree = ""; }; - 19AD0C1EF63DBB6ACB64C9733C99A1DB /* roboto-slab-v7-regular.eot */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "roboto-slab-v7-regular.eot"; path = "Docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot"; sourceTree = ""; }; 1A66E457F724C9BC8C72AD7552E59DA7 /* Pods-Starter-tvOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Starter-tvOS-frameworks.sh"; sourceTree = ""; }; - 1DD40D040E4D875C9D2191308624B4E5 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; }; - 1DE697492D68A6BCD4D5165B1175E5C9 /* MetaWear-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-macOS-umbrella.h"; path = "../MetaWear-macOS/MetaWear-macOS-umbrella.h"; sourceTree = ""; }; - 1F25EA797F93CB223B36BE127474FCA5 /* task.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = task.cpp; sourceTree = ""; }; - 1F88C8E682E865EE51BB448027D5E4A4 /* MetaWear-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-macOS.debug.xcconfig"; path = "../MetaWear-macOS/MetaWear-macOS.debug.xcconfig"; sourceTree = ""; }; - 2139C66156F94456999CEABA91006E79 /* roboto-slab-v7-bold.eot */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "roboto-slab-v7-bold.eot"; path = "Docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot"; sourceTree = ""; }; - 216BA82E343FF087A5A19F10ADC4F0DA /* Pods_Starter_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Starter_tvOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 21E19269DEF954C4E94A038E57D001CF /* accelerometer_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer_bosch.cpp; sourceTree = ""; }; - 221DB28F92CAE942ECB6740869A62AFF /* moduleinfo.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = moduleinfo.cpp; sourceTree = ""; }; - 238ACDC0B8F4E0C3EF7E67BEDCC2A096 /* version.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = version.cpp; sourceTree = ""; }; + 1A8A76DCFF9440906C34B2692D420CFD /* sensor_fusion.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = sensor_fusion.cpp; sourceTree = ""; }; + 1AE6DEF4DCC0A14478137AC7E5923734 /* barometer_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = barometer_bosch.cpp; sourceTree = ""; }; + 1D158D87A509E4F419EE21CEA8D25A57 /* pygments.css */ = {isa = PBXFileReference; includeInIndex = 1; name = pygments.css; path = Docs/build/html/_static/pygments.css; sourceTree = ""; }; + 1DCAD1776D7552957265A077AA57B68D /* settings.html */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.html; path = Docs/build/html/settings.html; sourceTree = ""; }; + 1E81577EC3C916336A3E28118F7B3EF4 /* MetaWear-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "MetaWear-iOS.debug.xcconfig"; sourceTree = ""; }; + 1EB4E4F126BF8DA37AFA5067EA1F2872 /* settings.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.doctree; path = Docs/build/doctrees/settings.doctree; sourceTree = ""; }; + 212C9414B68A923BFE685FF28FF9E6F8 /* spi.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = spi.rst.txt; path = Docs/build/html/_sources/spi.rst.txt; sourceTree = ""; }; + 216BA82E343FF087A5A19F10ADC4F0DA /* Pods_Starter_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_Starter_tvOS.framework; path = "Pods-Starter-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 226E1042AF5C55F92816A6ED6979C5BE /* cppbridge.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = cppbridge.rst.txt; path = Docs/build/html/_sources/cppbridge.rst.txt; sourceTree = ""; }; + 2351E2FF2ADEBE202CDBABF6391EEBF6 /* fontawesome-webfont.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.woff2"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.woff2"; sourceTree = ""; }; + 24A0CAE5AB07F87179244251710D3182 /* Roboto-Slab-Bold.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "Roboto-Slab-Bold.woff2"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Bold.woff2"; sourceTree = ""; }; + 258260CAA5679A15FCBAADAAE4B672B4 /* ScannerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScannerModel.swift; path = MetaWear/UI/ScannerModel.swift; sourceTree = ""; }; 26AA8BF3E47F5213AC49F51A2F14D082 /* Bolts-Swift-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Bolts-Swift-tvOS-dummy.m"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS-dummy.m"; sourceTree = ""; }; - 274DA7D4FD5C2F6FF08D92D88D7235E3 /* metawearscanner.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = metawearscanner.doctree; path = Docs/build/doctrees/metawearscanner.doctree; sourceTree = ""; }; - 277CD60A5AD09509E0A6FBA1BC5A64FA /* index.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = index.doctree; path = Docs/build/doctrees/index.doctree; sourceTree = ""; }; + 28D225FD9A0F5439A32B865D3F4773EE /* event.html */ = {isa = PBXFileReference; includeInIndex = 1; name = event.html; path = Docs/build/html/event.html; sourceTree = ""; }; 2930A596A32FF425D7DAB104DFA2F73B /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS14.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - 2B7AD6E32415A2FD926EFE366C452E9F /* MetaWear-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MetaWear-macOS-Info.plist"; path = "../MetaWear-macOS/MetaWear-macOS-Info.plist"; sourceTree = ""; }; + 2AD5AA094AC651E9C924FEE31376C333 /* MetaWear-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-tvOS-umbrella.h"; path = "../MetaWear-tvOS/MetaWear-tvOS-umbrella.h"; sourceTree = ""; }; + 2B5875CA926E5448969650D1C2F56D64 /* MetaWear-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-macOS.debug.xcconfig"; path = "../MetaWear-macOS/MetaWear-macOS.debug.xcconfig"; sourceTree = ""; }; 2BBB101F67AAC195E7CEDB4588BB57FB /* Bolts-Swift-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Bolts-Swift-iOS-umbrella.h"; sourceTree = ""; }; - 2CB5163743A88C26981C4B46EFD96189 /* lato-bolditalic.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bolditalic.ttf"; path = "Docs/build/html/_static/fonts/Lato/lato-bolditalic.ttf"; sourceTree = ""; }; - 2D3A42DE00BFC8DAFFE76A5F62BD7C39 /* MetaWear-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MetaWear-tvOS.modulemap"; path = "../MetaWear-tvOS/MetaWear-tvOS.modulemap"; sourceTree = ""; }; - 30847547D39DFB7AC1E0E81386913663 /* language_data.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = language_data.js; path = Docs/build/html/_static/language_data.js; sourceTree = ""; }; - 32B58EA25513C301D6BA11BB5ACEF67B /* jquery-3.2.1.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = "jquery-3.2.1.js"; path = "Docs/build/html/_static/jquery-3.2.1.js"; sourceTree = ""; }; + 2C5A74F26A5F693ED79C88FA42343DD5 /* SwiftGenerator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = SwiftGenerator.cpp; sourceTree = ""; }; + 2C9DA65690D45B28732C759444D3C3BC /* MetaWear-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MetaWear-tvOS.modulemap"; path = "../MetaWear-tvOS/MetaWear-tvOS.modulemap"; sourceTree = ""; }; + 2D5FA4900902AC594DCC854A646D7EF6 /* badge_only.js */ = {isa = PBXFileReference; includeInIndex = 1; name = badge_only.js; path = Docs/build/html/_static/js/badge_only.js; sourceTree = ""; }; + 30D64E2A8AC33A4E6F9E7E3BF5CD1722 /* colordetector_tcs34725.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = colordetector_tcs34725.cpp; sourceTree = ""; }; + 31FB69DDB532444DA82167E53E4B1683 /* timer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = timer.cpp; sourceTree = ""; }; + 3298C3F29F145805CA7D677F0409ABAF /* underscore-1.3.1.js */ = {isa = PBXFileReference; includeInIndex = 1; name = "underscore-1.3.1.js"; path = "Docs/build/html/_static/underscore-1.3.1.js"; sourceTree = ""; }; + 3301A15FC2949AEA2784492EDBC7A70C /* datainterpreter.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = datainterpreter.cpp; sourceTree = ""; }; 33BF957528576B66622BDA86E26B08A2 /* MBProgressHUD-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "MBProgressHUD-iOS-dummy.m"; sourceTree = ""; }; 33F1F1E8C4F2BD51D67CEE59C17F725F /* Pods-Starter-iOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Starter-iOS-acknowledgements.markdown"; sourceTree = ""; }; - 34C4ABD1292B4164296A397B4EB10664 /* colordetector_tcs34725.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = colordetector_tcs34725.cpp; sourceTree = ""; }; 355399F4FBDB7CF0B09DCC84CAB74461 /* CoreBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreBluetooth.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/CoreBluetooth.framework; sourceTree = DEVELOPER_DIR; }; 35CBECF0D39F356FB46856D69398C895 /* MBProgressHUD-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MBProgressHUD-iOS-umbrella.h"; sourceTree = ""; }; + 35F0217BA18AB17DA09F86C6F3209CAA /* lato-normal.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-normal.woff"; path = "Docs/build/html/_static/css/fonts/lato-normal.woff"; sourceTree = ""; }; 360B2722A20BFEA8A283C944A6E86271 /* Pods-Starter-tvOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Starter-tvOS-acknowledgements.markdown"; sourceTree = ""; }; + 36368621EF3D8B13430636782298C244 /* barometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = barometer.doctree; path = Docs/build/doctrees/barometer.doctree; sourceTree = ""; }; 363FA38843C2836FEF61C1DBC3EC40C0 /* MBProgressHUD.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = MBProgressHUD.h; sourceTree = ""; }; 368B609454A40BCA2D47E0559091B55D /* CoreBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreBluetooth.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/CoreBluetooth.framework; sourceTree = DEVELOPER_DIR; }; - 36C32A8482A53C656EAF7C5ED2E3C5E5 /* macro.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = macro.cpp; sourceTree = ""; }; 36E8749BB2603A491F9958EE2A3A12F0 /* Task+Delay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Task+Delay.swift"; path = "Sources/BoltsSwift/Task+Delay.swift"; sourceTree = ""; }; - 3733DDA76793063E68DCC38AF59946CA /* CBUUID.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CBUUID.swift; sourceTree = ""; }; - 39EFC3444868D94E50BD6C83FB0CD5CD /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 3A62291A5BDCE9814866986CD77D9E7F /* String+VersionCompare.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "String+VersionCompare.swift"; sourceTree = ""; }; - 3B6FF2C22C9955EB632E8C840A87C76D /* MetaWear.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; path = MetaWear.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 3CC8138842CA15B64D20A8C3CC0B6C96 /* Makefile */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.make; name = Makefile; path = Docs/Makefile; sourceTree = ""; }; - 3F24632E7D719A0FDF0E71C9D046A818 /* debug.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = debug.cpp; sourceTree = ""; }; - 3F6DC87C4D5B37D476C551040B11E2C0 /* MBProgressHUD.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MBProgressHUD.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 3FE57D99928841AF0F589776CE63598B /* file_operations.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = file_operations.cpp; sourceTree = ""; }; - 41D49BD1D0F0692910872C04DB8FC6FB /* project_setup.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = project_setup.doctree; path = Docs/build/doctrees/project_setup.doctree; sourceTree = ""; }; - 4305FDE00268B7C4BBE29EF0BECF947D /* roboto-slab-v7-bold.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "roboto-slab-v7-bold.woff2"; path = "Docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2"; sourceTree = ""; }; - 43348E9491673ED8A2571182C4219090 /* documentation_options.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = documentation_options.js; path = Docs/build/html/_static/documentation_options.js; sourceTree = ""; }; + 39EFC3444868D94E50BD6C83FB0CD5CD /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = BoltsSwift.framework; path = "Bolts-Swift-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 3BEBA4B59B21A99BF2B702A6F263699C /* i2c.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = i2c.doctree; path = Docs/build/doctrees/i2c.doctree; sourceTree = ""; }; + 3C1F2E210D781709B5AB3B3086469390 /* haptic.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = haptic.rst.txt; path = Docs/build/html/_sources/haptic.rst.txt; sourceTree = ""; }; + 3C42D2BCE4974A872635E78612BA854A /* macro.html */ = {isa = PBXFileReference; includeInIndex = 1; name = macro.html; path = Docs/build/html/macro.html; sourceTree = ""; }; + 3C9DB9E3A7B0CEF28696B912A8CA0196 /* lato-normal-italic.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-normal-italic.woff2"; path = "Docs/build/html/_static/css/fonts/lato-normal-italic.woff2"; sourceTree = ""; }; + 3D6C72D191131D9677C372C85DC2E59D /* humidity.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = humidity.rst; path = Docs/source/humidity.rst; sourceTree = ""; }; + 3DF1623D445CE059A8EF075D79FC99F5 /* MetaWear-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "MetaWear-iOS.modulemap"; sourceTree = ""; }; + 3F6DC87C4D5B37D476C551040B11E2C0 /* MBProgressHUD.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MBProgressHUD.framework; path = "MBProgressHUD-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 3FB9A21FA4A3EDBB86D873FA6B9489F7 /* theme.js */ = {isa = PBXFileReference; includeInIndex = 1; name = theme.js; path = Docs/build/html/_static/js/theme.js; sourceTree = ""; }; + 41AA032C3D741AA6521931B8ACE74B8F /* fontawesome-webfont.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.ttf"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.ttf"; sourceTree = ""; }; + 42BDC5161CCA367FC57D38FF2C8653AD /* dataprocessor.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = dataprocessor.rst.txt; path = Docs/build/html/_sources/dataprocessor.rst.txt; sourceTree = ""; }; + 430010C2452376810C487F4E46248571 /* logging.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.rst; path = Docs/source/logging.rst; sourceTree = ""; }; 43969DBAEBDBBD2D0C0846CD5F0058CB /* Pods-Starter-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Starter-iOS-Info.plist"; sourceTree = ""; }; - 451F5DF3FBB0BDCAECFADD95E4348CCC /* MetaWear-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MetaWear-tvOS-dummy.m"; path = "../MetaWear-tvOS/MetaWear-tvOS-dummy.m"; sourceTree = ""; }; - 453A60751C73C8BF0157274BC9FE8709 /* LICENSE.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; path = LICENSE.md; sourceTree = ""; }; - 468B1640EDE11E2E78934419F3E9C319 /* switch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = switch.cpp; sourceTree = ""; }; - 4817A1760DAC2F13567CC1326F7608BF /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 4A4EAE6EA74F73B92B0EBABA0F7283A7 /* dataprocessor.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dataprocessor.cpp; sourceTree = ""; }; - 4D1AB17384F27EAE17CCAB24969B8B87 /* underscore.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = underscore.js; path = Docs/build/html/_static/underscore.js; sourceTree = ""; }; - 5010DFA0D12D9062A83EEC44386F10A4 /* Lato-Bold.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "Lato-Bold.ttf"; path = "Docs/build/html/_static/fonts/Lato-Bold.ttf"; sourceTree = ""; }; + 4542239B657F3586AAFF5F2124CA29D7 /* sensor_fusion.html */ = {isa = PBXFileReference; includeInIndex = 1; name = sensor_fusion.html; path = Docs/build/html/sensor_fusion.html; sourceTree = ""; }; + 45940F0CF94A548FC9F3B4FA33051F8E /* macro.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = macro.cpp; sourceTree = ""; }; + 45B4A31A9AB51C8C6F9B4EBD0C8EF2D0 /* logging.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.doctree; path = Docs/build/doctrees/logging.doctree; sourceTree = ""; }; + 469B8B015B60FEA92F8C92251AF6AE31 /* task.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = task.cpp; sourceTree = ""; }; + 46A0EA664A6D23D23970F2B50FA1ED0F /* String+VersionCompare.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "String+VersionCompare.swift"; sourceTree = ""; }; + 4713CAD05BCA76054CA8A9548D949076 /* lato-bold-italic.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-bold-italic.woff2"; path = "Docs/build/html/_static/css/fonts/lato-bold-italic.woff2"; sourceTree = ""; }; + 47B0FA97D88DC55F5C8D9B70618CFE50 /* dfu_utility.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_utility.cpp; sourceTree = ""; }; + 4817A1760DAC2F13567CC1326F7608BF /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = BoltsSwift.framework; path = "Bolts-Swift-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 48CC22EA09F1BA863F9EE8B97CAD40EF /* MetaWear+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+Async.swift"; path = "MetaWear/AsyncUtils/MetaWear+Async.swift"; sourceTree = ""; }; + 497DB20EAE931C659A46172B75E5B8E6 /* async_creator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = async_creator.cpp; sourceTree = ""; }; + 4BC285E1A6866C9A5A6611C0D1144A7A /* MblMwGattChar.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MblMwGattChar.swift; sourceTree = ""; }; + 4C129BF0B3E163B2A9A5AE98ADD5A9BD /* CBUUID.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CBUUID.swift; sourceTree = ""; }; + 4C5A69CC40153AAA3F412C4D7546D8C1 /* MetaWear-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MetaWear-macOS-Info.plist"; path = "../MetaWear-macOS/MetaWear-macOS-Info.plist"; sourceTree = ""; }; + 4CCE76410F4E5BE373B1AE1A2E5E1976 /* lato-bold.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-bold.woff"; path = "Docs/build/html/_static/css/fonts/lato-bold.woff"; sourceTree = ""; }; + 4D41D6112C846BF30FEBCEF2D6DEC5D0 /* cppbridge.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = cppbridge.rst; path = Docs/source/cppbridge.rst; sourceTree = ""; }; + 4D569CD8885FE50A3EA812AA958BAD65 /* gyro.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = gyro.doctree; path = Docs/build/doctrees/gyro.doctree; sourceTree = ""; }; + 4DA3D72E24D4F40D57A5B5D4E41F79AA /* accelerometer.html */ = {isa = PBXFileReference; includeInIndex = 1; name = accelerometer.html; path = Docs/build/html/accelerometer.html; sourceTree = ""; }; + 4E75D52F71560E96F165E9D21F6410DF /* magnetometer.html */ = {isa = PBXFileReference; includeInIndex = 1; name = magnetometer.html; path = Docs/build/html/magnetometer.html; sourceTree = ""; }; + 4EC49DB5A15AE7DE2C9FF5A839EFB2F5 /* Roboto-Slab-Regular.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "Roboto-Slab-Regular.woff"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Regular.woff"; sourceTree = ""; }; + 4EFCC6D296830CD71AC81F8089C40D5B /* logging.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.rst.txt; path = Docs/build/html/_sources/logging.rst.txt; sourceTree = ""; }; + 4FFF43E18F0A49B7DFB5210E6A3685ED /* ibeacon.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = ibeacon.rst; path = Docs/source/ibeacon.rst; sourceTree = ""; }; 50B6D92C920877C7145E1CD0741C4A00 /* Pods-Starter-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Starter-iOS.debug.xcconfig"; sourceTree = ""; }; - 51872806369046ED62159DC54D3BD266 /* memory.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = memory.cpp; sourceTree = ""; }; 519E8073B26237AF29E940250557E169 /* MBProgressHUD-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MBProgressHUD-tvOS.modulemap"; path = "../MBProgressHUD-tvOS/MBProgressHUD-tvOS.modulemap"; sourceTree = ""; }; 52992EE6B8AA8940F327214B955F1000 /* Pods-Starter-tvOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Starter-tvOS-acknowledgements.plist"; sourceTree = ""; }; - 538B61A0DFF26DCD1B2DA66ACAEC0C51 /* Inconsolata-Regular.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "Inconsolata-Regular.ttf"; path = "Docs/build/html/_static/fonts/Inconsolata-Regular.ttf"; sourceTree = ""; }; 53D5B262CE0C7571E16E6B9C0D0B5B7C /* Bolts-Swift-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-macOS-umbrella.h"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS-umbrella.h"; sourceTree = ""; }; - 53EDB3BEB4481D8D93CFB8ECE2EC4C40 /* lato-bolditalic.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bolditalic.woff"; path = "Docs/build/html/_static/fonts/Lato/lato-bolditalic.woff"; sourceTree = ""; }; + 53D8A89EFDE8AE5BD709693ED9D3A8F8 /* datasignal.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = datasignal.doctree; path = Docs/build/doctrees/datasignal.doctree; sourceTree = ""; }; + 543016C1C8E6DA45DA56360FC9EF643D /* datasignal.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = datasignal.rst; path = Docs/source/datasignal.rst; sourceTree = ""; }; 544A1E89305BD5F64340AA3095088671 /* Pods-Starter-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Starter-tvOS.debug.xcconfig"; sourceTree = ""; }; - 5496D60517921562560C1261534350DA /* lato-regular.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-regular.woff"; path = "Docs/build/html/_static/fonts/Lato/lato-regular.woff"; sourceTree = ""; }; - 5595461B73D80542004FC6C7CE9BFFD8 /* neopixel.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = neopixel.cpp; sourceTree = ""; }; - 55A10666CB72EFBCE3F16C2B931654A0 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MetaWear.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 55B6B63DE1E7846CE38C0AD83FCEFCB4 /* MblMwDataSignal+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MblMwDataSignal+Async.swift"; path = "MetaWear/AsyncUtils/MblMwDataSignal+Async.swift"; sourceTree = ""; }; + 5596B2A2DD49BB45776DF9AF6BB3D1F0 /* project.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = project.rst.txt; path = Docs/build/html/_sources/project.rst.txt; sourceTree = ""; }; + 55A10666CB72EFBCE3F16C2B931654A0 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MetaWear.framework; path = "MetaWear-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 5611B1879BD77C08A4F191EBA98F7DC5 /* datasignal.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = datasignal.cpp; sourceTree = ""; }; + 563914C0B411345CAB35522A89CCFB92 /* MetaWear-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MetaWear-tvOS-dummy.m"; path = "../MetaWear-tvOS/MetaWear-tvOS-dummy.m"; sourceTree = ""; }; + 5646898F1C8EC90044A04228EA7348C2 /* MetaWear-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "MetaWear-iOS-Info.plist"; sourceTree = ""; }; + 57FA21D120E6676A69747F422EE314D2 /* fontawesome-webfont.svg */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.svg"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.svg"; sourceTree = ""; }; 58D113D145A9C42B8B5D3060E4D2E4A8 /* Pods-Starter-iOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Starter-iOS-acknowledgements.plist"; sourceTree = ""; }; 58DE8C555AC916CFE978BAF40295195D /* Bolts-Swift-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Bolts-Swift-iOS.release.xcconfig"; sourceTree = ""; }; 5910F9884FB4F999174E1EC93DDA5349 /* MBProgressHUD-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MBProgressHUD-tvOS-Info.plist"; path = "../MBProgressHUD-tvOS/MBProgressHUD-tvOS-Info.plist"; sourceTree = ""; }; - 5941617D1BB0FFB85B87B19673B3A9FF /* MetaWear-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "MetaWear-iOS.modulemap"; sourceTree = ""; }; 5B66A4EDBA0346D0497BC0144D33C67E /* Bolts-Swift-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Bolts-Swift-iOS-prefix.pch"; sourceTree = ""; }; - 5BF8451FA1D8D38FC918289C35C17E03 /* anonymous_datasignal.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = anonymous_datasignal.cpp; sourceTree = ""; }; - 5CA45250912406A1FB6553BB8186049D /* MetaWear-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-tvOS.debug.xcconfig"; path = "../MetaWear-tvOS/MetaWear-tvOS.debug.xcconfig"; sourceTree = ""; }; - 5E514CF37AF1DDF5D6471DC759E9D460 /* underscore-1.3.1.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = "underscore-1.3.1.js"; path = "Docs/build/html/_static/underscore-1.3.1.js"; sourceTree = ""; }; + 5F64EC134A32A2E2619915856F128C5C /* MblMwEvent+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MblMwEvent+Async.swift"; path = "MetaWear/AsyncUtils/MblMwEvent+Async.swift"; sourceTree = ""; }; 605A1D4036ADEF955D22C5B3FD98B178 /* Pods-Starter-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Starter-iOS-umbrella.h"; sourceTree = ""; }; 612387514A3BD2942AA5BFD04BC09471 /* Bolts-Swift-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-macOS.debug.xcconfig"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS.debug.xcconfig"; sourceTree = ""; }; + 61D04396491500A173D0FFBAB780D31D /* timer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.doctree; path = Docs/build/doctrees/timer.doctree; sourceTree = ""; }; 62ACBD4662324E90BCD96BA7EA2BF812 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - 63202BF8662D83220A327EC8394242FD /* gpio.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = gpio.cpp; sourceTree = ""; }; - 6377C5E70A1C4BA32865B1D99A214C32 /* accelerometer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer.cpp; sourceTree = ""; }; + 666264D4C3954BEDBA107D17B1224431 /* MetaWear-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "MetaWear-iOS-dummy.m"; sourceTree = ""; }; + 67452940E4BC60A39601C94EAD5DFB77 /* gyro.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = gyro.rst; path = Docs/source/gyro.rst; sourceTree = ""; }; + 69478DF70155827E5C4A8D65FE8544EA /* dfu_operations.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_operations.cpp; sourceTree = ""; }; 69BBBFBD413E4347F9175B0DC4182489 /* CoreBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreBluetooth.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS14.0.sdk/System/Library/Frameworks/CoreBluetooth.framework; sourceTree = DEVELOPER_DIR; }; - 6B28505F19EF432929F65CCA67A72C51 /* metawearscanner.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = metawearscanner.html; path = Docs/build/html/metawearscanner.html; sourceTree = ""; }; + 69CF4410E2179DACEB620FFCBBA32109 /* magnetometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = magnetometer.rst.txt; path = Docs/build/html/_sources/magnetometer.rst.txt; sourceTree = ""; }; + 6A24C82034C3F33943F32366825A7F53 /* haptic.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = haptic.rst; path = Docs/source/haptic.rst; sourceTree = ""; }; + 6A7B40F3255D097630B2CFB3278B7DAC /* humidity.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = humidity.doctree; path = Docs/build/doctrees/humidity.doctree; sourceTree = ""; }; 6C337243CE5ED654EBE80ABFE62B90F0 /* MBProgressHUD-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "MBProgressHUD-iOS.modulemap"; sourceTree = ""; }; - 6D955BDD745F47E1B8406183BDE233D9 /* Bridging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Bridging.swift; sourceTree = ""; }; - 6E548A000C7AA5DBDA459E5CFE1D08B0 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MetaWear.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 6F05254446FC44134AB1FCB505181E8D /* dfu_utility.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_utility.cpp; sourceTree = ""; }; + 6C947102CABC6CF1B03A3CC74BFE1143 /* settings.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = settings.cpp; sourceTree = ""; }; + 6D00ED3BC39B109FA0D6F23746313432 /* environment.pickle */ = {isa = PBXFileReference; includeInIndex = 1; name = environment.pickle; path = Docs/build/doctrees/environment.pickle; sourceTree = ""; }; + 6D4FB7A5D78EE1FDB4857D9EDF07615C /* file_operations.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = file_operations.cpp; sourceTree = ""; }; + 6DF75879D9379473EA340CDEF27C04E3 /* i2c.html */ = {isa = PBXFileReference; includeInIndex = 1; name = i2c.html; path = Docs/build/html/i2c.html; sourceTree = ""; }; + 6E548A000C7AA5DBDA459E5CFE1D08B0 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MetaWear.framework; path = "MetaWear-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 6F4DFDD326DF0F687E3A573D7C34CB4D /* MetaWear-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-macOS-umbrella.h"; path = "../MetaWear-macOS/MetaWear-macOS-umbrella.h"; sourceTree = ""; }; + 6F90FE959C5F8630ED647A98837D766A /* logger.html */ = {isa = PBXFileReference; includeInIndex = 1; name = logger.html; path = Docs/build/html/logger.html; sourceTree = ""; }; 702271784BFC1B5B9BBAB107FDE921EC /* Pods-Starter-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Starter-tvOS-umbrella.h"; sourceTree = ""; }; - 70E4236F6C323B77B450D9AD553DC09F /* lato-bold.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bold.woff2"; path = "Docs/build/html/_static/fonts/Lato/lato-bold.woff2"; sourceTree = ""; }; + 70714BE6042AB4FD6FE5A0ACBBA5E405 /* macro.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = macro.rst.txt; path = Docs/build/html/_sources/macro.rst.txt; sourceTree = ""; }; + 70D1B35F7260C2B6850329D33F431888 /* temperature.html */ = {isa = PBXFileReference; includeInIndex = 1; name = temperature.html; path = Docs/build/html/temperature.html; sourceTree = ""; }; + 70DC84F6802825A7ACCE1D134E26579C /* gpio.html */ = {isa = PBXFileReference; includeInIndex = 1; name = gpio.html; path = Docs/build/html/gpio.html; sourceTree = ""; }; + 70E052A0D22CF553F00BF9B60AAF314E /* ambientlightsensor.html */ = {isa = PBXFileReference; includeInIndex = 1; name = ambientlightsensor.html; path = Docs/build/html/ambientlightsensor.html; sourceTree = ""; }; + 71C80E8469B47A167FD49190C5F25FD6 /* MetaWear-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-tvOS.release.xcconfig"; path = "../MetaWear-tvOS/MetaWear-tvOS.release.xcconfig"; sourceTree = ""; }; + 71DA3BD0D4B12F92A08EEC60407E8CB3 /* doctools.js */ = {isa = PBXFileReference; includeInIndex = 1; name = doctools.js; path = Docs/build/html/_static/doctools.js; sourceTree = ""; }; + 7217CA910247FBFC09ECDAAED1FAA751 /* ambientlightsensor.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = ambientlightsensor.doctree; path = Docs/build/doctrees/ambientlightsensor.doctree; sourceTree = ""; }; 727D672B885D63406AFDABB9A8BC708C /* MBProgressHUD-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "MBProgressHUD-iOS-Info.plist"; sourceTree = ""; }; - 7344DC86ADC723702CC76DF0D5AE0312 /* conductance.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = conductance.cpp; sourceTree = ""; }; - 7398100F920A07F383AB555139B9AB22 /* MetaWear-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "MetaWear-iOS-dummy.m"; sourceTree = ""; }; + 73596A17D39152C54F79907E905F484D /* common.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = common.cpp; sourceTree = ""; }; 73C56E3159D96EE5790B58981C71B08F /* Bolts-Swift-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-tvOS.debug.xcconfig"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS.debug.xcconfig"; sourceTree = ""; }; - 7418CF41A42F30CF160C2A5C7A4C7715 /* MBProgressHUD.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MBProgressHUD.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 772DF688EECE947730C14D946EC97632 /* roboto-slab-v7-bold.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "roboto-slab-v7-bold.ttf"; path = "Docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf"; sourceTree = ""; }; - 7A73E478EC7934D547293BEDFB36AE2B /* async_creator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = async_creator.cpp; sourceTree = ""; }; + 73F90626148B6926CD0A3CF52A7E3287 /* dataprocessor.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = dataprocessor.rst; path = Docs/source/dataprocessor.rst; sourceTree = ""; }; + 7418CF41A42F30CF160C2A5C7A4C7715 /* MBProgressHUD.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MBProgressHUD.framework; path = "MBProgressHUD-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 75AEFB622039DC267B8083016484BF84 /* genindex.html */ = {isa = PBXFileReference; includeInIndex = 1; name = genindex.html; path = Docs/build/html/genindex.html; sourceTree = ""; }; + 75F6B9E777BF67164B289B4A899616A5 /* humidity.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = humidity.rst.txt; path = Docs/build/html/_sources/humidity.rst.txt; sourceTree = ""; }; + 763577F12BE55BB7C2C3CB169B80E912 /* core_modules.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = core_modules.rst; path = Docs/source/core_modules.rst; sourceTree = ""; }; + 76420B6D059B622049A79A9CADAB636C /* settings.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.rst; path = Docs/source/settings.rst; sourceTree = ""; }; + 76EC20733025534D43C97EF33183EC39 /* barometer.html */ = {isa = PBXFileReference; includeInIndex = 1; name = barometer.html; path = Docs/build/html/barometer.html; sourceTree = ""; }; + 780E39B0E7CC446384C25BBA74A91ECE /* sensor_fusion.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = sensor_fusion.rst.txt; path = Docs/build/html/_sources/sensor_fusion.rst.txt; sourceTree = ""; }; + 781F5D1DB4CF64528FC57FCAC3C29F5F /* advanced_features.html */ = {isa = PBXFileReference; includeInIndex = 1; name = advanced_features.html; path = Docs/build/html/advanced_features.html; sourceTree = ""; }; + 7830D4E509A6301BB21BBB855A5BE241 /* logger.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = logger.doctree; path = Docs/build/doctrees/logger.doctree; sourceTree = ""; }; 7AAC9ACF72E9A75C8F8619A59E6142BD /* MBProgressHUD-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MBProgressHUD-iOS-prefix.pch"; sourceTree = ""; }; - 7B30DD82C5CA5274C101C3A695E81EA1 /* lato-italic.eot */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-italic.eot"; path = "Docs/build/html/_static/fonts/Lato/lato-italic.eot"; sourceTree = ""; }; - 7CBBB9F49E9825D5D5836D7D193F9838 /* MetaWear-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-tvOS.release.xcconfig"; path = "../MetaWear-tvOS/MetaWear-tvOS.release.xcconfig"; sourceTree = ""; }; - 7D363E5E9BD23515315A2DEDF445DD45 /* objects.inv */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = objects.inv; path = Docs/build/html/objects.inv; sourceTree = ""; }; + 7AD861E0372523DEECEF815D9FA7F8EE /* ambientlight_ltr329.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ambientlight_ltr329.cpp; sourceTree = ""; }; + 7B36557E57399D9FE06D3DD94D7C1713 /* MblMwDataSignal+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MblMwDataSignal+Async.swift"; path = "MetaWear/AsyncUtils/MblMwDataSignal+Async.swift"; sourceTree = ""; }; + 7BB6060635F52EB33D6A127505F26CA1 /* MetaWear-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-tvOS.debug.xcconfig"; path = "../MetaWear-tvOS/MetaWear-tvOS.debug.xcconfig"; sourceTree = ""; }; + 7BF15712AABD985A36C7041D143B0F7B /* MetaWear-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MetaWear-iOS-umbrella.h"; sourceTree = ""; }; + 7DB0BD827BAFBB4A29321AAB7C2D9209 /* metawearboard.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearboard.rst; path = Docs/source/metawearboard.rst; sourceTree = ""; }; 7DFA7E1CF90980A0A17D88F03E86FD05 /* Errors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Errors.swift; path = Sources/BoltsSwift/Errors.swift; sourceTree = ""; }; + 7E390F0DA33824EEA188BADFECC38820 /* PythonGenerator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = PythonGenerator.cpp; sourceTree = ""; }; 7F3E0B8E0AD0DB3D3B601C398C66DF7F /* Pods-Starter-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Starter-tvOS.release.xcconfig"; sourceTree = ""; }; - 7FE070A2C8266CD6A000200A88E2E91C /* MetaWear-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MetaWear-iOS-umbrella.h"; sourceTree = ""; }; - 80137C1F4D67156FD92C9727976687BC /* metawearboard.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = metawearboard.cpp; sourceTree = ""; }; - 81C10579E960F00538287E1C9000904D /* MetaWear-macOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-macOS-prefix.pch"; path = "../MetaWear-macOS/MetaWear-macOS-prefix.pch"; sourceTree = ""; }; - 81FDA441EA1B82453B9C896D5EC2D6B6 /* lato-regular.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-regular.ttf"; path = "Docs/build/html/_static/fonts/Lato/lato-regular.ttf"; sourceTree = ""; }; - 826015182EA06E37BCEE4EFED2CE837D /* dfu_operations.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_operations.cpp; sourceTree = ""; }; + 8082259281DFB8C049D3E08D23252D81 /* timer.html */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.html; path = Docs/build/html/timer.html; sourceTree = ""; }; + 8180ED6AA8B350F7282D6C70A86941EE /* MetaWear-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-macOS.release.xcconfig"; path = "../MetaWear-macOS/MetaWear-macOS.release.xcconfig"; sourceTree = ""; }; + 819E76F26F0DBB099EDE7AEC9D2F5575 /* event.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = event.rst; path = Docs/source/event.rst; sourceTree = ""; }; + 82049F9A58281394DE855DF0C1E6C363 /* metawearscanner.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearscanner.rst; path = Docs/source/metawearscanner.rst; sourceTree = ""; }; + 829FE6E31553903E1B9AD49D369843AA /* MetaWear-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MetaWear-tvOS-Info.plist"; path = "../MetaWear-tvOS/MetaWear-tvOS-Info.plist"; sourceTree = ""; }; 837B192127E7B12E08CEDCC250CC101A /* TaskCompletionSource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskCompletionSource.swift; path = Sources/BoltsSwift/TaskCompletionSource.swift; sourceTree = ""; }; - 8461F8CB4595E897E4EEE7454C94AA3E /* fontawesome-webfont.eot */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "fontawesome-webfont.eot"; path = "Docs/build/html/_static/fonts/fontawesome-webfont.eot"; sourceTree = ""; }; - 84E5BF7240129CED344F9415DA07F9F7 /* datainterpreter.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = datainterpreter.cpp; sourceTree = ""; }; - 865E20BDB258D3FE1092ACE87FEDA5E1 /* LogDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = LogDelegate.swift; sourceTree = ""; }; + 83E1398E2BABE33EFA94E9368A71684C /* upload.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; name = upload.sh; path = Docs/upload.sh; sourceTree = ""; }; + 84A1AFD074DA79FEDE0E4400345D85C2 /* MetaWear-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MetaWear-macOS-dummy.m"; path = "../MetaWear-macOS/MetaWear-macOS-dummy.m"; sourceTree = ""; }; + 85C8BA20B3E59C69821DD782F166EEF4 /* event.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = event.doctree; path = Docs/build/doctrees/event.doctree; sourceTree = ""; }; 8754823756355F1A18C60F348C8B8CFA /* MBProgressHUD-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MBProgressHUD-tvOS-umbrella.h"; path = "../MBProgressHUD-tvOS/MBProgressHUD-tvOS-umbrella.h"; sourceTree = ""; }; 87D44A912EE8674FA1013061A1CBC555 /* Bolts-Swift-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Bolts-Swift-iOS-Info.plist"; sourceTree = ""; }; - 87F5D6D28DFB09B6A494C12C0CAF0CD3 /* event.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = event.cpp; sourceTree = ""; }; + 87D659F1465356AA74B9A092439A6D8A /* MetaWearData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWearData.swift; sourceTree = ""; }; 887A0B2E8481AB7CE0DD552ADD31F5C6 /* Pods-Starter-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Starter-tvOS.modulemap"; sourceTree = ""; }; - 88E57DDDFEAD75A1F4BA3BF48B56B264 /* layout.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = layout.html; path = Docs/source/_templates/layout.html; sourceTree = ""; }; - 893FBF17B6E430F370B617C6E8FB3D7D /* MblMwGattChar.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MblMwGattChar.swift; sourceTree = ""; }; + 888E301C84C29361A6D17FA7BD6FC5C6 /* ambientlightsensor.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = ambientlightsensor.rst.txt; path = Docs/build/html/_sources/ambientlightsensor.rst.txt; sourceTree = ""; }; + 88F3F050AC9DCDD47CA87E6C64A31031 /* metawearscanner.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearscanner.rst.txt; path = Docs/build/html/_sources/metawearscanner.rst.txt; sourceTree = ""; }; 8A94499076F43ED27622B582C18A1DD8 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/CoreGraphics.framework; sourceTree = DEVELOPER_DIR; }; - 8AAA17EB28F724B8C08389D19004C00F /* MetaWear-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-macOS.release.xcconfig"; path = "../MetaWear-macOS/MetaWear-macOS.release.xcconfig"; sourceTree = ""; }; + 8AECED3EAEA299BAF975F89EDDC030FE /* haptic.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = haptic.doctree; path = Docs/build/doctrees/haptic.doctree; sourceTree = ""; }; 8C2EEE8CD5B553715127DAC33DC40809 /* MBProgressHUD-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "MBProgressHUD-iOS.release.xcconfig"; sourceTree = ""; }; - 8C6131EDD4157BA3E09B3FCD4A545D45 /* settings.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = settings.cpp; sourceTree = ""; }; - 8CA6689CB7FA588F54527326B12A6E30 /* haptic.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = haptic.cpp; sourceTree = ""; }; - 8CC5EAEDA04764883C4ACEEFFB433C5F /* fontawesome-webfont.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "fontawesome-webfont.ttf"; path = "Docs/build/html/_static/fonts/fontawesome-webfont.ttf"; sourceTree = ""; }; - 8F40E488DFF46AA4B7743CD7E0936AA5 /* pygments.css */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.css; name = pygments.css; path = Docs/build/html/_static/pygments.css; sourceTree = ""; }; + 8C4779E9F32CBC976D46FCA71BC384D0 /* spi.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = spi.rst; path = Docs/source/spi.rst; sourceTree = ""; }; + 8C4E60FA5AA15460A6D9A8E5C5774258 /* core_modules.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = core_modules.rst.txt; path = Docs/build/html/_sources/core_modules.rst.txt; sourceTree = ""; }; + 8D93A451DA20E000F47E9DB2C2AE8A77 /* sensors.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = sensors.rst.txt; path = Docs/build/html/_sources/sensors.rst.txt; sourceTree = ""; }; + 8DA8F605306A00A56093264E789638F9 /* CSharpGenerator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = CSharpGenerator.cpp; sourceTree = ""; }; + 8DFAF9FFD5851465C20BA3DB650A5A0F /* temperature.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = temperature.rst.txt; path = Docs/build/html/_sources/temperature.rst.txt; sourceTree = ""; }; + 8E5337698F92619E772C69177B31FF2D /* gyro_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = gyro_bosch.cpp; sourceTree = ""; }; + 8E73CBCA5892532AB47FAEFA6C2AA186 /* index.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = index.doctree; path = Docs/build/doctrees/index.doctree; sourceTree = ""; }; 8F72C28F3CC1842F6B07A196D329BA2C /* Bolts-Swift-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Bolts-Swift-iOS.debug.xcconfig"; sourceTree = ""; }; - 907627F49775562029F574A13C5B8B33 /* accelerometer_mma8452q.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer_mma8452q.cpp; sourceTree = ""; }; - 914FF782BD581A412B078D2D3D0874AA /* project_setup.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = project_setup.html; path = Docs/build/html/project_setup.html; sourceTree = ""; }; - 918FC3DE68A7D67638CE2C5367825308 /* MetaWear.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWear.swift; sourceTree = ""; }; - 923D73C6D752D7C1DD2FEA3C887BA3CD /* lato-bolditalic.eot */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bolditalic.eot"; path = "Docs/build/html/_static/fonts/Lato/lato-bolditalic.eot"; sourceTree = ""; }; - 95AAE18A0142541C9FBA8A918F24504D /* ambientlight_ltr329.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ambientlight_ltr329.cpp; sourceTree = ""; }; - 9634C0D1EFF65E0BA5D5C28A0A6C87B0 /* minus.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = minus.png; path = Docs/build/html/_static/minus.png; sourceTree = ""; }; + 8FE18352D7951479EFF9166009D5FE28 /* i2c.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = i2c.rst.txt; path = Docs/build/html/_sources/i2c.rst.txt; sourceTree = ""; }; + 9065F9D0C5197CA6A79E2C9E79E1533F /* accelerometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = accelerometer.rst.txt; path = Docs/build/html/_sources/accelerometer.rst.txt; sourceTree = ""; }; + 915C92E52AD291DB12C9D2632199C9A3 /* neopixel.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = neopixel.cpp; sourceTree = ""; }; + 9282C71969A1439C75E173883400052A /* accelerometer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer.cpp; sourceTree = ""; }; + 9328A45B394AA6F5C68B56D82E673DFC /* jquery.js */ = {isa = PBXFileReference; includeInIndex = 1; name = jquery.js; path = Docs/build/html/_static/jquery.js; sourceTree = ""; }; + 93A104537BE055AF14D78DE0DD05B00B /* metawearboard.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearboard.doctree; path = Docs/build/doctrees/metawearboard.doctree; sourceTree = ""; }; + 940B1A78A509FC5E861E0F33B9FF2955 /* MetaWearScanner.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWearScanner.swift; sourceTree = ""; }; + 95927B638B5049F46D71A0C4A2B6F8BA /* MetaWear-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-tvOS-prefix.pch"; path = "../MetaWear-tvOS/MetaWear-tvOS-prefix.pch"; sourceTree = ""; }; + 960E6CF8D16AAFA541846C643B412CED /* dataprocessor_config.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dataprocessor_config.cpp; sourceTree = ""; }; + 971248F309E34FAF0266C0AC36238ADE /* lato-bold.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-bold.woff2"; path = "Docs/build/html/_static/css/fonts/lato-bold.woff2"; sourceTree = ""; }; 973F1F6E8D98971DFC54B89A49598E78 /* Pods-Starter-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Starter-tvOS-Info.plist"; sourceTree = ""; }; - 97DB082217720C34477192720AE9BC94 /* fontawesome-webfont.svg */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xml; name = "fontawesome-webfont.svg"; path = "Docs/build/html/_static/fonts/fontawesome-webfont.svg"; sourceTree = ""; }; + 97E098307FCCCF6B097AC4B577FF04EF /* peripherals.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = peripherals.rst; path = Docs/source/peripherals.rst; sourceTree = ""; }; 98241A252EE9A09357645FC887B227C6 /* Bolts-Swift-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "Bolts-Swift-tvOS.modulemap"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS.modulemap"; sourceTree = ""; }; - 984518ECFBF2BC4933377A8AD53D0DA9 /* metawearscanner.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = metawearscanner.rst.txt; path = Docs/build/html/_sources/metawearscanner.rst.txt; sourceTree = ""; }; - 9BE5642F17CB3558C8D6A889EEB7D5FE /* lato-bold.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bold.ttf"; path = "Docs/build/html/_static/fonts/Lato/lato-bold.ttf"; sourceTree = ""; }; - 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 9DAF1457DF4055EC63C399B46AC5E086 /* theme.css */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.css; name = theme.css; path = Docs/build/html/_static/css/theme.css; sourceTree = ""; }; + 9925F3872F89CD8A31D438559D9A38D7 /* Roboto-Slab-Bold.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "Roboto-Slab-Bold.woff"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Bold.woff"; sourceTree = ""; }; + 99C6F40D52D0737098504CF7565DED44 /* led.html */ = {isa = PBXFileReference; includeInIndex = 1; name = led.html; path = Docs/build/html/led.html; sourceTree = ""; }; + 9C1B536A0A6CDFDEB99751E59899728C /* MetaWear-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "MetaWear-iOS.release.xcconfig"; sourceTree = ""; }; + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; 9DC9077D61C1F98C3178577A231EDCFA /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS14.0.sdk/System/Library/Frameworks/CoreGraphics.framework; sourceTree = DEVELOPER_DIR; }; 9E0D7E61DB92369D72A5735D8D562C0C /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/QuartzCore.framework; sourceTree = DEVELOPER_DIR; }; - 9F5130E5720042AF8F62E03379043D60 /* metawearboard.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = metawearboard.html; path = Docs/build/html/metawearboard.html; sourceTree = ""; }; - 9F5452D656D9A83AD9DE7F1B8DB9583C /* timer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = timer.cpp; sourceTree = ""; }; - 9F931CAD74B17C63AD52FD67AE5A2F34 /* dfu_operations_details.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_operations_details.cpp; sourceTree = ""; }; - A110F7ABFBAB454DB15873041E152A9B /* project_setup.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = project_setup.rst; path = Docs/source/project_setup.rst; sourceTree = ""; }; - A2639A9FACAE141BF9E49DE49E8D5F32 /* roboto-slab-v7-bold.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "roboto-slab-v7-bold.woff"; path = "Docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff"; sourceTree = ""; }; - A29485FB5B14DD75A0A512CE1D36A260 /* Inconsolata-Bold.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "Inconsolata-Bold.ttf"; path = "Docs/build/html/_static/fonts/Inconsolata-Bold.ttf"; sourceTree = ""; }; + A1BC54611F59DDB9DA105EFA630CE88A /* miniz.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = miniz.cpp; sourceTree = ""; }; A32F3EA739395EC8FBF864B3A8E08B49 /* Bolts-Swift-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Bolts-Swift-macOS-dummy.m"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS-dummy.m"; sourceTree = ""; }; - A33F976B5D8E3C769A909BEC295DCF39 /* metawearboard.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = metawearboard.rst; path = Docs/source/metawearboard.rst; sourceTree = ""; }; - A35C8D69BE0B5B80DA9A76A0C521F741 /* utils.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = utils.cpp; sourceTree = ""; }; + A3BEB3D6E1A86B5C85D11DA03F476671 /* temperature.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = temperature.rst; path = Docs/source/temperature.rst; sourceTree = ""; }; A3BFC962E615607D27A73E209AF87F79 /* MBProgressHUD-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MBProgressHUD-tvOS.debug.xcconfig"; path = "../MBProgressHUD-tvOS/MBProgressHUD-tvOS.debug.xcconfig"; sourceTree = ""; }; + A4016FFAEDA0DA9EDA859825795F4AC9 /* timer.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.rst; path = Docs/source/timer.rst; sourceTree = ""; }; + A48523ED159104EE7638E6C6E4F14B0A /* macro.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = macro.doctree; path = Docs/build/doctrees/macro.doctree; sourceTree = ""; }; A4A6B497310165A8A16BDFC2E6DC8B0D /* MBProgressHUD-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MBProgressHUD-tvOS-dummy.m"; path = "../MBProgressHUD-tvOS/MBProgressHUD-tvOS-dummy.m"; sourceTree = ""; }; - A4C3C5A8A18D0BB11B0688E685E5DAAD /* MetaWear-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MetaWear-tvOS-Info.plist"; path = "../MetaWear-tvOS/MetaWear-tvOS-Info.plist"; sourceTree = ""; }; A5372FC8ECA6A811905243B4EC16FA3D /* Bolts-Swift-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-macOS.release.xcconfig"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS.release.xcconfig"; sourceTree = ""; }; A61DEC5F2BB53734CEAF84D0596B872E /* Bolts-Swift-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-tvOS-prefix.pch"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS-prefix.pch"; sourceTree = ""; }; - A6754BDA792552A0657AC4594E371944 /* proximity_tsl2671.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = proximity_tsl2671.cpp; sourceTree = ""; }; - A6AA6370886C88EA1F4C620C32C45271 /* jquery.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = jquery.js; path = Docs/build/html/_static/jquery.js; sourceTree = ""; }; - A801E26691F85C79F93EC7FB13F7932D /* datasignal.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = datasignal.cpp; sourceTree = ""; }; - A8651C9E0995B04497AA74250842B71E /* badge_only.css */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.css; name = badge_only.css; path = Docs/build/html/_static/css/badge_only.css; sourceTree = ""; }; - AD078928237AFD98DB129843440919BE /* Lato-Regular.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "Lato-Regular.ttf"; path = "Docs/build/html/_static/fonts/Lato-Regular.ttf"; sourceTree = ""; }; - AE0085E2928F8A5CEDA83612EECE2CFB /* roboto-slab-v7-regular.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "roboto-slab-v7-regular.woff2"; path = "Docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2"; sourceTree = ""; }; + A664C95B75FCF91CE08A4EAE7BD19507 /* gyro.html */ = {isa = PBXFileReference; includeInIndex = 1; name = gyro.html; path = Docs/build/html/gyro.html; sourceTree = ""; }; + A968F6900C4B3410E2C08D7925FA946D /* index.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = index.rst; path = Docs/source/index.rst; sourceTree = ""; }; + A9DA7456B9A446DE705CA0792DD1A5D8 /* LICENSE.md */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE.md; sourceTree = ""; }; + AA168D11874285055C0DB759157C8366 /* ambientlightsensor.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = ambientlightsensor.rst; path = Docs/source/ambientlightsensor.rst; sourceTree = ""; }; + AADD448787441C1267FFCD7035682F41 /* advanced_features.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = advanced_features.rst.txt; path = Docs/build/html/_sources/advanced_features.rst.txt; sourceTree = ""; }; + AC16AF9C03890DEA2A12F04BAA829EFF /* metawearscanner.html */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearscanner.html; path = Docs/build/html/metawearscanner.html; sourceTree = ""; }; + AC708C124E7BBC3699D1F782FD67686F /* file.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = file.png; path = Docs/build/html/_static/file.png; sourceTree = ""; }; + ACE5F2ED7D50242EFF75090D99C76927 /* logging.html */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.html; path = Docs/build/html/logging.html; sourceTree = ""; }; + AD64B0694BC2C8ED8B75A9D7BE0DA7C8 /* gpio.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = gpio.rst.txt; path = Docs/build/html/_sources/gpio.rst.txt; sourceTree = ""; }; AE0D16902D92A36A820FD1814FFE14DC /* Pods-Starter-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Starter-macOS.modulemap"; sourceTree = ""; }; - AE23778E4AF192210F83826BCF837614 /* lato-regular.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-regular.woff2"; path = "Docs/build/html/_static/fonts/Lato/lato-regular.woff2"; sourceTree = ""; }; + AE145F7E7626B34845FAA49CBCC1A2F5 /* spi.html */ = {isa = PBXFileReference; includeInIndex = 1; name = spi.html; path = Docs/build/html/spi.html; sourceTree = ""; }; + AE34D13AE4272C80F5DE844E6689AB2A /* gyro.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = gyro.rst.txt; path = Docs/build/html/_sources/gyro.rst.txt; sourceTree = ""; }; + AE97A88FA72CBBE2AC25A4DE5C982520 /* event.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = event.rst.txt; path = Docs/build/html/_sources/event.rst.txt; sourceTree = ""; }; + AF3B70568FD7AA14EB110315B2672ECC /* index.html */ = {isa = PBXFileReference; includeInIndex = 1; name = index.html; path = Docs/build/html/index.html; sourceTree = ""; }; + AF455F06CF0459F70AAFD514CE9B8C90 /* sensor_fusion.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = sensor_fusion.doctree; path = Docs/build/doctrees/sensor_fusion.doctree; sourceTree = ""; }; + AF9BE72D3F724EFB9A6ADFDE7CF0DC2E /* dfu_operations_details.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_operations_details.cpp; sourceTree = ""; }; + B07EBDA6087E77B7FBF0B5EE7F835A56 /* temperature.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = temperature.doctree; path = Docs/build/doctrees/temperature.doctree; sourceTree = ""; }; + B0833D5E766F8A66B34C77E0646A98A9 /* peripherals.html */ = {isa = PBXFileReference; includeInIndex = 1; name = peripherals.html; path = Docs/build/html/peripherals.html; sourceTree = ""; }; + B09995BBCCF22483CEC38EB78C7992A4 /* metawearboard.html */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearboard.html; path = Docs/build/html/metawearboard.html; sourceTree = ""; }; B15555497F693B6A99DE2F485EF4A1AC /* Task.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Task.swift; path = Sources/BoltsSwift/Task.swift; sourceTree = ""; }; - B1A5B7E578496C7E56CC31DA39874036 /* MetaWearData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWearData.swift; sourceTree = ""; }; B1B3569712E32522356304FB6B9DF2A5 /* Pods-Starter-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Starter-macOS-dummy.m"; sourceTree = ""; }; - B216065BE1DB7CCDD14A7375BA70CB7B /* plus.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = plus.png; path = Docs/build/html/_static/plus.png; sourceTree = ""; }; - B278973B68EE06A7F3648419501C9E17 /* metawearboard.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = metawearboard.rst.txt; path = Docs/build/html/_sources/metawearboard.rst.txt; sourceTree = ""; }; - B3DA0335094A3695F701E31CCE974035 /* Inconsolata.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = Inconsolata.ttf; path = Docs/build/html/_static/fonts/Inconsolata.ttf; sourceTree = ""; }; - B8589B881C3662FF6987875F057E1266 /* miniz.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = miniz.cpp; sourceTree = ""; }; - B8B950F26C12018942B559303E886E71 /* fontawesome-webfont.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "fontawesome-webfont.woff"; path = "Docs/build/html/_static/fonts/fontawesome-webfont.woff"; sourceTree = ""; }; + B2B67FDDC92ADF288F862CF09115C908 /* badge_only.css */ = {isa = PBXFileReference; includeInIndex = 1; name = badge_only.css; path = Docs/build/html/_static/css/badge_only.css; sourceTree = ""; }; + B342E0A9CA2E7D446D273E80F6A39634 /* plus.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = plus.png; path = Docs/build/html/_static/plus.png; sourceTree = ""; }; + B3BDF2105B28EAC636817114B8E6FF6B /* advanced_features.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = advanced_features.rst; path = Docs/source/advanced_features.rst; sourceTree = ""; }; + B3BFD8F7FDEABE86A0B82DCEBD8BAC49 /* macro.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = macro.rst; path = Docs/source/macro.rst; sourceTree = ""; }; + B705D38C8AF52642C58DE64E291AD532 /* project.html */ = {isa = PBXFileReference; includeInIndex = 1; name = project.html; path = Docs/build/html/project.html; sourceTree = ""; }; + B71604572313E9BB286E64E29DBC6732 /* multichanneltemperature.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = multichanneltemperature.cpp; sourceTree = ""; }; + B92084A02EDB6F7A265F8E39A3239F45 /* fontawesome-webfont.eot */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.eot"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.eot"; sourceTree = ""; }; + B9AB5E8B8A30D62D31EB5C8E2B2FD175 /* datasignal.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = datasignal.rst.txt; path = Docs/build/html/_sources/datasignal.rst.txt; sourceTree = ""; }; BA5E0166744E14FD215072817656470E /* Bolts-Swift-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "Bolts-Swift-macOS-Info.plist"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS-Info.plist"; sourceTree = ""; }; BB8FF63AAD949B90017C1EA691426A74 /* Pods-Starter-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Starter-tvOS-dummy.m"; sourceTree = ""; }; - BE5ED46159BEF6773B69101984FDAFB4 /* DeviceInformation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DeviceInformation.swift; sourceTree = ""; }; - BEAF4F7BEA10179AFE8E75862E4A9F7E /* conf.py */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.python; name = conf.py; path = Docs/source/conf.py; sourceTree = ""; }; - BEE552545635AA42EE3650CC185DD61E /* lato-italic.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-italic.woff"; path = "Docs/build/html/_static/fonts/Lato/lato-italic.woff"; sourceTree = ""; }; + BD1681E2CDFE24B8786F89BBE4EF85FC /* gpio.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = gpio.rst; path = Docs/source/gpio.rst; sourceTree = ""; }; + BED3FEA98526E49E140844EB3D56089E /* html5shiv.min.js */ = {isa = PBXFileReference; includeInIndex = 1; name = html5shiv.min.js; path = Docs/build/html/_static/js/html5shiv.min.js; sourceTree = ""; }; + BF3FE49FBC55DBBEE9D689295441F9AF /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; C099A53D7B4B4B957280D1A29B8AB95C /* Pods-Starter-iOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Starter-iOS-frameworks.sh"; sourceTree = ""; }; - C1444F3A180A37445E3F3DB35C90225D /* doctools.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = doctools.js; path = Docs/build/html/_static/doctools.js; sourceTree = ""; }; - C3706EEB45ABA7AFA19B39587763A7E7 /* metawearscanner.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = metawearscanner.rst; path = Docs/source/metawearscanner.rst; sourceTree = ""; }; - C39094C0DAE4A065CB6AC687E3053DCB /* metawearboard.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = metawearboard.doctree; path = Docs/build/doctrees/metawearboard.doctree; sourceTree = ""; }; - C3A5946EB961D212BCCDDA3657BEA73F /* lato-regular.eot */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-regular.eot"; path = "Docs/build/html/_static/fonts/Lato/lato-regular.eot"; sourceTree = ""; }; - C537212A7BF3A3EF1A67474ECB74FC1E /* sensor_fusion.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = sensor_fusion.cpp; sourceTree = ""; }; - C8045AA5021492B94729509C5E981A1C /* multichanneltemperature.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = multichanneltemperature.cpp; sourceTree = ""; }; + C21967F5C33E749B602F315E15E8E299 /* metawearscanner.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearscanner.doctree; path = Docs/build/doctrees/metawearscanner.doctree; sourceTree = ""; }; + C455BD80D0B724316FAA636CDC8562D4 /* lato-normal-italic.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-normal-italic.woff"; path = "Docs/build/html/_static/css/fonts/lato-normal-italic.woff"; sourceTree = ""; }; + C52F6AB1A05108D70669568167D18805 /* layout.html */ = {isa = PBXFileReference; includeInIndex = 1; name = layout.html; path = Docs/source/_templates/layout.html; sourceTree = ""; }; + C58E3BE77CBA2E837613FA138CE24B92 /* documentation_options.js */ = {isa = PBXFileReference; includeInIndex = 1; name = documentation_options.js; path = Docs/build/html/_static/documentation_options.js; sourceTree = ""; }; + C625A7F7E5341AD19981D11484733176 /* led.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = led.rst.txt; path = Docs/build/html/_sources/led.rst.txt; sourceTree = ""; }; + C765F6E825F979DBF983E7EFE6F4394C /* jquery-3.5.1.js */ = {isa = PBXFileReference; includeInIndex = 1; name = "jquery-3.5.1.js"; path = "Docs/build/html/_static/jquery-3.5.1.js"; sourceTree = ""; }; C81D2E67097EFC1B69D02B9B96CAC265 /* Pods-Starter-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Starter-iOS.modulemap"; sourceTree = ""; }; C89E6622B43CF1FBB3D18A3036852974 /* Pods-Starter-macOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Starter-macOS-acknowledgements.plist"; sourceTree = ""; }; - C8F152C5AD993A29A3666BB5A2A549AA /* MetaWear-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-tvOS-umbrella.h"; path = "../MetaWear-tvOS/MetaWear-tvOS-umbrella.h"; sourceTree = ""; }; - C948D4521A203768DFBEEA77F7504E98 /* MetaWear-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MetaWear-iOS-prefix.pch"; sourceTree = ""; }; CA10A7C819BBF350BDDD6EDCD550F31B /* Pods-Starter-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Starter-macOS.release.xcconfig"; sourceTree = ""; }; - CB07009397AC653E74A695FD958406F6 /* lato-italic.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-italic.ttf"; path = "Docs/build/html/_static/fonts/Lato/lato-italic.ttf"; sourceTree = ""; }; - CBB09CC6652C4BFD15FBEAC24D07AA9D /* barometer_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = barometer_bosch.cpp; sourceTree = ""; }; - CD30AB0E5D32953359CA01D90035C3D5 /* MetaWear-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "MetaWear-iOS-Info.plist"; sourceTree = ""; }; + CB218E81B6C29AF1C2468898A82CF981 /* led.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = led.cpp; sourceTree = ""; }; + CB6ECAA2DC4375581C0E7143B4B4F2B1 /* MetaWear.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWear.swift; sourceTree = ""; }; + CCD8661E715FAC2CD26666708187A118 /* minus.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = minus.png; path = Docs/build/html/_static/minus.png; sourceTree = ""; }; CD84494AE611F8C6D2420C8D5A578A8B /* Task+WhenAny.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Task+WhenAny.swift"; path = "Sources/BoltsSwift/Task+WhenAny.swift"; sourceTree = ""; }; - CF3CA0971FD34CEBF028B7073A87F2E3 /* modernizr.min.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = modernizr.min.js; path = Docs/build/html/_static/js/modernizr.min.js; sourceTree = ""; }; + CF3002C3345141957EE7C9AA14729609 /* barometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = barometer.rst; path = Docs/source/barometer.rst; sourceTree = ""; }; + CF985630325C9CC34D98CCA8536D7611 /* language_data.js */ = {isa = PBXFileReference; includeInIndex = 1; name = language_data.js; path = Docs/build/html/_static/language_data.js; sourceTree = ""; }; + D0387C870B9F243BE20EF29AFCB3B0A8 /* theme.css */ = {isa = PBXFileReference; includeInIndex = 1; name = theme.css; path = Docs/build/html/_static/css/theme.css; sourceTree = ""; }; + D0608D15485BBD00C2D02C2A174FB451 /* accelerometer_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer_bosch.cpp; sourceTree = ""; }; + D08C199309C453DFB18384D427ACC20F /* version.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = version.cpp; sourceTree = ""; }; D197FBAD8B0D726C59E35F0713802A8F /* Pods-Starter-macOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Starter-macOS-frameworks.sh"; sourceTree = ""; }; - D3DD55B6AB9CBD369AB8C621317E9EF8 /* searchtools.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = searchtools.js; path = Docs/build/html/_static/searchtools.js; sourceTree = ""; }; - D40A6D2FD7C5D6CDBD2E9FF2211BF82D /* MetaWear+LED.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+LED.swift"; path = "MetaWear/AsyncUtils/MetaWear+LED.swift"; sourceTree = ""; }; - D5D4472071EBD9F74522233799DF9046 /* lato-bold.eot */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bold.eot"; path = "Docs/build/html/_static/fonts/Lato/lato-bold.eot"; sourceTree = ""; }; + D2039622104039FDF928B9B96838DB28 /* underscore.js */ = {isa = PBXFileReference; includeInIndex = 1; name = underscore.js; path = Docs/build/html/_static/underscore.js; sourceTree = ""; }; + D30FA847D61BD29F80E44A0963799ECD /* accelerometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = accelerometer.rst; path = Docs/source/accelerometer.rst; sourceTree = ""; }; D5D65D6F3D9A1EC0060BD382ED9DE1ED /* Task+ContinueWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Task+ContinueWith.swift"; path = "Sources/BoltsSwift/Task+ContinueWith.swift"; sourceTree = ""; }; D5D809EBC8662CB00C9EE89EDEAA4C28 /* Bolts-Swift-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "Bolts-Swift-tvOS-Info.plist"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS-Info.plist"; sourceTree = ""; }; - D614F5EB1B25E2F4459ADD8E57BB7D4A /* MetaWear-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-tvOS-prefix.pch"; path = "../MetaWear-tvOS/MetaWear-tvOS-prefix.pch"; sourceTree = ""; }; - D7C46319B6CA1609F67C06FFE8F8DE3E /* index.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = index.rst; path = Docs/source/index.rst; sourceTree = ""; }; + D84A7E69F949CD5E675587450FD3A0F1 /* accelerometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = accelerometer.doctree; path = Docs/build/doctrees/accelerometer.doctree; sourceTree = ""; }; D85F0CF7B03ECBB29CF09997E90A440E /* MBProgressHUD.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = MBProgressHUD.m; sourceTree = ""; }; - D8A873073934665FD939FF8B3B3E509B /* theme.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = theme.js; path = Docs/build/html/_static/js/theme.js; sourceTree = ""; }; + D8F6F4A39D77B7B09DBEBC03CD050624 /* humidity_bme280.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = humidity_bme280.cpp; sourceTree = ""; }; D97D161FDB1E5FDBA4B98B11F07A7B96 /* Pods-Starter-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Starter-iOS.release.xcconfig"; sourceTree = ""; }; + DB0E3E499BD91DBAFCF5B4578FB26DC5 /* dataprocessor.html */ = {isa = PBXFileReference; includeInIndex = 1; name = dataprocessor.html; path = Docs/build/html/dataprocessor.html; sourceTree = ""; }; + DB26455D1DB0B9B017F42AF23632D353 /* responseheader.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = responseheader.cpp; sourceTree = ""; }; + DB4DC702436396F6F063E8B2AB9520BA /* conf.py */ = {isa = PBXFileReference; includeInIndex = 1; name = conf.py; path = Docs/source/conf.py; sourceTree = ""; }; + DBF5C8F2E797539E9CAA66EC26BC6E5E /* logging.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = logging.cpp; sourceTree = ""; }; + DC95353461390196266698C600083358 /* humidity.html */ = {isa = PBXFileReference; includeInIndex = 1; name = humidity.html; path = Docs/build/html/humidity.html; sourceTree = ""; }; + DC95E47A76D8C1A2E83EC0B0254B906C /* utils.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = utils.cpp; sourceTree = ""; }; DCB8B42B9F579C8B8D21BED2494BF344 /* Pods-Starter-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Starter-macOS.debug.xcconfig"; sourceTree = ""; }; - DDDB1D09DE16869321A36FAB2E0F55A7 /* environment.pickle */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = environment.pickle; path = Docs/build/doctrees/environment.pickle; sourceTree = ""; }; - E15226D2875195FD7891B7C746DDBE30 /* searchindex.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = searchindex.js; path = Docs/build/html/searchindex.js; sourceTree = ""; }; - E28F573CF8577F8D04EDCBE92A5FC323 /* MetaWear-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "MetaWear-iOS.debug.xcconfig"; sourceTree = ""; }; - E31E2FCAEFF5B1DAD6C217854D8B9C59 /* fontawesome-webfont.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "fontawesome-webfont.woff2"; path = "Docs/build/html/_static/fonts/fontawesome-webfont.woff2"; sourceTree = ""; }; + DE6F645E53910CAB7E785CF5768B2C7C /* metawearboard.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearboard.rst.txt; path = Docs/build/html/_sources/metawearboard.rst.txt; sourceTree = ""; }; + DE7619118602E09847E0B5A38BDEC961 /* cppbridge.html */ = {isa = PBXFileReference; includeInIndex = 1; name = cppbridge.html; path = Docs/build/html/cppbridge.html; sourceTree = ""; }; + DF2D39BA429BAD2A721C2CCA6CCB780F /* peripherals.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = peripherals.rst.txt; path = Docs/build/html/_sources/peripherals.rst.txt; sourceTree = ""; }; + E149DBCDF48543804B2104AEAB54637E /* MetaWear+LED.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+LED.swift"; path = "MetaWear/AsyncUtils/MetaWear+LED.swift"; sourceTree = ""; }; + E15F91A4061CB972A32132E8E493ABCA /* ibeacon.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = ibeacon.doctree; path = Docs/build/doctrees/ibeacon.doctree; sourceTree = ""; }; + E18A066BD9FCE33032F9520C8FD43713 /* sensor_fusion.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = sensor_fusion.rst; path = Docs/source/sensor_fusion.rst; sourceTree = ""; }; + E1BC4C1ADF2BB1668E406F5BF7600F77 /* logger.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = logger.rst.txt; path = Docs/build/html/_sources/logger.rst.txt; sourceTree = ""; }; + E201522B79ACA9E5B191D8CA137B0533 /* haptic.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = haptic.cpp; sourceTree = ""; }; + E273C7159987FEB6731F1C09BE95BEBF /* datasignal.html */ = {isa = PBXFileReference; includeInIndex = 1; name = datasignal.html; path = Docs/build/html/datasignal.html; sourceTree = ""; }; + E2846EFD2B0A1FA9675CF9A036F1E2EE /* searchindex.js */ = {isa = PBXFileReference; includeInIndex = 1; name = searchindex.js; path = Docs/build/html/searchindex.js; sourceTree = ""; }; + E2E1502A728116AF07158BD0D4BEB85C /* settings.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.rst.txt; path = Docs/build/html/_sources/settings.rst.txt; sourceTree = ""; }; + E35692E77DA1D9DEE753AD3CD06C59C8 /* metawearboard.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = metawearboard.cpp; sourceTree = ""; }; + E3927302C716F50BA92C88C8AC378BD9 /* led.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = led.rst; path = Docs/source/led.rst; sourceTree = ""; }; + E3BE72C2F05F975EB0586FF2EBE41C3F /* anonymous_datasignal.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = anonymous_datasignal.cpp; sourceTree = ""; }; + E513416C0B1E25C2439AB961BAA5B742 /* gpio.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = gpio.cpp; sourceTree = ""; }; E514F89FB8879DB45DE348CC46A637EC /* Bolts-Swift-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "Bolts-Swift-macOS.modulemap"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS.modulemap"; sourceTree = ""; }; - E741D524F0F7A8260E73F6096F2908B6 /* MetaWear+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+Async.swift"; path = "MetaWear/AsyncUtils/MetaWear+Async.swift"; sourceTree = ""; }; - E9AF0AFF425D0015BA54FDFB5BF52DA5 /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - EB6E78CDFB71172C1FA2C102D9A7DB98 /* logging.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = logging.cpp; sourceTree = ""; }; + E61CD130A90592403E1785F55D129BF6 /* conductance.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = conductance.cpp; sourceTree = ""; }; + E6F756312B53C1C48AAE1F46297643E8 /* gpio.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = gpio.doctree; path = Docs/build/doctrees/gpio.doctree; sourceTree = ""; }; + E74CBB42A7102674EB6B25648903057E /* sensors.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = sensors.doctree; path = Docs/build/doctrees/sensors.doctree; sourceTree = ""; }; + E9144025DABE270C8035839AAC2D6CF6 /* cbindings.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = cbindings.swift; sourceTree = ""; }; + E94F6EAC408D39E79557859D40E8565A /* Makefile */ = {isa = PBXFileReference; includeInIndex = 1; name = Makefile; path = Docs/Makefile; sourceTree = ""; }; + E9AF0AFF425D0015BA54FDFB5BF52DA5 /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = BoltsSwift.framework; path = "Bolts-Swift-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + E9F0F9BC85B1D451DE7DA97C59957ECD /* accelerometer_mma8452q.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer_mma8452q.cpp; sourceTree = ""; }; + EA0560F3124490759DBB7E2EF9B80E4D /* DeviceInformation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DeviceInformation.swift; sourceTree = ""; }; + EA49821A6A93B7D0B1ABF7A4468724DD /* advanced_features.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = advanced_features.doctree; path = Docs/build/doctrees/advanced_features.doctree; sourceTree = ""; }; + EA5CDEDC3A217752F3668741D172E801 /* MetaWear-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MetaWear-iOS-prefix.pch"; sourceTree = ""; }; + EB4834A2855D12DEF11E3933422A1571 /* magnetometer_bmm150.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = magnetometer_bmm150.cpp; sourceTree = ""; }; EC52D80BE1D471D05E23450AB5A209E7 /* MBProgressHUD-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "MBProgressHUD-iOS.debug.xcconfig"; sourceTree = ""; }; - ED53380A0A114872E470B5B57206AD93 /* cbindings.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = cbindings.swift; sourceTree = ""; }; - EEA5F7D3BA6D2A352E4C591C17B5A8A0 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MetaWear.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + EC5F868C4BDA0FE5B7DAF301563AD19D /* barometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = barometer.rst.txt; path = Docs/build/html/_sources/barometer.rst.txt; sourceTree = ""; }; + EEA5F7D3BA6D2A352E4C591C17B5A8A0 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MetaWear.framework; path = "MetaWear-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + EF2AF82017A5DF639AB80DA9167CB62D /* proximity_tsl2671.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = proximity_tsl2671.cpp; sourceTree = ""; }; + EF3984D14110A5F2723454D510C554B8 /* memory.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = memory.cpp; sourceTree = ""; }; EFE2600CFBB6EC57773E50AB9E06EABA /* Bolts-Swift-macOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-macOS-prefix.pch"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS-prefix.pch"; sourceTree = ""; }; - F04FAE2FEFA0EC2728DAB52C7CFEFC81 /* gyro_bmi160.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = gyro_bmi160.cpp; sourceTree = ""; }; - F0DF55584B52F6E90C691E5567000BFD /* index.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = index.rst.txt; path = Docs/build/html/_sources/index.rst.txt; sourceTree = ""; }; F13FC7E2EA6900A8A2228E057CB9D94D /* Pods-Starter-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Starter-iOS-dummy.m"; sourceTree = ""; }; + F173AA78D167A9B51AE7052CBDB91E18 /* Roboto-Slab-Regular.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "Roboto-Slab-Regular.woff2"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Regular.woff2"; sourceTree = ""; }; F1CFA36BBDAADC3C7B435BF2E42672A3 /* Bolts-Swift-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-tvOS-umbrella.h"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS-umbrella.h"; sourceTree = ""; }; - F219823F9433D762104854D5DFC4BDEF /* lato-bolditalic.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bolditalic.woff2"; path = "Docs/build/html/_static/fonts/Lato/lato-bolditalic.woff2"; sourceTree = ""; }; - F22D020510F28A56AD99E52B08B6A51A /* roboto-slab-v7-regular.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "roboto-slab-v7-regular.woff"; path = "Docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff"; sourceTree = ""; }; F26225951E05BC38821150CAEE20F830 /* MBProgressHUD-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MBProgressHUD-tvOS-prefix.pch"; path = "../MBProgressHUD-tvOS/MBProgressHUD-tvOS-prefix.pch"; sourceTree = ""; }; - F524FAB1855A4B1B65AD8A2944583B43 /* RobotoSlab-Bold.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "RobotoSlab-Bold.ttf"; path = "Docs/build/html/_static/fonts/RobotoSlab-Bold.ttf"; sourceTree = ""; }; - F54BB078C024D1BFD2A5BFCE2BE2ABE4 /* roboto-slab-v7-regular.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "roboto-slab-v7-regular.ttf"; path = "Docs/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf"; sourceTree = ""; }; - F64DCC3E4FF0E3AC424CE8AEE5EFA963 /* ibeacon.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ibeacon.cpp; sourceTree = ""; }; - F78D5168F30329C86C8CC4283B5EF592 /* index.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = index.html; path = Docs/build/html/index.html; sourceTree = ""; }; - F7B211D047FCFBF46341001154127BF4 /* ScannerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScannerModel.swift; path = MetaWear/UI/ScannerModel.swift; sourceTree = ""; }; + F5B1FDC1A446A4999A70F9AD891F6203 /* ibeacon.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ibeacon.cpp; sourceTree = ""; }; + F8D4FEE512423AEBA199921A57ADEF46 /* serialpassthrough.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = serialpassthrough.cpp; sourceTree = ""; }; + F8F58A4DB3EC7AB82C245D76694985D7 /* switch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = switch.cpp; sourceTree = ""; }; FA470C9BD2DC321FBE20260D27FCE4B7 /* Pods-Starter-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Starter-macOS-Info.plist"; sourceTree = ""; }; - FB4A9D9A05C7C2383B51ECCC466DCC0E /* lato-italic.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-italic.woff2"; path = "Docs/build/html/_static/fonts/Lato/lato-italic.woff2"; sourceTree = ""; }; + FA9FFCC8A0072DE78C9552EFA8B66D7B /* core_modules.html */ = {isa = PBXFileReference; includeInIndex = 1; name = core_modules.html; path = Docs/build/html/core_modules.html; sourceTree = ""; }; FB5787F377410A3566126C52B31A1EE0 /* Task+WhenAll.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Task+WhenAll.swift"; path = "Sources/BoltsSwift/Task+WhenAll.swift"; sourceTree = ""; }; + FB8967EA3F3880F9DD7DF74BAA4B0A02 /* basic.css */ = {isa = PBXFileReference; includeInIndex = 1; name = basic.css; path = Docs/build/html/_static/basic.css; sourceTree = ""; }; FBB3BF4C348A1B541964B842801B6189 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Cocoa.framework; sourceTree = DEVELOPER_DIR; }; + FBBE91A0ABBF403E4796CE7BDE7A03D0 /* ibeacon.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = ibeacon.rst.txt; path = Docs/build/html/_sources/ibeacon.rst.txt; sourceTree = ""; }; + FBC3AE734CABE764F2BA471459498219 /* event.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = event.cpp; sourceTree = ""; }; FBDCEB5E511D9AC8F207373B91E5471A /* Bolts-Swift-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-tvOS.release.xcconfig"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS.release.xcconfig"; sourceTree = ""; }; - FC408262F06AC644ABCAE4D49B817E51 /* threadpool.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = threadpool.cpp; sourceTree = ""; }; - FEF3979C8792DB7B38C48C4A810C57F2 /* search.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = search.html; path = Docs/build/html/search.html; sourceTree = ""; }; + FC3749EBF6F251F3622B3236F1CF6AA9 /* html5shiv-printshiv.min.js */ = {isa = PBXFileReference; includeInIndex = 1; name = "html5shiv-printshiv.min.js"; path = "Docs/build/html/_static/js/html5shiv-printshiv.min.js"; sourceTree = ""; }; + FD9A2A311869B111F0574EA193B10550 /* Bridging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Bridging.swift; sourceTree = ""; }; + FDBA6E41B037B966097B2A579BCEADDD /* ibeacon.html */ = {isa = PBXFileReference; includeInIndex = 1; name = ibeacon.html; path = Docs/build/html/ibeacon.html; sourceTree = ""; }; + FE6B25EA7F6BAC20B469AFA0E9107547 /* LogDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = LogDelegate.swift; sourceTree = ""; }; + FE83AE2EE714C133C7CD48CF6C7565C8 /* timer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.rst.txt; path = Docs/build/html/_sources/timer.rst.txt; sourceTree = ""; }; FEFC2E63C96F3AA31A529BF1F51E6C74 /* Executor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Executor.swift; path = Sources/BoltsSwift/Executor.swift; sourceTree = ""; }; FFAEA4E7DEC191F4EB7AFFE15AD8C887 /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + FFB774922242F93A433397808756C1EE /* moduleinfo.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = moduleinfo.cpp; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -608,13 +720,13 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 205F35F4FC2C2FED7A7E8FAF000E1C71 /* Frameworks */ = { + 113A8264626AF5A14ACD0B79B12FEEAE /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 87FA84139939C0F02D908392C5ADE8EE /* BoltsSwift.framework in Frameworks */, - CE662C3F25298E40E6BED723AD1EDC0F /* CoreBluetooth.framework in Frameworks */, - CF54785ACA89EF4526CDC92300F8519A /* Foundation.framework in Frameworks */, + 20669C43F983528EFB1C457F3D2A322B /* BoltsSwift.framework in Frameworks */, + B2F56D4605F8876AA6762A10C77BC484 /* CoreBluetooth.framework in Frameworks */, + D3041EC87A6A4A8E12EF5EEA9874FDEE /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -634,21 +746,21 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 3307C818888C400F656B37EFB4B0503E /* Frameworks */ = { + 2F6182123C3B77769AC2271EB3BB8499 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - EF151BD9E0597C91523D5427BFFADDDA /* Cocoa.framework in Frameworks */, + 3B9C8B3B7CE4FC381B73B4D49DF09E14 /* BoltsSwift.framework in Frameworks */, + C05E69FEF419B1B2ACC8C10ABEA3D9B1 /* Cocoa.framework in Frameworks */, + E66C17787D4D3865650EA18C44524756 /* CoreBluetooth.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 37B874F47741E887F1B3BC874E458F45 /* Frameworks */ = { + 3307C818888C400F656B37EFB4B0503E /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 6B72C8A68368F1D36F1BEE2451748DB2 /* BoltsSwift.framework in Frameworks */, - F120AD5DB1FB2CCBBD3E0650262F2C62 /* CoreBluetooth.framework in Frameworks */, - 047AC10563CA1F9EA9A438A868BA5E3D /* Foundation.framework in Frameworks */, + EF151BD9E0597C91523D5427BFFADDDA /* Cocoa.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -680,21 +792,21 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - AB9A58DA30BF96358C278E58E7E1B087 /* Frameworks */ = { + E30DADC2B3AA707EF1460C76EBD08BB3 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - CA30DBC2FB8EF95126A8B390AFA8FCCF /* BoltsSwift.framework in Frameworks */, - 06020BD42B48485B4E23BC936E124039 /* Cocoa.framework in Frameworks */, - 3591F2E559A996A99D1A48F21A3E36A4 /* CoreBluetooth.framework in Frameworks */, + 66506341EC41A72C818EB1B795046A62 /* Cocoa.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - E30DADC2B3AA707EF1460C76EBD08BB3 /* Frameworks */ = { + EB7B29D723579EA9B9D6B92E87221491 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 66506341EC41A72C818EB1B795046A62 /* Cocoa.framework in Frameworks */, + 2FF37A9085F3AE8B4F5D818D1B437F3B /* BoltsSwift.framework in Frameworks */, + F39D6049A4B18D62BE71CDB3BA622371 /* CoreBluetooth.framework in Frameworks */, + 57BCC7D7C52D44A32C2FE28DDC51FBE4 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -704,42 +816,29 @@ 00325C3638EC0AC9C3AAB5935FC0690F /* Development Pods */ = { isa = PBXGroup; children = ( - 439178C89E82DB64B388073C5A5839E9 /* MetaWear */, + FEDE092C128AC1AD8A2B7BAC307610BA /* MetaWear */, ); name = "Development Pods"; sourceTree = ""; }; - 05AD36514A3D45BC7A1D4082D2BBED12 /* cpp */ = { + 062DC5BBEEE85953BCC481E4A9613B2B /* core */ = { isa = PBXGroup; children = ( - 84E5BF7240129CED344F9415DA07F9F7 /* datainterpreter.cpp */, - 80137C1F4D67156FD92C9727976687BC /* metawearboard.cpp */, + 12806095227AF71B39068D19F0B6610F /* cpp */, ); - path = cpp; + name = core; + path = core; sourceTree = ""; }; - 05F3A301C0232CA8638FEB6234B5AFB8 /* cpp */ = { + 0F1619DEEDAD2A9E9F06CE99C6B4A33D /* AsyncUtils */ = { isa = PBXGroup; children = ( - 6377C5E70A1C4BA32865B1D99A214C32 /* accelerometer.cpp */, - 21E19269DEF954C4E94A038E57D001CF /* accelerometer_bosch.cpp */, - 907627F49775562029F574A13C5B8B33 /* accelerometer_mma8452q.cpp */, - 95AAE18A0142541C9FBA8A918F24504D /* ambientlight_ltr329.cpp */, - CBB09CC6652C4BFD15FBEAC24D07AA9D /* barometer_bosch.cpp */, - 34C4ABD1292B4164296A397B4EB10664 /* colordetector_tcs34725.cpp */, - 7344DC86ADC723702CC76DF0D5AE0312 /* conductance.cpp */, - 63202BF8662D83220A327EC8394242FD /* gpio.cpp */, - F04FAE2FEFA0EC2728DAB52C7CFEFC81 /* gyro_bmi160.cpp */, - 06F74B12B8035AD12B5B35BE94E4F7B8 /* humidity_bme280.cpp */, - 183E58681A7669557B97BCC0366023CA /* magnetometer_bmm150.cpp */, - C8045AA5021492B94729509C5E981A1C /* multichanneltemperature.cpp */, - A6754BDA792552A0657AC4594E371944 /* proximity_tsl2671.cpp */, - C537212A7BF3A3EF1A67474ECB74FC1E /* sensor_fusion.cpp */, - 0E8278B0B767AA3CC959A249ADE465C0 /* serialpassthrough.cpp */, - 468B1640EDE11E2E78934419F3E9C319 /* switch.cpp */, - A35C8D69BE0B5B80DA9A76A0C521F741 /* utils.cpp */, + 7B36557E57399D9FE06D3DD94D7C1713 /* MblMwDataSignal+Async.swift */, + 5F64EC134A32A2E2619915856F128C5C /* MblMwEvent+Async.swift */, + 48CC22EA09F1BA863F9EE8B97CAD40EF /* MetaWear+Async.swift */, + E149DBCDF48543804B2104AEAB54637E /* MetaWear+LED.swift */, ); - path = cpp; + name = AsyncUtils; sourceTree = ""; }; 0F362BF51D445BC2F0288FABC535A606 /* OS X */ = { @@ -751,22 +850,22 @@ name = "OS X"; sourceTree = ""; }; - 1071066AD7CDDEE894ECACB8A618976F /* bindings */ = { + 12806095227AF71B39068D19F0B6610F /* cpp */ = { isa = PBXGroup; children = ( - BA586D87209C7FFFACD42D90D908E6A8 /* swift */, - ); - path = bindings; - sourceTree = ""; - }; - 1210FE8F17F63806037314D4ECEB5B54 /* cpp */ = { - isa = PBXGroup; - children = ( - 7A73E478EC7934D547293BEDFB36AE2B /* async_creator.cpp */, - 51872806369046ED62159DC54D3BD266 /* memory.cpp */, - 1F25EA797F93CB223B36BE127474FCA5 /* task.cpp */, - FC408262F06AC644ABCAE4D49B817E51 /* threadpool.cpp */, - ); + E3BE72C2F05F975EB0586FF2EBE41C3F /* anonymous_datasignal.cpp */, + 5611B1879BD77C08A4F191EBA98F7DC5 /* datasignal.cpp */, + 0374A8966340D6C6F204AEDDE7195E09 /* debug.cpp */, + FBC3AE734CABE764F2BA471459498219 /* event.cpp */, + DBF5C8F2E797539E9CAA66EC26BC6E5E /* logging.cpp */, + 45940F0CF94A548FC9F3B4FA33051F8E /* macro.cpp */, + FFB774922242F93A433397808756C1EE /* moduleinfo.cpp */, + DB26455D1DB0B9B017F42AF23632D353 /* responseheader.cpp */, + 6C947102CABC6CF1B03A3CC74BFE1143 /* settings.cpp */, + 31FB69DDB532444DA82167E53E4B1683 /* timer.cpp */, + D08C199309C453DFB18384D427ACC20F /* version.cpp */, + ); + name = cpp; path = cpp; sourceTree = ""; }; @@ -804,160 +903,56 @@ path = "Target Support Files/Pods-Starter-tvOS"; sourceTree = ""; }; - 1C0EBC5B65835CE304B6EF8333B26CFC /* impl */ = { + 2816A4D2404586E9EB63D4F76E33B318 /* cpp */ = { isa = PBXGroup; children = ( - 05AD36514A3D45BC7A1D4082D2BBED12 /* cpp */, + 73596A17D39152C54F79907E905F484D /* common.cpp */, + 8DA8F605306A00A56093264E789638F9 /* CSharpGenerator.cpp */, + 08A673C854AF0D8C3D944940AF04ADF4 /* JavaScriptGenerator.cpp */, + 7E390F0DA33824EEA188BADFECC38820 /* PythonGenerator.cpp */, + 2C5A74F26A5F693ED79C88FA42343DD5 /* SwiftGenerator.cpp */, ); - path = impl; + name = cpp; + path = cpp; sourceTree = ""; }; - 21624CEB3345BF213222EF186605AF82 /* Support Files */ = { + 385126DD5C422C4D67F70EFD277EA2E5 /* Core */ = { isa = PBXGroup; children = ( - 5941617D1BB0FFB85B87B19673B3A9FF /* MetaWear-iOS.modulemap */, - 7398100F920A07F383AB555139B9AB22 /* MetaWear-iOS-dummy.m */, - CD30AB0E5D32953359CA01D90035C3D5 /* MetaWear-iOS-Info.plist */, - C948D4521A203768DFBEEA77F7504E98 /* MetaWear-iOS-prefix.pch */, - 7FE070A2C8266CD6A000200A88E2E91C /* MetaWear-iOS-umbrella.h */, - E28F573CF8577F8D04EDCBE92A5FC323 /* MetaWear-iOS.debug.xcconfig */, - 034C44FC134B1A7CFABBFDAD306A8C0C /* MetaWear-iOS.release.xcconfig */, - 14EA83E70D61266F5A9E74DF3627859C /* MetaWear-macOS.modulemap */, - 0084429AA6FD4EC9C9F59B3E5F321DF7 /* MetaWear-macOS-dummy.m */, - 2B7AD6E32415A2FD926EFE366C452E9F /* MetaWear-macOS-Info.plist */, - 81C10579E960F00538287E1C9000904D /* MetaWear-macOS-prefix.pch */, - 1DE697492D68A6BCD4D5165B1175E5C9 /* MetaWear-macOS-umbrella.h */, - 1F88C8E682E865EE51BB448027D5E4A4 /* MetaWear-macOS.debug.xcconfig */, - 8AAA17EB28F724B8C08389D19004C00F /* MetaWear-macOS.release.xcconfig */, - 2D3A42DE00BFC8DAFFE76A5F62BD7C39 /* MetaWear-tvOS.modulemap */, - 451F5DF3FBB0BDCAECFADD95E4348CCC /* MetaWear-tvOS-dummy.m */, - A4C3C5A8A18D0BB11B0688E685E5DAAD /* MetaWear-tvOS-Info.plist */, - D614F5EB1B25E2F4459ADD8E57BB7D4A /* MetaWear-tvOS-prefix.pch */, - C8F152C5AD993A29A3666BB5A2A549AA /* MetaWear-tvOS-umbrella.h */, - 5CA45250912406A1FB6553BB8186049D /* MetaWear-tvOS.debug.xcconfig */, - 7CBBB9F49E9825D5D5836D7D193F9838 /* MetaWear-tvOS.release.xcconfig */, + 8126928A000F6382C205B8EDEC18B296 /* Core */, + B0901EF6997BF5E89FC3FEE76DFF33ED /* MetaWear-SDK-Cpp */, ); - name = "Support Files"; - path = "StarterProject/Pods/Target Support Files/MetaWear-iOS"; + name = Core; sourceTree = ""; }; - 2376D3F7D59B66566E6BA36C75FABFEE /* metawear */ = { + 39DFFE6BD2C339B1C29D30886BF6BF88 /* dfu */ = { isa = PBXGroup; children = ( - 8B20E89E808F760699427B2E13E687BE /* core */, - 93280EF69C0C0FDAABA858CD21448734 /* dfu */, - 1C0EBC5B65835CE304B6EF8333B26CFC /* impl */, - AD9B2688FA064B83CEF84395D15CCF0A /* peripheral */, - 9BBF76782AABDDEE4BB6052122E5E4A1 /* platform */, - FD0D23B7015D44A1B81F7D9DBA56DE29 /* processor */, - CB83997E8321BE366219B3AB0FC373C8 /* sensor */, + C20EEF538B96A6E3B0163278F0F48942 /* cpp */, ); - path = metawear; + name = dfu; + path = dfu; sourceTree = ""; }; - 310ABE751D6699FD28D41E2B192D2102 /* cpp */ = { + 3A98B3B34A129B189B4AAA9FC324819A /* cpp */ = { isa = PBXGroup; children = ( - 5BF8451FA1D8D38FC918289C35C17E03 /* anonymous_datasignal.cpp */, - A801E26691F85C79F93EC7FB13F7932D /* datasignal.cpp */, - 3F24632E7D719A0FDF0E71C9D046A818 /* debug.cpp */, - 87F5D6D28DFB09B6A494C12C0CAF0CD3 /* event.cpp */, - EB6E78CDFB71172C1FA2C102D9A7DB98 /* logging.cpp */, - 36C32A8482A53C656EAF7C5ED2E3C5E5 /* macro.cpp */, - 221DB28F92CAE942ECB6740869A62AFF /* moduleinfo.cpp */, - 178698ACB3F7786613B760BCE2640721 /* responseheader.cpp */, - 8C6131EDD4157BA3E09B3FCD4A545D45 /* settings.cpp */, - 9F5452D656D9A83AD9DE7F1B8DB9583C /* timer.cpp */, - 238ACDC0B8F4E0C3EF7E67BEDCC2A096 /* version.cpp */, + E201522B79ACA9E5B191D8CA137B0533 /* haptic.cpp */, + F5B1FDC1A446A4999A70F9AD891F6203 /* ibeacon.cpp */, + CB218E81B6C29AF1C2468898A82CF981 /* led.cpp */, + 915C92E52AD291DB12C9D2632199C9A3 /* neopixel.cpp */, ); + name = cpp; path = cpp; sourceTree = ""; }; - 3C310EF3049658113AA8473400524418 /* Pod */ = { + 3D1ACA74C256B115D83D5DE79FF7D4B8 /* platform */ = { isa = PBXGroup; children = ( - A8651C9E0995B04497AA74250842B71E /* badge_only.css */, - 088D4E57B5EE1C47EA81093CB69DD195 /* basic.css */, - BEAF4F7BEA10179AFE8E75862E4A9F7E /* conf.py */, - C1444F3A180A37445E3F3DB35C90225D /* doctools.js */, - 43348E9491673ED8A2571182C4219090 /* documentation_options.js */, - DDDB1D09DE16869321A36FAB2E0F55A7 /* environment.pickle */, - 05C04FA7D0FD231BB1714B9A65140703 /* file.png */, - 8461F8CB4595E897E4EEE7454C94AA3E /* fontawesome-webfont.eot */, - 97DB082217720C34477192720AE9BC94 /* fontawesome-webfont.svg */, - 8CC5EAEDA04764883C4ACEEFFB433C5F /* fontawesome-webfont.ttf */, - B8B950F26C12018942B559303E886E71 /* fontawesome-webfont.woff */, - E31E2FCAEFF5B1DAD6C217854D8B9C59 /* fontawesome-webfont.woff2 */, - 0DB998D40EEF4133EED093525C5EF48F /* genindex.html */, - B3DA0335094A3695F701E31CCE974035 /* Inconsolata.ttf */, - A29485FB5B14DD75A0A512CE1D36A260 /* Inconsolata-Bold.ttf */, - 538B61A0DFF26DCD1B2DA66ACAEC0C51 /* Inconsolata-Regular.ttf */, - 277CD60A5AD09509E0A6FBA1BC5A64FA /* index.doctree */, - F78D5168F30329C86C8CC4283B5EF592 /* index.html */, - D7C46319B6CA1609F67C06FFE8F8DE3E /* index.rst */, - F0DF55584B52F6E90C691E5567000BFD /* index.rst.txt */, - A6AA6370886C88EA1F4C620C32C45271 /* jquery.js */, - 32B58EA25513C301D6BA11BB5ACEF67B /* jquery-3.2.1.js */, - 30847547D39DFB7AC1E0E81386913663 /* language_data.js */, - D5D4472071EBD9F74522233799DF9046 /* lato-bold.eot */, - 5010DFA0D12D9062A83EEC44386F10A4 /* Lato-Bold.ttf */, - 9BE5642F17CB3558C8D6A889EEB7D5FE /* lato-bold.ttf */, - 0738A0239BA951BEF64D032AF3726472 /* lato-bold.woff */, - 70E4236F6C323B77B450D9AD553DC09F /* lato-bold.woff2 */, - 923D73C6D752D7C1DD2FEA3C887BA3CD /* lato-bolditalic.eot */, - 2CB5163743A88C26981C4B46EFD96189 /* lato-bolditalic.ttf */, - 53EDB3BEB4481D8D93CFB8ECE2EC4C40 /* lato-bolditalic.woff */, - F219823F9433D762104854D5DFC4BDEF /* lato-bolditalic.woff2 */, - 7B30DD82C5CA5274C101C3A695E81EA1 /* lato-italic.eot */, - CB07009397AC653E74A695FD958406F6 /* lato-italic.ttf */, - BEE552545635AA42EE3650CC185DD61E /* lato-italic.woff */, - FB4A9D9A05C7C2383B51ECCC466DCC0E /* lato-italic.woff2 */, - C3A5946EB961D212BCCDDA3657BEA73F /* lato-regular.eot */, - AD078928237AFD98DB129843440919BE /* Lato-Regular.ttf */, - 81FDA441EA1B82453B9C896D5EC2D6B6 /* lato-regular.ttf */, - 5496D60517921562560C1261534350DA /* lato-regular.woff */, - AE23778E4AF192210F83826BCF837614 /* lato-regular.woff2 */, - 88E57DDDFEAD75A1F4BA3BF48B56B264 /* layout.html */, - 453A60751C73C8BF0157274BC9FE8709 /* LICENSE.md */, - 3CC8138842CA15B64D20A8C3CC0B6C96 /* Makefile */, - 3B6FF2C22C9955EB632E8C840A87C76D /* MetaWear.podspec */, - C39094C0DAE4A065CB6AC687E3053DCB /* metawearboard.doctree */, - 9F5130E5720042AF8F62E03379043D60 /* metawearboard.html */, - A33F976B5D8E3C769A909BEC295DCF39 /* metawearboard.rst */, - B278973B68EE06A7F3648419501C9E17 /* metawearboard.rst.txt */, - 274DA7D4FD5C2F6FF08D92D88D7235E3 /* metawearscanner.doctree */, - 6B28505F19EF432929F65CCA67A72C51 /* metawearscanner.html */, - C3706EEB45ABA7AFA19B39587763A7E7 /* metawearscanner.rst */, - 984518ECFBF2BC4933377A8AD53D0DA9 /* metawearscanner.rst.txt */, - 9634C0D1EFF65E0BA5D5C28A0A6C87B0 /* minus.png */, - CF3CA0971FD34CEBF028B7073A87F2E3 /* modernizr.min.js */, - 7D363E5E9BD23515315A2DEDF445DD45 /* objects.inv */, - B216065BE1DB7CCDD14A7375BA70CB7B /* plus.png */, - 41D49BD1D0F0692910872C04DB8FC6FB /* project_setup.doctree */, - 914FF782BD581A412B078D2D3D0874AA /* project_setup.html */, - A110F7ABFBAB454DB15873041E152A9B /* project_setup.rst */, - 04379AEFC1C04D42EB377A9E629C3502 /* project_setup.rst.txt */, - 8F40E488DFF46AA4B7743CD7E0936AA5 /* pygments.css */, - 1DD40D040E4D875C9D2191308624B4E5 /* README.md */, - 2139C66156F94456999CEABA91006E79 /* roboto-slab-v7-bold.eot */, - 772DF688EECE947730C14D946EC97632 /* roboto-slab-v7-bold.ttf */, - A2639A9FACAE141BF9E49DE49E8D5F32 /* roboto-slab-v7-bold.woff */, - 4305FDE00268B7C4BBE29EF0BECF947D /* roboto-slab-v7-bold.woff2 */, - 19AD0C1EF63DBB6ACB64C9733C99A1DB /* roboto-slab-v7-regular.eot */, - F54BB078C024D1BFD2A5BFCE2BE2ABE4 /* roboto-slab-v7-regular.ttf */, - F22D020510F28A56AD99E52B08B6A51A /* roboto-slab-v7-regular.woff */, - AE0085E2928F8A5CEDA83612EECE2CFB /* roboto-slab-v7-regular.woff2 */, - F524FAB1855A4B1B65AD8A2944583B43 /* RobotoSlab-Bold.ttf */, - 070745E3CECAAD2810ABE7886F1A0B79 /* RobotoSlab-Regular.ttf */, - FEF3979C8792DB7B38C48C4A810C57F2 /* search.html */, - E15226D2875195FD7891B7C746DDBE30 /* searchindex.js */, - D3DD55B6AB9CBD369AB8C621317E9EF8 /* searchtools.js */, - 9DAF1457DF4055EC63C399B46AC5E086 /* theme.css */, - D8A873073934665FD939FF8B3B3E509B /* theme.js */, - 4D1AB17384F27EAE17CCAB24969B8B87 /* underscore.js */, - 5E514CF37AF1DDF5D6471DC759E9D460 /* underscore-1.3.1.js */, + AC5495154E41BE73DC162DD82576FF49 /* cpp */, ); - name = Pod; + name = platform; + path = platform; sourceTree = ""; }; 42D9C3E5F731D0A8595621F41783D11F /* Products */ = { @@ -978,17 +973,22 @@ name = Products; sourceTree = ""; }; - 439178C89E82DB64B388073C5A5839E9 /* MetaWear */ = { + 4E819FBCF3147A5F7A56C09590768C3A /* swift */ = { isa = PBXGroup; children = ( - D92A21AA4D141A87300167A94E03F2C0 /* AsyncUtils */, - F3AA63E0F283702285805E3B6120E823 /* Core */, - 3C310EF3049658113AA8473400524418 /* Pod */, - 21624CEB3345BF213222EF186605AF82 /* Support Files */, - A71952CEE19CFAEE0754AE734AF4AD0D /* UI */, + E9144025DABE270C8035839AAC2D6CF6 /* cbindings.swift */, ); - name = MetaWear; - path = ../..; + name = swift; + path = swift; + sourceTree = ""; + }; + 51AB356C7A8382795F7D3CD1A7BDF946 /* sensor */ = { + isa = PBXGroup; + children = ( + EFEA3B29E8436DAABC0FB922CEF3BEF8 /* cpp */, + ); + name = sensor; + path = sensor; sourceTree = ""; }; 5518D67F3DC130180B1984D2F8894D23 /* Pods */ = { @@ -1010,6 +1010,240 @@ name = "Targets Support Files"; sourceTree = ""; }; + 5BE566B475D5593CC5726D40A0E33C44 /* Pod */ = { + isa = PBXGroup; + children = ( + D84A7E69F949CD5E675587450FD3A0F1 /* accelerometer.doctree */, + 4DA3D72E24D4F40D57A5B5D4E41F79AA /* accelerometer.html */, + D30FA847D61BD29F80E44A0963799ECD /* accelerometer.rst */, + 9065F9D0C5197CA6A79E2C9E79E1533F /* accelerometer.rst.txt */, + EA49821A6A93B7D0B1ABF7A4468724DD /* advanced_features.doctree */, + 781F5D1DB4CF64528FC57FCAC3C29F5F /* advanced_features.html */, + B3BDF2105B28EAC636817114B8E6FF6B /* advanced_features.rst */, + AADD448787441C1267FFCD7035682F41 /* advanced_features.rst.txt */, + 7217CA910247FBFC09ECDAAED1FAA751 /* ambientlightsensor.doctree */, + 70E052A0D22CF553F00BF9B60AAF314E /* ambientlightsensor.html */, + AA168D11874285055C0DB759157C8366 /* ambientlightsensor.rst */, + 888E301C84C29361A6D17FA7BD6FC5C6 /* ambientlightsensor.rst.txt */, + B2B67FDDC92ADF288F862CF09115C908 /* badge_only.css */, + 2D5FA4900902AC594DCC854A646D7EF6 /* badge_only.js */, + 36368621EF3D8B13430636782298C244 /* barometer.doctree */, + 76EC20733025534D43C97EF33183EC39 /* barometer.html */, + CF3002C3345141957EE7C9AA14729609 /* barometer.rst */, + EC5F868C4BDA0FE5B7DAF301563AD19D /* barometer.rst.txt */, + FB8967EA3F3880F9DD7DF74BAA4B0A02 /* basic.css */, + DB4DC702436396F6F063E8B2AB9520BA /* conf.py */, + 0ABF10E8AF299DE8EB83811C69E2C4BD /* core_modules.doctree */, + FA9FFCC8A0072DE78C9552EFA8B66D7B /* core_modules.html */, + 763577F12BE55BB7C2C3CB169B80E912 /* core_modules.rst */, + 8C4E60FA5AA15460A6D9A8E5C5774258 /* core_modules.rst.txt */, + 058732315A312FAFF8765B72FA8AB8F6 /* cppbridge.doctree */, + DE7619118602E09847E0B5A38BDEC961 /* cppbridge.html */, + 4D41D6112C846BF30FEBCEF2D6DEC5D0 /* cppbridge.rst */, + 226E1042AF5C55F92816A6ED6979C5BE /* cppbridge.rst.txt */, + 17DFB82FD21C5682380223E33925C025 /* dataprocessor.doctree */, + DB0E3E499BD91DBAFCF5B4578FB26DC5 /* dataprocessor.html */, + 73F90626148B6926CD0A3CF52A7E3287 /* dataprocessor.rst */, + 42BDC5161CCA367FC57D38FF2C8653AD /* dataprocessor.rst.txt */, + 53D8A89EFDE8AE5BD709693ED9D3A8F8 /* datasignal.doctree */, + E273C7159987FEB6731F1C09BE95BEBF /* datasignal.html */, + 543016C1C8E6DA45DA56360FC9EF643D /* datasignal.rst */, + B9AB5E8B8A30D62D31EB5C8E2B2FD175 /* datasignal.rst.txt */, + 71DA3BD0D4B12F92A08EEC60407E8CB3 /* doctools.js */, + C58E3BE77CBA2E837613FA138CE24B92 /* documentation_options.js */, + 6D00ED3BC39B109FA0D6F23746313432 /* environment.pickle */, + 85C8BA20B3E59C69821DD782F166EEF4 /* event.doctree */, + 28D225FD9A0F5439A32B865D3F4773EE /* event.html */, + 819E76F26F0DBB099EDE7AEC9D2F5575 /* event.rst */, + AE97A88FA72CBBE2AC25A4DE5C982520 /* event.rst.txt */, + AC708C124E7BBC3699D1F782FD67686F /* file.png */, + B92084A02EDB6F7A265F8E39A3239F45 /* fontawesome-webfont.eot */, + 57FA21D120E6676A69747F422EE314D2 /* fontawesome-webfont.svg */, + 41AA032C3D741AA6521931B8ACE74B8F /* fontawesome-webfont.ttf */, + 05DD842BF1C13349319CEFA2420D3DE5 /* fontawesome-webfont.woff */, + 2351E2FF2ADEBE202CDBABF6391EEBF6 /* fontawesome-webfont.woff2 */, + 75AEFB622039DC267B8083016484BF84 /* genindex.html */, + E6F756312B53C1C48AAE1F46297643E8 /* gpio.doctree */, + 70DC84F6802825A7ACCE1D134E26579C /* gpio.html */, + BD1681E2CDFE24B8786F89BBE4EF85FC /* gpio.rst */, + AD64B0694BC2C8ED8B75A9D7BE0DA7C8 /* gpio.rst.txt */, + 4D569CD8885FE50A3EA812AA958BAD65 /* gyro.doctree */, + A664C95B75FCF91CE08A4EAE7BD19507 /* gyro.html */, + 67452940E4BC60A39601C94EAD5DFB77 /* gyro.rst */, + AE34D13AE4272C80F5DE844E6689AB2A /* gyro.rst.txt */, + 8AECED3EAEA299BAF975F89EDDC030FE /* haptic.doctree */, + 0C02738DBE1AFED83CD5B42C63960A03 /* haptic.html */, + 6A24C82034C3F33943F32366825A7F53 /* haptic.rst */, + 3C1F2E210D781709B5AB3B3086469390 /* haptic.rst.txt */, + FC3749EBF6F251F3622B3236F1CF6AA9 /* html5shiv-printshiv.min.js */, + BED3FEA98526E49E140844EB3D56089E /* html5shiv.min.js */, + 6A7B40F3255D097630B2CFB3278B7DAC /* humidity.doctree */, + DC95353461390196266698C600083358 /* humidity.html */, + 3D6C72D191131D9677C372C85DC2E59D /* humidity.rst */, + 75F6B9E777BF67164B289B4A899616A5 /* humidity.rst.txt */, + 3BEBA4B59B21A99BF2B702A6F263699C /* i2c.doctree */, + 6DF75879D9379473EA340CDEF27C04E3 /* i2c.html */, + 0BB52EA77C6EDC0F1C3AD4616510ECAB /* i2c.rst */, + 8FE18352D7951479EFF9166009D5FE28 /* i2c.rst.txt */, + E15F91A4061CB972A32132E8E493ABCA /* ibeacon.doctree */, + FDBA6E41B037B966097B2A579BCEADDD /* ibeacon.html */, + 4FFF43E18F0A49B7DFB5210E6A3685ED /* ibeacon.rst */, + FBBE91A0ABBF403E4796CE7BDE7A03D0 /* ibeacon.rst.txt */, + 8E73CBCA5892532AB47FAEFA6C2AA186 /* index.doctree */, + AF3B70568FD7AA14EB110315B2672ECC /* index.html */, + A968F6900C4B3410E2C08D7925FA946D /* index.rst */, + 0B065D025FB92FC7BD543899B8E5FC59 /* index.rst.txt */, + 9328A45B394AA6F5C68B56D82E673DFC /* jquery.js */, + C765F6E825F979DBF983E7EFE6F4394C /* jquery-3.5.1.js */, + CF985630325C9CC34D98CCA8536D7611 /* language_data.js */, + 4CCE76410F4E5BE373B1AE1A2E5E1976 /* lato-bold.woff */, + 971248F309E34FAF0266C0AC36238ADE /* lato-bold.woff2 */, + 1350D30F6595F9C36056A886C9810565 /* lato-bold-italic.woff */, + 4713CAD05BCA76054CA8A9548D949076 /* lato-bold-italic.woff2 */, + 35F0217BA18AB17DA09F86C6F3209CAA /* lato-normal.woff */, + 0A72C8099B3F5C20BDA1A182DFF81082 /* lato-normal.woff2 */, + C455BD80D0B724316FAA636CDC8562D4 /* lato-normal-italic.woff */, + 3C9DB9E3A7B0CEF28696B912A8CA0196 /* lato-normal-italic.woff2 */, + C52F6AB1A05108D70669568167D18805 /* layout.html */, + 0D7A15C510ABBE1A396BB616131D9806 /* led.doctree */, + 99C6F40D52D0737098504CF7565DED44 /* led.html */, + E3927302C716F50BA92C88C8AC378BD9 /* led.rst */, + C625A7F7E5341AD19981D11484733176 /* led.rst.txt */, + A9DA7456B9A446DE705CA0792DD1A5D8 /* LICENSE.md */, + 7830D4E509A6301BB21BBB855A5BE241 /* logger.doctree */, + 6F90FE959C5F8630ED647A98837D766A /* logger.html */, + 0AEC34E824AF9D524ACDF06F2B7ACFB8 /* logger.rst */, + E1BC4C1ADF2BB1668E406F5BF7600F77 /* logger.rst.txt */, + 45B4A31A9AB51C8C6F9B4EBD0C8EF2D0 /* logging.doctree */, + ACE5F2ED7D50242EFF75090D99C76927 /* logging.html */, + 430010C2452376810C487F4E46248571 /* logging.rst */, + 4EFCC6D296830CD71AC81F8089C40D5B /* logging.rst.txt */, + A48523ED159104EE7638E6C6E4F14B0A /* macro.doctree */, + 3C42D2BCE4974A872635E78612BA854A /* macro.html */, + B3BFD8F7FDEABE86A0B82DCEBD8BAC49 /* macro.rst */, + 70714BE6042AB4FD6FE5A0ACBBA5E405 /* macro.rst.txt */, + 03838BEF07C051D1F8F5375360BBBA69 /* magnetometer.doctree */, + 4E75D52F71560E96F165E9D21F6410DF /* magnetometer.html */, + 0D903B36E6CF67AE30923660C0519F60 /* magnetometer.rst */, + 69CF4410E2179DACEB620FFCBBA32109 /* magnetometer.rst.txt */, + E94F6EAC408D39E79557859D40E8565A /* Makefile */, + 01488C26AFC0D2544C9ADE4CF38E8855 /* MetaWear.podspec */, + 93A104537BE055AF14D78DE0DD05B00B /* metawearboard.doctree */, + B09995BBCCF22483CEC38EB78C7992A4 /* metawearboard.html */, + 7DB0BD827BAFBB4A29321AAB7C2D9209 /* metawearboard.rst */, + DE6F645E53910CAB7E785CF5768B2C7C /* metawearboard.rst.txt */, + C21967F5C33E749B602F315E15E8E299 /* metawearscanner.doctree */, + AC16AF9C03890DEA2A12F04BAA829EFF /* metawearscanner.html */, + 82049F9A58281394DE855DF0C1E6C363 /* metawearscanner.rst */, + 88F3F050AC9DCDD47CA87E6C64A31031 /* metawearscanner.rst.txt */, + CCD8661E715FAC2CD26666708187A118 /* minus.png */, + 08185502D871F2BD8FABF5075EE174A1 /* objects.inv */, + 129D1E286656EEAEFF8B6A555D5BD147 /* peripherals.doctree */, + B0833D5E766F8A66B34C77E0646A98A9 /* peripherals.html */, + 97E098307FCCCF6B097AC4B577FF04EF /* peripherals.rst */, + DF2D39BA429BAD2A721C2CCA6CCB780F /* peripherals.rst.txt */, + B342E0A9CA2E7D446D273E80F6A39634 /* plus.png */, + 15EBEBB4C3654969622C3D50CE1A580D /* project.doctree */, + B705D38C8AF52642C58DE64E291AD532 /* project.html */, + 10B61FC3444C41C97D322F6E68AFB029 /* project.rst */, + 5596B2A2DD49BB45776DF9AF6BB3D1F0 /* project.rst.txt */, + 1D158D87A509E4F419EE21CEA8D25A57 /* pygments.css */, + BF3FE49FBC55DBBEE9D689295441F9AF /* README.md */, + 9925F3872F89CD8A31D438559D9A38D7 /* Roboto-Slab-Bold.woff */, + 24A0CAE5AB07F87179244251710D3182 /* Roboto-Slab-Bold.woff2 */, + 4EC49DB5A15AE7DE2C9FF5A839EFB2F5 /* Roboto-Slab-Regular.woff */, + F173AA78D167A9B51AE7052CBDB91E18 /* Roboto-Slab-Regular.woff2 */, + 150DF75EB461C9BF5B66F0BC81FFDE92 /* search.html */, + E2846EFD2B0A1FA9675CF9A036F1E2EE /* searchindex.js */, + 0412B5403776349A6C516A885FA009E7 /* searchtools.js */, + AF455F06CF0459F70AAFD514CE9B8C90 /* sensor_fusion.doctree */, + 4542239B657F3586AAFF5F2124CA29D7 /* sensor_fusion.html */, + E18A066BD9FCE33032F9520C8FD43713 /* sensor_fusion.rst */, + 780E39B0E7CC446384C25BBA74A91ECE /* sensor_fusion.rst.txt */, + E74CBB42A7102674EB6B25648903057E /* sensors.doctree */, + 0C35F45A266CA9EE072F62A986F232A7 /* sensors.html */, + 08E88EDE1D59330A49B314797739B243 /* sensors.rst */, + 8D93A451DA20E000F47E9DB2C2AE8A77 /* sensors.rst.txt */, + 1EB4E4F126BF8DA37AFA5067EA1F2872 /* settings.doctree */, + 1DCAD1776D7552957265A077AA57B68D /* settings.html */, + 76420B6D059B622049A79A9CADAB636C /* settings.rst */, + E2E1502A728116AF07158BD0D4BEB85C /* settings.rst.txt */, + 057454DD2370EC453F053CA27F37A766 /* spi.doctree */, + AE145F7E7626B34845FAA49CBCC1A2F5 /* spi.html */, + 8C4779E9F32CBC976D46FCA71BC384D0 /* spi.rst */, + 212C9414B68A923BFE685FF28FF9E6F8 /* spi.rst.txt */, + B07EBDA6087E77B7FBF0B5EE7F835A56 /* temperature.doctree */, + 70D1B35F7260C2B6850329D33F431888 /* temperature.html */, + A3BEB3D6E1A86B5C85D11DA03F476671 /* temperature.rst */, + 8DFAF9FFD5851465C20BA3DB650A5A0F /* temperature.rst.txt */, + D0387C870B9F243BE20EF29AFCB3B0A8 /* theme.css */, + 3FB9A21FA4A3EDBB86D873FA6B9489F7 /* theme.js */, + 61D04396491500A173D0FFBAB780D31D /* timer.doctree */, + 8082259281DFB8C049D3E08D23252D81 /* timer.html */, + A4016FFAEDA0DA9EDA859825795F4AC9 /* timer.rst */, + FE83AE2EE714C133C7CD48CF6C7565C8 /* timer.rst.txt */, + D2039622104039FDF928B9B96838DB28 /* underscore.js */, + 3298C3F29F145805CA7D677F0409ABAF /* underscore-1.3.1.js */, + 83E1398E2BABE33EFA94E9368A71684C /* upload.sh */, + ); + name = Pod; + sourceTree = ""; + }; + 6083A54C85120CF5757CC158AB2BE821 /* Support Files */ = { + isa = PBXGroup; + children = ( + 3DF1623D445CE059A8EF075D79FC99F5 /* MetaWear-iOS.modulemap */, + 666264D4C3954BEDBA107D17B1224431 /* MetaWear-iOS-dummy.m */, + 5646898F1C8EC90044A04228EA7348C2 /* MetaWear-iOS-Info.plist */, + EA5CDEDC3A217752F3668741D172E801 /* MetaWear-iOS-prefix.pch */, + 7BF15712AABD985A36C7041D143B0F7B /* MetaWear-iOS-umbrella.h */, + 1E81577EC3C916336A3E28118F7B3EF4 /* MetaWear-iOS.debug.xcconfig */, + 9C1B536A0A6CDFDEB99751E59899728C /* MetaWear-iOS.release.xcconfig */, + 0AB4412AD9BFFD8726C27BE359704CAC /* MetaWear-macOS.modulemap */, + 84A1AFD074DA79FEDE0E4400345D85C2 /* MetaWear-macOS-dummy.m */, + 4C5A69CC40153AAA3F412C4D7546D8C1 /* MetaWear-macOS-Info.plist */, + 0006F7B0D08B2D67969A4FB893737AD3 /* MetaWear-macOS-prefix.pch */, + 6F4DFDD326DF0F687E3A573D7C34CB4D /* MetaWear-macOS-umbrella.h */, + 2B5875CA926E5448969650D1C2F56D64 /* MetaWear-macOS.debug.xcconfig */, + 8180ED6AA8B350F7282D6C70A86941EE /* MetaWear-macOS.release.xcconfig */, + 2C9DA65690D45B28732C759444D3C3BC /* MetaWear-tvOS.modulemap */, + 563914C0B411345CAB35522A89CCFB92 /* MetaWear-tvOS-dummy.m */, + 829FE6E31553903E1B9AD49D369843AA /* MetaWear-tvOS-Info.plist */, + 95927B638B5049F46D71A0C4A2B6F8BA /* MetaWear-tvOS-prefix.pch */, + 2AD5AA094AC651E9C924FEE31376C333 /* MetaWear-tvOS-umbrella.h */, + 7BB6060635F52EB33D6A127505F26CA1 /* MetaWear-tvOS.debug.xcconfig */, + 71C80E8469B47A167FD49190C5F25FD6 /* MetaWear-tvOS.release.xcconfig */, + ); + name = "Support Files"; + path = "StarterProject/Pods/Target Support Files/MetaWear-iOS"; + sourceTree = ""; + }; + 6964743FD6D2B88DB2D25DA98314D5AB /* metawear */ = { + isa = PBXGroup; + children = ( + 062DC5BBEEE85953BCC481E4A9613B2B /* core */, + 39DFFE6BD2C339B1C29D30886BF6BF88 /* dfu */, + 7D7DF61D7E23E4BB1420550BF5FFD6D2 /* generator */, + F726118C646E218D28219C6E37EE2FF1 /* impl */, + CA5096F96897F4DD64EF509A0AC84E32 /* peripheral */, + 3D1ACA74C256B115D83D5DE79FF7D4B8 /* platform */, + 9A921FC134031F3C573D0907C752C587 /* processor */, + 51AB356C7A8382795F7D3CD1A7BDF946 /* sensor */, + ); + name = metawear; + path = metawear; + sourceTree = ""; + }; + 73D7D91D17BB4F6AEF66004FB2DC9155 /* cpp */ = { + isa = PBXGroup; + children = ( + 048875C8ECDAE11D7003057D8B992756 /* dataprocessor.cpp */, + 960E6CF8D16AAFA541846C643B412CED /* dataprocessor_config.cpp */, + ); + name = cpp; + path = cpp; + sourceTree = ""; + }; 780E82EC3D8D9D969D2FADD404894F89 /* Pods-Starter-macOS */ = { isa = PBXGroup; children = ( @@ -1056,23 +1290,30 @@ path = "../Target Support Files/Bolts-Swift-iOS"; sourceTree = ""; }; - 89C03F9AB9AFDFD2476B019AA2EBC604 /* cpp */ = { + 7D7DF61D7E23E4BB1420550BF5FFD6D2 /* generator */ = { isa = PBXGroup; children = ( - 8CA6689CB7FA588F54527326B12A6E30 /* haptic.cpp */, - F64DCC3E4FF0E3AC424CE8AEE5EFA963 /* ibeacon.cpp */, - 11CB2C6911BDAA75F30EE843D041EB3D /* led.cpp */, - 5595461B73D80542004FC6C7CE9BFFD8 /* neopixel.cpp */, + 2816A4D2404586E9EB63D4F76E33B318 /* cpp */, ); - path = cpp; + name = generator; + path = generator; sourceTree = ""; }; - 8B20E89E808F760699427B2E13E687BE /* core */ = { + 8126928A000F6382C205B8EDEC18B296 /* Core */ = { isa = PBXGroup; children = ( - 310ABE751D6699FD28D41E2B192D2102 /* cpp */, + FD9A2A311869B111F0574EA193B10550 /* Bridging.swift */, + 4C129BF0B3E163B2A9A5AE98ADD5A9BD /* CBUUID.swift */, + EA0560F3124490759DBB7E2EF9B80E4D /* DeviceInformation.swift */, + FE6B25EA7F6BAC20B469AFA0E9107547 /* LogDelegate.swift */, + 4BC285E1A6866C9A5A6611C0D1144A7A /* MblMwGattChar.swift */, + CB6ECAA2DC4375581C0E7143B4B4F2B1 /* MetaWear.swift */, + 87D659F1465356AA74B9A092439A6D8A /* MetaWearData.swift */, + 940B1A78A509FC5E861E0F33B9FF2955 /* MetaWearScanner.swift */, + 46A0EA664A6D23D23970F2B50FA1ED0F /* String+VersionCompare.swift */, ); - path = core; + name = Core; + path = MetaWear/Core; sourceTree = ""; }; 8F41A24A62CAA8B2F719170AFB9729D6 /* Frameworks */ = { @@ -1086,122 +1327,115 @@ name = Frameworks; sourceTree = ""; }; - 93280EF69C0C0FDAABA858CD21448734 /* dfu */ = { - isa = PBXGroup; - children = ( - B8CA8A64E16A40145DC99F5D3BDE9688 /* cpp */, - ); - path = dfu; - sourceTree = ""; - }; - 9BBF76782AABDDEE4BB6052122E5E4A1 /* platform */ = { + 8F9D01B609E3C604426D003747DAEADA /* src */ = { isa = PBXGroup; children = ( - 1210FE8F17F63806037314D4ECEB5B54 /* cpp */, + 6964743FD6D2B88DB2D25DA98314D5AB /* metawear */, ); - path = platform; + name = src; + path = src; sourceTree = ""; }; - A71952CEE19CFAEE0754AE734AF4AD0D /* UI */ = { + 9A921FC134031F3C573D0907C752C587 /* processor */ = { isa = PBXGroup; children = ( - F7B211D047FCFBF46341001154127BF4 /* ScannerModel.swift */, + 73D7D91D17BB4F6AEF66004FB2DC9155 /* cpp */, ); - name = UI; + name = processor; + path = processor; sourceTree = ""; }; - AD9B2688FA064B83CEF84395D15CCF0A /* peripheral */ = { + A092D77BDA5EF898B75B721334FEE41B /* bindings */ = { isa = PBXGroup; children = ( - 89C03F9AB9AFDFD2476B019AA2EBC604 /* cpp */, + 4E819FBCF3147A5F7A56C09590768C3A /* swift */, ); - path = peripheral; + name = bindings; + path = bindings; sourceTree = ""; }; - B073F0C14BE0CE0A4973EC909111F311 /* iOS */ = { + A6FBB0668C87D6AFD3DC323B0D90F596 /* cpp */ = { isa = PBXGroup; children = ( - 355399F4FBDB7CF0B09DCC84CAB74461 /* CoreBluetooth.framework */, - 8A94499076F43ED27622B582C18A1DD8 /* CoreGraphics.framework */, - 62ACBD4662324E90BCD96BA7EA2BF812 /* Foundation.framework */, - 9E0D7E61DB92369D72A5735D8D562C0C /* QuartzCore.framework */, + 3301A15FC2949AEA2784492EDBC7A70C /* datainterpreter.cpp */, + E35692E77DA1D9DEE753AD3CD06C59C8 /* metawearboard.cpp */, ); - name = iOS; + name = cpp; + path = cpp; sourceTree = ""; }; - B3B9D1D066F0C679BB436D636C1574E1 /* tvOS */ = { + A80AE213954E10A8AC47C955745658EC /* UI */ = { isa = PBXGroup; children = ( - 69BBBFBD413E4347F9175B0DC4182489 /* CoreBluetooth.framework */, - 9DC9077D61C1F98C3178577A231EDCFA /* CoreGraphics.framework */, - 2930A596A32FF425D7DAB104DFA2F73B /* Foundation.framework */, - 16B794F4704C79E1632AA45BFE6195EB /* QuartzCore.framework */, + 258260CAA5679A15FCBAADAAE4B672B4 /* ScannerModel.swift */, ); - name = tvOS; + name = UI; sourceTree = ""; }; - B8CA8A64E16A40145DC99F5D3BDE9688 /* cpp */ = { + AC5495154E41BE73DC162DD82576FF49 /* cpp */ = { isa = PBXGroup; children = ( - 826015182EA06E37BCEE4EFED2CE837D /* dfu_operations.cpp */, - 9F931CAD74B17C63AD52FD67AE5A2F34 /* dfu_operations_details.cpp */, - 6F05254446FC44134AB1FCB505181E8D /* dfu_utility.cpp */, - 3FE57D99928841AF0F589776CE63598B /* file_operations.cpp */, - B8589B881C3662FF6987875F057E1266 /* miniz.cpp */, + 497DB20EAE931C659A46172B75E5B8E6 /* async_creator.cpp */, + EF3984D14110A5F2723454D510C554B8 /* memory.cpp */, + 469B8B015B60FEA92F8C92251AF6AE31 /* task.cpp */, + 01D834C2C6B1749521F45F5CAE05A0AF /* threadpool.cpp */, ); + name = cpp; path = cpp; sourceTree = ""; }; - BA586D87209C7FFFACD42D90D908E6A8 /* swift */ = { + B073F0C14BE0CE0A4973EC909111F311 /* iOS */ = { isa = PBXGroup; children = ( - ED53380A0A114872E470B5B57206AD93 /* cbindings.swift */, + 355399F4FBDB7CF0B09DCC84CAB74461 /* CoreBluetooth.framework */, + 8A94499076F43ED27622B582C18A1DD8 /* CoreGraphics.framework */, + 62ACBD4662324E90BCD96BA7EA2BF812 /* Foundation.framework */, + 9E0D7E61DB92369D72A5735D8D562C0C /* QuartzCore.framework */, ); - path = swift; + name = iOS; sourceTree = ""; }; - C041BC95118B5FE1DBDCF9D02AFFD613 /* MetaWear-SDK-Cpp */ = { + B0901EF6997BF5E89FC3FEE76DFF33ED /* MetaWear-SDK-Cpp */ = { isa = PBXGroup; children = ( - 1071066AD7CDDEE894ECACB8A618976F /* bindings */, - F3361550441F6EEB62E01BA5CC207224 /* src */, + A092D77BDA5EF898B75B721334FEE41B /* bindings */, + 8F9D01B609E3C604426D003747DAEADA /* src */, ); name = "MetaWear-SDK-Cpp"; path = "MetaWear/MetaWear-SDK-Cpp"; sourceTree = ""; }; - C0AF95C6200C0C71F0084F52285F58A2 /* Core */ = { + B3B9D1D066F0C679BB436D636C1574E1 /* tvOS */ = { isa = PBXGroup; children = ( - 6D955BDD745F47E1B8406183BDE233D9 /* Bridging.swift */, - 3733DDA76793063E68DCC38AF59946CA /* CBUUID.swift */, - BE5ED46159BEF6773B69101984FDAFB4 /* DeviceInformation.swift */, - 865E20BDB258D3FE1092ACE87FEDA5E1 /* LogDelegate.swift */, - 893FBF17B6E430F370B617C6E8FB3D7D /* MblMwGattChar.swift */, - 918FC3DE68A7D67638CE2C5367825308 /* MetaWear.swift */, - B1A5B7E578496C7E56CC31DA39874036 /* MetaWearData.swift */, - 067C52443C7E95555DCF585276CEEDF3 /* MetaWearScanner.swift */, - 3A62291A5BDCE9814866986CD77D9E7F /* String+VersionCompare.swift */, + 69BBBFBD413E4347F9175B0DC4182489 /* CoreBluetooth.framework */, + 9DC9077D61C1F98C3178577A231EDCFA /* CoreGraphics.framework */, + 2930A596A32FF425D7DAB104DFA2F73B /* Foundation.framework */, + 16B794F4704C79E1632AA45BFE6195EB /* QuartzCore.framework */, ); - name = Core; - path = MetaWear/Core; + name = tvOS; sourceTree = ""; }; - C1C0BD6335152C9F4C1F7D2ADBA323DD /* cpp */ = { + C20EEF538B96A6E3B0163278F0F48942 /* cpp */ = { isa = PBXGroup; children = ( - 4A4EAE6EA74F73B92B0EBABA0F7283A7 /* dataprocessor.cpp */, - 0F4852EE83AA77321ABC3A1A6AE8A905 /* dataprocessor_config.cpp */, + 69478DF70155827E5C4A8D65FE8544EA /* dfu_operations.cpp */, + AF9BE72D3F724EFB9A6ADFDE7CF0DC2E /* dfu_operations_details.cpp */, + 47B0FA97D88DC55F5C8D9B70618CFE50 /* dfu_utility.cpp */, + 6D4FB7A5D78EE1FDB4857D9EDF07615C /* file_operations.cpp */, + A1BC54611F59DDB9DA105EFA630CE88A /* miniz.cpp */, ); + name = cpp; path = cpp; sourceTree = ""; }; - CB83997E8321BE366219B3AB0FC373C8 /* sensor */ = { + CA5096F96897F4DD64EF509A0AC84E32 /* peripheral */ = { isa = PBXGroup; children = ( - 05F3A301C0232CA8638FEB6234B5AFB8 /* cpp */, + 3A98B3B34A129B189B4AAA9FC324819A /* cpp */, ); - path = sensor; + name = peripheral; + path = peripheral; sourceTree = ""; }; CD4FCF3FA53664D6009B4DCE8FAC6B96 /* MBProgressHUD */ = { @@ -1211,6 +1445,7 @@ D85F0CF7B03ECBB29CF09997E90A440E /* MBProgressHUD.m */, DCF62EFF3C916AB4BE493B91306B9561 /* Support Files */, ); + name = MBProgressHUD; path = MBProgressHUD; sourceTree = ""; }; @@ -1226,17 +1461,6 @@ ); sourceTree = ""; }; - D92A21AA4D141A87300167A94E03F2C0 /* AsyncUtils */ = { - isa = PBXGroup; - children = ( - 55B6B63DE1E7846CE38C0AD83FCEFCB4 /* MblMwDataSignal+Async.swift */, - 0B1B052EBC55735DE28377B2625D00DE /* MblMwEvent+Async.swift */, - E741D524F0F7A8260E73F6096F2908B6 /* MetaWear+Async.swift */, - D40A6D2FD7C5D6CDBD2E9FF2211BF82D /* MetaWear+LED.swift */, - ); - name = AsyncUtils; - sourceTree = ""; - }; DCF62EFF3C916AB4BE493B91306B9561 /* Support Files */ = { isa = PBXGroup; children = ( @@ -1259,21 +1483,38 @@ path = "../Target Support Files/MBProgressHUD-iOS"; sourceTree = ""; }; - F3361550441F6EEB62E01BA5CC207224 /* src */ = { + EFEA3B29E8436DAABC0FB922CEF3BEF8 /* cpp */ = { isa = PBXGroup; children = ( - 2376D3F7D59B66566E6BA36C75FABFEE /* metawear */, - ); - path = src; + 9282C71969A1439C75E173883400052A /* accelerometer.cpp */, + D0608D15485BBD00C2D02C2A174FB451 /* accelerometer_bosch.cpp */, + E9F0F9BC85B1D451DE7DA97C59957ECD /* accelerometer_mma8452q.cpp */, + 7AD861E0372523DEECEF815D9FA7F8EE /* ambientlight_ltr329.cpp */, + 1AE6DEF4DCC0A14478137AC7E5923734 /* barometer_bosch.cpp */, + 30D64E2A8AC33A4E6F9E7E3BF5CD1722 /* colordetector_tcs34725.cpp */, + E61CD130A90592403E1785F55D129BF6 /* conductance.cpp */, + E513416C0B1E25C2439AB961BAA5B742 /* gpio.cpp */, + 8E5337698F92619E772C69177B31FF2D /* gyro_bosch.cpp */, + D8F6F4A39D77B7B09DBEBC03CD050624 /* humidity_bme280.cpp */, + EB4834A2855D12DEF11E3933422A1571 /* magnetometer_bmm150.cpp */, + B71604572313E9BB286E64E29DBC6732 /* multichanneltemperature.cpp */, + EF2AF82017A5DF639AB80DA9167CB62D /* proximity_tsl2671.cpp */, + 1A8A76DCFF9440906C34B2692D420CFD /* sensor_fusion.cpp */, + F8D4FEE512423AEBA199921A57ADEF46 /* serialpassthrough.cpp */, + F8F58A4DB3EC7AB82C245D76694985D7 /* switch.cpp */, + DC95E47A76D8C1A2E83EC0B0254B906C /* utils.cpp */, + ); + name = cpp; + path = cpp; sourceTree = ""; }; - F3AA63E0F283702285805E3B6120E823 /* Core */ = { + F726118C646E218D28219C6E37EE2FF1 /* impl */ = { isa = PBXGroup; children = ( - C0AF95C6200C0C71F0084F52285F58A2 /* Core */, - C041BC95118B5FE1DBDCF9D02AFFD613 /* MetaWear-SDK-Cpp */, + A6FBB0668C87D6AFD3DC323B0D90F596 /* cpp */, ); - name = Core; + name = impl; + path = impl; sourceTree = ""; }; FBB4E98F57EEE3BBBFD07F23A710E175 /* Bolts-Swift */ = { @@ -1289,28 +1530,26 @@ 837B192127E7B12E08CEDCC250CC101A /* TaskCompletionSource.swift */, 7A26F7B2F78137F7F056094E98F91ED7 /* Support Files */, ); + name = "Bolts-Swift"; path = "Bolts-Swift"; sourceTree = ""; }; - FD0D23B7015D44A1B81F7D9DBA56DE29 /* processor */ = { + FEDE092C128AC1AD8A2B7BAC307610BA /* MetaWear */ = { isa = PBXGroup; children = ( - C1C0BD6335152C9F4C1F7D2ADBA323DD /* cpp */, + 0F1619DEEDAD2A9E9F06CE99C6B4A33D /* AsyncUtils */, + 385126DD5C422C4D67F70EFD277EA2E5 /* Core */, + 5BE566B475D5593CC5726D40A0E33C44 /* Pod */, + 6083A54C85120CF5757CC158AB2BE821 /* Support Files */, + A80AE213954E10A8AC47C955745658EC /* UI */, ); - path = processor; + name = MetaWear; + path = ../..; sourceTree = ""; }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ - 1403784B6EB816366AECC44CB81E7014 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 36B390E1BC8AE659460C94B68DEC8AB0 /* MetaWear-tvOS-umbrella.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 28DF15EC00E0072CB001938690D35782 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -1336,6 +1575,14 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 81CC07C175DA49E2B297BF515E207053 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 9CAFF904B28525D0C60F45C37C34BAF2 /* MetaWear-iOS-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 82C11A61F494346EFCFD1B26B3F9C401 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -1361,35 +1608,35 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - C60D04F71DE70EF0C157C643EBDB87DD /* Headers */ = { + A99B29820DCE1DEA9B1EAF5162D37648 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 3941A75CC188FE7BDED71339B96CC1C7 /* Pods-Starter-macOS-umbrella.h in Headers */, + 38976BB25614C69769492DA355DFB469 /* MetaWear-tvOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - CCF70EE599E99902BC644378E0F131EB /* Headers */ = { + C60D04F71DE70EF0C157C643EBDB87DD /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - DD92E7F3D43A224CA28560550FB7C9E9 /* Pods-Starter-iOS-umbrella.h in Headers */, + 3941A75CC188FE7BDED71339B96CC1C7 /* Pods-Starter-macOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - E2011CD5D3562B1092CE9220283F716D /* Headers */ = { + CCF70EE599E99902BC644378E0F131EB /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 30449DC8344D1CFC4885BDE0CDDB8040 /* MetaWear-iOS-umbrella.h in Headers */, + DD92E7F3D43A224CA28560550FB7C9E9 /* Pods-Starter-iOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - E21D8D660BB62A2CD8CBA9D1651115BC /* Headers */ = { + E83684E3528E26511FD1E270794B1A70 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - A6983B4A50D6D63ACA836DC9A5AA94C0 /* MetaWear-macOS-umbrella.h in Headers */, + 428F82ED9C61A6EB96D25452050E8D77 /* MetaWear-macOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1408,9 +1655,9 @@ buildRules = ( ); dependencies = ( - AF14D2BC54D60FC21D699EBAD7C3B793 /* PBXTargetDependency */, - C09C756C42B97F519C6B1BC74B701A5A /* PBXTargetDependency */, - 2A44EEBAADBC19F987DCBEA1C80577CE /* PBXTargetDependency */, + 06C5BADF0D6D68D88224B9DF30C332E1 /* PBXTargetDependency */, + CA91457B0E031D63F2732891B4501CBE /* PBXTargetDependency */, + 377561D20C875CDA493B0F4909927466 /* PBXTargetDependency */, ); name = "Pods-Starter-tvOS"; productName = "Pods-Starter-tvOS"; @@ -1419,17 +1666,17 @@ }; 33D1D149C44676165C3F0A61912DB392 /* MetaWear-tvOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 9866A1C965A44D1A23316F5DB3D329FD /* Build configuration list for PBXNativeTarget "MetaWear-tvOS" */; + buildConfigurationList = 7D0D05AE63F2A8FDA25A1E97619C14D7 /* Build configuration list for PBXNativeTarget "MetaWear-tvOS" */; buildPhases = ( - 1403784B6EB816366AECC44CB81E7014 /* Headers */, - DBDF296BC3F44115DACBF6AC58FF3900 /* Sources */, - 205F35F4FC2C2FED7A7E8FAF000E1C71 /* Frameworks */, - B9B2623EE347CE11DCD5973B4C91798D /* Resources */, + A99B29820DCE1DEA9B1EAF5162D37648 /* Headers */, + A469FE25C3879EE2CF8BDFAEF634E718 /* Sources */, + 113A8264626AF5A14ACD0B79B12FEEAE /* Frameworks */, + FE70A19A3C51B3C93575B4D08F63B96D /* Resources */, ); buildRules = ( ); dependencies = ( - F56478265F11D2CFC3A653EE119942C6 /* PBXTargetDependency */, + 26336C6F3F075EA924871D0C7FED9B49 /* PBXTargetDependency */, ); name = "MetaWear-tvOS"; productName = "MetaWear-tvOS"; @@ -1438,17 +1685,17 @@ }; 3EAD5FC7EE8E8D39DBDCCF711B0F7D75 /* MetaWear-macOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 6067D9023D8A9FC8BC50259E1DEE0632 /* Build configuration list for PBXNativeTarget "MetaWear-macOS" */; + buildConfigurationList = 15C424E67904330769CB45E8AD3D58B4 /* Build configuration list for PBXNativeTarget "MetaWear-macOS" */; buildPhases = ( - E21D8D660BB62A2CD8CBA9D1651115BC /* Headers */, - 0A5837455EDED2763D8E4E3073B800E6 /* Sources */, - AB9A58DA30BF96358C278E58E7E1B087 /* Frameworks */, - D1394D093460B19F7CC111B97919B662 /* Resources */, + E83684E3528E26511FD1E270794B1A70 /* Headers */, + 18A8899350A3AC4D25EFE508C6F9BB95 /* Sources */, + 2F6182123C3B77769AC2271EB3BB8499 /* Frameworks */, + 6C8DD5798402E4958F87C644C0998D9A /* Resources */, ); buildRules = ( ); dependencies = ( - A82DBA22A5A6D3632FE7F05E756D6722 /* PBXTargetDependency */, + F3D97938763A1BA4FBEDF0B5B6110CFF /* PBXTargetDependency */, ); name = "MetaWear-macOS"; productName = "MetaWear-macOS"; @@ -1457,17 +1704,17 @@ }; 40F96C8785C4CCB505582120F8B02D1A /* MetaWear-iOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 52ED81EAEAA7108A9D332E64084D7859 /* Build configuration list for PBXNativeTarget "MetaWear-iOS" */; + buildConfigurationList = 3DD20A9AFA9A8B4DAC86164D78DB9E9D /* Build configuration list for PBXNativeTarget "MetaWear-iOS" */; buildPhases = ( - E2011CD5D3562B1092CE9220283F716D /* Headers */, - 4CE2C94215311CBC016E3180A848A8F5 /* Sources */, - 37B874F47741E887F1B3BC874E458F45 /* Frameworks */, - 5F1ECC69B8F3C0570419C9EEAEB7B336 /* Resources */, + 81CC07C175DA49E2B297BF515E207053 /* Headers */, + 5228E8575FB5A1E0046388C14869B5C6 /* Sources */, + EB7B29D723579EA9B9D6B92E87221491 /* Frameworks */, + ACBD2B3F1F19CF24476C18C60B5EA772 /* Resources */, ); buildRules = ( ); dependencies = ( - 8E76806BA9E3A5FB1A580C5F2B214193 /* PBXTargetDependency */, + 51896A97A74CF4DCF1AEA79C0CCC8F4C /* PBXTargetDependency */, ); name = "MetaWear-iOS"; productName = "MetaWear-iOS"; @@ -1540,9 +1787,9 @@ buildRules = ( ); dependencies = ( - 2AC2E397243634B85FFF85A327E977E7 /* PBXTargetDependency */, - BCC0CA47564E2C8E5C3C1A8CC3D5CECF /* PBXTargetDependency */, - 354BC88F368B60C8F6509F9EB6F836D8 /* PBXTargetDependency */, + 5C1D24230C47486CB503CEA6C26844C4 /* PBXTargetDependency */, + 27BAC95D8C6E3A3A38C47EBA5444873F /* PBXTargetDependency */, + 8558EEECB449BFFD318ABBEEA5B7CC05 /* PBXTargetDependency */, ); name = "Pods-Starter-iOS"; productName = "Pods-Starter-iOS"; @@ -1597,8 +1844,8 @@ buildRules = ( ); dependencies = ( - B578F422AD29CFA544619051E6F18EAC /* PBXTargetDependency */, - DDB82A36C88BD8A1A6249A2D80EAECAE /* PBXTargetDependency */, + 267BF41F733C9AD74BE01E7AA887E98F /* PBXTargetDependency */, + 40C252C642D4544078AA93DC16F3A459 /* PBXTargetDependency */, ); name = "Pods-Starter-macOS"; productName = "Pods-Starter-macOS"; @@ -1664,7 +1911,7 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 5F1ECC69B8F3C0570419C9EEAEB7B336 /* Resources */ = { + 6C8DD5798402E4958F87C644C0998D9A /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( @@ -1692,28 +1939,28 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - B9B2623EE347CE11DCD5973B4C91798D /* Resources */ = { + ACBD2B3F1F19CF24476C18C60B5EA772 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - D1394D093460B19F7CC111B97919B662 /* Resources */ = { + F580A483F82E9F6C0555A9119565F665 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - F580A483F82E9F6C0555A9119565F665 /* Resources */ = { + FCF46DA57A021972F7538DD29D8BDB69 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - FCF46DA57A021972F7538DD29D8BDB69 /* Resources */ = { + FE70A19A3C51B3C93575B4D08F63B96D /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( @@ -1723,71 +1970,76 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ - 0A5837455EDED2763D8E4E3073B800E6 /* Sources */ = { + 18A8899350A3AC4D25EFE508C6F9BB95 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - FE251D1697DBCCDBACAE09107C128AA7 /* accelerometer.cpp in Sources */, - 5861CD592B1B140AC4AAD97D9E1C2D35 /* accelerometer_bosch.cpp in Sources */, - C5515538EB26C099F9611AF9E4561919 /* accelerometer_mma8452q.cpp in Sources */, - D0A52E9A64E5B8C05C1A217F980585A1 /* ambientlight_ltr329.cpp in Sources */, - 33D85E2C66651AD7B7571C30611FB885 /* anonymous_datasignal.cpp in Sources */, - 4834370D8A237E1BB8301B2FE1161C45 /* async_creator.cpp in Sources */, - 38D5A60BEB74B6A0E9685DBB59F70A41 /* barometer_bosch.cpp in Sources */, - 3079F3CDE8028A0924394CEEF920BE79 /* Bridging.swift in Sources */, - 248CFC8DEB91B2DC116C4FE36B02E1AD /* cbindings.swift in Sources */, - 92BF34B6E75520A0C28859CA08674985 /* CBUUID.swift in Sources */, - 003F1F6FBCA64A5E2593488D62AD45C2 /* colordetector_tcs34725.cpp in Sources */, - D5B8666C5705F3AFEAA0503ED6C078D9 /* conductance.cpp in Sources */, - B6948CCE31AA831E04A4D3F499740890 /* datainterpreter.cpp in Sources */, - AE466034BA767EC8CA9E852A0509999F /* dataprocessor.cpp in Sources */, - 9D01EF28305B32BD44177A60F1FF7A1F /* dataprocessor_config.cpp in Sources */, - 7A189904A5CCF6CBC53265863DE41F23 /* datasignal.cpp in Sources */, - B241B3807469C876CDDD23032B657ABB /* debug.cpp in Sources */, - 826865F5AD07820E37748DFACBF2AF3F /* DeviceInformation.swift in Sources */, - 923BE8531BF867F184094A797E81A010 /* dfu_operations.cpp in Sources */, - 0B91CC274CEAE3EC38AE9C3412FDCD89 /* dfu_operations_details.cpp in Sources */, - 632575C30239F52E6515742DDBED6BD2 /* dfu_utility.cpp in Sources */, - 92F413330907629B1855F6A860F948A7 /* event.cpp in Sources */, - 9EC536B249231615809AAC970745176D /* file_operations.cpp in Sources */, - 94FF8BE1DE8AF7216574A5C6AB93EF85 /* gpio.cpp in Sources */, - ECB7720BC7529EE3CD9BF8E1D869FB3E /* gyro_bmi160.cpp in Sources */, - 3A494176DE760CDAF835D0D9683AF929 /* haptic.cpp in Sources */, - 026372D1AE70961F7AD006C101EE52DB /* humidity_bme280.cpp in Sources */, - 2B80506F5EEB1463288BA31FAE5E5EE6 /* ibeacon.cpp in Sources */, - 82E8DE998E15C1C5F74F856280AAF6AE /* led.cpp in Sources */, - 22DE1013D4770FFEB480F1D5853B5D10 /* LogDelegate.swift in Sources */, - 084E83803E305FCE00C037EEE395C766 /* logging.cpp in Sources */, - B55CC6648E796BF40A1E8ADBCA721DC1 /* macro.cpp in Sources */, - 4781B7E2148E7296D191ADD91230F145 /* magnetometer_bmm150.cpp in Sources */, - E8EC9E811C3B7D80FF3135CE1C27CEF1 /* MblMwDataSignal+Async.swift in Sources */, - 23C3449CBCC53A51F107348C63038FFB /* MblMwEvent+Async.swift in Sources */, - 056A4CB1BFCCF6F1EFA8D47BCD41FF3B /* MblMwGattChar.swift in Sources */, - 2D6D60E9E1EBCC1D52A579DAF38E4DD2 /* memory.cpp in Sources */, - FB3E5BFF1168175220CAF04688F234AA /* MetaWear+Async.swift in Sources */, - 7DEDCE9D86BE99EF8CB602EE0C93BBB5 /* MetaWear+LED.swift in Sources */, - C475DB31D65DD5BC2B9A9A3296852A8C /* MetaWear-macOS-dummy.m in Sources */, - 6A0C8BE9B60F47F4186F89E3598F26EF /* MetaWear.swift in Sources */, - 68BF82E86BB7FAA3D5623AFD0BBFABCD /* metawearboard.cpp in Sources */, - 3338DE2826EB241079F8FE76E5AD782F /* MetaWearData.swift in Sources */, - B1D7ABC16EB42B64290A692E3B046053 /* MetaWearScanner.swift in Sources */, - 9ADCD356FA0AB3AEB08D68BEEB4E1E51 /* miniz.cpp in Sources */, - 8A51ABC1DD853532C95365F71E6205AD /* moduleinfo.cpp in Sources */, - F04916D5C3C333F26A5730667D8E98DA /* multichanneltemperature.cpp in Sources */, - ADEED9C5DEC035CA92AF12AB8B47981F /* neopixel.cpp in Sources */, - C0577446230EEF4E74C279C123C64516 /* proximity_tsl2671.cpp in Sources */, - 2124D3F54CA5F44622B9DFF1C5A32664 /* responseheader.cpp in Sources */, - C882CFB7E602407FC48C7C8D02B944F4 /* ScannerModel.swift in Sources */, - 2C40DFAD110D4ACE356B93EAFC6A5B39 /* sensor_fusion.cpp in Sources */, - 600D4369945D5109940F3E9B8F337F62 /* serialpassthrough.cpp in Sources */, - E951EEC74C7F6A3657EE400E25F30C9D /* settings.cpp in Sources */, - 43AD9CF7685210A107962B132C7361F4 /* String+VersionCompare.swift in Sources */, - 5B61CA907E803D7F492D02D3C4AACD2C /* switch.cpp in Sources */, - 0C7D0A5E831647A58B25AE5961DCEC04 /* task.cpp in Sources */, - 083935BC0448C642A03CB33A83879622 /* threadpool.cpp in Sources */, - 8205E488561FEFBED9C40E4A24E736EF /* timer.cpp in Sources */, - C48C469F16DCB5D87F8C7720FF4C03FE /* utils.cpp in Sources */, - AC1D6866EC38761E2E1B4ABC76049E24 /* version.cpp in Sources */, + 259E2EB27A2359C48F7958CF9E78CECB /* accelerometer.cpp in Sources */, + 715835AA319F6B00102B8EA41FAFD9BC /* accelerometer_bosch.cpp in Sources */, + 3100EB2B963D0392824F2632AECBEF00 /* accelerometer_mma8452q.cpp in Sources */, + A5431868A4FC4E3593BC18891CAFA0FD /* ambientlight_ltr329.cpp in Sources */, + 9A9B6E40AA20B07E1693848F9CDE92D3 /* anonymous_datasignal.cpp in Sources */, + 41497E852551A843D068FCCA6095AD53 /* async_creator.cpp in Sources */, + A31CC0581975A93AC672339085FC808C /* barometer_bosch.cpp in Sources */, + 26BC7FD4E1C7AAECFFA19356465D2DD0 /* Bridging.swift in Sources */, + D3FF604F71C60C1D685353352999C113 /* cbindings.swift in Sources */, + B65EBEF57C8A6F85C807D7E78CC16599 /* CBUUID.swift in Sources */, + 03A692AEF2ED48F470E6B7CF1019ACA0 /* colordetector_tcs34725.cpp in Sources */, + 70D34329E457DB5A73EA3908FCA04B63 /* common.cpp in Sources */, + E8ADA1E221617221D85DCBDE5D623FD5 /* conductance.cpp in Sources */, + B013EAE133CA81919DAA21A77FB8667B /* CSharpGenerator.cpp in Sources */, + 1850BB07DCAEDB7428DEF05A7594C283 /* datainterpreter.cpp in Sources */, + 2D6693FA2CF1931EAFCDF745534354A1 /* dataprocessor.cpp in Sources */, + FE5789F2A48C54986B1595B610855338 /* dataprocessor_config.cpp in Sources */, + AD4D3C81A904AE78FB14DA7D98F0A6DB /* datasignal.cpp in Sources */, + 9D52C1B12AE41F8836F47B06C7A9F59D /* debug.cpp in Sources */, + C392A8F80289A97FEBB033BE8AFE5E95 /* DeviceInformation.swift in Sources */, + 48D32CD4FB4E7356AAEE1D089DB27C47 /* dfu_operations.cpp in Sources */, + ADB060AC0D87EDA5F01642AF5C37EDB1 /* dfu_operations_details.cpp in Sources */, + F7C1820889CD2E8F3A8E5A4655EFE760 /* dfu_utility.cpp in Sources */, + 16180C74AE6F9E2575B1384CAFE9FCC2 /* event.cpp in Sources */, + 06D5336482F5A360B1620719ED27C1D9 /* file_operations.cpp in Sources */, + 63DDB564AD84EB019AC65C93AB8F81F0 /* gpio.cpp in Sources */, + D947047846547C3438EC17FB74B6E47F /* gyro_bosch.cpp in Sources */, + DE7081D6B52EF09A3A227090795DEF9B /* haptic.cpp in Sources */, + CFA33D37F27FAFAABC4C419DB374D247 /* humidity_bme280.cpp in Sources */, + 6B0F09B34EC1DED9C1944FD4AA1C199E /* ibeacon.cpp in Sources */, + F28EEC4865C8387880774C41BE4B92FB /* JavaScriptGenerator.cpp in Sources */, + 1F821F1315630039027C4B742E6C0751 /* led.cpp in Sources */, + A88A44078E834A3F0E9AC5B32E3E9C4D /* LogDelegate.swift in Sources */, + 9A1E7047ECBA60B34392CF1D33CADE5C /* logging.cpp in Sources */, + DE669BCAB3DE3D874895C3814B0F4648 /* macro.cpp in Sources */, + 885A384CD3D953975CBF0D878B6E00B2 /* magnetometer_bmm150.cpp in Sources */, + 16F0830A853B092479C886A507DE2CC2 /* MblMwDataSignal+Async.swift in Sources */, + 5E296B37789E0CC1DBFEABD2AA4095C9 /* MblMwEvent+Async.swift in Sources */, + A54D3D09A6EBA2A545EA48140E598611 /* MblMwGattChar.swift in Sources */, + 503FE1CA27065E51E9571B19A89EBEC8 /* memory.cpp in Sources */, + 7E37C424389699B98AE505D080DE49EA /* MetaWear+Async.swift in Sources */, + 3500A3C847D19046F4C42180349B781F /* MetaWear+LED.swift in Sources */, + F79930322639B789FB1B122B9EED7D38 /* MetaWear-macOS-dummy.m in Sources */, + 71368054D134564D3F572F0294BBC05E /* MetaWear.swift in Sources */, + 187F7B3780CB90BDEA7E3DDB113F5550 /* metawearboard.cpp in Sources */, + CEE1471416C2501F7C384880DBCC69C7 /* MetaWearData.swift in Sources */, + 231C6C3D6A36B403E06ED2DE5D0277FF /* MetaWearScanner.swift in Sources */, + E88A141537735E1A2D31665CBCA7BF7A /* miniz.cpp in Sources */, + C4EF1F475B020B6EBE6E212DF5ED07D1 /* moduleinfo.cpp in Sources */, + 424DF1FC4751C62203EEB0959811735E /* multichanneltemperature.cpp in Sources */, + D11A164E1ADECBEFAF91F4F82F4D17AC /* neopixel.cpp in Sources */, + D7A774958B3D3D390D493339FBD76484 /* proximity_tsl2671.cpp in Sources */, + B7FB87FD9851479B332A0E30036E9765 /* PythonGenerator.cpp in Sources */, + 280392E00A51885851356F6F55EC59D0 /* responseheader.cpp in Sources */, + 854120AC9CE144D477BBA7CB28B5F138 /* ScannerModel.swift in Sources */, + 8A973496271A2FC9105041839921C465 /* sensor_fusion.cpp in Sources */, + FF30CF63B2D546D8C2F5F735AE32584D /* serialpassthrough.cpp in Sources */, + DC88C64635B1BC7776A165C66EF7222C /* settings.cpp in Sources */, + 19152FFD996FC9CF163B024D24F02270 /* String+VersionCompare.swift in Sources */, + 203844E7708938ED22151CD5C0BDD1E6 /* SwiftGenerator.cpp in Sources */, + 8B2718D2EF1537DEC60EA3368C0C82FA /* switch.cpp in Sources */, + 21DD5796A46589CC7E3D8D3FE21E8622 /* task.cpp in Sources */, + 63FAD868B24E6B7748160B6B2A8DF8E0 /* threadpool.cpp in Sources */, + 6B6BA1766438B75C02F7A53F19E9E3A6 /* timer.cpp in Sources */, + B2599F065389E1B19785D81A0600D8ED /* utils.cpp in Sources */, + 9D68C3DBB769842B31FF920093973CA5 /* version.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1800,71 +2052,76 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 4CE2C94215311CBC016E3180A848A8F5 /* Sources */ = { + 5228E8575FB5A1E0046388C14869B5C6 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 1A220371293C20B6F2131C43F667C33F /* accelerometer.cpp in Sources */, - 40F8D7A9B9A74ACC65090E27BB5746AF /* accelerometer_bosch.cpp in Sources */, - D92AE3B6301C4F4794D5C85E079AF471 /* accelerometer_mma8452q.cpp in Sources */, - AC540DF16965C5E66697AC598D461318 /* ambientlight_ltr329.cpp in Sources */, - 0D35F57A15E0A8D30C9AA56620ECE6C1 /* anonymous_datasignal.cpp in Sources */, - 73AB41D5C367969CA0EFB24DDBC98388 /* async_creator.cpp in Sources */, - 519C9A134E67B901CBB3A67992B746D8 /* barometer_bosch.cpp in Sources */, - BF15A2F4563C8A3246B3FBD7864AFC85 /* Bridging.swift in Sources */, - 0F950DE0B9A437B9E542D3E46E6C340C /* cbindings.swift in Sources */, - 341B30CD151A9C072522850561CA3B37 /* CBUUID.swift in Sources */, - 0CDDF1ADE6B9D045638F72D8FBAD6BB3 /* colordetector_tcs34725.cpp in Sources */, - 6E7AB991D01CE02BA3C487571F39F907 /* conductance.cpp in Sources */, - B36400D7BF4CBAF148BE7A5AAEA68C4E /* datainterpreter.cpp in Sources */, - E59149D981F986EC5417FC35E17CDC8D /* dataprocessor.cpp in Sources */, - 1D81F77AE5D3C7FDC00C7BCACB3B4D51 /* dataprocessor_config.cpp in Sources */, - 647B509A1437BD608EFD12FCC0E935FF /* datasignal.cpp in Sources */, - CC31ED49BA3CC429838C9668848F7EA8 /* debug.cpp in Sources */, - 3F9C75932D13C44AB7E0811A4BE43D43 /* DeviceInformation.swift in Sources */, - 10A9BFB432D78C377188196A78408971 /* dfu_operations.cpp in Sources */, - 003CE272585C3D7829A4148E28546A58 /* dfu_operations_details.cpp in Sources */, - 576FD0090014EA4AF2F1A496C6A35CBE /* dfu_utility.cpp in Sources */, - 8228BD67E637491478B8D54FC2CCB299 /* event.cpp in Sources */, - 55FE80EBF752CC471CF1163456371B8B /* file_operations.cpp in Sources */, - 0ACFB4B3F6A4A43EAEDB18EA6FA8B884 /* gpio.cpp in Sources */, - 8AE3296315100B21953F2D76448E6447 /* gyro_bmi160.cpp in Sources */, - 86D024AE4187C91A86D881BF1E97737F /* haptic.cpp in Sources */, - 262D1A0EB8F5EEE3FFDF806A65E80540 /* humidity_bme280.cpp in Sources */, - 2FE7C89D197C4E871C15BC0074260334 /* ibeacon.cpp in Sources */, - FADECBBFE77F51D01B013F5F1F447746 /* led.cpp in Sources */, - 8D77B9CEF1F58B0A20CFB86636BBC217 /* LogDelegate.swift in Sources */, - B871A587F3D91D6CA939CC7B0732EE77 /* logging.cpp in Sources */, - 7A8E22F83821002DED80E7CD4720324E /* macro.cpp in Sources */, - B357ADFA4D5EE7815F401CEDE9710673 /* magnetometer_bmm150.cpp in Sources */, - A80A5CCCCD6F2C9B32981A304608BB20 /* MblMwDataSignal+Async.swift in Sources */, - 5A637715D8B6D25661A080405B942F1F /* MblMwEvent+Async.swift in Sources */, - C1D97339A423A30152846CDE6B0A5EE0 /* MblMwGattChar.swift in Sources */, - 7CF1CC012C49A82301FD028C9A32A40F /* memory.cpp in Sources */, - 1DA0C6BDC6B61A0DF2290ABFD9C952E1 /* MetaWear+Async.swift in Sources */, - 8B9143393CA0B1220539BD2715C8A5E4 /* MetaWear+LED.swift in Sources */, - 6001860B94566C9B0D1C09AAD89EDB9D /* MetaWear-iOS-dummy.m in Sources */, - 8DB2E537968884AF15C661EDECEAD1C0 /* MetaWear.swift in Sources */, - 72287033749A8D018D09F9A942D03CB4 /* metawearboard.cpp in Sources */, - C3E6DFAE5304199B0F47337F8C7B9A26 /* MetaWearData.swift in Sources */, - 9201D2C46B69D793BDC50C3BAFE48405 /* MetaWearScanner.swift in Sources */, - 6048E3AEFF529C38B5D0D400F8130114 /* miniz.cpp in Sources */, - 1F51362959883D6E4CF35E1AECCBFA85 /* moduleinfo.cpp in Sources */, - 28BEF1C4841B15B4013EBF4C4FAA044B /* multichanneltemperature.cpp in Sources */, - 25EF6C2F66DBE39797CB631DD70C683E /* neopixel.cpp in Sources */, - 522CBF780EE3F0888C3BDFEAD1920B92 /* proximity_tsl2671.cpp in Sources */, - ED5EA1099D99F98C6A616C1A97201BE8 /* responseheader.cpp in Sources */, - E2D5AEE6E2EB3A180D5B5B43E04745BF /* ScannerModel.swift in Sources */, - 372CED977A51A706403D4A5F5F20B841 /* sensor_fusion.cpp in Sources */, - 3080FF80951762FC08ABC1804F464293 /* serialpassthrough.cpp in Sources */, - BF546AE0F9CB72921B2FE140DC9A776F /* settings.cpp in Sources */, - AFECEE94F3A6B88A57A7BEF547D44D5A /* String+VersionCompare.swift in Sources */, - 5411E66404827A4B7786C79C9ED7F02E /* switch.cpp in Sources */, - 07A625D87175E12AE1C0FF6F9226BBD9 /* task.cpp in Sources */, - 1B5FCD9311B5A1A836596A74B652045D /* threadpool.cpp in Sources */, - 78BF048AD44317C6B630154231ACBFC2 /* timer.cpp in Sources */, - 8BBD771765F04E7674FEA4138CE57EFE /* utils.cpp in Sources */, - 4E448ECB4DF3032C769BE1C72BD4CB4E /* version.cpp in Sources */, + 38866C4F499B7C987A7BD75B79718765 /* accelerometer.cpp in Sources */, + 0B6036686D5D49DC8295B31477BB26FC /* accelerometer_bosch.cpp in Sources */, + B915520A8230401BC8CC78CBBDE26716 /* accelerometer_mma8452q.cpp in Sources */, + 353F993E28096768AC6691BF74212084 /* ambientlight_ltr329.cpp in Sources */, + CB2BD4123FAE4E8F14022AAE583AE0B2 /* anonymous_datasignal.cpp in Sources */, + 4DF390DBA13DEB209AB2D5B6A72C5B07 /* async_creator.cpp in Sources */, + 6B2B9202D95431A8D50317F45BD9FB63 /* barometer_bosch.cpp in Sources */, + E70CB0D0FC3ED4B33F3130CC11E220E7 /* Bridging.swift in Sources */, + D434CC3561FF32AAE8B406C050D9C9F2 /* cbindings.swift in Sources */, + ED60FE4915E23F355DF4D4C93B24FDFA /* CBUUID.swift in Sources */, + A3B0A71DB6AB6BB8213F93E627B45BA9 /* colordetector_tcs34725.cpp in Sources */, + 178F103D7EC8B9D156D85E4C0FC770F6 /* common.cpp in Sources */, + 4D0507DB2116EC1F1DF1FAE69E367736 /* conductance.cpp in Sources */, + 3543EA7C331150D535FFAAEA77718AB2 /* CSharpGenerator.cpp in Sources */, + 9D3A1B52DF5E8B33527CCE0276D539A3 /* datainterpreter.cpp in Sources */, + 55011E1376E4542939FEF78AC4577BEE /* dataprocessor.cpp in Sources */, + 7081CC1291BA714647C51F53AD604B9E /* dataprocessor_config.cpp in Sources */, + 18F89FCB2CB100B4BF83ADE71DF739E2 /* datasignal.cpp in Sources */, + 201A8D3006004DC77C228E3D570F6CAE /* debug.cpp in Sources */, + D5D14F31FB56F36DF45CCFD1885D33DB /* DeviceInformation.swift in Sources */, + F7D038AE8757B89603D707C7B6097AB8 /* dfu_operations.cpp in Sources */, + D735AF60094DA5DD2F4F960BC82F9CF0 /* dfu_operations_details.cpp in Sources */, + 81D37212609958C8D4AC676289AB798B /* dfu_utility.cpp in Sources */, + 9E9760F57A75A0871F52BC26A237DB89 /* event.cpp in Sources */, + 2BF42E06871308B91BDD5E17AA9753F1 /* file_operations.cpp in Sources */, + C4DC237CE3DFD050F68ED6D9432A658F /* gpio.cpp in Sources */, + 3E4265511D9A5AC5B8829F574822B343 /* gyro_bosch.cpp in Sources */, + FAA68C92A88427C050D9D3AC9E6DA316 /* haptic.cpp in Sources */, + 2628224ABCBDFEC7A2567C2A848000E5 /* humidity_bme280.cpp in Sources */, + 92CBA17BE5DAC2E731014601D2EDBFCD /* ibeacon.cpp in Sources */, + C1A011DF8AEBB597474C9980724D8DE1 /* JavaScriptGenerator.cpp in Sources */, + C56F79C59AA42C0D80590F31F7D1A471 /* led.cpp in Sources */, + 82182EB272D1C8BA20E584BF77492BB3 /* LogDelegate.swift in Sources */, + 4839B890D86547C12E28C1B9984C7BF2 /* logging.cpp in Sources */, + 3E6B292275D6F2E3CB23119707E3CF00 /* macro.cpp in Sources */, + 9A4CF5EFA1053D34BDBFABC39197DDAE /* magnetometer_bmm150.cpp in Sources */, + 33A4B1DCD85F8E6CA6A7676F01BED65E /* MblMwDataSignal+Async.swift in Sources */, + E94F87589CA2FE250F58B7CD18379E1C /* MblMwEvent+Async.swift in Sources */, + 8221AD2CFA3AE7A89AA7844C5963F651 /* MblMwGattChar.swift in Sources */, + 94F569ACF894EE4C4F077232344C893C /* memory.cpp in Sources */, + 2FE192EFAFFD820C7C6B3503F44B717D /* MetaWear+Async.swift in Sources */, + 44D90BE3E3A318A2DE2B765A539BE606 /* MetaWear+LED.swift in Sources */, + DE7F2478D252EFFD020FD8E798E30AA2 /* MetaWear-iOS-dummy.m in Sources */, + D6A5E773E3A5D7CB2EC5154110DAF031 /* MetaWear.swift in Sources */, + 748599986A02CB3A1CD0BAA30ECCFD65 /* metawearboard.cpp in Sources */, + 972B08A105885405DE062AB73B41A25D /* MetaWearData.swift in Sources */, + EDB942C181CC5A63745CB605B62BC5D8 /* MetaWearScanner.swift in Sources */, + 26995070AFF602D3165DAD25B3FAC067 /* miniz.cpp in Sources */, + 724843BE996C01CBF81F06DFD1788B2D /* moduleinfo.cpp in Sources */, + A0E0AB7C968ECA9161DA46965657DA78 /* multichanneltemperature.cpp in Sources */, + FE87D4AE37801E46E203F1095BD93F28 /* neopixel.cpp in Sources */, + 22027B209730C10381D3A5EF7998F75D /* proximity_tsl2671.cpp in Sources */, + 67E33686A3B8D4DB42F9AEDB84ADBBC5 /* PythonGenerator.cpp in Sources */, + CB9482CC3E8245F0FAB34B0D181284D3 /* responseheader.cpp in Sources */, + F80F92FF236F74F61BAD5B4D87D77420 /* ScannerModel.swift in Sources */, + 6386469E50D711E0B9F43C1109686548 /* sensor_fusion.cpp in Sources */, + 26E737FBDD43E67DA5AF78F8C5ADC85E /* serialpassthrough.cpp in Sources */, + 3CC3B7943A8409B33D729827E92A7C10 /* settings.cpp in Sources */, + 228A4AC6B7608A5222B4955AB11F08C7 /* String+VersionCompare.swift in Sources */, + 9473BD6B6B45FE028524DAD62B1DEC5C /* SwiftGenerator.cpp in Sources */, + 4E11F70E0B418E9719C2111C08FD6047 /* switch.cpp in Sources */, + 2A1068BADE74247CBE0A05BDF2E52634 /* task.cpp in Sources */, + 6FAC24D771A5F5409D7FAD1AF4108C06 /* threadpool.cpp in Sources */, + 8E3EBF7FB5A144669ACA9C2A9959014B /* timer.cpp in Sources */, + DA64460CC47A15B3F1A29518C1774F1A /* utils.cpp in Sources */, + 6AF38C98C1734B226BFBA56F13BDA5E8 /* version.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1893,6 +2150,79 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + A469FE25C3879EE2CF8BDFAEF634E718 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 2687D31A9F75D0A73139754E456628E9 /* accelerometer.cpp in Sources */, + 927E64C0AF69CB582A45203A0D5717E5 /* accelerometer_bosch.cpp in Sources */, + C4973E0B17208E272C5A5BFE5731F152 /* accelerometer_mma8452q.cpp in Sources */, + 8B2CDF9CEDE2AC82249DA185DC6987D2 /* ambientlight_ltr329.cpp in Sources */, + 077D1E27C1B0490BDD74BF5B01EEF534 /* anonymous_datasignal.cpp in Sources */, + 9CA40DFBCF4374057B3F7537C222DCF1 /* async_creator.cpp in Sources */, + 1A725BCF419EB201AAD7F0A77BF28710 /* barometer_bosch.cpp in Sources */, + ED606D536497058B453CD6D65F008119 /* Bridging.swift in Sources */, + 89CB4C55AD20FC80C63E0303C3AF2AF3 /* cbindings.swift in Sources */, + FD804026EDA455AAA55B88F26170D69C /* CBUUID.swift in Sources */, + 3559EE0E1B4664C757A4571C06775274 /* colordetector_tcs34725.cpp in Sources */, + 0B099FCA3E21389F64648E54928C0520 /* common.cpp in Sources */, + B3602E2EDFE23F1EB99EA8C2F4FC2DBB /* conductance.cpp in Sources */, + A2F8503188C73215D66397BA592E002E /* CSharpGenerator.cpp in Sources */, + 04CA6E7EF20337F2D62C7FF0406922D4 /* datainterpreter.cpp in Sources */, + E483729863968734FEB19457C32435BC /* dataprocessor.cpp in Sources */, + C3B0F4102AD116AF702E8871E4FD94AE /* dataprocessor_config.cpp in Sources */, + 555CF92B5CF0860E6382A3D99BED516B /* datasignal.cpp in Sources */, + D0E93DC0A5D5F5FDCCF75DD024B9369E /* debug.cpp in Sources */, + C97B5F59C9526A216427A8D2C00C4317 /* DeviceInformation.swift in Sources */, + D09E7CD344CB9E3667F5F2FC7695F032 /* dfu_operations.cpp in Sources */, + A9F2382185A6ACBE738DC06FA4A70052 /* dfu_operations_details.cpp in Sources */, + F5D6C9E67F7B014B8C2B60F3B15C1B06 /* dfu_utility.cpp in Sources */, + 5A90FE173B59A4604C5C032C68493EDD /* event.cpp in Sources */, + 67C66BB7856B3DE85F4E1C321B150C7B /* file_operations.cpp in Sources */, + 1FA32DF6191FEBB8583ADF7B79EC2A95 /* gpio.cpp in Sources */, + 1CAF919B7200F1B12A25BC720B8712FA /* gyro_bosch.cpp in Sources */, + 0A80CAD573E2FA8014579F77DB102016 /* haptic.cpp in Sources */, + 0014A31142F45CF8DD8F97158A923F16 /* humidity_bme280.cpp in Sources */, + 5245DE8BDA3CEF69FD3F68960DFD5212 /* ibeacon.cpp in Sources */, + 770616CEC8F8011DC53F21C2C9DC0382 /* JavaScriptGenerator.cpp in Sources */, + 24D828C45E6F71B2082242FEC478A6D9 /* led.cpp in Sources */, + 8393D965460E8FD5BF384DF8F7D92EDB /* LogDelegate.swift in Sources */, + 3DA9EC6C9DC71F587494883CEC122F1E /* logging.cpp in Sources */, + 3002C8371B19C2E0A24643652A227D46 /* macro.cpp in Sources */, + F9A34D3177F33BC772DB96A984982190 /* magnetometer_bmm150.cpp in Sources */, + 15524AF80C7687EEFE178820AA44AB60 /* MblMwDataSignal+Async.swift in Sources */, + 66AAC37B28988CAF55464DCCF661F6BD /* MblMwEvent+Async.swift in Sources */, + 8C63607B4BC81098C084E5D480C67C79 /* MblMwGattChar.swift in Sources */, + B1BD375B7DED21AC3C11F34FC9597489 /* memory.cpp in Sources */, + 06C0D6BAB5F22A3ED733A4E29D9A2B14 /* MetaWear+Async.swift in Sources */, + 8A0E255FADB60E45BA3CFAA6A2BD45E2 /* MetaWear+LED.swift in Sources */, + 91BF982A6325FF30EAB98ECE8CD7D696 /* MetaWear-tvOS-dummy.m in Sources */, + 2970478C2D5DF00B038205E8E7AFE7F2 /* MetaWear.swift in Sources */, + E942EBF8884BD390011C52E257427BBF /* metawearboard.cpp in Sources */, + 256865952B85AD41E9BD93E916A0A0DD /* MetaWearData.swift in Sources */, + B406DE7B106F854062DB2327F9B83189 /* MetaWearScanner.swift in Sources */, + 1CFB6D47E17FB3C8EDAE2F6EB8747650 /* miniz.cpp in Sources */, + DC2C04B6DF676F0A3B7FA65BE0E62955 /* moduleinfo.cpp in Sources */, + C6176DBD76096CBA50BC837DA24E3300 /* multichanneltemperature.cpp in Sources */, + 4BAF6EE2DABB8814F27CDEB8EFE5CCDF /* neopixel.cpp in Sources */, + C99E708777B6973FD80EB672C0FAFEB7 /* proximity_tsl2671.cpp in Sources */, + 42AA346EECAD5AE9FEE7DE6BA5ADB909 /* PythonGenerator.cpp in Sources */, + CE380E59B294F3007EFE85BD51E0FA99 /* responseheader.cpp in Sources */, + D47786F6190D073C88E50E931F973810 /* ScannerModel.swift in Sources */, + 2719F65CC486072C543ABE92DEBEDC37 /* sensor_fusion.cpp in Sources */, + BBB2E266B8D0F3DB111DAFBB8A099256 /* serialpassthrough.cpp in Sources */, + 598E9CADA08B465439642DDDFB6650FA /* settings.cpp in Sources */, + 9560D784E84B61CEE051D7FDB234BD13 /* String+VersionCompare.swift in Sources */, + E91CF3FED5BF4AA027E07AAC3863F4F8 /* SwiftGenerator.cpp in Sources */, + E8470C571EECD48E33CF2A08CF0DBB08 /* switch.cpp in Sources */, + 4F16EC419BE5AD01EDE65419E1258D7E /* task.cpp in Sources */, + 62C1023A5E2F8B3F34B4E6C5366A4014 /* threadpool.cpp in Sources */, + 39FCE0410151B5721D3BE3604ACA380F /* timer.cpp in Sources */, + 8F31B09D782302C8B46EA7097F5F73B1 /* utils.cpp in Sources */, + BF96E928E9BC3AD8F27382CF69C120D3 /* version.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; AB37F2088F9A0C7EF72F362AAE9BCFA5 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -1925,74 +2255,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - DBDF296BC3F44115DACBF6AC58FF3900 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 6B85ECB1B815564CEFE96EDC09980393 /* accelerometer.cpp in Sources */, - E40423342155C8FE8771AC962952A72F /* accelerometer_bosch.cpp in Sources */, - 2B9846E70ABF19B52615395BEEF0D893 /* accelerometer_mma8452q.cpp in Sources */, - EB86221592AF06DF0A14ECD1B1B604CC /* ambientlight_ltr329.cpp in Sources */, - B207248AB2BE3CD9C53DF3F983AF6B5D /* anonymous_datasignal.cpp in Sources */, - D867B278780512382B977A8AD1513F56 /* async_creator.cpp in Sources */, - 20BF41B39B59B6153EAF9F808F6D44DF /* barometer_bosch.cpp in Sources */, - 1B82B8A22FA2C51784AAADD7E8C8B48B /* Bridging.swift in Sources */, - 7E55A81CC856B32A42BE776AF461E2A6 /* cbindings.swift in Sources */, - 5E2C11270AC9A27B5F3B8B5C59971AC5 /* CBUUID.swift in Sources */, - FA991D3D61C92F9A9E7BBA437A8D21F7 /* colordetector_tcs34725.cpp in Sources */, - CBEDA069D8FFE07DBF9310B6AE834B1A /* conductance.cpp in Sources */, - 4AC74425D3226AA6985D7DBB667C2E0E /* datainterpreter.cpp in Sources */, - C29ECC91ADDB8A61BB78A1210B0B418D /* dataprocessor.cpp in Sources */, - D4DFC174F1291F63081DF68DEC00283E /* dataprocessor_config.cpp in Sources */, - 8BC1E13BEE212AE8FD7A872ADDB787FD /* datasignal.cpp in Sources */, - 11C13FE2EC6BD93B63F9D764A13158CD /* debug.cpp in Sources */, - 6C22E21AB9A2A4E64EDC69E126506556 /* DeviceInformation.swift in Sources */, - 8271A2F92207C9EE120B5B59145DE228 /* dfu_operations.cpp in Sources */, - 1246A668F45228D24F69367D70E864F6 /* dfu_operations_details.cpp in Sources */, - 8B8DF6E1707A82461D84F12E35CA12D7 /* dfu_utility.cpp in Sources */, - 7984A9E934C748F59B9F1117F26B5065 /* event.cpp in Sources */, - F2EDE8191CEA87329B753CA620C24548 /* file_operations.cpp in Sources */, - EC9BF0EB0DCA6111D9EE50ED013FEB52 /* gpio.cpp in Sources */, - 9146A0F5F526E43321157DAF500E7AE0 /* gyro_bmi160.cpp in Sources */, - DC30A9E3A306323E9E0B3377496B0FF3 /* haptic.cpp in Sources */, - 47FC98FFD348C37F94612300A41A6334 /* humidity_bme280.cpp in Sources */, - E30310298874AF97944DDD7E3082E9A9 /* ibeacon.cpp in Sources */, - E37A31B6C75F560C1F63492061D3F1A7 /* led.cpp in Sources */, - 7418E427690ED5C01886CE4578342416 /* LogDelegate.swift in Sources */, - 18EA0937F8CCE4557F3CFE38E96B1380 /* logging.cpp in Sources */, - A2F964532AA62DB11487C0549EB80E06 /* macro.cpp in Sources */, - BE671E9ED7B91747B766F44CFF66B6F8 /* magnetometer_bmm150.cpp in Sources */, - 252ECE1DC1D91808C1740B3A7E62B97D /* MblMwDataSignal+Async.swift in Sources */, - A876FE129671970C0F8177A288AC8285 /* MblMwEvent+Async.swift in Sources */, - 1CBF1919EF7D1006D74A6C168FF752B3 /* MblMwGattChar.swift in Sources */, - 16128E646B7C50F7BF6E4C2AEDCF5AD6 /* memory.cpp in Sources */, - 1BA0656DB10DB9148FAF4E92B32EEB0D /* MetaWear+Async.swift in Sources */, - 684AEAC260CC0A58F5F0C86701CEE61F /* MetaWear+LED.swift in Sources */, - E879987C4F685FA33BEDFC1D52AEE2DF /* MetaWear-tvOS-dummy.m in Sources */, - 36715F7D4231F68897612B2161B5E7C1 /* MetaWear.swift in Sources */, - 5387C60FBD25EADDC98629494925FD4D /* metawearboard.cpp in Sources */, - 9DB56599DAFDA6FD9EE2747AEA7B917C /* MetaWearData.swift in Sources */, - 628C6D944FDB6FFEEEB7E575B0AC541F /* MetaWearScanner.swift in Sources */, - 97BDDC17BF7DE69A0D308627CDAAB668 /* miniz.cpp in Sources */, - F6E99F47BF17CC3BB86149860BC07E5D /* moduleinfo.cpp in Sources */, - 347CCA92B7852EDDE7254805F8EB4852 /* multichanneltemperature.cpp in Sources */, - 8F88D4AC6B5A25FBCDBD1B9731547EBA /* neopixel.cpp in Sources */, - 9AB659B7961ED5E2CCFB089929B89695 /* proximity_tsl2671.cpp in Sources */, - 31F27E5A4B3572D873D292277DADC314 /* responseheader.cpp in Sources */, - 252E1AC346AD118A87C59598888F1E8C /* ScannerModel.swift in Sources */, - 3CA2921E80354F7D0EE0A6F03E338143 /* sensor_fusion.cpp in Sources */, - 974BEA2CE9A81D5102ACB6272A9381C6 /* serialpassthrough.cpp in Sources */, - 3C556AE08864791342C468ED2A4F5696 /* settings.cpp in Sources */, - 92407FF85BC7B3171D174ECBA1884D6B /* String+VersionCompare.swift in Sources */, - 7B2A9A2F689362926390F928987CD04C /* switch.cpp in Sources */, - 71D8C1333995F1FBDEFF21DC52C88CD2 /* task.cpp in Sources */, - 378EF77F5188972349F21A546F6B9566 /* threadpool.cpp in Sources */, - 7B27D753EF8DDA24F76814740C95B097 /* timer.cpp in Sources */, - 4DFC14C7FC4293924AB082025F703D6C /* utils.cpp in Sources */, - EE72F7F65A5FE57C361D6CCA8B4AE89E /* version.cpp in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; E6A47D077940798A313FB94A954645FB /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -2020,71 +2282,71 @@ /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 2A44EEBAADBC19F987DCBEA1C80577CE /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = "MetaWear-tvOS"; - target = 33D1D149C44676165C3F0A61912DB392 /* MetaWear-tvOS */; - targetProxy = F2EB3D14F213EE1732902684F9D79B3E /* PBXContainerItemProxy */; - }; - 2AC2E397243634B85FFF85A327E977E7 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = "Bolts-Swift-iOS"; - target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; - targetProxy = 22622854FF6DE74FAE4161671569D266 /* PBXContainerItemProxy */; - }; - 354BC88F368B60C8F6509F9EB6F836D8 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = "MetaWear-iOS"; - target = 40F96C8785C4CCB505582120F8B02D1A /* MetaWear-iOS */; - targetProxy = F4FAFCBCF7153DBB7B1CE1FEC35BE6CA /* PBXContainerItemProxy */; - }; - 8E76806BA9E3A5FB1A580C5F2B214193 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = "Bolts-Swift-iOS"; - target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; - targetProxy = 9E9D38896247D0E96704E1E4A2D8FE40 /* PBXContainerItemProxy */; - }; - A82DBA22A5A6D3632FE7F05E756D6722 /* PBXTargetDependency */ = { + 06C5BADF0D6D68D88224B9DF30C332E1 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-macOS"; - target = 60E729C6D466746E969FA5CA967B984D /* Bolts-Swift-macOS */; - targetProxy = 975D40A21B2A5BBB7C95BCC5BAAAC8B1 /* PBXContainerItemProxy */; + name = "Bolts-Swift-tvOS"; + target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; + targetProxy = 5BC6785D2AACBB742D4DB22DF11194C5 /* PBXContainerItemProxy */; }; - AF14D2BC54D60FC21D699EBAD7C3B793 /* PBXTargetDependency */ = { + 26336C6F3F075EA924871D0C7FED9B49 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "Bolts-Swift-tvOS"; target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; - targetProxy = 6D3AA6E7E9A1A3A26A786287EF2EF351 /* PBXContainerItemProxy */; + targetProxy = 245792CBF382DE157EBF64316430E63A /* PBXContainerItemProxy */; }; - B578F422AD29CFA544619051E6F18EAC /* PBXTargetDependency */ = { + 267BF41F733C9AD74BE01E7AA887E98F /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "Bolts-Swift-macOS"; target = 60E729C6D466746E969FA5CA967B984D /* Bolts-Swift-macOS */; - targetProxy = FCC7BD28ECB119AA1741F3D7479D2B44 /* PBXContainerItemProxy */; + targetProxy = C5D7716F2FC4EEC62AA874B25F424962 /* PBXContainerItemProxy */; }; - BCC0CA47564E2C8E5C3C1A8CC3D5CECF /* PBXTargetDependency */ = { + 27BAC95D8C6E3A3A38C47EBA5444873F /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "MBProgressHUD-iOS"; target = AFF87B4D6717C0C808A53295373A8AD4 /* MBProgressHUD-iOS */; - targetProxy = 4F2C90169EDF3C19FC3CB7CBA4B1D362 /* PBXContainerItemProxy */; + targetProxy = 92C68114804FA8D83E197D764C95BF5A /* PBXContainerItemProxy */; }; - C09C756C42B97F519C6B1BC74B701A5A /* PBXTargetDependency */ = { + 377561D20C875CDA493B0F4909927466 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "MBProgressHUD-tvOS"; - target = 4ACB068906486CDBA8800775159A069C /* MBProgressHUD-tvOS */; - targetProxy = 36575E9B0150998EB02BC4F5998EFAD7 /* PBXContainerItemProxy */; + name = "MetaWear-tvOS"; + target = 33D1D149C44676165C3F0A61912DB392 /* MetaWear-tvOS */; + targetProxy = B2EBE82B0FF66AE592E0DEEAA45D2C10 /* PBXContainerItemProxy */; }; - DDB82A36C88BD8A1A6249A2D80EAECAE /* PBXTargetDependency */ = { + 40C252C642D4544078AA93DC16F3A459 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "MetaWear-macOS"; target = 3EAD5FC7EE8E8D39DBDCCF711B0F7D75 /* MetaWear-macOS */; - targetProxy = 995E46AC4FBDC51D4FDBBE7DB8E06ADC /* PBXContainerItemProxy */; + targetProxy = 156FE86E1EF71429A33FA248CA0C7064 /* PBXContainerItemProxy */; }; - F56478265F11D2CFC3A653EE119942C6 /* PBXTargetDependency */ = { + 51896A97A74CF4DCF1AEA79C0CCC8F4C /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-tvOS"; - target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; - targetProxy = CF69136D9F8B36A924005CF2DE0D0948 /* PBXContainerItemProxy */; + name = "Bolts-Swift-iOS"; + target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; + targetProxy = E314C30E409D604711D71CE41E1F4414 /* PBXContainerItemProxy */; + }; + 5C1D24230C47486CB503CEA6C26844C4 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "Bolts-Swift-iOS"; + target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; + targetProxy = AAE0C3466C81C64F38536F4A913538A4 /* PBXContainerItemProxy */; + }; + 8558EEECB449BFFD318ABBEEA5B7CC05 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "MetaWear-iOS"; + target = 40F96C8785C4CCB505582120F8B02D1A /* MetaWear-iOS */; + targetProxy = 1C7BAAC7CFE214F0E12769A44B73EB39 /* PBXContainerItemProxy */; + }; + CA91457B0E031D63F2732891B4501CBE /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "MBProgressHUD-tvOS"; + target = 4ACB068906486CDBA8800775159A069C /* MBProgressHUD-tvOS */; + targetProxy = 19C0968DF1BACECFB3E048780BC0BA93 /* PBXContainerItemProxy */; + }; + F3D97938763A1BA4FBEDF0B5B6110CFF /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "Bolts-Swift-macOS"; + target = 60E729C6D466746E969FA5CA967B984D /* Bolts-Swift-macOS */; + targetProxy = 3E122BB9935D05146AC1E9A8FA6087F2 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ @@ -2113,7 +2375,7 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 4.0; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 9.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; @@ -2143,7 +2405,7 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 9.0; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; @@ -2165,7 +2427,7 @@ GCC_PREFIX_HEADER = "Target Support Files/MBProgressHUD-iOS/MBProgressHUD-iOS-prefix.pch"; INFOPLIST_FILE = "Target Support Files/MBProgressHUD-iOS/MBProgressHUD-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/MBProgressHUD-iOS/MBProgressHUD-iOS.modulemap"; PRODUCT_MODULE_NAME = MBProgressHUD; @@ -2236,7 +2498,7 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 4.0; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 9.0; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; @@ -2277,9 +2539,9 @@ }; name = Release; }; - 4824485BB27AD85F3F780A88B33C2C2C /* Debug */ = { + 55110639AF5D6D06F2DF36519AE5F2F8 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 5CA45250912406A1FB6553BB8186049D /* MetaWear-tvOS.debug.xcconfig */; + baseConfigurationReference = 71C80E8469B47A167FD49190C5F25FD6 /* MetaWear-tvOS.release.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -2302,42 +2564,11 @@ SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 3; TVOS_DEPLOYMENT_TARGET = 10.0; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; - }; - 4E694A84CD962380003BA01D1B2303D7 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 1F88C8E682E865EE51BB448027D5E4A4 /* MetaWear-macOS.debug.xcconfig */; - buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; - CLANG_ENABLE_OBJC_WEAK = NO; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-macOS/MetaWear-macOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-macOS/MetaWear-macOS-Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.14; - MODULEMAP_FILE = "Target Support Files/MetaWear-macOS/MetaWear-macOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; + name = Release; }; 56299184D4E8DB349A59E1A4AF0D57E6 /* Debug */ = { isa = XCBuildConfiguration; @@ -2461,7 +2692,8 @@ MTL_FAST_MATH = YES; PRODUCT_NAME = "$(TARGET_NAME)"; STRIP_INSTALLED_PRODUCT = NO; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; SWIFT_VERSION = 5.0; SYMROOT = "${SRCROOT}/../build"; TVOS_DEPLOYMENT_TARGET = 10.0; @@ -2483,7 +2715,7 @@ GCC_PREFIX_HEADER = "Target Support Files/MBProgressHUD-iOS/MBProgressHUD-iOS-prefix.pch"; INFOPLIST_FILE = "Target Support Files/MBProgressHUD-iOS/MBProgressHUD-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/MBProgressHUD-iOS/MBProgressHUD-iOS.modulemap"; PRODUCT_MODULE_NAME = MBProgressHUD; @@ -2531,42 +2763,42 @@ }; name = Debug; }; - 86FC65F43749AE836E1827AF03DF8384 /* Debug */ = { + 849A8DDC6AD775505BF5A5804F8D3590 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 73C56E3159D96EE5790B58981C71B08F /* Bolts-Swift-tvOS.debug.xcconfig */; + baseConfigurationReference = 2B5875CA926E5448969650D1C2F56D64 /* MetaWear-macOS.debug.xcconfig */; buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-macOS/MetaWear-macOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-macOS/MetaWear-macOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS.modulemap"; - PRODUCT_MODULE_NAME = BoltsSwift; - PRODUCT_NAME = BoltsSwift; - SDKROOT = appletvos; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MODULEMAP_FILE = "Target Support Files/MetaWear-macOS/MetaWear-macOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = macosx; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Debug; }; - A8B60F577054F5F1C9731F7DB4A6CA1D /* Release */ = { + 86FC65F43749AE836E1827AF03DF8384 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = D97D161FDB1E5FDBA4B98B11F07A7B96 /* Pods-Starter-iOS.release.xcconfig */; + baseConfigurationReference = 73C56E3159D96EE5790B58981C71B08F /* Bolts-Swift-tvOS.debug.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; @@ -2575,31 +2807,28 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-Starter-iOS/Pods-Starter-iOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-Starter-iOS/Pods-Starter-iOS.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SDKROOT = iphoneos; + MODULEMAP_FILE = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS.modulemap"; + PRODUCT_MODULE_NAME = BoltsSwift; + PRODUCT_NAME = BoltsSwift; + SDKROOT = appletvos; SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 9.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; - C115D850E0358CAECC2CDA66BB095AAB /* Debug */ = { + 99FF58B5FE52CE92C567B4B3F23C8501 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = E28F573CF8577F8D04EDCBE92A5FC323 /* MetaWear-iOS.debug.xcconfig */; + baseConfigurationReference = 7BB6060635F52EB33D6A127505F26CA1 /* MetaWear-tvOS.debug.xcconfig */; buildSettings = { - CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; @@ -2608,27 +2837,27 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-iOS/MetaWear-iOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-iOS/MetaWear-iOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-tvOS/MetaWear-tvOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-tvOS/MetaWear-tvOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/MetaWear-iOS/MetaWear-iOS.modulemap"; + MODULEMAP_FILE = "Target Support Files/MetaWear-tvOS/MetaWear-tvOS.modulemap"; PRODUCT_MODULE_NAME = MetaWear; PRODUCT_NAME = MetaWear; - SDKROOT = iphoneos; + SDKROOT = appletvos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 10.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Debug; }; - D39153C3B83E9010AB2E380F77FE1A55 /* Debug */ = { + A8B60F577054F5F1C9731F7DB4A6CA1D /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 50B6D92C920877C7145E1CD0741C4A00 /* Pods-Starter-iOS.debug.xcconfig */; + baseConfigurationReference = D97D161FDB1E5FDBA4B98B11F07A7B96 /* Pods-Starter-iOS.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -2654,47 +2883,50 @@ SDKROOT = iphoneos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; + name = Release; }; - DB9EF5EA1C2C880EB3C1115933A773DE /* Release */ = { + ABDEBCB843C2B078182FD19187E4C969 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 58DE8C555AC916CFE978BAF40295195D /* Bolts-Swift-iOS.release.xcconfig */; + baseConfigurationReference = 8180ED6AA8B350F7282D6C70A86941EE /* MetaWear-macOS.release.xcconfig */; buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-macOS/MetaWear-macOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-macOS/MetaWear-macOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; - "IPHONEOS_DEPLOYMENT_TARGET[sdk=macosx*]" = 13.1; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS.modulemap"; - PRODUCT_MODULE_NAME = BoltsSwift; - PRODUCT_NAME = BoltsSwift; - SDKROOT = iphoneos; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MODULEMAP_FILE = "Target Support Files/MetaWear-macOS/MetaWear-macOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = macosx; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Release; }; - E5B3A21D06CF2DA3CBDC083CE984D999 /* Release */ = { + D39153C3B83E9010AB2E380F77FE1A55 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 7CBBB9F49E9825D5D5836D7D193F9838 /* MetaWear-tvOS.release.xcconfig */; + baseConfigurationReference = 50B6D92C920877C7145E1CD0741C4A00 /* Pods-Starter-iOS.debug.xcconfig */; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; @@ -2703,28 +2935,28 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-tvOS/MetaWear-tvOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-tvOS/MetaWear-tvOS-Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-Starter-iOS/Pods-Starter-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/MetaWear-tvOS/MetaWear-tvOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = appletvos; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Starter-iOS/Pods-Starter-iOS.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; - VALIDATE_PRODUCT = YES; + TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; - F19F5A944FA62EB67F22D6C54C8D5009 /* Release */ = { + D4FB72E5F1AEE7F25EEAF90D69C104EF /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 034C44FC134B1A7CFABBFDAD306A8C0C /* MetaWear-iOS.release.xcconfig */; + baseConfigurationReference = 9C1B536A0A6CDFDEB99751E59899728C /* MetaWear-iOS.release.xcconfig */; buildSettings = { CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2754,33 +2986,32 @@ }; name = Release; }; - F1CD029C771392AD4C0F651FCBA7A432 /* Release */ = { + DB9EF5EA1C2C880EB3C1115933A773DE /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 8AAA17EB28F724B8C08389D19004C00F /* MetaWear-macOS.release.xcconfig */; + baseConfigurationReference = 58DE8C555AC916CFE978BAF40295195D /* Bolts-Swift-iOS.release.xcconfig */; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; - CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-macOS/MetaWear-macOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-macOS/MetaWear-macOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.14; - MODULEMAP_FILE = "Target Support Files/MetaWear-macOS/MetaWear-macOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = macosx; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS.modulemap"; + PRODUCT_MODULE_NAME = BoltsSwift; + PRODUCT_NAME = BoltsSwift; + SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; @@ -2869,8 +3100,7 @@ GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-prefix.pch"; INFOPLIST_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; - "IPHONEOS_DEPLOYMENT_TARGET[sdk=macosx*]" = 13.1; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS.modulemap"; PRODUCT_MODULE_NAME = BoltsSwift; @@ -2918,50 +3148,81 @@ }; name = Release; }; + FE01E262EAD08D4CA4D25368489EF5C3 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 1E81577EC3C916336A3E28118F7B3EF4 /* MetaWear-iOS.debug.xcconfig */; + buildSettings = { + CLANG_ENABLE_OBJC_WEAK = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-iOS/MetaWear-iOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-iOS/MetaWear-iOS-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 10.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/MetaWear-iOS/MetaWear-iOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 41B6F4E1F3AAB1B5E9EE241620DE4166 /* Build configuration list for PBXNativeTarget "Bolts-Swift-iOS" */ = { + 15C424E67904330769CB45E8AD3D58B4 /* Build configuration list for PBXNativeTarget "MetaWear-macOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - F45B395995A265A551634585FB42F7BA /* Debug */, - DB9EF5EA1C2C880EB3C1115933A773DE /* Release */, + 849A8DDC6AD775505BF5A5804F8D3590 /* Debug */, + ABDEBCB843C2B078182FD19187E4C969 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { + 3DD20A9AFA9A8B4DAC86164D78DB9E9D /* Build configuration list for PBXNativeTarget "MetaWear-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - F2BAC9DB487FDBDBFF468F993BDBCDA1 /* Debug */, - 602FBA84BEEB93F580BFFF2DA72691D4 /* Release */, + FE01E262EAD08D4CA4D25368489EF5C3 /* Debug */, + D4FB72E5F1AEE7F25EEAF90D69C104EF /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 4E6DEEC5927F3FFD1B2E8309923DFFFF /* Build configuration list for PBXNativeTarget "Pods-Starter-macOS" */ = { + 41B6F4E1F3AAB1B5E9EE241620DE4166 /* Build configuration list for PBXNativeTarget "Bolts-Swift-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 56299184D4E8DB349A59E1A4AF0D57E6 /* Debug */, - 3F6C372EA4DBB0D7C07BCB5754E8D5E6 /* Release */, + F45B395995A265A551634585FB42F7BA /* Debug */, + DB9EF5EA1C2C880EB3C1115933A773DE /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 52ED81EAEAA7108A9D332E64084D7859 /* Build configuration list for PBXNativeTarget "MetaWear-iOS" */ = { + 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { isa = XCConfigurationList; buildConfigurations = ( - C115D850E0358CAECC2CDA66BB095AAB /* Debug */, - F19F5A944FA62EB67F22D6C54C8D5009 /* Release */, + F2BAC9DB487FDBDBFF468F993BDBCDA1 /* Debug */, + 602FBA84BEEB93F580BFFF2DA72691D4 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 6067D9023D8A9FC8BC50259E1DEE0632 /* Build configuration list for PBXNativeTarget "MetaWear-macOS" */ = { + 4E6DEEC5927F3FFD1B2E8309923DFFFF /* Build configuration list for PBXNativeTarget "Pods-Starter-macOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 4E694A84CD962380003BA01D1B2303D7 /* Debug */, - F1CD029C771392AD4C0F651FCBA7A432 /* Release */, + 56299184D4E8DB349A59E1A4AF0D57E6 /* Debug */, + 3F6C372EA4DBB0D7C07BCB5754E8D5E6 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -2975,11 +3236,11 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 9866A1C965A44D1A23316F5DB3D329FD /* Build configuration list for PBXNativeTarget "MetaWear-tvOS" */ = { + 7D0D05AE63F2A8FDA25A1E97619C14D7 /* Build configuration list for PBXNativeTarget "MetaWear-tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 4824485BB27AD85F3F780A88B33C2C2C /* Debug */, - E5B3A21D06CF2DA3CBDC083CE984D999 /* Release */, + 99FF58B5FE52CE92C567B4B3F23C8501 /* Debug */, + 55110639AF5D6D06F2DF36519AE5F2F8 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; From 355da9f9e4c36291179c54ea120ac771905baf93 Mon Sep 17 00:00:00 2001 From: lkasso Date: Mon, 22 Mar 2021 14:28:44 -0700 Subject: [PATCH 2/2] releaes 4.0.0 --- Docs/source/conf.py | 4 +- MetaWear.podspec | 10 +- .../xcschemes/MetaWearDFU.xcscheme | 2 +- .../MetaWearIntegrationTests-iOS.xcscheme | 2 +- .../MetaWearIntegrationTests-macOS.xcscheme | 2 +- .../MetaWearIntegrationTests-tvOS.xcscheme | 2 +- .../xcschemes/MetaWearR-CI.xcscheme | 2 +- .../xcschemes/MetaWearUnitTests-iOS.xcscheme | 2 +- .../MetaWearUnitTests-macOS.xcscheme | 2 +- .../xcschemes/MetaWearUnitTests-tvOS.xcscheme | 2 +- .../xcshareddata/WorkspaceSettings.xcsettings | 10 - MetaWear/Podfile.lock | 12 +- .../Pods/Local Podspecs/MetaWear.podspec.json | 12 +- MetaWear/Pods/Manifest.lock | 12 +- MetaWear/Pods/Pods.xcodeproj/project.pbxproj | 3900 ++++++++--------- ...syncUtils-Core-DFU-Mocks-UI-iOS-Info.plist | 2 +- ...ncUtils-Core-DFU-Mocks-UI-macOS-Info.plist | 2 +- ...etaWear-AsyncUtils-Core-UI-tvOS-Info.plist | 2 +- ...Wear-AsyncUtils-Core-UI-watchOS-Info.plist | 2 +- README.md | 2 +- StarterProject/Podfile.lock | 8 +- .../Local Podspecs/Bolts-Swift.podspec.json | 25 - .../Pods/Local Podspecs/MetaWear.podspec.json | 12 +- StarterProject/Pods/Manifest.lock | 8 +- StarterProject/Pods/MetaWear/LICENSE | 10 - .../Classes/Categories/BFTask+MBLExtensions.h | 92 - .../Classes/Categories/BFTask+MBLExtensions.m | 96 - .../MetaWear/Classes/Core/MBLConstants.h | 196 - .../MetaWear/Classes/Core/MBLConstants.m | 222 - .../MetaWear/MetaWear/Classes/Core/MBLData.h | 87 - .../MetaWear/MetaWear/Classes/Core/MBLData.m | 144 - .../MetaWear/Classes/Core/MBLDataSample.h | 61 - .../MetaWear/Classes/Core/MBLDataSample.m | 87 - .../MetaWear/Classes/Core/MBLDataSwitch.h | 58 - .../MetaWear/Classes/Core/MBLDataSwitch.m | 54 - .../MetaWear/Classes/Core/MBLDeviceInfo.h | 68 - .../MetaWear/Classes/Core/MBLDeviceInfo.m | 40 - .../MetaWear/Classes/Core/MBLEntityEvent.h | 40 - .../MetaWear/Classes/Core/MBLEntityEvent.m | 120 - .../MetaWear/Classes/Core/MBLEntityModule.h | 40 - .../MetaWear/Classes/Core/MBLEntityModule.m | 190 - .../MetaWear/MetaWear/Classes/Core/MBLEvent.h | 393 -- .../MetaWear/MetaWear/Classes/Core/MBLEvent.m | 812 ---- .../MetaWear/Classes/Core/MBLFilter.h | 60 - .../MetaWear/Classes/Core/MBLFilter.m | 185 - .../Classes/Core/MBLFirmwareUpdateInfo.h | 51 - .../Classes/Core/MBLFirmwareUpdateInfo.m | 59 - .../MetaWear/Classes/Core/MBLMetaWear.h | 387 -- .../MetaWear/Classes/Core/MBLMetaWear.m | 1752 -------- .../Classes/Core/MBLMetaWearManager.h | 149 - .../Classes/Core/MBLMetaWearManager.m | 571 --- .../MetaWear/Classes/Core/MBLModule.h | 43 - .../MetaWear/Classes/Core/MBLModule.m | 248 -- .../MetaWear/Classes/Core/MBLNumericData.h | 52 - .../MetaWear/Classes/Core/MBLNumericData.m | 65 - .../MetaWear/Classes/Core/MBLRegister.h | 43 - .../MetaWear/Classes/Core/MBLRegister.m | 588 --- .../MetaWear/Classes/Core/MBLStringData.h | 52 - .../MetaWear/Classes/Core/MBLStringData.m | 64 - .../Pods/MetaWear/MetaWear/Classes/MetaWear.h | 104 - .../MetaWear/Classes/Modules/ANCS/MBLANCS.h | 132 - .../MetaWear/Classes/Modules/ANCS/MBLANCS.m | 155 - .../Classes/Modules/ANCS/MBLANCSEventData.h | 65 - .../Classes/Modules/ANCS/MBLANCSEventData.m | 196 - .../MBLAccelerometerBMA255.h | 54 - .../MBLAccelerometerBMA255.m | 90 - .../MBLAccelerometerBMA255MotionEvent.h | 88 - .../MBLAccelerometerBMA255MotionEvent.m | 180 - .../MBLAccelerometerBMI160.h | 73 - .../MBLAccelerometerBMI160.m | 119 - .../MBLAccelerometerBMI160MotionEvent.h | 100 - .../MBLAccelerometerBMI160MotionEvent.m | 207 - .../MBLAccelerometerBosch.h | 98 - .../MBLAccelerometerBosch.m | 92 - .../MBLAccelerometerBoschLowOrHighGEvent.h | 94 - .../MBLAccelerometerBoschLowOrHighGEvent.m | 162 - .../Modules/Accelerometer/MBLAccelerometer.h | 115 - .../Modules/Accelerometer/MBLAccelerometer.m | 83 - .../Accelerometer/MBLAccelerometerData.h | 65 - .../Accelerometer/MBLAccelerometerData.m | 68 - .../Accelerometer/MBLOrientationData.h | 56 - .../Accelerometer/MBLOrientationData.m | 82 - .../Accelerometer/MBLRMSAccelerometerData.h | 50 - .../Accelerometer/MBLRMSAccelerometerData.m | 64 - .../MMA8452Q/MBLAccelerometerMMA8452Q.h | 193 - .../MMA8452Q/MBLAccelerometerMMA8452Q.m | 248 -- .../MBLAmbientLightLTR329.h | 108 - .../MBLAmbientLightLTR329.m | 104 - .../Modules/AmbientLight/MBLAmbientLight.h | 60 - .../Modules/AmbientLight/MBLAmbientLight.m | 53 - .../BarometerBME280/MBLBarometerBME280.h | 67 - .../BarometerBME280/MBLBarometerBME280.m | 78 - .../BarometerBMP280/MBLBarometerBMP280.h | 67 - .../BarometerBMP280/MBLBarometerBMP280.m | 78 - .../BarometerBosch/MBLBarometerBosch.h | 95 - .../BarometerBosch/MBLBarometerBosch.m | 69 - .../Classes/Modules/Barometer/MBLBarometer.h | 66 - .../Classes/Modules/Barometer/MBLBarometer.m | 64 - .../Modules/Conductance/MBLConductance.h | 108 - .../Modules/Conductance/MBLConductance.m | 110 - .../MetaWear/Classes/Modules/GPIO/MBLGPIO.h | 60 - .../MetaWear/Classes/Modules/GPIO/MBLGPIO.m | 201 - .../Classes/Modules/GPIO/MBLGPIOPin.h | 178 - .../Classes/Modules/GPIO/MBLGPIOPin.m | 137 - .../Modules/Gyro/GyroBMI160/MBLGyroBMI160.h | 63 - .../Modules/Gyro/GyroBMI160/MBLGyroBMI160.m | 107 - .../Classes/Modules/Gyro/GyroBMI160/bmi160.h | 1302 ------ .../MetaWear/Classes/Modules/Gyro/MBLGyro.h | 97 - .../MetaWear/Classes/Modules/Gyro/MBLGyro.m | 65 - .../Classes/Modules/Gyro/MBLGyroData.h | 69 - .../Classes/Modules/Gyro/MBLGyroData.m | 66 - .../Modules/HapticBuzzer/MBLHapticBuzzer.h | 64 - .../Modules/HapticBuzzer/MBLHapticBuzzer.m | 88 - .../HygrometerBME280/MBLHygrometerBME280.h | 73 - .../HygrometerBME280/MBLHygrometerBME280.m | 72 - .../Modules/Hygrometer/MBLHygrometer.h | 59 - .../Modules/Hygrometer/MBLHygrometer.m | 53 - .../MetaWear/Classes/Modules/I2C/MBLI2C.h | 59 - .../MetaWear/Classes/Modules/I2C/MBLI2C.m | 57 - .../MetaWear/Classes/Modules/LED/MBLLED.h | 131 - .../MetaWear/Classes/Modules/LED/MBLLED.m | 265 -- .../Modules/Magnetometer/MBLMagnetometer.h | 59 - .../Modules/Magnetometer/MBLMagnetometer.m | 59 - .../Magnetometer/MBLMagnetometerData.h | 60 - .../Magnetometer/MBLMagnetometerData.m | 66 - .../MBLMagnetometerBMM150.h | 69 - .../MBLMagnetometerBMM150.m | 146 - .../MechanicalSwitch/MBLMechanicalSwitch.h | 64 - .../MechanicalSwitch/MBLMechanicalSwitch.m | 62 - .../Classes/Modules/Neopixel/MBLNeopixel.h | 88 - .../Classes/Modules/Neopixel/MBLNeopixel.m | 177 - .../Modules/Neopixel/MBLNeopixelStrand.h | 104 - .../Modules/Neopixel/MBLNeopixelStrand.m | 169 - .../Modules/Photometer/MBLPhotometer.h | 80 - .../Modules/Photometer/MBLPhotometer.m | 56 - .../Classes/Modules/Photometer/MBLRGBData.h | 65 - .../Classes/Modules/Photometer/MBLRGBData.m | 70 - .../PhotometerTCS3472/MBLPhotometerTCS3472.h | 71 - .../PhotometerTCS3472/MBLPhotometerTCS3472.m | 100 - .../Classes/Modules/Proximity/MBLProximity.h | 58 - .../Classes/Modules/Proximity/MBLProximity.m | 52 - .../ProximityTSL2671/MBLProximityTSL2671.h | 72 - .../ProximityTSL2671/MBLProximityTSL2671.m | 108 - .../Classes/Modules/Serial/MBLI2CData.h | 71 - .../Classes/Modules/Serial/MBLI2CData.m | 151 - .../Classes/Modules/Serial/MBLSPIData.h | 77 - .../Classes/Modules/Serial/MBLSPIData.m | 230 - .../Classes/Modules/Serial/MBLSerial.h | 102 - .../Classes/Modules/Serial/MBLSerial.m | 156 - .../Classes/Modules/Settings/MBLSettings.h | 170 - .../Classes/Modules/Settings/MBLSettings.m | 299 -- .../Temperature/MBLExternalThermistor.h | 63 - .../Temperature/MBLExternalThermistor.m | 40 - .../Modules/Temperature/MBLTemperature.h | 89 - .../Modules/Temperature/MBLTemperature.m | 68 - .../MetaWear/Classes/Modules/Timer/MBLTimer.h | 89 - .../MetaWear/Classes/Modules/Timer/MBLTimer.m | 156 - .../Classes/Modules/Timer/MBLTimerEvent.h | 54 - .../Classes/Modules/Timer/MBLTimerEvent.m | 78 - .../Classes/Modules/iBeacon/MBLiBeacon.h | 109 - .../Classes/Modules/iBeacon/MBLiBeacon.m | 198 - .../Internal/Categories/BFTask+Private.h | 70 - .../Internal/Categories/BFTask+Private.m | 119 - .../Internal/Categories/MBLCategoryLoader.h | 42 - .../Internal/Categories/MBLCategoryLoader.m | 50 - .../MetaWear/Internal/Core/MBLAnalytics.h | 47 - .../MetaWear/Internal/Core/MBLAnalytics.m | 119 - .../Internal/Core/MBLConstants+Private.h | 65 - .../MetaWear/Internal/Core/MBLConversion.h | 86 - .../MetaWear/Internal/Core/MBLConversion.m | 107 - .../MetaWear/Internal/Core/MBLData+Private.h | 54 - .../Internal/Core/MBLDataSample+Private.h | 45 - .../MetaWear/Internal/Core/MBLDependentData.h | 44 - .../MetaWear/Internal/Core/MBLDependentData.m | 74 - .../MetaWear/Internal/Core/MBLDispatchQueue.h | 55 - .../MetaWear/Internal/Core/MBLDispatchQueue.m | 111 - .../Internal/Core/MBLDownloadOnlyEvent.h | 44 - .../Internal/Core/MBLDownloadOnlyEvent.m | 62 - .../Internal/Core/MBLEntityEvent+Private.h | 53 - .../Internal/Core/MBLEntityModule+Private.h | 74 - .../MetaWear/Internal/Core/MBLEvent+Private.h | 56 - .../Internal/Core/MBLFilter+Private.h | 56 - .../MetaWear/Internal/Core/MBLFirmwareBuild.h | 61 - .../MetaWear/Internal/Core/MBLFirmwareBuild.m | 88 - .../MetaWear/Internal/Core/MBLFormat.h | 76 - .../MetaWear/Internal/Core/MBLFormat.m | 106 - .../MetaWear/Internal/Core/MBLLogger.h | 38 - .../MetaWear/Internal/Core/MBLLogger.m | 71 - .../Internal/Core/MBLMacAddressFormat.h | 44 - .../Internal/Core/MBLMacAddressFormat.m | 68 - .../Internal/Core/MBLMetaWear+Private.h | 120 - .../Core/MBLMetaWearManager+Private.h | 62 - .../Internal/Core/MBLModule+Private.h | 168 - .../MetaWear/Internal/Core/MBLModuleInfo.h | 64 - .../MetaWear/Internal/Core/MBLModuleInfo.m | 58 - .../MetaWear/Internal/Core/MBLMovingAverage.h | 55 - .../MetaWear/Internal/Core/MBLMovingAverage.m | 80 - .../Internal/Core/MBLNonVolatileState.h | 48 - .../Internal/Core/MBLNonVolatileState.m | 53 - .../Internal/Core/MBLNumericData+Private.h | 47 - .../Internal/Core/MBLNumericFormatter.h | 50 - .../Internal/Core/MBLNumericFormatter.m | 134 - .../Internal/Core/MBLRegister+Private.h | 100 - .../Internal/Core/MBLStringData+Private.h | 46 - .../MetaWear/Internal/Core/MBLTriggeredRead.h | 51 - .../MetaWear/Internal/Core/MBLTriggeredRead.m | 117 - .../Internal/DFU/MBLFirmwareUpdateManager.h | 67 - .../Internal/DFU/MBLFirmwareUpdateManager.m | 403 -- .../Internal/Mocks/MBLBluetoothCentral.h | 88 - .../Internal/Mocks/MBLBluetoothCentralMock.h | 48 - .../Internal/Mocks/MBLBluetoothCentralMock.m | 139 - .../Internal/Mocks/MBLBluetoothPeripheral.h | 80 - .../Mocks/MBLBluetoothPeripheralMock.h | 67 - .../Mocks/MBLBluetoothPeripheralMock.m | 454 -- .../Internal/Mocks/MBLMockPeripheralFactory.h | 44 - .../Internal/Mocks/MBLMockPeripheralFactory.m | 39 - .../MetaWear/Internal/Mocks/MBLMockUtils.h | 41 - .../MetaWear/Internal/Mocks/MBLMockUtils.m | 64 - .../MetaWear/Internal/Mocks/MBLModuleMock.h | 61 - .../MetaWear/Internal/Mocks/MBLModuleMock.m | 462 -- .../Modules/ANCS/MBLANCSEventData+Private.h | 48 - .../MBLAccelerometerBMA255+Private.h | 40 - ...BLAccelerometerBMA255MotionEvent+Private.h | 43 - .../MBLAccelerometerBMI160+Private.h | 46 - ...BLAccelerometerBMI160MotionEvent+Private.h | 45 - .../MBLAccelerometerBMI160StepEvent.h | 47 - .../MBLAccelerometerBMI160StepEvent.m | 87 - .../MBLAccelerometerBosch+Private.h | 42 - .../MBLAccelerometerBoschAxisReadyEvent.h | 45 - .../MBLAccelerometerBoschAxisReadyEvent.m | 82 - .../MBLAccelerometerBoschDataReadyEvent.h | 49 - .../MBLAccelerometerBoschDataReadyEvent.m | 118 - .../MBLAccelerometerBoschFlatEvent.h | 47 - .../MBLAccelerometerBoschFlatEvent.m | 88 - .../MBLAccelerometerBoschFlatFormat.h | 44 - .../MBLAccelerometerBoschFlatFormat.m | 62 - .../MBLAccelerometerBoschFormat.h | 50 - .../MBLAccelerometerBoschFormat.m | 143 - ...ccelerometerBoschLowOrHighGEvent+Private.h | 44 - .../MBLAccelerometerBoschOrientationEvent.h | 47 - .../MBLAccelerometerBoschOrientationEvent.m | 86 - .../MBLAccelerometerBoschOrientationFormat.h | 46 - .../MBLAccelerometerBoschOrientationFormat.m | 83 - ...BLAccelerometerBoschPackedDataReadyEvent.h | 44 - ...BLAccelerometerBoschPackedDataReadyEvent.m | 75 - .../MBLAccelerometerBoschRMSFormat.h | 48 - .../MBLAccelerometerBoschRMSFormat.m | 98 - .../MBLAccelerometerBoschTapEvent.h | 47 - .../MBLAccelerometerBoschTapEvent.m | 118 - .../Accelerometer/MBLAccelerometer+Private.h | 52 - .../MBLAccelerometerData+Private.h | 46 - .../MBLOrientationData+Private.h | 46 - .../MBLRMSAccelerometerData+Private.h | 46 - .../MMA8452Q/MBLAccelerometerAxisReadyEvent.h | 45 - .../MMA8452Q/MBLAccelerometerAxisReadyEvent.m | 83 - .../MMA8452Q/MBLAccelerometerDataReadyEvent.h | 45 - .../MMA8452Q/MBLAccelerometerDataReadyEvent.m | 130 - .../MMA8452Q/MBLAccelerometerFreeFallEvent.h | 45 - .../MMA8452Q/MBLAccelerometerFreeFallEvent.m | 91 - .../MBLAccelerometerMMA8452Q+Private.h | 51 - .../MMA8452Q/MBLAccelerometerMMA8452QFormat.h | 49 - .../MMA8452Q/MBLAccelerometerMMA8452QFormat.m | 105 - ...BLAccelerometerMMA8452QOrientationFormat.h | 46 - ...BLAccelerometerMMA8452QOrientationFormat.m | 54 - .../MBLAccelerometerMMA8452QRMSFormat.h | 48 - .../MBLAccelerometerMMA8452QRMSFormat.m | 73 - .../MBLAccelerometerOrientationEvent.h | 45 - .../MBLAccelerometerOrientationEvent.m | 86 - .../MBLAccelerometerPackedDataReadyEvent.h | 45 - .../MBLAccelerometerPackedDataReadyEvent.m | 82 - .../MMA8452Q/MBLAccelerometerShakeEvent.h | 45 - .../MMA8452Q/MBLAccelerometerShakeEvent.m | 90 - .../MMA8452Q/MBLAccelerometerTapEvent.h | 45 - .../MMA8452Q/MBLAccelerometerTapEvent.m | 137 - .../MMA8452Q/MBLRMSAccelerometerDataFilter.h | 49 - .../MMA8452Q/MBLRMSAccelerometerDataFilter.m | 93 - .../Modules/Accelerometer/MMA8452Q/mma8452q.h | 424 -- .../AmbientLight/MBLAmbientLight+Private.h | 48 - .../MBLBarometerBosch+Private.h | 45 - .../MBLBarometerBoschPeriodicAltitudeEvent.h | 47 - .../MBLBarometerBoschPeriodicAltitudeEvent.m | 72 - .../MBLBarometerBoschPeriodicPressureEvent.h | 47 - .../MBLBarometerBoschPeriodicPressureEvent.m | 71 - .../Modules/Barometer/MBLBarometer+Private.h | 53 - .../Internal/Modules/Command/MBLCommand.h | 65 - .../Internal/Modules/Command/MBLCommand.m | 192 - .../Modules/Conductance/MBLConductanceData.h | 46 - .../Modules/Conductance/MBLConductanceData.m | 47 - .../Modules/DataProcessor/MBLDataProcessor.h | 46 - .../Modules/DataProcessor/MBLDataProcessor.m | 81 - .../Internal/Modules/GPIO/MBLGPIO+Private.h | 62 - .../Internal/Modules/GPIO/MBLGPIOData.h | 54 - .../Internal/Modules/GPIO/MBLGPIOData.m | 133 - .../Modules/GPIO/MBLGPIOPin+Private.h | 50 - .../Modules/GPIO/MBLGPIOPinChangeEvent.h | 47 - .../Modules/GPIO/MBLGPIOPinChangeEvent.m | 84 - .../Gyro/GyroBMI160/MBLGyroBMI160+Private.h | 40 - .../GyroBMI160/MBLGyroBMI160AxisReadyEvent.h | 46 - .../GyroBMI160/MBLGyroBMI160AxisReadyEvent.m | 82 - .../GyroBMI160/MBLGyroBMI160DataReadyEvent.h | 50 - .../GyroBMI160/MBLGyroBMI160DataReadyEvent.m | 123 - .../Gyro/GyroBMI160/MBLGyroBMI160Format.h | 51 - .../Gyro/GyroBMI160/MBLGyroBMI160Format.m | 149 - .../MBLGyroBMI160PackedDataReadyEvent.h | 47 - .../MBLGyroBMI160PackedDataReadyEvent.m | 79 - .../Internal/Modules/Gyro/MBLGyro+Private.h | 51 - .../Modules/Gyro/MBLGyroData+Private.h | 46 - ...MBLHygrometerBME280PeriodicHumidityEvent.h | 47 - ...MBLHygrometerBME280PeriodicHumidityEvent.m | 71 - .../Hygrometer/MBLHygrometer+Private.h | 48 - .../Internal/Modules/LED/MBLLED+Private.h | 57 - .../Internal/Modules/Logging/MBLLogging.h | 138 - .../Internal/Modules/Logging/MBLLogging.m | 842 ---- .../Internal/Modules/Logging/MBLLoggingV0.h | 40 - .../Internal/Modules/Logging/MBLLoggingV0.m | 76 - .../Internal/Modules/Logging/MBLLoggingV1.h | 40 - .../Internal/Modules/Logging/MBLLoggingV1.m | 76 - .../Internal/Modules/Logging/MBLLoggingV2.h | 40 - .../Internal/Modules/Logging/MBLLoggingV2.m | 196 - .../Internal/Modules/Macro/MBLMacro.h | 51 - .../Internal/Modules/Macro/MBLMacro.m | 188 - .../Magnetometer/MBLMagnetometer+Private.h | 46 - .../MBLMagnetometerData+Private.h | 42 - .../MBLMagnetometerBMM150Format.h | 47 - .../MBLMagnetometerBMM150Format.m | 105 - ...etometerBMM150PeriodicMagneticFieldEvent.h | 47 - ...etometerBMM150PeriodicMagneticFieldEvent.m | 72 - .../Modules/Neopixel/MBLNeopixel+Private.h | 57 - .../Neopixel/MBLNeopixelStrand+Private.h | 52 - .../Photometer/MBLPhotometer+Private.h | 44 - .../Modules/Photometer/MBLRGBData+Private.h | 46 - .../MBLPhotometerTCS3472Format.h | 48 - .../MBLPhotometerTCS3472Format.m | 78 - .../Modules/Proximity/MBLProximity+Private.h | 40 - .../Modules/Serial/MBLI2CData+Private.h | 55 - .../Modules/Serial/MBLSPIData+Private.h | 67 - .../Modules/Serial/MBLSerial+Private.h | 48 - .../Modules/Settings/MBLSettings+Private.h | 49 - .../Temperature/MBLExternalThermistor0.h | 47 - .../Temperature/MBLExternalThermistor0.m | 64 - .../Temperature/MBLExternalThermistor1.h | 47 - .../Temperature/MBLExternalThermistor1.m | 85 - .../Temperature/MBLOnDieTemperature0.h | 47 - .../Temperature/MBLOnDieTemperature0.m | 59 - .../Temperature/MBLTemperature+Private.h | 59 - .../Modules/Temperature/MBLTemperatureV0.h | 40 - .../Modules/Temperature/MBLTemperatureV0.m | 97 - .../Modules/Temperature/MBLTemperatureV1.h | 40 - .../Modules/Temperature/MBLTemperatureV1.m | 94 - .../Internal/Modules/TestDebug/MBLTestDebug.h | 112 - .../Internal/Modules/TestDebug/MBLTestDebug.m | 201 - .../Internal/Modules/Timer/MBLTimer+Private.h | 49 - .../Modules/Timer/MBLTimerEvent+Private.h | 52 - StarterProject/Pods/MetaWear/README.md | 80 - .../Pods/Pods.xcodeproj/project.pbxproj | 2129 +++++---- .../Bolts-Swift-iOS/Bolts-Swift-iOS.xcconfig | 9 - .../Bolts-Swift-iOS/Info.plist | 26 - .../Bolts-Swift-macOS.xcconfig | 10 - .../Bolts-Swift-macOS/Info.plist | 26 - .../Bolts-Swift-tvOS.xcconfig | 9 - .../Bolts-Swift-tvOS/Info.plist | 26 - .../MBProgressHUD-iOS/Info.plist | 26 - .../MBProgressHUD-iOS.xcconfig | 9 - .../MBProgressHUD-tvOS/Info.plist | 26 - .../MBProgressHUD-tvOS.xcconfig | 9 - .../MetaWear-iOS/Info.plist | 26 - .../MetaWear-iOS/MetaWear-iOS-Info.plist | 2 +- .../MetaWear-iOS/MetaWear-iOS.xcconfig | 13 - .../MetaWear-macOS/Info.plist | 26 - .../MetaWear-macOS/MetaWear-macOS-Info.plist | 2 +- .../MetaWear-macOS/MetaWear-macOS.xcconfig | 14 - .../MetaWear-tvOS/Info.plist | 26 - .../MetaWear-tvOS/MetaWear-tvOS-Info.plist | 2 +- .../MetaWear-tvOS/MetaWear-tvOS.xcconfig | 13 - .../Pods-Starter-iOS/Info.plist | 26 - .../Pods-Starter-iOS-resources.sh | 118 - .../Pods-Starter-macOS/Info.plist | 26 - .../Pods-Starter-macOS-resources.sh | 118 - .../Pods-Starter-tvOS/Info.plist | 26 - .../Pods-Starter-tvOS-resources.sh | 118 - .../StarterProject.xcodeproj/project.pbxproj | 8 +- 381 files changed, 2989 insertions(+), 38012 deletions(-) delete mode 100644 MetaWear/MetaWear.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings delete mode 100644 StarterProject/Pods/Local Podspecs/Bolts-Swift.podspec.json delete mode 100644 StarterProject/Pods/MetaWear/LICENSE delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Categories/BFTask+MBLExtensions.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Categories/BFTask+MBLExtensions.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLConstants.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLConstants.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLData.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLData.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDataSample.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDataSample.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDataSwitch.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDataSwitch.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDeviceInfo.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDeviceInfo.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEntityEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEntityEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEntityModule.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEntityModule.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLFilter.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLFilter.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLFirmwareUpdateInfo.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLFirmwareUpdateInfo.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLMetaWear.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLMetaWear.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLMetaWearManager.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLMetaWearManager.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLModule.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLModule.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLNumericData.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLNumericData.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLRegister.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLRegister.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLStringData.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLStringData.m delete mode 100755 StarterProject/Pods/MetaWear/MetaWear/Classes/MetaWear.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/ANCS/MBLANCS.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/ANCS/MBLANCS.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/ANCS/MBLANCSEventData.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/ANCS/MBLANCSEventData.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255MotionEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255MotionEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160MotionEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160MotionEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBosch.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBosch.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschLowOrHighGEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschLowOrHighGEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLAccelerometer.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLAccelerometer.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLAccelerometerData.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLAccelerometerData.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLOrientationData.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLOrientationData.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLRMSAccelerometerData.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLRMSAccelerometerData.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452Q.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452Q.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/AmbientLight/AmbientLightLTR329/MBLAmbientLightLTR329.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/AmbientLight/AmbientLightLTR329/MBLAmbientLightLTR329.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/AmbientLight/MBLAmbientLight.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/AmbientLight/MBLAmbientLight.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/BarometerBME280/MBLBarometerBME280.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/BarometerBME280/MBLBarometerBME280.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/BarometerBMP280/MBLBarometerBMP280.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/BarometerBMP280/MBLBarometerBMP280.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/MBLBarometerBosch.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/MBLBarometerBosch.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/MBLBarometer.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/MBLBarometer.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Conductance/MBLConductance.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Conductance/MBLConductance.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/GPIO/MBLGPIO.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/GPIO/MBLGPIO.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/GPIO/MBLGPIOPin.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/GPIO/MBLGPIOPin.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/GyroBMI160/MBLGyroBMI160.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/GyroBMI160/MBLGyroBMI160.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/GyroBMI160/bmi160.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/MBLGyro.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/MBLGyro.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/MBLGyroData.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/MBLGyroData.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/HapticBuzzer/MBLHapticBuzzer.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/HapticBuzzer/MBLHapticBuzzer.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Hygrometer/HygrometerBME280/MBLHygrometerBME280.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Hygrometer/HygrometerBME280/MBLHygrometerBME280.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Hygrometer/MBLHygrometer.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Hygrometer/MBLHygrometer.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/I2C/MBLI2C.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/I2C/MBLI2C.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/LED/MBLLED.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/LED/MBLLED.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MBLMagnetometer.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MBLMagnetometer.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MBLMagnetometerData.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MBLMagnetometerData.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/MechanicalSwitch/MBLMechanicalSwitch.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/MechanicalSwitch/MBLMechanicalSwitch.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Neopixel/MBLNeopixel.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Neopixel/MBLNeopixel.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Neopixel/MBLNeopixelStrand.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Neopixel/MBLNeopixelStrand.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/MBLPhotometer.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/MBLPhotometer.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/MBLRGBData.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/MBLRGBData.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/PhotometerTCS3472/MBLPhotometerTCS3472.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/PhotometerTCS3472/MBLPhotometerTCS3472.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Proximity/MBLProximity.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Proximity/MBLProximity.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Proximity/ProximityTSL2671/MBLProximityTSL2671.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Proximity/ProximityTSL2671/MBLProximityTSL2671.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLI2CData.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLI2CData.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLSPIData.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLSPIData.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLSerial.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLSerial.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Settings/MBLSettings.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Settings/MBLSettings.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Temperature/MBLExternalThermistor.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Temperature/MBLExternalThermistor.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Temperature/MBLTemperature.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Temperature/MBLTemperature.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Timer/MBLTimer.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Timer/MBLTimer.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Timer/MBLTimerEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Timer/MBLTimerEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/iBeacon/MBLiBeacon.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/iBeacon/MBLiBeacon.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Categories/BFTask+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Categories/BFTask+Private.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Categories/MBLCategoryLoader.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Categories/MBLCategoryLoader.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLAnalytics.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLAnalytics.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLConstants+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLConversion.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLConversion.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLData+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDataSample+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDependentData.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDependentData.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDispatchQueue.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDispatchQueue.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDownloadOnlyEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDownloadOnlyEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLEntityEvent+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLEntityModule+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLEvent+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFilter+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFirmwareBuild.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFirmwareBuild.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFormat.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFormat.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLLogger.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLLogger.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMacAddressFormat.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMacAddressFormat.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMetaWear+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMetaWearManager+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLModule+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLModuleInfo.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLModuleInfo.m delete mode 100755 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMovingAverage.h delete mode 100755 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMovingAverage.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNonVolatileState.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNonVolatileState.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNumericData+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNumericFormatter.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNumericFormatter.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLRegister+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLStringData+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLTriggeredRead.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLTriggeredRead.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/DFU/MBLFirmwareUpdateManager.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/DFU/MBLFirmwareUpdateManager.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothCentral.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothCentralMock.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothCentralMock.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothPeripheral.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothPeripheralMock.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothPeripheralMock.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLMockPeripheralFactory.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLMockPeripheralFactory.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLMockUtils.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLMockUtils.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLModuleMock.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLModuleMock.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/ANCS/MBLANCSEventData+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255MotionEvent+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160MotionEvent+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160StepEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160StepEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBosch+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschAxisReadyEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschAxisReadyEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschDataReadyEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschDataReadyEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFlatEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFlatEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFlatFormat.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFlatFormat.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFormat.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFormat.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschLowOrHighGEvent+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschOrientationEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschOrientationEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschOrientationFormat.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschOrientationFormat.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschPackedDataReadyEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschPackedDataReadyEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschRMSFormat.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschRMSFormat.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschTapEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschTapEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MBLAccelerometer+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MBLAccelerometerData+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MBLOrientationData+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MBLRMSAccelerometerData+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerAxisReadyEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerAxisReadyEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerDataReadyEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerDataReadyEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerFreeFallEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerFreeFallEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452Q+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QFormat.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QFormat.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QOrientationFormat.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QOrientationFormat.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QRMSFormat.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QRMSFormat.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerOrientationEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerOrientationEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerPackedDataReadyEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerPackedDataReadyEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerShakeEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerShakeEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerTapEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerTapEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLRMSAccelerometerDataFilter.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLRMSAccelerometerDataFilter.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/mma8452q.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/AmbientLight/MBLAmbientLight+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBosch+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBoschPeriodicAltitudeEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBoschPeriodicAltitudeEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBoschPeriodicPressureEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBoschPeriodicPressureEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/MBLBarometer+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Command/MBLCommand.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Command/MBLCommand.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Conductance/MBLConductanceData.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Conductance/MBLConductanceData.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/DataProcessor/MBLDataProcessor.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/DataProcessor/MBLDataProcessor.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIO+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOData.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOData.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOPin+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOPinChangeEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOPinChangeEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160AxisReadyEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160AxisReadyEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160DataReadyEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160DataReadyEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160Format.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160Format.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160PackedDataReadyEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160PackedDataReadyEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/MBLGyro+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/MBLGyroData+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Hygrometer/HygrometerBME280/MBLHygrometerBME280PeriodicHumidityEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Hygrometer/HygrometerBME280/MBLHygrometerBME280PeriodicHumidityEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Hygrometer/MBLHygrometer+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/LED/MBLLED+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLogging.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLogging.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV0.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV0.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV1.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV1.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV2.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV2.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Macro/MBLMacro.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Macro/MBLMacro.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MBLMagnetometer+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MBLMagnetometerData+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150Format.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150Format.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150PeriodicMagneticFieldEvent.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150PeriodicMagneticFieldEvent.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Neopixel/MBLNeopixel+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Neopixel/MBLNeopixelStrand+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Photometer/MBLPhotometer+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Photometer/MBLRGBData+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Photometer/PhotometerTCS3472/MBLPhotometerTCS3472Format.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Photometer/PhotometerTCS3472/MBLPhotometerTCS3472Format.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Proximity/MBLProximity+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Serial/MBLI2CData+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Serial/MBLSPIData+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Serial/MBLSerial+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Settings/MBLSettings+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLExternalThermistor0.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLExternalThermistor0.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLExternalThermistor1.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLExternalThermistor1.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLOnDieTemperature0.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLOnDieTemperature0.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperature+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperatureV0.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperatureV0.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperatureV1.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperatureV1.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/TestDebug/MBLTestDebug.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/TestDebug/MBLTestDebug.m delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Timer/MBLTimer+Private.h delete mode 100644 StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Timer/MBLTimerEvent+Private.h delete mode 100644 StarterProject/Pods/MetaWear/README.md delete mode 100644 StarterProject/Pods/Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS.xcconfig delete mode 100644 StarterProject/Pods/Target Support Files/Bolts-Swift-iOS/Info.plist delete mode 100644 StarterProject/Pods/Target Support Files/Bolts-Swift-macOS/Bolts-Swift-macOS.xcconfig delete mode 100644 StarterProject/Pods/Target Support Files/Bolts-Swift-macOS/Info.plist delete mode 100644 StarterProject/Pods/Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS.xcconfig delete mode 100644 StarterProject/Pods/Target Support Files/Bolts-Swift-tvOS/Info.plist delete mode 100644 StarterProject/Pods/Target Support Files/MBProgressHUD-iOS/Info.plist delete mode 100644 StarterProject/Pods/Target Support Files/MBProgressHUD-iOS/MBProgressHUD-iOS.xcconfig delete mode 100644 StarterProject/Pods/Target Support Files/MBProgressHUD-tvOS/Info.plist delete mode 100644 StarterProject/Pods/Target Support Files/MBProgressHUD-tvOS/MBProgressHUD-tvOS.xcconfig delete mode 100644 StarterProject/Pods/Target Support Files/MetaWear-iOS/Info.plist delete mode 100644 StarterProject/Pods/Target Support Files/MetaWear-iOS/MetaWear-iOS.xcconfig delete mode 100644 StarterProject/Pods/Target Support Files/MetaWear-macOS/Info.plist delete mode 100644 StarterProject/Pods/Target Support Files/MetaWear-macOS/MetaWear-macOS.xcconfig delete mode 100644 StarterProject/Pods/Target Support Files/MetaWear-tvOS/Info.plist delete mode 100644 StarterProject/Pods/Target Support Files/MetaWear-tvOS/MetaWear-tvOS.xcconfig delete mode 100644 StarterProject/Pods/Target Support Files/Pods-Starter-iOS/Info.plist delete mode 100755 StarterProject/Pods/Target Support Files/Pods-Starter-iOS/Pods-Starter-iOS-resources.sh delete mode 100644 StarterProject/Pods/Target Support Files/Pods-Starter-macOS/Info.plist delete mode 100755 StarterProject/Pods/Target Support Files/Pods-Starter-macOS/Pods-Starter-macOS-resources.sh delete mode 100644 StarterProject/Pods/Target Support Files/Pods-Starter-tvOS/Info.plist delete mode 100755 StarterProject/Pods/Target Support Files/Pods-Starter-tvOS/Pods-Starter-tvOS-resources.sh diff --git a/Docs/source/conf.py b/Docs/source/conf.py index 7e44540..dc63946 100755 --- a/Docs/source/conf.py +++ b/Docs/source/conf.py @@ -55,9 +55,9 @@ # built documents. # # The short X.Y version. -version = '3.4.3' +version = '4.0.0' # The full version, including alpha/beta/rc tags. -release = '3.4.3' +release = '4.0.0' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/MetaWear.podspec b/MetaWear.podspec index 113ac54..299b984 100644 --- a/MetaWear.podspec +++ b/MetaWear.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'MetaWear' - s.version = '3.4.3' + s.version = '4.0.0' s.license = { :type => 'Commercial', :text => 'See https://www.mbientlab.com/terms/', :file => 'LICENSE.md' } s.homepage = 'https://mbientlab.com' s.summary = 'iOS/macOS/tvOS/watchOS API and documentation for the MetaWear platform' @@ -31,7 +31,13 @@ Pod::Spec.new do |s| s.subspec 'Core' do |s| s.preserve_paths = 'MetaWear/MetaWear-SDK-Cpp/src/**/*' s.source_files = 'MetaWear/Core/**/*', - 'MetaWear/MetaWear-SDK-Cpp/src/metawear/**/*.cpp', + 'MetaWear/MetaWear-SDK-Cpp/src/metawear/core/*/*.cpp', + 'MetaWear/MetaWear-SDK-Cpp/src/metawear/dfu/*/*.cpp', + 'MetaWear/MetaWear-SDK-Cpp/src/metawear/impl/*/*.cpp', + 'MetaWear/MetaWear-SDK-Cpp/src/metawear/peripheral/*/*.cpp', + 'MetaWear/MetaWear-SDK-Cpp/src/metawear/platform/*/*.cpp', + 'MetaWear/MetaWear-SDK-Cpp/src/metawear/processor/*/*.cpp', + 'MetaWear/MetaWear-SDK-Cpp/src/metawear/sensor/*/*.cpp', 'MetaWear/MetaWear-SDK-Cpp/bindings/swift/**/*' s.compiler_flags = '-Wno-documentation', '-Wno-comma' s.pod_target_xcconfig = { diff --git a/MetaWear/MetaWear.xcodeproj/xcshareddata/xcschemes/MetaWearDFU.xcscheme b/MetaWear/MetaWear.xcodeproj/xcshareddata/xcschemes/MetaWearDFU.xcscheme index bfc89eb..0a546ab 100644 --- a/MetaWear/MetaWear.xcodeproj/xcshareddata/xcschemes/MetaWearDFU.xcscheme +++ b/MetaWear/MetaWear.xcodeproj/xcshareddata/xcschemes/MetaWearDFU.xcscheme @@ -1,6 +1,6 @@ - - - - BuildSystemType - Original - PreviewsEnabled - - - diff --git a/MetaWear/Podfile.lock b/MetaWear/Podfile.lock index 01a0dde..94c631e 100644 --- a/MetaWear/Podfile.lock +++ b/MetaWear/Podfile.lock @@ -2,16 +2,16 @@ PODS: - Bolts-Swift (1.5.0) - iOSDFULibrary (4.5.1): - ZIPFoundation (= 0.9.9) - - MetaWear/AsyncUtils (3.4.3): + - MetaWear/AsyncUtils (4.0.0): - MetaWear/Core - - MetaWear/Core (3.4.3): + - MetaWear/Core (4.0.0): - Bolts-Swift (~> 1) - - MetaWear/DFU (3.4.3): + - MetaWear/DFU (4.0.0): - iOSDFULibrary (= 4.5.1) - MetaWear/Core - - MetaWear/Mocks (3.4.3): + - MetaWear/Mocks (4.0.0): - MetaWear/Core - - MetaWear/UI (3.4.3): + - MetaWear/UI (4.0.0): - MetaWear/AsyncUtils - MetaWear/Core - ZIPFoundation (0.9.9) @@ -35,7 +35,7 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: Bolts-Swift: afbbaf8c8186e7f769be4afa656949c14087ba44 iOSDFULibrary: 87c6a088cf7172e3694dfaa8305e7ded5eda2547 - MetaWear: dfdae0f084c45f7fd06c02e9e5541009ba8dd863 + MetaWear: 26e6a18edf8f138f3cc479c06b1811bb76ab9bac ZIPFoundation: 89df685c971926b0323087952320bdfee9f0b6ef PODFILE CHECKSUM: 76e04bf9dc0046e22c1dba696e3f5f4f09862e8f diff --git a/MetaWear/Pods/Local Podspecs/MetaWear.podspec.json b/MetaWear/Pods/Local Podspecs/MetaWear.podspec.json index cf194a9..cd42b27 100644 --- a/MetaWear/Pods/Local Podspecs/MetaWear.podspec.json +++ b/MetaWear/Pods/Local Podspecs/MetaWear.podspec.json @@ -1,6 +1,6 @@ { "name": "MetaWear", - "version": "3.4.3", + "version": "4.0.0", "license": { "type": "Commercial", "text": "See https://www.mbientlab.com/terms/", @@ -14,7 +14,7 @@ }, "source": { "git": "https://github.com/mbientlab/MetaWear-SDK-iOS-macOS-tvOS.git", - "tag": "3.4.3", + "tag": "4.0.0", "submodules": true }, "platforms": { @@ -33,7 +33,13 @@ "preserve_paths": "MetaWear/MetaWear-SDK-Cpp/src/**/*", "source_files": [ "MetaWear/Core/**/*", - "MetaWear/MetaWear-SDK-Cpp/src/metawear/**/*.cpp", + "MetaWear/MetaWear-SDK-Cpp/src/metawear/core/*/*.cpp", + "MetaWear/MetaWear-SDK-Cpp/src/metawear/dfu/*/*.cpp", + "MetaWear/MetaWear-SDK-Cpp/src/metawear/impl/*/*.cpp", + "MetaWear/MetaWear-SDK-Cpp/src/metawear/peripheral/*/*.cpp", + "MetaWear/MetaWear-SDK-Cpp/src/metawear/platform/*/*.cpp", + "MetaWear/MetaWear-SDK-Cpp/src/metawear/processor/*/*.cpp", + "MetaWear/MetaWear-SDK-Cpp/src/metawear/sensor/*/*.cpp", "MetaWear/MetaWear-SDK-Cpp/bindings/swift/**/*" ], "compiler_flags": [ diff --git a/MetaWear/Pods/Manifest.lock b/MetaWear/Pods/Manifest.lock index 01a0dde..94c631e 100644 --- a/MetaWear/Pods/Manifest.lock +++ b/MetaWear/Pods/Manifest.lock @@ -2,16 +2,16 @@ PODS: - Bolts-Swift (1.5.0) - iOSDFULibrary (4.5.1): - ZIPFoundation (= 0.9.9) - - MetaWear/AsyncUtils (3.4.3): + - MetaWear/AsyncUtils (4.0.0): - MetaWear/Core - - MetaWear/Core (3.4.3): + - MetaWear/Core (4.0.0): - Bolts-Swift (~> 1) - - MetaWear/DFU (3.4.3): + - MetaWear/DFU (4.0.0): - iOSDFULibrary (= 4.5.1) - MetaWear/Core - - MetaWear/Mocks (3.4.3): + - MetaWear/Mocks (4.0.0): - MetaWear/Core - - MetaWear/UI (3.4.3): + - MetaWear/UI (4.0.0): - MetaWear/AsyncUtils - MetaWear/Core - ZIPFoundation (0.9.9) @@ -35,7 +35,7 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: Bolts-Swift: afbbaf8c8186e7f769be4afa656949c14087ba44 iOSDFULibrary: 87c6a088cf7172e3694dfaa8305e7ded5eda2547 - MetaWear: dfdae0f084c45f7fd06c02e9e5541009ba8dd863 + MetaWear: 26e6a18edf8f138f3cc479c06b1811bb76ab9bac ZIPFoundation: 89df685c971926b0323087952320bdfee9f0b6ef PODFILE CHECKSUM: 76e04bf9dc0046e22c1dba696e3f5f4f09862e8f diff --git a/MetaWear/Pods/Pods.xcodeproj/project.pbxproj b/MetaWear/Pods/Pods.xcodeproj/project.pbxproj index e771d21..10127fc 100644 --- a/MetaWear/Pods/Pods.xcodeproj/project.pbxproj +++ b/MetaWear/Pods/Pods.xcodeproj/project.pbxproj @@ -7,923 +7,902 @@ objects = { /* Begin PBXBuildFile section */ - 00A82355034F26A4E7961A3AF89E1E45 /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D1BEC515335A4A180470B94CAF11CDB7 /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 00ECB95D9E1BE0B3A6969D10E551FD83 /* PythonGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3EC1C6520D805971B93CEE5E29C7C7B8 /* PythonGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 012B01012542A4CBB87158298D49A506 /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEF0743B28C3D9777CDD2245E75150D7 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 032AD90C350C65248D85DD7B25E5EB6E /* DFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBC0B44C8FB29FE5F9CAA480D7FC5222 /* DFUServiceInitiator.swift */; }; - 03351672B147CBDEFCFD62387D16B043 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1055045CA95BD2B47B08BD783A980121 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 03CFA0B8079E6576425F4835DDE77ED0 /* JavaScriptGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC74A8C206ABDA0979899B483C9DD1AA /* JavaScriptGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 00E32E8A443F8A3AF0D0236B71141EAA /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EB8542490FD75B1B911315898FEBB4D9 /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 01AD46AF7B18FE8665526613202E5064 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB0B5A7F5BA80F54C48F6FA85802E3D0 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 021717E57B0AE1B56DBC0633381DB387 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BF6180B8C72293B7BA5EB27B28FA560 /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 026D8CF7C9F62B9CFE9096FC01DC9C08 /* MetaWear+Mock.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA367DEDE4621CF8CD3DAE036431A3E1 /* MetaWear+Mock.swift */; }; + 02BE4B231339295098C7331807465F26 /* SecureDFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC664CACE8271F6C72F9F07D47468A39 /* SecureDFUService.swift */; }; + 03181B22BDD0C017D13C7F3040654259 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 88A6C13CB83BD51E74443DB16CBF224E /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 041123E8BDF49911B13644D05184CA05 /* TaskCompletionSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = E43893E60AA833FD5CE59855FFBCA9CF /* TaskCompletionSource.swift */; }; - 045BA212BE52B8EDE106B91E414DB964 /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D79846913C5C3DB9B906408EA67CDBE4 /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 04516D86101442EEB7653E4DDE856285 /* DFUPeripheralSelectorDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A26C1C50C1866FDC9FA4437D526F6038 /* DFUPeripheralSelectorDelegate.swift */; }; + 046E3E78DF3DA4E10DEC7A4780DF52A7 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8707E77673C38369948433F76F81F16E /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0482BE2A682117148EBB773E38D0C092 /* DFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBC0B44C8FB29FE5F9CAA480D7FC5222 /* DFUServiceInitiator.swift */; }; + 04B763707CCEC4BA1105A677AF571A1A /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 978459E240560B17507244A6549F4229 /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 04CFB049951BFA1C1CA79493922CF400 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A4E0213149863042429885F1816E57F1 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-dummy.m */; }; - 0581438223EEBD568ADA85ACD5FF8778 /* Data+Serialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = C84784ABFBF917BB22BF2077A55A8FAA /* Data+Serialization.swift */; }; - 05DA9279F033674F3AD45EAA20C12B06 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1FEAD48A2DC9006470AEA6A870085C76 /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 064CE382AE40C174C1DC8BA796B5AE05 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5B2809F72B0544508607C4E1AD38065 /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 06709CCD489C7FDE4DE94255D49DE405 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82D6BB676A3452CF143E065E861A4B89 /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 069EAE37E2606DE282CD5FAD098BCB58 /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7D0FDF991487027613374C0F7701226 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 07F7F397A569ABA0B41AB17F699C0312 /* ZIPFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 310CE7870B01D5B716AC8334A7A0D3D8 /* ZIPFoundation.framework */; }; - 080AF0D1D25D654E04B7B5A1891C52E5 /* SecureDFUPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8A925FEACFBE227CEDCF7149D4EF12F9 /* SecureDFUPacket.swift */; }; - 0936DDEF5A4B9650C5ECD5C663515D2B /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 07D8C4BF82FC47746C3493658B1DAC84 /* CoreBluetooth.framework */; }; - 093DA195BCD14D219407DA9BCE156938 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A6F258AF5B520A69684A5F72D7F51E17 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m */; }; - 093FC2EF5E8C383EC4AF8679223C2119 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FCF2F5A5C94712F9BAE705347593E4A /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 0B27031AAACDA81E8E849E219A1F4CDE /* CSharpGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DB1185C771E66593125CF8CDD0EB8DB0 /* CSharpGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0556ABB6371299E202F942E90D449A09 /* ManifestFirmwareInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = F50536BAD847A62129397161AB3353B0 /* ManifestFirmwareInfo.swift */; }; + 07322D9EAC2DCA68C1BCA8CAE4F2B03A /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1BAE33B69D5B09EF1A9FC27B6F9104C /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 081992832B423EC0CD42950454E74D26 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B9B52711F5B464ED2C018FC5CA48EC24 /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0822C6349344E3701C73A27AD7F55B3C /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6326D13C7B229BA3C76C140DF0348018 /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 08B7D3A363B58703A42D68E6BE6C728D /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A87DEF4B413807CE32269EAD7DB2BE27 /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0A8C66AE0602BBAC0F56EFF3BF331D23 /* DFUServiceSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 804F804E9F5EF675B36052B75A24FEBA /* DFUServiceSelector.swift */; }; + 0B0F24CA86CD28287A05F7E4F686C214 /* DFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBC0B44C8FB29FE5F9CAA480D7FC5222 /* DFUServiceInitiator.swift */; }; 0BEFDFD1AD7C3D5C5736F8A438F170FA /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FB77A25C245095329AF91D690A2BE70A /* Foundation.framework */; }; - 0C88FBBCF68DBA46CCB126C90BD75594 /* DFUServiceDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8C525780CB40473CE06F0E9500FE182 /* DFUServiceDelegate.swift */; }; - 0E29E57AF6AC1AD2248240AB57A012EB /* DFUPeripheralSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9059A703233CE911E22855733F6AFEB /* DFUPeripheralSelector.swift */; }; - 0EDEAD15EA76CF20CC0CF0E1A767568C /* IntelHex2BinConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AE8742872C84BB77BE446ECCB5F2089 /* IntelHex2BinConverter.swift */; }; - 0FBBDCB27DF56346CC85D9E88F62CB52 /* Archive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57E06254CA848BA44D929B9100D93F9C /* Archive.swift */; }; - 0FE210F8580B0064D862A9029568F087 /* SecureDFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC664CACE8271F6C72F9F07D47468A39 /* SecureDFUService.swift */; }; - 117E14EB164B7AF6F08D59EE5CA9F5F3 /* FirmwareBuild.swift in Sources */ = {isa = PBXBuildFile; fileRef = B69D599AAFD0A9D835E0CEF64BE9814D /* FirmwareBuild.swift */; }; - 11E33FD9ACC6CF62AE80A452494679D9 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 07774B397919BA3B2A371F29C47F646E /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m */; }; - 121CE3D082190454BE774638A91B9043 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C22749D2B8E00599A0F94B486EEAF752 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 12570F94509FE8973817A526E54481D6 /* SecureDFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = A27370D863F0F27023F575D449AFBB9A /* SecureDFUPeripheral.swift */; }; - 126B864FD5B9D3B79BA674EEBF8131E8 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; - 135DD576FCB7F363D39568A049B0AFBB /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 004F2B2F88E223F15641B8434DF89667 /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0C108E89FBFF5D78BDD35FA0503B93C5 /* MockModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BD2D2BB4D92665D01ACDFCE31BBC15B /* MockModule.swift */; }; + 0C10B294F0BB0109DAE218DDAF02A0C7 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AD72C1111CD9303EAB58262CB8E268FA /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0D1C5418FAA82415F24CC468476B7407 /* SecureDFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3278B1D6E8FB851C63599138931CEC3F /* SecureDFUServiceInitiator.swift */; }; + 0D602DD7A7806EF2F07419DEFC5AF091 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C11BD0E842D22950988BD3A9316D7FE0 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0E1F0D3D18BA15A0EBC692B3D0B13B42 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 88A6C13CB83BD51E74443DB16CBF224E /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0E43178E7D27E6304DEFE68DCCF063CF /* SecureDFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E2C83FD3D501DC7B7DB4B19590A9D15 /* SecureDFUPeripheralDelegate.swift */; }; + 0E5DC1CC1F3A25E8392E6F509FC578E0 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 780308159364B1C8AB364E6071F61F24 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0EA95E5EBDE48B344E571DA64C459062 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB0B5A7F5BA80F54C48F6FA85802E3D0 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0F6B7F2BE1AA107C6237CF897A0E2374 /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 10539D2C6125287AB283CED2EE8DBAEA /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 129BBF8CE4F02F0E56C919F6A6199DE4 /* LoggerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BD2DBCCF615B8BBB6F900E4540C8EF5 /* LoggerDelegate.swift */; }; + 1372F0E76D14B60F164851F9817FA119 /* SoftdeviceBootloaderInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 692329CE0A9A63D15123D684C9F2AA34 /* SoftdeviceBootloaderInfo.swift */; }; 1487CDA55700F066A6F326E5AD450FD4 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B8FCB726B5BF324DE5E3DBF04E36E12E /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-dummy.m */; }; - 14AF0B18A01840828ED5089E3379B526 /* DFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 920B7554281F1A16BF53CD2B6B7089FD /* DFUPeripheralDelegate.swift */; }; - 15D53A1770AA72CF04FF651B94F63545 /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D1BEC515335A4A180470B94CAF11CDB7 /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1553937004C3E64B19CD89EF8AFE47F8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; 16B508B61B48E8DF6907A90F93B9A048 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; - 16E1904BB69FE6FD2073EAC3988F1721 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CFD843C82D19CF619F26E922A6612134 /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 1713D10F393973A8851D6AAD37C2C081 /* Task+ContinueWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78CD9B634A9BABA2318BE06485DDB6AF /* Task+ContinueWith.swift */; }; - 172113A26B091458004E8C76139B865F /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73948BE2C0569FB3BF68F6A4A189B95F /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 17A2DFBBB983925803335F35C3CFDDE7 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FE4DE47D314987E0F452D7DCD0416DB2 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 17A4A4D8C600CB7DC5794D87C33EA580 /* Bolts-Swift-watchOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = F7B8882026B8D908567C13E297BD6436 /* Bolts-Swift-watchOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 17C0653B080B861ACBD6C6078FC8B5AD /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F69F488242700F24D60C5C01A27E5F9C /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 17EEFEFFC71F0AC6D1D8B82606F976B2 /* Task+Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2DE5AFD8F526047908EF1A6F8FDAE4E9 /* Task+Delay.swift */; }; - 188275890C0D3FCCD5A67D9DD8CC65B2 /* DFUPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21E0B5E72AE22F9985373E6D5A602217 /* DFUPacket.swift */; }; - 18D1A8C4E85B6FBBB2079E8C5183FF3E /* LegacyDFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDF52030FE274FEC72DE7FD300FE48D3 /* LegacyDFUPeripheral.swift */; }; - 19432894F6F393BF6771768267E52499 /* DFUVersion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AFE0686F81066118B61F4F390340CB1 /* DFUVersion.swift */; }; - 1A28AB5C7E329BE1AB1AC09F80307C29 /* PythonGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3EC1C6520D805971B93CEE5E29C7C7B8 /* PythonGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1A7B4E7FC45FA90D0DD30F0D940FBB4E /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 028E0B50105A41869AE9683AA8EF087F /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1810A732F67791BA6D3D6B4FCCF81AA0 /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6326D13C7B229BA3C76C140DF0348018 /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 18409AAD5C7E82D5049A2610FABD7FD9 /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9481942C645F5AF023E048963705B7E7 /* CoreBluetooth.framework */; }; + 18746315DEC08998CA60E6F187AA223E /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 38FEFFA5A3AF15ED1E41DCFDD70C86E7 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1973FA877A74D15C0A06F194EEBBE235 /* Archive+Writing.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63E0C68FB96F88E28D9871C8FB7C1C98 /* Archive+Writing.swift */; }; 1A85E25520CBEB05A133319ACEA5A56C /* Task+WhenAny.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88D9DEE679B18E5C458D4795D10E1890 /* Task+WhenAny.swift */; }; - 1A98E01F9B9D25C199A6BF3CBCA8557A /* FirmwareServer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80C496E7C90E9994CC0590530ADB9D9C /* FirmwareServer.swift */; }; - 1B259F8D638758507076CF53E0D5F385 /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */; }; - 1B3C6EDA792A5929A9D79A718B93CB20 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 48D266E399A4AD8C456953D262CD9B0E /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1C2D4B3CD377BE734D743D0037859335 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BF6180B8C72293B7BA5EB27B28FA560 /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1C42D298B1810B38EF8942B962BD20B9 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F69F488242700F24D60C5C01A27E5F9C /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1C5D66653EB9C9204FAB73D5DB0F3EFD /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61374778F4B640C23FAAD145DB6958F2 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1CADD7A896823EF5185631C6D57635F1 /* ButtonlessDFU.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F2F9B8E65A9F447C9A12C27A37C2C8F /* ButtonlessDFU.swift */; }; - 1CB7EF48662BF5C27BDE484D646E0191 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E0362A7CDF8C01C9D967F8417265F7C /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1E952BF9706F06DFB81D9EAB50CF6177 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 150D817BA455C92B497629C15EB2969A /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1ECAE15DEE3FD1676A8943959E89504C /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1055045CA95BD2B47B08BD783A980121 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1B9E999471EF4743590F8A43BC49A618 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB0B5A7F5BA80F54C48F6FA85802E3D0 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1BDE297B97A60995D2EF6380AF500AC3 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AD72C1111CD9303EAB58262CB8E268FA /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1C0AFF10495A592C709D320057676484 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B9B52711F5B464ED2C018FC5CA48EC24 /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1DB4558E701401C9CB2E6A1641701A32 /* Data.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63054630F91FFCD9A2020927E552B534 /* Data.swift */; }; 1EDB8323EBC82C8A31DFA333E0A9AD8A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F7D4003C2F97282E3C82E5711C7F8C46 /* Foundation.framework */; }; - 1EE2372DC27AA0C43FEC83A5C1E13963 /* LegacyDFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1381FD8CC75E8C4F6F506D2A5535FB9E /* LegacyDFUPeripheralDelegate.swift */; }; 1EFD82B98118369A8821D338DC1E85B2 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 225DB3D8DBC28CCF0A73CEFF033FFE1C /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-dummy.m */; }; + 1F5E15976D948FEBBE265FC121F0BE7A /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = AB0670C7A0A1C99783AB3946244DD414 /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 1FC046B9C2C69BDD0CB06413583C42A6 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 998509386935A1962593008EF42F79F9 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 204947F04739C6681887B98456BB600D /* Pods-MetaWearIntegrationTests-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = AE0358D314C8BEEE6DF294E6CFBE3DCC /* Pods-MetaWearIntegrationTests-macOS-dummy.m */; }; - 20591D483411BD8648DF767C557D51DE /* ZipArchive.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDAB73F304877FD4585F078B919261FC /* ZipArchive.swift */; }; - 20864E5EE9812F5F3E0BC8EED1F520D3 /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = BFAA633966C968BF70362AFA2B44336F /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 20BAA558AF83D38B7956AB017E79D089 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C0FFFB6700BEC9C36BFFEFCA6F08B772 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 20DD8171D33AE77417653D045FD65319 /* FileManager+ZIP.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60BEE52C89C924410FA20A8C8FDEFDA7 /* FileManager+ZIP.swift */; }; - 21CC738C0902AC17332D3AE2731C3029 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F7D4003C2F97282E3C82E5711C7F8C46 /* Foundation.framework */; }; - 21CEE4FD5D05B2A684D87854BEA96076 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8BC482C61CBAE6CB05B493775955BDE /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 22419F8867C810F51EF0CC7AF432FB83 /* MetaWear+Firmware.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD76483586B514A5C673056B7A731FE8 /* MetaWear+Firmware.swift */; }; - 2342BB1503FC3BE2631E0ECB2B4CEE63 /* LoggerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BD2DBCCF615B8BBB6F900E4540C8EF5 /* LoggerDelegate.swift */; }; - 23717EDBDE66946CC5ABD25186F96940 /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 262B515345D9A281E9DB178889EAB01F /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 20AEBD979A60C765A1D64DCDB5F8D867 /* DFUVersion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AFE0686F81066118B61F4F390340CB1 /* DFUVersion.swift */; }; + 20D81E15DE3D341130BA23A8860664FF /* LoggerHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 301FE6ECD82EE6FB8E3F50AAA7F50766 /* LoggerHelper.swift */; }; + 213A585F22B024A32506A425EBA8D0D3 /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E90E62927116C1466743A0A90469D57F /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2181D3C3F1164726619280DADACE1D37 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 48BAF38843147CF61083BD1B5E606613 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 21A49072C92B27E5138FE43F37D2E2CB /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BF6180B8C72293B7BA5EB27B28FA560 /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 21C9713CBC1EC99C56B270E3F781BF3F /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8638215484973EEFECD6AB74476B075 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2221EF07AD9EA07D21AB339401CBF99A /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 63637A0110ACD81470E07A8160E1A6BC /* CoreBluetooth.framework */; }; 23A0B9D741DA0D1FA0ECE34D63CA5057 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; 23F582A77E601903F5D0ED4C9F4003C4 /* Pods-MetaWearIntegrationTests-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 3ADC0D7C3B1D964CF4DF6C520CF6DD63 /* Pods-MetaWearIntegrationTests-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 247DF9AD5289D103B7F22A2F5A930A27 /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7D0FDF991487027613374C0F7701226 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 24A23AB2F7913D2EB87D6FD27603B43E /* DFUStreamBin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1170D3A9194D58C03AC23B4BD8B40D36 /* DFUStreamBin.swift */; }; + 24688CF4B5BFC10FA2CC799452829A36 /* DFUFirmware.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DB01C7B4CE59D18C6D04EB428451795 /* DFUFirmware.swift */; }; + 24B20B06C09356413260CA896A97E22A /* DFUUuidHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = F85B983DE4FFFAFAF0F7E87BB5CE2FF9 /* DFUUuidHelper.swift */; }; 24FA742C4FAC73CBA8E64B0913612E40 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CA99C2A255521A7E4969446E2550F350 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 2575109DD723D9A21749C10103DEBEC5 /* Task+ContinueWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78CD9B634A9BABA2318BE06485DDB6AF /* Task+ContinueWith.swift */; }; - 260059DF33C18038565B57D41636D093 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 687FF210AC568843A9F8C1CDA491ECC7 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 261E2F3792214C4D434F1E826BFF268B /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 262B515345D9A281E9DB178889EAB01F /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2674F1682601B71874AE8D8CC995E2F8 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8BC482C61CBAE6CB05B493775955BDE /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 26B93A39DB6DBB7AD878332626A0B876 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C0FFFB6700BEC9C36BFFEFCA6F08B772 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 27021D0DF0BA13AAAEA7B952047BDF05 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1BAE33B69D5B09EF1A9FC27B6F9104C /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 2707350FDCEED6E2032F8415D4A47217 /* Bolts-Swift-watchOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A3FAF8D54517745664357BCB15561320 /* Bolts-Swift-watchOS-dummy.m */; }; - 27E5E1FB12794AE58BCC10FE671B3FB5 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C0FFFB6700BEC9C36BFFEFCA6F08B772 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 27FC097670EF6169E41D06FAE06F663F /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7B6FF697AF15FAD5B996B730D32226F /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 28165A59FF99E7B34602554A862862FD /* SwiftGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B2DFE15A0E62BE06D2CF9D4AE53F927D /* SwiftGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 28AA1948C15F28A8B93DD71122D901EB /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2EFE9D6C87239704BBC5413982E2438 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 29132300AE6148203E0C2729AA2C8BB3 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 20B0727D623002B7F4C82B61F2E53BCE /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 292D328A092F8BFEDF5AAB807F193EBD /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AB700AD1E77526C1584F3E4CA6A880C /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2968BC36D6BD17ED1B3473B365EFF462 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FF2AA8233135C47CC5AC6C25FBD6A516 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2B3093F48320EE09AAC65B70C3F78A19 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60E262EDBD11C805D5B628157982C484 /* MblMwEvent+Async.swift */; }; - 2C1907D0785CFB6C1FC5C2C0071EFA28 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; - 2D0F244586918C3F6A39CCA821E0C0AF /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CFD843C82D19CF619F26E922A6612134 /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 274FE3163989CAA59B484249A9EFA0F7 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7B6FF697AF15FAD5B996B730D32226F /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2819B8C5B327749AD70B48033EDB1131 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC6B95B06278269E39C133FD158C980D /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 29F9C9652FE1D3A8BE4C9857C5731D76 /* DFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7ECD3097C2FDB03555157378AE408FC1 /* DFUService.swift */; }; + 2B9FA166075DDE593000E1C0AB69D867 /* LegacyDFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1381FD8CC75E8C4F6F506D2A5535FB9E /* LegacyDFUPeripheralDelegate.swift */; }; + 2BDD154014295070CD0BB00D69EC59BE /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2165E6CEB6AD910CF5F0459F42C12B2 /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2CE2125F9A36FDBCD0DA30E2B74DD53D /* Double.swift in Sources */ = {isa = PBXBuildFile; fileRef = 035E0D2F7DDEC194A3C14B7536168D1E /* Double.swift */; }; 2D2440F7B4FA277B9D9C5789257A8902 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; - 2D30E37BBB05F6E5EE52C864109DB47A /* FirmwareBuild.swift in Sources */ = {isa = PBXBuildFile; fileRef = B69D599AAFD0A9D835E0CEF64BE9814D /* FirmwareBuild.swift */; }; - 2E2C24531F94DA5B766F87CA8B1BB4F3 /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2C439C24DEA34C216997BFDB48274C53 /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2F22343EC96BC393C5FA93697BBAE4E7 /* LegacyDFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A61E82795569E9BA7E8CC6376F61A26 /* LegacyDFUExecutor.swift */; }; - 2F5B3DDDDE2CE882B690B114B82955E5 /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 028E0B50105A41869AE9683AA8EF087F /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2DA05BE2B17AA16857A8E6564263D090 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC1FBF6EFB976B89E85A523A5D3F22A9 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2E5A12B4E732159DCD4E731A32C73FDB /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F886A5936801A6689720AC5377AE0ABB /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 2FF24404FE5B2EB0AAF24C6CC239A360 /* Task+Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2DE5AFD8F526047908EF1A6F8FDAE4E9 /* Task+Delay.swift */; }; - 308B17F7F30282DF493B081CC6A5FD8A /* DFUFirmware.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DB01C7B4CE59D18C6D04EB428451795 /* DFUFirmware.swift */; }; - 30B1037AEE08E9DFF03B5458E5D9AEE3 /* iOSDFULibrary-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = EE3D0F73A6653041193A830938A672A5 /* iOSDFULibrary-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 31B3118D1630004A69B06C8287AEB8B6 /* ManifestFirmwareInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = F50536BAD847A62129397161AB3353B0 /* ManifestFirmwareInfo.swift */; }; - 31B350AF75DC001266B48EC6C6993119 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3AF105819F0CF98F677510BD677E9C91 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 330A63C562FA1E5B405D7E923242BA00 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B4ECB2BFD9EC71AEC3128B318A9BA8CB /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 33100723B5271F7198C07886C025E42A /* Archive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57E06254CA848BA44D929B9100D93F9C /* Archive.swift */; }; - 336FEFCF9EE2E66243E6A6278ED6EB8C /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AB700AD1E77526C1584F3E4CA6A880C /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 337ABFE1F4D627B5183D0E4F51EA5C4C /* LegacyDFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1381FD8CC75E8C4F6F506D2A5535FB9E /* LegacyDFUPeripheralDelegate.swift */; }; - 342787FC1F70B003C274C5B33794B812 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C116B2146C21545E9C6286225384C304 /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 347BB2B062D84D6B7C9B09AFBC09FB91 /* DFUServiceController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE1BFCB3F1461B4BFBEB3D809F511712 /* DFUServiceController.swift */; }; - 35595B3C00C29CE6E079A0E81C17E1F7 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 004F2B2F88E223F15641B8434DF89667 /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3197A95CCFC61C2C41152F8D985617BF /* Archive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57E06254CA848BA44D929B9100D93F9C /* Archive.swift */; }; + 31991D2555E6F1774C9782B9425ACFA4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; + 322C17E5837160838F5BD05FA58BF301 /* FirmwareBuild.swift in Sources */ = {isa = PBXBuildFile; fileRef = B69D599AAFD0A9D835E0CEF64BE9814D /* FirmwareBuild.swift */; }; + 3335DCC77261FD1EB46CF4F44ABC385E /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1348C828ED80F76140C635967D764E8B /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 336729F537CDAAFD63FA014948356178 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9610CBAC873B84393551C455F94393AB /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 34138906B9D794D6AC56BD2E080285E5 /* SecureDFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A20403D099EE1D872F28342554B7D6E /* SecureDFUExecutor.swift */; }; + 34669597F64A6CE5E6CAB296721BB8B9 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 780308159364B1C8AB364E6071F61F24 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 34BA1C937AC3896F20A62F755E801A8A /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 32A9D2FFDC176644FDA8EA8A07E27CEC /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 34D2166EBBA5620E0B8C0606D1176817 /* DFUFirmware.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DB01C7B4CE59D18C6D04EB428451795 /* DFUFirmware.swift */; }; + 35839139969BC650DCC6055ADA6B3E54 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9EF25ABDC4C7F400A50E64C961ED9408 /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 35A5230890F7C81159165C42EA4D753D /* DFUStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B7BBB487AAC8C4468FD0CFD70FBC0C8 /* DFUStream.swift */; }; 3611004D23F30DCBD3C8247A2AF37FDA /* Pods-MetaWearIntegrationTests-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2BA85EFA3BF15A9489343A185CEA6A26 /* Pods-MetaWearIntegrationTests-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 36EB6DF354242389CF80833E6E8193F2 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 871C3E184118A1C65B2DAEAA3016D788 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 385ACA3C7FEE0EDD7DD83B25128433E7 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C7D96C1FB9ED1E49325F6E92F2AE4F33 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3888442616EB83A0FB442B67A69805C2 /* SecureDFUControlPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F84DDC719FC0880B153F57CEF28B283 /* SecureDFUControlPoint.swift */; }; + 361E62503BE2EE40AC3DFE3EBD8C7F72 /* Double.swift in Sources */ = {isa = PBXBuildFile; fileRef = 035E0D2F7DDEC194A3C14B7536168D1E /* Double.swift */; }; + 3639C170BF72BDA54679BE20B76A7BB0 /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 72679D30CADB9E4EDCA6F731B66600DA /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 36570CDB3CBA7FF4D0794AA65C7F44EE /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 978459E240560B17507244A6549F4229 /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 36752C7C4EF3146F22BDC09D52BED99E /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = F28F4FB76B2B65A671A7F0342CC64711 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3736D133B4AA89CE1D688E2024FA810C /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2B995D2F14F8DEC62B8EC6A0C94DA4C0 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 37992E19FDF6212E258F24EEF6D1409A /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C6E0959E06A9BC6D49824DCEC497E3B /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3839A38E4982FF357678DAA026E67272 /* ManifestFirmwareInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = F50536BAD847A62129397161AB3353B0 /* ManifestFirmwareInfo.swift */; }; + 38A6780D715AC8EEDF5A8A63FBB78CF9 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C6E0959E06A9BC6D49824DCEC497E3B /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 38AA5C3ADAAB8085BA56AFE8782B345E /* Task+Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2DE5AFD8F526047908EF1A6F8FDAE4E9 /* Task+Delay.swift */; }; - 3A8706725957E819D8DC3615F70A46C1 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = 326C7A13414F85997D21C1DB7AF746AC /* MetaWear+LED.swift */; }; - 3ADDAF25F52F7F8AE55FEBA3951FBC8E /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC4B70F9F0E4EAAE94860B390EEC84A5 /* MetaWear+Async.swift */; }; + 397231CB0CD69318CFD3A00BB6CAEC92 /* ZIPFoundation-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = F2EE0CC34C014504301CE5D84714CE4E /* ZIPFoundation-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 3A47FC05E198AFD9C184425199A22C32 /* SecureDFUControlPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F84DDC719FC0880B153F57CEF28B283 /* SecureDFUControlPoint.swift */; }; + 3B4F26E774F642036ACD94B531A5D15E /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3A93B08019D08C3B0F32E06B08257EFD /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 3B8192DDEB643B6066EE1E5156ADD514 /* Task+WhenAny.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88D9DEE679B18E5C458D4795D10E1890 /* Task+WhenAny.swift */; }; - 3C2AE8F311EB26FD27E7E2C7A67D53BB /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BF6180B8C72293B7BA5EB27B28FA560 /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3C8E28CCF6A9BA8C16E4C5A41AB0A363 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB77385D74E1D2C5ED9DF53F991E41CA /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3C965716FF953D89F35CF59126237A50 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B63F9B9F7BDAE3C2D1A99017A48D4C8E /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3CCE7FE57D2900872C671C3C89299B68 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 20B0727D623002B7F4C82B61F2E53BCE /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3CF4CEF79C228EB2A435E35AAA64FABC /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B63F9B9F7BDAE3C2D1A99017A48D4C8E /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3C463BC5B4D079A60442247C207C64CF /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 72679D30CADB9E4EDCA6F731B66600DA /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3C6DCCAFFD7DED5144107CD2405909FB /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E90E62927116C1466743A0A90469D57F /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3D78704A317B1D9B5E5919B22A508305 /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2B995D2F14F8DEC62B8EC6A0C94DA4C0 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 3E5FE1D46EFDF0BCCFADEC040C4C0BA7 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F7D4003C2F97282E3C82E5711C7F8C46 /* Foundation.framework */; }; - 3F66629C41DD84033EC1806492DC139F /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D79846913C5C3DB9B906408EA67CDBE4 /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3F9A7A995F700B220AC36AA42F260A75 /* DFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBC0B44C8FB29FE5F9CAA480D7FC5222 /* DFUServiceInitiator.swift */; }; - 40229AB80A82AAC04915D9E7158D22C4 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 92A6AEE6F244210ACF8B60C22AFA8B6C /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 40B56B448EC6A6EAD2EE9DB98160B66B /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEF0743B28C3D9777CDD2245E75150D7 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 410F5DFCFD4E62BCF79717F6687AD971 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C6E0959E06A9BC6D49824DCEC497E3B /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 411855DB839A2FA0F451F55F4FFDFE9D /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 70F6B686369511CDB37017E366F11DFA /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 41295ECCE911F0108FEA0CB75D6F27D6 /* DFUStarterPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65F2AB5D288A5BC41E69EFE924EE0C37 /* DFUStarterPeripheral.swift */; }; - 417668ECDFFE05C356D2F2C98E6FCF2E /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2C439C24DEA34C216997BFDB48274C53 /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 42D282A333A0D042BD3A0B33D5567B7C /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82D6BB676A3452CF143E065E861A4B89 /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 4372F9E0D0AD29E55CDCF6C48016A505 /* ZIPFoundation-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = F2EE0CC34C014504301CE5D84714CE4E /* ZIPFoundation-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 405CEDAFD0FC9185CA55ED75573E17DA /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8657FCFE4420CEF9B76222E0A97AF791 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 406214F6FD8F09E9EBEDEDAA157CCA22 /* FirmwareServer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80C496E7C90E9994CC0590530ADB9D9C /* FirmwareServer.swift */; }; + 40AA617E2A8EC6D07EF58721AAE0B591 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 74A29439E113714AC0CB0797D42B41E1 /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4116240A34CFAC833599E02CBC42F1E0 /* DFUServiceController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE1BFCB3F1461B4BFBEB3D809F511712 /* DFUServiceController.swift */; }; + 41648BB1ED1A935BDF36055932C4522C /* DFUStreamHex.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED716A1D05AB6938853D4091D6F8F559 /* DFUStreamHex.swift */; }; + 4260F321E71CBA3075FFDC6AA20F1627 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = 326C7A13414F85997D21C1DB7AF746AC /* MetaWear+LED.swift */; }; + 433C42516CE00AB37754E21F5BD683EB /* Manifest.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2F403E27DBF07E56940860662756CB3 /* Manifest.swift */; }; 43C9A6DE352D1908736E7F0AAFD22A83 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; - 43E82F86E8A7615D81CFCD92A5CB798B /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 827E9F987EB8540D345C89BCCF2B194C /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 441CDA6387C0EEF565E8B8F28331DC75 /* ManifestFirmwareInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = F50536BAD847A62129397161AB3353B0 /* ManifestFirmwareInfo.swift */; }; - 44231CFA2D62E08A5696662CB8B566F9 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FE4DE47D314987E0F452D7DCD0416DB2 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 44285E104F9F75358A972F911E17CF03 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CB6950BDD7E3014E744A1D82DCD7D8F /* ScannerModel.swift */; }; - 44EAA1152D17331DC98B1641AC153A2B /* LoggerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BD2DBCCF615B8BBB6F900E4540C8EF5 /* LoggerDelegate.swift */; }; - 4694B1C1CFE06D6715FA86553E59BB2B /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 028E0B50105A41869AE9683AA8EF087F /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 46EACB73E7AA6910B55E4F2B1E2DCF8D /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 48D266E399A4AD8C456953D262CD9B0E /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 472BC998AD8EF60986351D1BD2CB31CB /* PythonGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3EC1C6520D805971B93CEE5E29C7C7B8 /* PythonGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 43FFA63BF489084BE3F0F74C74274472 /* LegacyDFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC30364AD3168CD204AC57BFFB1936FA /* LegacyDFUService.swift */; }; + 449B6D2D82FE4CE89EEC0A3A0FE7DA55 /* SecureDFUControlPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F84DDC719FC0880B153F57CEF28B283 /* SecureDFUControlPoint.swift */; }; + 44D307C513FB40C570FA1D1EE381D962 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8638215484973EEFECD6AB74476B075 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4564C0EFC0B72E29E5A5E7003B57DC54 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC9364B24DE258463B7BF1ABC14CF53A /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 45EC11E2F398BCC6BEA907D29DA2E5C8 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 558698560BA6BBAF9D08401CC4190DD9 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 46262CFB4CDEAB97C9734FCC88764347 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 780308159364B1C8AB364E6071F61F24 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4652C8E6E297298ADF6EBF7D6ACCCC72 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82D6BB676A3452CF143E065E861A4B89 /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4719A0A80BF48D30363F717C058E7267 /* DFUPeripheralSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9059A703233CE911E22855733F6AFEB /* DFUPeripheralSelector.swift */; }; 4764D5E483C101E8D22FE2C0DDA84E34 /* Pods-MetaWearIntegrationTests-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F7724217436B9FE484B879ACC362C63 /* Pods-MetaWearIntegrationTests-iOS-dummy.m */; }; - 477DCCCFDEC5D3D2169E45B8264D6C76 /* DFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 920B7554281F1A16BF53CD2B6B7089FD /* DFUPeripheralDelegate.swift */; }; - 47D4B15ED860746F0CD77E274445ABA2 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82D6BB676A3452CF143E065E861A4B89 /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 488DDB8D9BF32B5B77710336DE4B352F /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AEE665D716662DBB922425D97CDB83CC /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 48EB9E2ADEFB89AB57A7391C6E142443 /* Double.swift in Sources */ = {isa = PBXBuildFile; fileRef = 035E0D2F7DDEC194A3C14B7536168D1E /* Double.swift */; }; - 4A7416818F69F179DEB912E1E0387A97 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60E262EDBD11C805D5B628157982C484 /* MblMwEvent+Async.swift */; }; - 4B4A77925C01BB8EEBC6A24D40D85FED /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 687FF210AC568843A9F8C1CDA491ECC7 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 4B5A2E535E4D34B20EA0A82FBA645094 /* FileManager+ZIP.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60BEE52C89C924410FA20A8C8FDEFDA7 /* FileManager+ZIP.swift */; }; - 4CD0373B8830051BB7C6B42624F26BC5 /* ButtonlessDFU.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F2F9B8E65A9F447C9A12C27A37C2C8F /* ButtonlessDFU.swift */; }; + 47FAE6BCC9280F225DE9002DF9CC621B /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 558698560BA6BBAF9D08401CC4190DD9 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 483A304918362DDC911114B349018B67 /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4E01D3B402B676363B8F8D3BA1BF5FA6 /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4845B794A2FE2B92C7CDF221D100AD50 /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3A93B08019D08C3B0F32E06B08257EFD /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 48E48C8EA9C15AB2FB8A677487EE583D /* Data+Compression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8482F9546AEBA3CC01ADA5A949FAD144 /* Data+Compression.swift */; }; + 49585F056A2E9FAAEBCBEAD7565E1AE1 /* IntelHex2BinConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AE8742872C84BB77BE446ECCB5F2089 /* IntelHex2BinConverter.swift */; }; + 49BDB99DB75897F0A702D22CC25F906E /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60E262EDBD11C805D5B628157982C484 /* MblMwEvent+Async.swift */; }; + 4A7CAD61D3789CE0D21122FCDB16AD5F /* MetaWear+Mock.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA367DEDE4621CF8CD3DAE036431A3E1 /* MetaWear+Mock.swift */; }; + 4CCB7DD2FE46592A81D40231E0960C5A /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 82A200E21B4A962602907DC1F3C32C09 /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 4D07CF26DFE82FEAB36B03293E884E3A /* Executor.swift in Sources */ = {isa = PBXBuildFile; fileRef = B478AA720F432EAEB3DAAD27B7EDB2E3 /* Executor.swift */; }; - 4D08513111FE8AD054634756086260D9 /* SecureDFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3278B1D6E8FB851C63599138931CEC3F /* SecureDFUServiceInitiator.swift */; }; - 4D8501DF1BB35763D41F30DDE3A73306 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = 326C7A13414F85997D21C1DB7AF746AC /* MetaWear+LED.swift */; }; - 4DD385F0EE9337783A3DB10D34B07ADA /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AEE665D716662DBB922425D97CDB83CC /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 4E02097259EF9CA0D2DC7799706132BF /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 004F2B2F88E223F15641B8434DF89667 /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 4F007320E788168C353D6ECB13A5DDFE /* SecureDFUControlPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F84DDC719FC0880B153F57CEF28B283 /* SecureDFUControlPoint.swift */; }; - 4F748795613245C9147640C9E7CD40A5 /* Manifest.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2F403E27DBF07E56940860662756CB3 /* Manifest.swift */; }; + 4D3B8C09162F34CF750710FAB82FC090 /* SecureDFUPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8A925FEACFBE227CEDCF7149D4EF12F9 /* SecureDFUPacket.swift */; }; + 4D6B560A47E08C3770670D51A25804CE /* Data.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63054630F91FFCD9A2020927E552B534 /* Data.swift */; }; + 4E044415DD2898CC93969DA2ECAC55DB /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A48E122F9DA1F7EB1E163F2101A849EF /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4E41D52E3F432EDA7C954270134BD963 /* LegacyDFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDF52030FE274FEC72DE7FD300FE48D3 /* LegacyDFUPeripheral.swift */; }; + 4EAB9009EA3ED5304393860EE323F713 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2165E6CEB6AD910CF5F0459F42C12B2 /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4EE0CB89C04B370395D3A3ACF952E0A8 /* ZIPFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 310CE7870B01D5B716AC8334A7A0D3D8 /* ZIPFoundation.framework */; }; + 50016CFC2663A5E09A9621242FC520E1 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 18D1FB2F31E04EA9F0ECE4139861D861 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 500D2B38735C8F6A7BEC60CE96CC222F /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 38FEFFA5A3AF15ED1E41DCFDD70C86E7 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 501586404F73DC62B61210C361AD0953 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0EE452657460D902FBF3DF3941516A6F /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-dummy.m */; }; - 5036B9BC274E8B0C182DED918E5FFE2C /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3AF105819F0CF98F677510BD677E9C91 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5040CA784DF27201EEBBD5F0C70BD649 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 70F6B686369511CDB37017E366F11DFA /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5103287D213950F50D47EBD676DB310E /* DFUServiceSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 804F804E9F5EF675B36052B75A24FEBA /* DFUServiceSelector.swift */; }; - 51B4FE440E78A79358510DAA40C9AD5B /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61374778F4B640C23FAAD145DB6958F2 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 521AA91B3FB3349AACFDB81C7B28CB17 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C7D96C1FB9ED1E49325F6E92F2AE4F33 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 53855E4FB33EAD16A2F39AD607AB01DC /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */; }; - 538E57A469E7D1132B6B6F02A23C9CCD /* SecureDFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3278B1D6E8FB851C63599138931CEC3F /* SecureDFUServiceInitiator.swift */; }; - 53B58CE01638361725C6D6CDAD7DF223 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E11C052B3CED55F30D1DEDDFAAA7E408 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 53F9B07D3B24ED26D48BDB6BD539A7B1 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 10B5EE02F081CB150B64BC4FB70FBF7B /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 55BA23285A52A36F6C1FB31B1014913C /* DFUPeripheralSelectorDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A26C1C50C1866FDC9FA4437D526F6038 /* DFUPeripheralSelectorDelegate.swift */; }; - 56369CD53A39D173A3401AEB41EC4F72 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BFD6B2E301BA8ACDC2D3BCD0E758C1D /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5652EAF28961A67935A4D58794FA63BB /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 10B5EE02F081CB150B64BC4FB70FBF7B /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 56E511ED0A9C5F7FC5D40A3AE34ED45E /* ZIPFoundation-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 5FD25505429CF7363965185D3FDC0B8B /* ZIPFoundation-iOS-dummy.m */; }; - 56EE5C0F33D84D5C6A26E559A033D0B5 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C22749D2B8E00599A0F94B486EEAF752 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 572AC3EEB55914EA02B785C02FA1C996 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B83AA79D41272316A3114303985BB4F0 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 58692948A131C4CD93CB5B896839C0D2 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 92A6AEE6F244210ACF8B60C22AFA8B6C /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 58BC765CC7F9D60976B1F2846F9C443D /* DFUUuidHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = F85B983DE4FFFAFAF0F7E87BB5CE2FF9 /* DFUUuidHelper.swift */; }; + 5050E251923D8E2863BB17EAEEA6F883 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 902980F5FF5383884A7D57FAFFE032AC /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 509539D87C172E01C442F4888FE53C33 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 32A9D2FFDC176644FDA8EA8A07E27CEC /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 50F6BB5EDF7E74DED3CCF60CCFE1D562 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60E262EDBD11C805D5B628157982C484 /* MblMwEvent+Async.swift */; }; + 51140AA7260ECB6229A0FFAC326C50DB /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC4B70F9F0E4EAAE94860B390EEC84A5 /* MetaWear+Async.swift */; }; + 51DD29EFE882A04DF80D30EFE22E4B12 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 32A9D2FFDC176644FDA8EA8A07E27CEC /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 538AB836189BCE4210CAA24B170E26DA /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = BFAA633966C968BF70362AFA2B44336F /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 544C1B20933DDD988FA6BFD263BD7150 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1348C828ED80F76140C635967D764E8B /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 54823A75E564478A26B7829F94E6F107 /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */; }; + 54D08EA6CE30CCF77FAF6D5CD2B9F1E4 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BF6180B8C72293B7BA5EB27B28FA560 /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 55CC2B7C2C433517239E3E0E667A7022 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61374778F4B640C23FAAD145DB6958F2 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 581FF2930258BD89700B12E803AEF0D3 /* IntelHex2BinConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AE8742872C84BB77BE446ECCB5F2089 /* IntelHex2BinConverter.swift */; }; 58DA6845EFFC6FDA03D7933277AB36CD /* Task+WhenAny.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88D9DEE679B18E5C458D4795D10E1890 /* Task+WhenAny.swift */; }; - 592B337FA5931F1F3E682E46975D1CBB /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D33E3506F1148C04329908970491D35 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 596B2B65357FC1D22F21CC14FC9128E6 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 48D266E399A4AD8C456953D262CD9B0E /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 59E2D5D6787F2235391DCF079896CCDA /* DFUFirmware.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DB01C7B4CE59D18C6D04EB428451795 /* DFUFirmware.swift */; }; - 5A58FBE68A6B181E246E27F35678AD0D /* DFUControlPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6271165BB2AE86465A9943D2EF112D11 /* DFUControlPoint.swift */; }; - 5B008EC07535202F35B7EBAE64EC8AAD /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 028E0B50105A41869AE9683AA8EF087F /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5C83264B240E63DA8FBB2CE4B75ACDE0 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 871C3E184118A1C65B2DAEAA3016D788 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5D6135675F984E450A947ACDE9ADD921 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E0362A7CDF8C01C9D967F8417265F7C /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5E3142A6EC11EB7F74600E077FD6BD21 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E11C052B3CED55F30D1DEDDFAAA7E408 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 58F88141DC3FF94DB1ED61ABC6423B8E /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; + 597494BE77317E435B93F1B6A2810899 /* FirmwareServer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80C496E7C90E9994CC0590530ADB9D9C /* FirmwareServer.swift */; }; + 5CD5D9103A26024D282BA4D019EE5778 /* LegacyDFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63F893AF4ECF8B17198E585DCD8FB233 /* LegacyDFUServiceInitiator.swift */; }; + 5D2B4DFB3C84AB2EBEBABD874D6C261B /* DFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 920B7554281F1A16BF53CD2B6B7089FD /* DFUPeripheralDelegate.swift */; }; + 5E405324B54BE1E872BC62844D8C4902 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2165E6CEB6AD910CF5F0459F42C12B2 /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 5E8C6E9C84996C14D7754D8C9FE0ACFE /* TaskCompletionSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = E43893E60AA833FD5CE59855FFBCA9CF /* TaskCompletionSource.swift */; }; - 5EC11317DF6D83502516A73E16FF279F /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7D0FDF991487027613374C0F7701226 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5ECF35964FFEF36AB9CCD3DB3BB74488 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7B6FF697AF15FAD5B996B730D32226F /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5F013013A3C0736A18EB56E1BA6921E7 /* LegacyDFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC30364AD3168CD204AC57BFFB1936FA /* LegacyDFUService.swift */; }; - 5FC4771416BF2F0BF2EC39721D21B6D0 /* iOSDFULibrary-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A07AA9738C8E78AB4FEDF17BE7E0B36 /* iOSDFULibrary-iOS-dummy.m */; }; - 5FC52D268FF641B1B0E32B8F0ABD7DEA /* DFUStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B7BBB487AAC8C4468FD0CFD70FBC0C8 /* DFUStream.swift */; }; - 5FDC7FDB83669C1A6FAF361A010DA604 /* Archive+Reading.swift in Sources */ = {isa = PBXBuildFile; fileRef = 085E4CB728B2A20CE1F1A3E86A7E6BF7 /* Archive+Reading.swift */; }; - 6071E48F737A11BC76CF9F7D0AD0A27C /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9481942C645F5AF023E048963705B7E7 /* CoreBluetooth.framework */; }; - 60F9D875CB58B072487CEECD78E27295 /* SoftdeviceBootloaderInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 692329CE0A9A63D15123D684C9F2AA34 /* SoftdeviceBootloaderInfo.swift */; }; - 614E22AE1596BB4B98D4A17A6F7635B4 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E0362A7CDF8C01C9D967F8417265F7C /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6270EB3BDC0A42EBECD688410FCE6D58 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED30FE0D206D2DEB526E26E7D3A002BD /* MblMwDataSignal+Async.swift */; }; - 62FBDA31A22BCB5D9FC3045283D65F03 /* Data+Compression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8482F9546AEBA3CC01ADA5A949FAD144 /* Data+Compression.swift */; }; - 6306891733ECBA778D442410C7819E45 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 10B5EE02F081CB150B64BC4FB70FBF7B /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 64A222ADB2B5A14846D38D0641863452 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; + 5EBA78EFD9EBC6F038E3A8EA5A8F1CA1 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A934C4144529FEC2455E9EA58EEF3641 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5F63BA7C90A4E68EE7B9BF78E0F98112 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61374778F4B640C23FAAD145DB6958F2 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5F7534BE6DBC6D7CFE6AD2FF929EF056 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C0F1F6DBF8F5751CA37EBDBEDDD1A15F /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6014FFC969BCADA4D2C0EB59769DEEAE /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61374778F4B640C23FAAD145DB6958F2 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 60343D4E4439D398972BE83AE4365D1D /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 88A6C13CB83BD51E74443DB16CBF224E /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6042E45E8B9E475272CE5F40485DED13 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AD72C1111CD9303EAB58262CB8E268FA /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 608D2EA3AF4AE8952CF26E27F6F807C9 /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 82A200E21B4A962602907DC1F3C32C09 /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 616737B86B49C1EA1806E8A5EA93132C /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6A1B3EB7FA5C5F9452C98429C7A1DDF7 /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 617C93CFE7C31A01F0312230F4C1BAD4 /* MetaWearScanner+Mock.swift in Sources */ = {isa = PBXBuildFile; fileRef = D116DFA4679AFCC77CE41D2A4F735077 /* MetaWearScanner+Mock.swift */; }; + 618C2E0152378DD659637F45561A830C /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D33E3506F1148C04329908970491D35 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 61C7B1FF52BDC7DA7BBC04B8D5ED5907 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BF6180B8C72293B7BA5EB27B28FA560 /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6223579A2034450902C9CE66A004E8F8 /* DFUController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E83FA47CA9F4A746A08313BB59BC889 /* DFUController.swift */; }; + 6305895C390D4E0A6EE6AAAB791A6EDD /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 18D1FB2F31E04EA9F0ECE4139861D861 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 632627A60D4942306F641B788D63F25E /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A87DEF4B413807CE32269EAD7DB2BE27 /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 641FA6A3841EDFF619B22D544561E433 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EB8542490FD75B1B911315898FEBB4D9 /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 64AB594646AB554728422022D75EAD31 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = 326C7A13414F85997D21C1DB7AF746AC /* MetaWear+LED.swift */; }; 652C419571AB0F8B86D47417A11CDF1C /* TaskCompletionSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = E43893E60AA833FD5CE59855FFBCA9CF /* TaskCompletionSource.swift */; }; - 6533E8F44A82D67EF9ECC6F9CBFB57ED /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB77385D74E1D2C5ED9DF53F991E41CA /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 654533983CAA68AE1692775450809AD5 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 92A6AEE6F244210ACF8B60C22AFA8B6C /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6631A90F61FE28E275B84EF59EA779FD /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB77385D74E1D2C5ED9DF53F991E41CA /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6724AAE499F3043B1EA87C88346D3F4F /* common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 79039E935AA8A9170F0A2AA8C3F03298 /* common.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 67659BDF47AD29C95A7758B3E3F19B98 /* SecureDFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E2C83FD3D501DC7B7DB4B19590A9D15 /* SecureDFUPeripheralDelegate.swift */; }; - 67E4F1F394AA3F4EEA504DC1DD0446FF /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1BAE33B69D5B09EF1A9FC27B6F9104C /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6857EB6BF165B523C2B853251CCF0CF0 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = F28F4FB76B2B65A671A7F0342CC64711 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 68B002D2945773B0574B1C7623A478D4 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B4ECB2BFD9EC71AEC3128B318A9BA8CB /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 65495A5E4040FA99F567D5B81A4E48CA /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3A93B08019D08C3B0F32E06B08257EFD /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6587029C0ECD4A6A140D5C55B81B7BAD /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F47FBA22B56EC0161953A195874050D1 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 667D255467BB905CF19899AA65902B0F /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8638215484973EEFECD6AB74476B075 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 66868F4C5D1F5F1526F924094BEE9272 /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7D0FDF991487027613374C0F7701226 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 66CB0C4AD53C4E4C78F60AEB105D81A5 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC1FBF6EFB976B89E85A523A5D3F22A9 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6766D3E742D16F2DF2E26E0028606E6F /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9EF25ABDC4C7F400A50E64C961ED9408 /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 68799688A45609D145BFACA87BF44843 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 18923ACBB26FEBC52207506844407E81 /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 69297B00D475A7B0123C0D6D7CD7CCD4 /* DFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5A0D8FB52AF6316B11FB61560858335 /* DFUPeripheral.swift */; }; + 692A14170BB7CBFEFCB3A5A508D8D745 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EB8542490FD75B1B911315898FEBB4D9 /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 695D8DABCDB35D196D59F769EDF16A16 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9610CBAC873B84393551C455F94393AB /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 697CCE81E02FD15611AD5B4C86D3B2C8 /* Bolts-Swift-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 8AA5ADF22289EA5AB17FE593C7F71A66 /* Bolts-Swift-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 69D375F2A849BF9373FE6551BF51772B /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C22749D2B8E00599A0F94B486EEAF752 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6B9DFD70B46996F96C59208EF3F12668 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 004F2B2F88E223F15641B8434DF89667 /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6C7D2B2FBBE071A385704C85C325DE04 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E11C052B3CED55F30D1DEDDFAAA7E408 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6CB9AE2B0DE03C9374C6B5CAC5597758 /* DFUPeripheralSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9059A703233CE911E22855733F6AFEB /* DFUPeripheralSelector.swift */; }; - 6DB8D54A28C2D885DB64C626F26C60CD /* common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 79039E935AA8A9170F0A2AA8C3F03298 /* common.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6E1C3A0A127DBF0C59643863E01B8C64 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E11C052B3CED55F30D1DEDDFAAA7E408 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6E701F7BB609CE128911B2743D6992A8 /* DFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD54ED09D15C9FCDAB012469BA87074 /* DFUExecutor.swift */; }; - 6F8B57571C7FF9B3E281B21985E3E72D /* Entry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6067A156E323544E0A4766030061A5B2 /* Entry.swift */; }; - 701F0207B3673657A585DF64BFB8E37B /* SecureDFUPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8A925FEACFBE227CEDCF7149D4EF12F9 /* SecureDFUPacket.swift */; }; - 7024D2881CE0B18F21E03D6B84DA75E7 /* DFUController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E83FA47CA9F4A746A08313BB59BC889 /* DFUController.swift */; }; - 7077BC573851D7D38D1D3B6CDED72989 /* Archive+Writing.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63E0C68FB96F88E28D9871C8FB7C1C98 /* Archive+Writing.swift */; }; - 70838D5B656235CB6DF1B3C8C7E49FE7 /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AEE665D716662DBB922425D97CDB83CC /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 71562FFD8C12FDF1978B60393AE5EAEA /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1FEAD48A2DC9006470AEA6A870085C76 /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 72588964D8A3E73418C3574AA4625199 /* common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 79039E935AA8A9170F0A2AA8C3F03298 /* common.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 7261B57C2B8E8DBCF1107D9779C32FAA /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5F6357DB75F21135B725219F131B8F8B /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 72845BD38C34D42F747AF687E5CC51D5 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BFD6B2E301BA8ACDC2D3BCD0E758C1D /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 728713D831E5C67953D1AE2618596FDB /* DFUUuidHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = F85B983DE4FFFAFAF0F7E87BB5CE2FF9 /* DFUUuidHelper.swift */; }; + 6997F01058C9C3DCAAC010B4740364E8 /* MockModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BD2D2BB4D92665D01ACDFCE31BBC15B /* MockModule.swift */; }; + 6A92D83B8485582BF7D65B45C8751BBD /* ZIPFoundation-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A8B2B732F6AD9127EE241F1535789E96 /* ZIPFoundation-macOS-dummy.m */; }; + 6AC7B87740031333EC0820C797BFE5B8 /* DFUCharacteristic.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1ABB43FC0D3E225C0671B3C8F70E8152 /* DFUCharacteristic.swift */; }; + 6AF1592BB698329EBC1D18917C7F89CF /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0196948ACFF051DD8861A6C465F8CE3F /* CoreBluetooth.framework */; }; + 6B085112BAD6798C6CDE127ABAECF1FD /* SecureDFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A20403D099EE1D872F28342554B7D6E /* SecureDFUExecutor.swift */; }; + 6B52516A75A66D6544260E5578B131F8 /* DFUStarterPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65F2AB5D288A5BC41E69EFE924EE0C37 /* DFUStarterPeripheral.swift */; }; + 6BDCEAFAEF0CB2827F95CC8371281D04 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 48BAF38843147CF61083BD1B5E606613 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6CCA3A6FC855D20EA9F24219D3A80F10 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 902980F5FF5383884A7D57FAFFE032AC /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6CFD1BDF79B4C6B5E9D4BC30620A8CE7 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CB6950BDD7E3014E744A1D82DCD7D8F /* ScannerModel.swift */; }; + 6D0BE2BE15FB05768048457A18B50ADB /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F886A5936801A6689720AC5377AE0ABB /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6E7D93F253D1F977120860D54BE82B14 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7B6FF697AF15FAD5B996B730D32226F /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6EB34457DF1E96BC4C3D3E642C60182B /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A934C4144529FEC2455E9EA58EEF3641 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6F0343FA465B42A763B5B4A83E0691B4 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC6B95B06278269E39C133FD158C980D /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6F56C4C2740E10ED89DC8FD8A8EC8BEC /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; + 6F6195AF9586831877A9E69DB98976C5 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2936B84D7ABBBF409F954F6039C48833 /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6FAC135F7B1A3F354CF3530338ADD973 /* MetaWear+Firmware.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD76483586B514A5C673056B7A731FE8 /* MetaWear+Firmware.swift */; }; + 7022E0349DBAF9D5F0E70BC1C41E197E /* DFUStreamBin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1170D3A9194D58C03AC23B4BD8B40D36 /* DFUStreamBin.swift */; }; + 704A3F778A934F2472EC835E996FCF72 /* ButtonlessDFU.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F2F9B8E65A9F447C9A12C27A37C2C8F /* ButtonlessDFU.swift */; }; + 714D5465E5F81C7C3F9B6F7DB15068B6 /* LegacyDFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A61E82795569E9BA7E8CC6376F61A26 /* LegacyDFUExecutor.swift */; }; 72D27DF79BEEA067C9707C5FDFC8A6FF /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EC706D80D1653386F8E95C9A27FBD84 /* Errors.swift */; }; 72E60F7411C6077AED13F9800054438C /* Task.swift in Sources */ = {isa = PBXBuildFile; fileRef = 222241CB9EC5A831040351E44E164F47 /* Task.swift */; }; - 730D6F99EE75836E854A5CCAC22B9403 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 48D266E399A4AD8C456953D262CD9B0E /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 732B7286A2F03F048EF8FE2FE57CCB1D /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 262B515345D9A281E9DB178889EAB01F /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 735531D156980870A7645451DCECA66A /* crc32.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3448F7A74DD00F5CC447008E69AB4CED /* crc32.swift */; }; 7376E6F0E5F2808ED6A674594A9DF413 /* Task+Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2DE5AFD8F526047908EF1A6F8FDAE4E9 /* Task+Delay.swift */; }; - 741FD18B0865F56C50CA18F676017440 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED30FE0D206D2DEB526E26E7D3A002BD /* MblMwDataSignal+Async.swift */; }; - 757D3DAEAE3CFF8069844FAA26995346 /* DFUVersion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AFE0686F81066118B61F4F390340CB1 /* DFUVersion.swift */; }; - 76B94E1A4B7BEB7E5905729C925304A6 /* DFUServiceDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8C525780CB40473CE06F0E9500FE182 /* DFUServiceDelegate.swift */; }; - 771BACA6A2B750B6609346439736FC2A /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2EFE9D6C87239704BBC5413982E2438 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 771FEC36B502B1DC50C60978F41AE216 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FCF2F5A5C94712F9BAE705347593E4A /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 777439BF8F46CC57F35E6201185BB042 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CB6950BDD7E3014E744A1D82DCD7D8F /* ScannerModel.swift */; }; - 797077F72F2CFDB09A7A1F61B770AC32 /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 404A96C52A94C9574CC02A2A53C0D18D /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m */; }; - 7A02A8B89A814A1EDF029AF046DEE3B7 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60E262EDBD11C805D5B628157982C484 /* MblMwEvent+Async.swift */; }; + 738018CECEEA010C7743FAEF54081CF9 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8707E77673C38369948433F76F81F16E /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 73C12B397A9503E0CE7E2829A587E0C9 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F886A5936801A6689720AC5377AE0ABB /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 74A85E9B84E84651AA4116DAADDE9607 /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 95A619B3EEC20F8735D86AE1CC35A961 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 752D7F9D167E5CF912FB1F89ACC3F352 /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4E01D3B402B676363B8F8D3BA1BF5FA6 /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 76838C052D2E7DEFA8259CCF459C2A79 /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E90E62927116C1466743A0A90469D57F /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 76BD642BFE02E8CB583E9C6401951652 /* DFUStarterPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65F2AB5D288A5BC41E69EFE924EE0C37 /* DFUStarterPeripheral.swift */; }; + 76FA6E8AFFA7577A387F8C2ABA528FE8 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51AFD4D7267C86EF2C52B376EA4A25E2 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 77A2F52ED02CBCF7AC0BD545CAE42D6A /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51AFD4D7267C86EF2C52B376EA4A25E2 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 77A9FDE4889E6D6FD2E98A67FA63E8AD /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C6E0959E06A9BC6D49824DCEC497E3B /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 788FC9624C1C5CB244D41EF871295909 /* MetaWear+Firmware.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD76483586B514A5C673056B7A731FE8 /* MetaWear+Firmware.swift */; }; + 78FFF9172353FE9D9841C839FA134639 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C0F1F6DBF8F5751CA37EBDBEDDD1A15F /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 792A3129D4889BD9478F7860C21540BF /* iOSDFULibrary-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = E92D86C475B17A3AB3793FC4EB6D4E99 /* iOSDFULibrary-macOS-dummy.m */; }; + 7948EF21A331CD18954520510EEBA611 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2165E6CEB6AD910CF5F0459F42C12B2 /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7970FBDD5904CCAB1E2A82A9EB7C9FE4 /* ButtonlessDFU.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F2F9B8E65A9F447C9A12C27A37C2C8F /* ButtonlessDFU.swift */; }; 7A04D5CD995C5E94005A7A2F304035AD /* Executor.swift in Sources */ = {isa = PBXBuildFile; fileRef = B478AA720F432EAEB3DAAD27B7EDB2E3 /* Executor.swift */; }; - 7A5E4A83A26D7708E334CCE253704BF9 /* DFUServiceSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 804F804E9F5EF675B36052B75A24FEBA /* DFUServiceSelector.swift */; }; - 7A6C843BC6A55BEE9B49AA332A462C63 /* ZIPFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 310CE7870B01D5B716AC8334A7A0D3D8 /* ZIPFoundation.framework */; }; - 7AEA8B8F8198FAB859EDE3F61DD7A7E0 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C7D96C1FB9ED1E49325F6E92F2AE4F33 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 7B191AFF5067E87545FB80092A529B43 /* Task.swift in Sources */ = {isa = PBXBuildFile; fileRef = 222241CB9EC5A831040351E44E164F47 /* Task.swift */; }; - 7C1BC588855DA6520E54B04D9C608A2A /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 150D817BA455C92B497629C15EB2969A /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 7C71B5D451BEED1E9E6F2AE6A903D135 /* ZIPFoundation-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A8B2B732F6AD9127EE241F1535789E96 /* ZIPFoundation-macOS-dummy.m */; }; + 7B416DE9DD336432B92CBBF072BF08D4 /* DFUUuidHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = F85B983DE4FFFAFAF0F7E87BB5CE2FF9 /* DFUUuidHelper.swift */; }; + 7BF73B872E8B7CF7602736962C5BEFCD /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A48E122F9DA1F7EB1E163F2101A849EF /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7CD8C809FFA0BAEC17F033652C912FB6 /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2B995D2F14F8DEC62B8EC6A0C94DA4C0 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 7D0D2355F24951B4A0B35C9ACCEDE121 /* Task.swift in Sources */ = {isa = PBXBuildFile; fileRef = 222241CB9EC5A831040351E44E164F47 /* Task.swift */; }; - 7F0699DAD8E64CEE03A8A1FBACAFFE92 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB77385D74E1D2C5ED9DF53F991E41CA /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 80CF7D6D10372DBEDD73460E1C0EC1AE /* LegacyDFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63F893AF4ECF8B17198E585DCD8FB233 /* LegacyDFUServiceInitiator.swift */; }; - 80E37510D2A68AE5AB97BBA53D5B04CE /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B4ECB2BFD9EC71AEC3128B318A9BA8CB /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 816B88E736DCFFE2A081EE0039C9AE70 /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E7D6F9807103C2CE80B3165286C6ED0 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 82FAADC4B6AEC1DC79D34AB75E366643 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FCF2F5A5C94712F9BAE705347593E4A /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7D397F44D068B6BE5D5F75D371FCE92F /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 150D817BA455C92B497629C15EB2969A /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7D3FC2DF93335AF1B9C6FFCCDC408BD5 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 978459E240560B17507244A6549F4229 /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7DD0D512BFB72FB217F1930E8CCCA52E /* DFUStreamHex.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED716A1D05AB6938853D4091D6F8F559 /* DFUStreamHex.swift */; }; + 7EDE2A9943EC2E5A26FF018BABF21308 /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7D0FDF991487027613374C0F7701226 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7F46ACE41226B4C2073D0F536FE274D3 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 150D817BA455C92B497629C15EB2969A /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 801E16CFE070E490FF9A82BF8733522C /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC6B95B06278269E39C133FD158C980D /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8186ABA8A13018BA908E84DEA976DE23 /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 95A619B3EEC20F8735D86AE1CC35A961 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 81D2A98BA34444AF500499AC080FACD2 /* iOSDFULibrary-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = EE3D0F73A6653041193A830938A672A5 /* iOSDFULibrary-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 830481C81AF1AD3D83B3BA9DD211C49C /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 74A29439E113714AC0CB0797D42B41E1 /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 83212826A42FEC58527F1A5AEE5B3BD1 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED30FE0D206D2DEB526E26E7D3A002BD /* MblMwDataSignal+Async.swift */; }; + 833BFB7ECBB6D5C1B2057AB35B52B0D4 /* iOSDFULibrary-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A07AA9738C8E78AB4FEDF17BE7E0B36 /* iOSDFULibrary-iOS-dummy.m */; }; + 834451418C6503DF26B4BC6E1ECC6469 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C11BD0E842D22950988BD3A9316D7FE0 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 838BD9F46825BDEBE0C5218C94D1035A /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 88A6C13CB83BD51E74443DB16CBF224E /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 83B1B34720AA1EAAE7D713AEDE74A678 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F7D4003C2F97282E3C82E5711C7F8C46 /* Foundation.framework */; }; - 857853F39816FEACB8D3C0E57107EFA0 /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC4B70F9F0E4EAAE94860B390EEC84A5 /* MetaWear+Async.swift */; }; - 85AA10B7785FD166D3AFEA762A1D1A7B /* SwiftGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B2DFE15A0E62BE06D2CF9D4AE53F927D /* SwiftGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 85DD21C28C500B7B461FB8A78537C195 /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E7D6F9807103C2CE80B3165286C6ED0 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 874C6150F3EFD75188A8A5936EEE0F7A /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5F6357DB75F21135B725219F131B8F8B /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8864ADD8424DD563982A26E87ED08400 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2EFE9D6C87239704BBC5413982E2438 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 887FEA896B88053C97317E53E87B8FD3 /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */; }; - 891ED6BA8008F52EC301721E47958D30 /* DFUStreamBin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1170D3A9194D58C03AC23B4BD8B40D36 /* DFUStreamBin.swift */; }; - 895347D5EC33FA6796A037ED304926CD /* MockModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BD2D2BB4D92665D01ACDFCE31BBC15B /* MockModule.swift */; }; - 8AC8CADF691259CA357090F5B3F824E9 /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E7D6F9807103C2CE80B3165286C6ED0 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8CE5F98795C15D2E9AE0FBC38EDD497D /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E7D6F9807103C2CE80B3165286C6ED0 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8CE840023AEBD9CA850183FEFEA7D41E /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0196948ACFF051DD8861A6C465F8CE3F /* CoreBluetooth.framework */; }; - 8D5758068C67709E82B54A8974B68A82 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 871C3E184118A1C65B2DAEAA3016D788 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8DEFC823822730871231F6CCEA0A1880 /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCE1CF16C54DD96420E6A5AAB43244C4 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8E402F1738B72CE43094753C240DB916 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73948BE2C0569FB3BF68F6A4A189B95F /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8EA9F3D6FE3BA71834FD3BC20D58F16D /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 63637A0110ACD81470E07A8160E1A6BC /* CoreBluetooth.framework */; }; - 8F45F401EC45EFACA04EB237E3CA3E3D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; - 8F97BF934C618374309585B62A557127 /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AB700AD1E77526C1584F3E4CA6A880C /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 904C09BA1550659B7F1F7A59D5E13EFD /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEF0743B28C3D9777CDD2245E75150D7 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 841A194D0728E7606D531CA3F1A05E6E /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 979F58FE576BD81A336BCBD43C3032E7 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 843D46D8324611B56A91715BEDCA9E63 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C11BD0E842D22950988BD3A9316D7FE0 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 85322FAB23516ED44E5807A8D767B9DF /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8707E77673C38369948433F76F81F16E /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8536CC729140069321652B98DDD3F922 /* DFUStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B7BBB487AAC8C4468FD0CFD70FBC0C8 /* DFUStream.swift */; }; + 85B6436FB14742C8B7F80D59E38787AF /* DFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 920B7554281F1A16BF53CD2B6B7089FD /* DFUPeripheralDelegate.swift */; }; + 863A8276D07FB674582A53BED2539587 /* DFUStreamZip.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F8DDE74839FCA2D7300179DBCB4FC0F /* DFUStreamZip.swift */; }; + 8647ABED018117DECA49BA3FCF175295 /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F47FBA22B56EC0161953A195874050D1 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 87FBAC409636BB3D059A1FA8D8157FB1 /* DFUController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E83FA47CA9F4A746A08313BB59BC889 /* DFUController.swift */; }; + 8A1E4D473CA78B39413B12A4B1886A8C /* SecureDFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E2C83FD3D501DC7B7DB4B19590A9D15 /* SecureDFUPeripheralDelegate.swift */; }; + 8A705591318DB1F4E505D66C91EAEFB0 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CB6950BDD7E3014E744A1D82DCD7D8F /* ScannerModel.swift */; }; + 8AF8AA6D6E0954EADB6F03BC19833E12 /* Archive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57E06254CA848BA44D929B9100D93F9C /* Archive.swift */; }; + 8B18211BB556E6983DD3D40B22B77245 /* LoggerHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 301FE6ECD82EE6FB8E3F50AAA7F50766 /* LoggerHelper.swift */; }; + 8B4E6A1D8AA5603CCD58F2FB67A0D8E4 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82D6BB676A3452CF143E065E861A4B89 /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8BA0161C6CC750D29E60D0091FCB3071 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1348C828ED80F76140C635967D764E8B /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8BDE12C672D8EFD2CEBC1FC57E800116 /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D79846913C5C3DB9B906408EA67CDBE4 /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8BEF57F8238E3F13F6CB21B8EEA311BA /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 10539D2C6125287AB283CED2EE8DBAEA /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8D135F92EE68A7E9E36DC0244ED5D0A7 /* DFUStreamBin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1170D3A9194D58C03AC23B4BD8B40D36 /* DFUStreamBin.swift */; }; + 8D45522067F31D7C6875F640DCD93250 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51AFD4D7267C86EF2C52B376EA4A25E2 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8DE57D23078C25BCD80CC203F2B034AC /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9610CBAC873B84393551C455F94393AB /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8EE5A16E9FB4EA2687286F61040579AB /* DFUPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21E0B5E72AE22F9985373E6D5A602217 /* DFUPacket.swift */; }; + 8F36298E48181A76A7A39A3BDE20BB36 /* SecureDFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC664CACE8271F6C72F9F07D47468A39 /* SecureDFUService.swift */; }; + 8F6C88BFEB2B678EC7E97B556B52FB9D /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A934C4144529FEC2455E9EA58EEF3641 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9029272896277B960AEE9A4453E5AA17 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 902980F5FF5383884A7D57FAFFE032AC /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 91030D3690EDAF8CB356659DDC1D3D07 /* Task+WhenAny.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88D9DEE679B18E5C458D4795D10E1890 /* Task+WhenAny.swift */; }; - 911168D7D46ED8BA905F46FCFC1962F4 /* DFUStreamZip.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F8DDE74839FCA2D7300179DBCB4FC0F /* DFUStreamZip.swift */; }; - 91AC75396FE57029698CC2F7D77610E6 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1BAE33B69D5B09EF1A9FC27B6F9104C /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 92BB8641DBDC196D136EE749FEAD441F /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C6E0959E06A9BC6D49824DCEC497E3B /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 92BFBE5048C1AF55A728D2E6A085DE79 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = 326C7A13414F85997D21C1DB7AF746AC /* MetaWear+LED.swift */; }; - 938174C63286604B37276B0C53C24976 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B83AA79D41272316A3114303985BB4F0 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 947A5BA2B9D514958793256DFD9F85F1 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 687FF210AC568843A9F8C1CDA491ECC7 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 94A1D9E3E4FDB2F784ABA4D16C43DEC7 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82D6BB676A3452CF143E065E861A4B89 /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9300138FE7693FCBFAC2C3F02B324D0C /* iOSDFULibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D11B9606AF00BF65E342847EF05B8AEB /* iOSDFULibrary.framework */; }; + 9315E48B658F4AAB1D85289FC6683EB0 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A6F258AF5B520A69684A5F72D7F51E17 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m */; }; + 93290F2418FEF2B22FE9DDA21D7C3F79 /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D79846913C5C3DB9B906408EA67CDBE4 /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 94C54CC90AE2A4B383BB00AB65A3051E /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A87DEF4B413807CE32269EAD7DB2BE27 /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 94D83E90F3A1F378CE191D25FFDD51B1 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 473572BB5FB1EE409EF6CF74DF7D9CED /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 956C38486C6F0DF54D466808AB391974 /* Data+Compression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8482F9546AEBA3CC01ADA5A949FAD144 /* Data+Compression.swift */; }; - 95873C61174D8D481393D4E906C081E1 /* DFUStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B7BBB487AAC8C4468FD0CFD70FBC0C8 /* DFUStream.swift */; }; - 95B8233C27C01902BBE1F08E8C77855B /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BF6180B8C72293B7BA5EB27B28FA560 /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9563B390C068D93DE9B9FBDC051D9EA6 /* FileManager+ZIP.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60BEE52C89C924410FA20A8C8FDEFDA7 /* FileManager+ZIP.swift */; }; + 95676DB998F0B059128A985C825A963F /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1348C828ED80F76140C635967D764E8B /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 95D5986A446C76BDA38F24FAD732E5E1 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; - 966C4097A45E3EC7B84DA0AE19A048A3 /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 827E9F987EB8540D345C89BCCF2B194C /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 96654960A04AEFF3E398512F1EE08927 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A48E122F9DA1F7EB1E163F2101A849EF /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 968314316E5E71D836515D86E391CA5E /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 38FEFFA5A3AF15ED1E41DCFDD70C86E7 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 96842388F596B35029DAF34B0C8197CD /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EC706D80D1653386F8E95C9A27FBD84 /* Errors.swift */; }; - 96E6D2DACBD45D85A2B17F71ED234377 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C6E0959E06A9BC6D49824DCEC497E3B /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 994B8516758EFA2B44BE235D6A2A87D7 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BFD6B2E301BA8ACDC2D3BCD0E758C1D /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9744A22E97B1C093DDC6D8532020CE9B /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61374778F4B640C23FAAD145DB6958F2 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 97AAAA105CBD4F01F3B9639FB41ABDCE /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; + 97B41065901A16F836BAFE393E2A9975 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC1FBF6EFB976B89E85A523A5D3F22A9 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 97FD42268DFBB7D5A1E91A208A904B36 /* LegacyDFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC30364AD3168CD204AC57BFFB1936FA /* LegacyDFUService.swift */; }; + 9898AD524FAC6440B376CFB86A2E494A /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8657FCFE4420CEF9B76222E0A97AF791 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 98DCA52F9CB35851F4A9D63C2C6CA78B /* Entry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6067A156E323544E0A4766030061A5B2 /* Entry.swift */; }; + 99B73EC4612D3B00C74ACD8659B16DB2 /* ZIPFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 310CE7870B01D5B716AC8334A7A0D3D8 /* ZIPFoundation.framework */; }; + 9A0AA2866338858D724FB9494CA10727 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 48BAF38843147CF61083BD1B5E606613 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 9A2C4B49C5E9259DD74393605004741A /* Task+ContinueWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78CD9B634A9BABA2318BE06485DDB6AF /* Task+ContinueWith.swift */; }; - 9A69153E0A2554072903708090DA6D71 /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 827E9F987EB8540D345C89BCCF2B194C /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9A6F94B6A6E6297F0EFBB4BBA3C8F97E /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1BAE33B69D5B09EF1A9FC27B6F9104C /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9AC34EBED2E65C0B6C239DB90EEB31B3 /* Double.swift in Sources */ = {isa = PBXBuildFile; fileRef = 035E0D2F7DDEC194A3C14B7536168D1E /* Double.swift */; }; - 9C22643BAAA91B75CCA6B27C4D3E2FB7 /* DFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5A0D8FB52AF6316B11FB61560858335 /* DFUPeripheral.swift */; }; - 9C3406F2A86B170F7981D5E7EA225A08 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1BAE33B69D5B09EF1A9FC27B6F9104C /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9C3E15B210514C397386139A6C0517D3 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E611B7FB86FBA0CB0FAC5D47D53C5AB7 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9CDA2E36DA0CD2BCD1B5F33A237CEF81 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1FEAD48A2DC9006470AEA6A870085C76 /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9D14B66E82F3275CC7E8528B426A98DB /* Archive+Writing.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63E0C68FB96F88E28D9871C8FB7C1C98 /* Archive+Writing.swift */; }; - 9DD909CD9309B5790D57ED5BF0526324 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FF2AA8233135C47CC5AC6C25FBD6A516 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9F50C2AC9D099359C885BEC5E3EFA855 /* SwiftGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B2DFE15A0E62BE06D2CF9D4AE53F927D /* SwiftGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9FA0CD0897D8242D8E77DADCA8671BFB /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C7D96C1FB9ED1E49325F6E92F2AE4F33 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9FFBF3B43DEE945F23D3D77DA91ECD43 /* DFUControlPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6271165BB2AE86465A9943D2EF112D11 /* DFUControlPoint.swift */; }; - A0AB5C2107D30D947314FF5F3DE9C058 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1FEAD48A2DC9006470AEA6A870085C76 /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A0E6BFB8BB7C5506226DCFAC65AE894D /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 150D817BA455C92B497629C15EB2969A /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A20E9D62144F5FF38D5ABA566954F042 /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AB700AD1E77526C1584F3E4CA6A880C /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A27DA1A3FCEDC68D2F68F58288BD83D3 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5B2809F72B0544508607C4E1AD38065 /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A28897D5B7E6ABBAFBAEAEDEAA82C280 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F69F488242700F24D60C5C01A27E5F9C /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9A835C1F3AFDFCF01F6C1D47ED5F89DA /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 95A619B3EEC20F8735D86AE1CC35A961 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9ADE63A051AEFE2A87201B2049D866EB /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC6B95B06278269E39C133FD158C980D /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9B57015F9223D1649F72D3311D610899 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 18D1FB2F31E04EA9F0ECE4139861D861 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9C1A34ABFA33D8B2A9AB00FA53965828 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8707E77673C38369948433F76F81F16E /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9C2474D62A659CFFA82DA110C862122F /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7D0FDF991487027613374C0F7701226 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9D16F0DB6BF7595AE8F2240E83A63A33 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B9B52711F5B464ED2C018FC5CA48EC24 /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9D9588222E17B2D9EA797817D11866F6 /* DFUPeripheralSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9059A703233CE911E22855733F6AFEB /* DFUPeripheralSelector.swift */; }; + 9DE186E36774DA9805AD0F90872CF9EB /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = 326C7A13414F85997D21C1DB7AF746AC /* MetaWear+LED.swift */; }; + 9E1F9D2CBD7970AEA33D67193BE2DBB7 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 780308159364B1C8AB364E6071F61F24 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9F1AA8A9434FBFD1D0DF66E4EAF1D0D7 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED30FE0D206D2DEB526E26E7D3A002BD /* MblMwDataSignal+Async.swift */; }; + 9F8AAAD0143D4F0EEAC260090C59E52B /* SecureDFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = A27370D863F0F27023F575D449AFBB9A /* SecureDFUPeripheral.swift */; }; + A00CB1113E6E6062FC9579D92637C8C2 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60E262EDBD11C805D5B628157982C484 /* MblMwEvent+Async.swift */; }; + A106FD93326552DE2B4EC5F6190123F6 /* DFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7ECD3097C2FDB03555157378AE408FC1 /* DFUService.swift */; }; + A13BFACBCB78A55E8305C49BD0C99830 /* SecureDFUPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8A925FEACFBE227CEDCF7149D4EF12F9 /* SecureDFUPacket.swift */; }; + A19D9982D73324048B2AB3A4EFC94464 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 38FEFFA5A3AF15ED1E41DCFDD70C86E7 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A2154D3088857BB5850BF6928B1605D6 /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F47FBA22B56EC0161953A195874050D1 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A2D8CB45BEC484FDC28BE6A70F562460 /* DFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD54ED09D15C9FCDAB012469BA87074 /* DFUExecutor.swift */; }; + A2F0B801E6F361C4C3978C2DBF0A8FC7 /* iOSDFULibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D11B9606AF00BF65E342847EF05B8AEB /* iOSDFULibrary.framework */; }; A3761FD6656A8ABE4D9413ACA5CF8D13 /* Task+WhenAll.swift in Sources */ = {isa = PBXBuildFile; fileRef = A871018BA4CDDC3C7ABFB39783B1073B /* Task+WhenAll.swift */; }; - A3E475AC83D7DAEF0DCEED394B555B40 /* SecureDFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC664CACE8271F6C72F9F07D47468A39 /* SecureDFUService.swift */; }; - A49A81968CD3E8F51F3C46A2A6F7BC8A /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 871C3E184118A1C65B2DAEAA3016D788 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A62E76430F1C10F25DFA3D9AC833B94D /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 70F6B686369511CDB37017E366F11DFA /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A65164131E4320DB3DD1584E83E9289D /* DFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7ECD3097C2FDB03555157378AE408FC1 /* DFUService.swift */; }; - A6CA40D0AFFC130126BA57464CA1EA03 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FB77A25C245095329AF91D690A2BE70A /* Foundation.framework */; }; - A705F4529D45553B3FAE4000B9AAD0CB /* SwiftGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B2DFE15A0E62BE06D2CF9D4AE53F927D /* SwiftGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A758F76254D736A71B87F785E55EDAB3 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61374778F4B640C23FAAD145DB6958F2 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A3E5A9CFC4F46BD277518C9C48D683D5 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C0F1F6DBF8F5751CA37EBDBEDDD1A15F /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A404F6AFE960925F82FC6696B952FB3A /* Manifest.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2F403E27DBF07E56940860662756CB3 /* Manifest.swift */; }; + A5C926E8293C69E09622B83268E631DC /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 150D817BA455C92B497629C15EB2969A /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A6A43F8D016F782088295CF67621FA4A /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A87DEF4B413807CE32269EAD7DB2BE27 /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A6F15ADEB7610A4C2E36143217900482 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC9364B24DE258463B7BF1ABC14CF53A /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A7D80F9013058B754C6ECF8803D13A2F /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4E01D3B402B676363B8F8D3BA1BF5FA6 /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A7DDEFED496098EC1E750CE4DDD29121 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9EF25ABDC4C7F400A50E64C961ED9408 /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A80FEF9D0DDA062F50148870C8A3682A /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6326D13C7B229BA3C76C140DF0348018 /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; A8466FE5C48C1E85637CE4BB79265262 /* Bolts-Swift-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 8D17966E7C661CDB7AF17155D537360E /* Bolts-Swift-tvOS-dummy.m */; }; - A8ECBE25D5BF892F76F29248EA41D29B /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */; }; - AA3DC456A3184043ACF9A93876020294 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B63F9B9F7BDAE3C2D1A99017A48D4C8E /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - AA7463920DDA1674EB4887984C87C1E3 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E611B7FB86FBA0CB0FAC5D47D53C5AB7 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - ABF1688875AD5A44084F20FB88E90DA7 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FE4DE47D314987E0F452D7DCD0416DB2 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - AC7517337C6231AC406982FFD82253DF /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F671E9F4ADCCBF97B74EC54AA341E8F6 /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m */; }; - AC7FBD000833CE0AA0780000DF877CAD /* DFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD54ED09D15C9FCDAB012469BA87074 /* DFUExecutor.swift */; }; - AD0B82CB7D4B5F5986DEAA4FC8478BCE /* Data.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63054630F91FFCD9A2020927E552B534 /* Data.swift */; }; - AD5B208C305A0EF22D7903FFF64D830C /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEF0743B28C3D9777CDD2245E75150D7 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A95FF357D09781C6DBA8454617466DCA /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B9B52711F5B464ED2C018FC5CA48EC24 /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A9671E13B50DD0DF77E292251F0A92D2 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = 326C7A13414F85997D21C1DB7AF746AC /* MetaWear+LED.swift */; }; + AA290FD4EB22EE547C8CBAB3E72DDD90 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CB6950BDD7E3014E744A1D82DCD7D8F /* ScannerModel.swift */; }; + AAA4530DCADC44AE0EF4C3E140C2AFD8 /* SoftdeviceBootloaderInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 692329CE0A9A63D15123D684C9F2AA34 /* SoftdeviceBootloaderInfo.swift */; }; + AB6FD6DC7B45D725C5939A13BE3B00E6 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = F28F4FB76B2B65A671A7F0342CC64711 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + ABEE79DEB15DF4970F49D785FD506CC4 /* DFUServiceSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 804F804E9F5EF675B36052B75A24FEBA /* DFUServiceSelector.swift */; }; + AC28190F1925E0DB7E5D5E4A046D2383 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8657FCFE4420CEF9B76222E0A97AF791 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + ACA1338C1C2ACC6B3990B3DB45D1584B /* iOSDFULibrary-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9030F92CAA3CC18008C7AE0477355CDD /* iOSDFULibrary-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + AE35C1459882EC1E5676A2E2FC693093 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1BAE33B69D5B09EF1A9FC27B6F9104C /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; AE43CCDFAF83679A78E9EC6CDF865B81 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; - AE86ED24982F1028DD71C5EE416BDCBA /* MetaWearScanner+Mock.swift in Sources */ = {isa = PBXBuildFile; fileRef = D116DFA4679AFCC77CE41D2A4F735077 /* MetaWearScanner+Mock.swift */; }; - AEEFAD74B9F7BE54BA20672922FB61B1 /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2C439C24DEA34C216997BFDB48274C53 /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - AF1FD8F583ECB1D76FE192EC70CBDC16 /* Data+Serialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = C84784ABFBF917BB22BF2077A55A8FAA /* Data+Serialization.swift */; }; - AFF41C17A7B544A3D8802249E9D46E34 /* SecureDFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A20403D099EE1D872F28342554B7D6E /* SecureDFUExecutor.swift */; }; - B05F2A46B68EA620F131D05A8431D1A0 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E611B7FB86FBA0CB0FAC5D47D53C5AB7 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B06F042F8CC36AEF18F8E151A9C20A56 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D71AFCE59F7E5D0E3C3C14DB7E71A34E /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B0B9C4AE34FEC3A2354D7A0EB4D056E1 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FE4DE47D314987E0F452D7DCD0416DB2 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B1EF93D0DEE708C0E687D236E39A8B89 /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D1BEC515335A4A180470B94CAF11CDB7 /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B2B50106670E062A597105B5BFEC5538 /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 262B515345D9A281E9DB178889EAB01F /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B2C1EF48ECD31E16654BC0A75B5DE06E /* DFUCharacteristic.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1ABB43FC0D3E225C0671B3C8F70E8152 /* DFUCharacteristic.swift */; }; - B2E54F2688DDF34A1A01DADFDC180914 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73948BE2C0569FB3BF68F6A4A189B95F /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B3B679E3C1B86869166B297890624A5B /* MetaWear+Mock.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA367DEDE4621CF8CD3DAE036431A3E1 /* MetaWear+Mock.swift */; }; - B3CDB8F487FBE468BC06F6D4099BC3FE /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3AF105819F0CF98F677510BD677E9C91 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + AFF5954EC84E82E0701FA72637C9F363 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A48E122F9DA1F7EB1E163F2101A849EF /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B03F4021980914FA6AFA475CF6691A95 /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 82A200E21B4A962602907DC1F3C32C09 /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B06834AAE88D58104299455C19E4BC9F /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 979F58FE576BD81A336BCBD43C3032E7 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B188D7D39FCAD27DE9C8A3054AD74D40 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 5F88F3C950B2435CD21FD23C8D341C23 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + B2BD0B38DFFA9D119A1414E8D269D250 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED30FE0D206D2DEB526E26E7D3A002BD /* MblMwDataSignal+Async.swift */; }; + B2E07A60BCDDC584D5B054E6A2986439 /* FirmwareBuild.swift in Sources */ = {isa = PBXBuildFile; fileRef = B69D599AAFD0A9D835E0CEF64BE9814D /* FirmwareBuild.swift */; }; + B2F2509775C17BBCD10A40DBF27FB5C5 /* DFUControlPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6271165BB2AE86465A9943D2EF112D11 /* DFUControlPoint.swift */; }; + B34F1143CC0D7B7410FE9F2D10A9CC54 /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 72679D30CADB9E4EDCA6F731B66600DA /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B3576D0C83DD2EA32A99DDDBB45E0260 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1BAE33B69D5B09EF1A9FC27B6F9104C /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; B3E3802795603E3294505470B73BE61A /* Pods-MetaWearIntegrationTests-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = FC3F5F9EFAF6F59EB814261D256C5F2F /* Pods-MetaWearIntegrationTests-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + B3F63F0EA82A9A2350C5E5954A356D8D /* Entry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6067A156E323544E0A4766030061A5B2 /* Entry.swift */; }; + B41E8E4E14769038BEE490D066EBC478 /* DFUServiceDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8C525780CB40473CE06F0E9500FE182 /* DFUServiceDelegate.swift */; }; + B43FD7E59B13E6525D57EDB5E6F41595 /* FileManager+ZIP.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60BEE52C89C924410FA20A8C8FDEFDA7 /* FileManager+ZIP.swift */; }; B44201DB8888C4AE1997955FADAA80AD /* Bolts-Swift-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A46D8DB37147B302C46801703C55133 /* Bolts-Swift-macOS-dummy.m */; }; - B4846254F71C4583A921A5511A235D19 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E611B7FB86FBA0CB0FAC5D47D53C5AB7 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B5462793A724585049DCEFF4BAE2E6DB /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D71AFCE59F7E5D0E3C3C14DB7E71A34E /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B70303F911F288B8B6A0FE5D784D31E2 /* SecureDFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A20403D099EE1D872F28342554B7D6E /* SecureDFUExecutor.swift */; }; - B7A503FDE7EAC9604C952B224A199F44 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = F28F4FB76B2B65A671A7F0342CC64711 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B7F9890DA52935259F88791A5175AC5F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; - B86EEB4D325EB05D800D1EC7A00FACD5 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C116B2146C21545E9C6286225384C304 /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B993A438129B64CF0E2960DE75F0B491 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8BC482C61CBAE6CB05B493775955BDE /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B9986ED8A04C38F3659E19DDB5139066 /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC4B70F9F0E4EAAE94860B390EEC84A5 /* MetaWear+Async.swift */; }; - BC508B43C0018E7C55710E543F70E3A6 /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCE1CF16C54DD96420E6A5AAB43244C4 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BC83A6F7CBAF0DAA200E54D893CE569D /* MetaWear+Firmware.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD76483586B514A5C673056B7A731FE8 /* MetaWear+Firmware.swift */; }; - BD0ADC1BD42C7848938BAD55D6188199 /* LegacyDFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDF52030FE274FEC72DE7FD300FE48D3 /* LegacyDFUPeripheral.swift */; }; - BEBD14234307840C13A72E7FBDAF3A2D /* DFUCharacteristic.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1ABB43FC0D3E225C0671B3C8F70E8152 /* DFUCharacteristic.swift */; }; - BF83787F96799A45A45B1FABDC52B8C2 /* CSharpGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DB1185C771E66593125CF8CDD0EB8DB0 /* CSharpGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BFC145230F8030BF4DE7F0E8FCD9B0A8 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61374778F4B640C23FAAD145DB6958F2 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BFDF22FB742012E5700994D1C2553DE6 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 20B0727D623002B7F4C82B61F2E53BCE /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BFDFE7B666719136AB925DE93D779227 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3AF105819F0CF98F677510BD677E9C91 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B4C726450D0A751C4FEEF89D6B7213C1 /* Data+Serialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = C84784ABFBF917BB22BF2077A55A8FAA /* Data+Serialization.swift */; }; + B8D2A72E1BFF34120452AABB2E0650F4 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82D6BB676A3452CF143E065E861A4B89 /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B94FCA2E08F181DB148B3F9D5CF556DE /* DFUCharacteristic.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1ABB43FC0D3E225C0671B3C8F70E8152 /* DFUCharacteristic.swift */; }; + BA954476EFD16379C89A5598B716C028 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F7D4003C2F97282E3C82E5711C7F8C46 /* Foundation.framework */; }; + BB8564A39B290C14FA2621A430DB4BF8 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 18923ACBB26FEBC52207506844407E81 /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BC2EEC962F9E3C2984A15120F2084C83 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7B6FF697AF15FAD5B996B730D32226F /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BC59639D7765C2A29A3D9FCC970DE8F3 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC1FBF6EFB976B89E85A523A5D3F22A9 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BD2E8C21ADE311331D74EBFDAFC12758 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 74A29439E113714AC0CB0797D42B41E1 /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BD8ECE803F899394FD99FC338D3401EA /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 18923ACBB26FEBC52207506844407E81 /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BDEE1AD9CE4C0EC2BE82B85CEBCADF16 /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 82A200E21B4A962602907DC1F3C32C09 /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BE91EA11B507CB3B3F04E9FEAA70B0C1 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED30FE0D206D2DEB526E26E7D3A002BD /* MblMwDataSignal+Async.swift */; }; + BF062057B2471737A8B7B6F32CF0DE2B /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 979F58FE576BD81A336BCBD43C3032E7 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BF0A2A67A2CC558BCFD833350D8DFA5B /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7D0FDF991487027613374C0F7701226 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BF0FE7560C9DA63FBD8DAAA194CF695A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FB77A25C245095329AF91D690A2BE70A /* Foundation.framework */; }; + BF161F165088B7BB04666B63AFB5EAC5 /* ZIPFoundation-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D35F2A88DC0477C6B52780CE08C435D /* ZIPFoundation-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; C0648C7B32C43988CE8D96EE0B88CA26 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9BF181820020E2FCF8951F8775EE9150 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-dummy.m */; }; - C0DC4ABA6A0EB55932C53F7C533056F7 /* DFUStreamHex.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED716A1D05AB6938853D4091D6F8F559 /* DFUStreamHex.swift */; }; - C158A6C2AEFEB850F911470CC3AF276E /* JavaScriptGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC74A8C206ABDA0979899B483C9DD1AA /* JavaScriptGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C35A4A3DE2DE3C77DDAA685D72FE1C1C /* MockModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BD2D2BB4D92665D01ACDFCE31BBC15B /* MockModule.swift */; }; - C387EA43B4C5143DD9A3C20CCF72AD0B /* crc32.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3448F7A74DD00F5CC447008E69AB4CED /* crc32.swift */; }; - C433FB4CBD429C9314FFA6630097FC31 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C22749D2B8E00599A0F94B486EEAF752 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C493373E17CB73BBEA93E5F64C12C67D /* DFUPeripheralSelectorDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A26C1C50C1866FDC9FA4437D526F6038 /* DFUPeripheralSelectorDelegate.swift */; }; - C6079D6D42B7C2F367FE07828465C83E /* DFUController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E83FA47CA9F4A746A08313BB59BC889 /* DFUController.swift */; }; + C0CBBCC811B4175420877ADD060632C7 /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4E01D3B402B676363B8F8D3BA1BF5FA6 /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C14B1E95BEA286CB7B701061C0F61EFC /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6A1B3EB7FA5C5F9452C98429C7A1DDF7 /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C244271D67D4377EDB6114F96EE12CE2 /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 72679D30CADB9E4EDCA6F731B66600DA /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C254ACFF87B1A5D5C75D609D9DACC691 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F886A5936801A6689720AC5377AE0ABB /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C3B56926AD7F16B8C2AFF85B7BABE9E2 /* LegacyDFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A61E82795569E9BA7E8CC6376F61A26 /* LegacyDFUExecutor.swift */; }; + C3BBF29D2646236D6EEC7AC34BED516B /* DFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD54ED09D15C9FCDAB012469BA87074 /* DFUExecutor.swift */; }; + C3DDC49797CF018197E45BDB6DA05D8F /* Archive+Reading.swift in Sources */ = {isa = PBXBuildFile; fileRef = 085E4CB728B2A20CE1F1A3E86A7E6BF7 /* Archive+Reading.swift */; }; + C42881A7C4D99FE9206779541733750E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; + C4C85730087FD8F7AF411B59BCB0853D /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9610CBAC873B84393551C455F94393AB /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C4D2C54BAB926FE739B8E14044AB69EE /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82D6BB676A3452CF143E065E861A4B89 /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C5EAA145A82FFC73A1A3594334A346E6 /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F671E9F4ADCCBF97B74EC54AA341E8F6 /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m */; }; C62573B2F6376EAFB0338A0AF2A98A7E /* TaskCompletionSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = E43893E60AA833FD5CE59855FFBCA9CF /* TaskCompletionSource.swift */; }; - C6827AC15EC5E1612F6E4738AE162C57 /* LegacyDFUExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A61E82795569E9BA7E8CC6376F61A26 /* LegacyDFUExecutor.swift */; }; - C77E40965F7B880597F05FF883784307 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60E262EDBD11C805D5B628157982C484 /* MblMwEvent+Async.swift */; }; - C797F038C09DAB332331F0D0F37832BB /* ZipArchive.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDAB73F304877FD4585F078B919261FC /* ZipArchive.swift */; }; - C799407B659F535B187BADB41ADAEDCF /* PythonGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3EC1C6520D805971B93CEE5E29C7C7B8 /* PythonGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C7CB77C4CA6D22238AD774FB5689743B /* MetaWear+Mock.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA367DEDE4621CF8CD3DAE036431A3E1 /* MetaWear+Mock.swift */; }; - C8124E181BAA74061EFE90C6AE399FCD /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7D0FDF991487027613374C0F7701226 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C97C9BEFC76CE330365FECA64436CE36 /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D79846913C5C3DB9B906408EA67CDBE4 /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CA3CACD4BD19D74A7DC7AACFD228CEAA /* iOSDFULibrary-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9030F92CAA3CC18008C7AE0477355CDD /* iOSDFULibrary-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C63E229A2827C951A94DA99AB106E30F /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E90E62927116C1466743A0A90469D57F /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C716607796240F4F50704E04C041D0CE /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D79846913C5C3DB9B906408EA67CDBE4 /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C73B10A8E8D6D128C626534667A46866 /* DFUPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21E0B5E72AE22F9985373E6D5A602217 /* DFUPacket.swift */; }; + C759CFF8D68E32DD8F3789DE2BE2680C /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AD72C1111CD9303EAB58262CB8E268FA /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C77839149253FB60FAED06570F51F19A /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2B995D2F14F8DEC62B8EC6A0C94DA4C0 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C8E31BA99BD3FBEAAF50DE2A3C8FBD2A /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C0F1F6DBF8F5751CA37EBDBEDDD1A15F /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C949D06346AF330D88D31B60F253321C /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = F28F4FB76B2B65A671A7F0342CC64711 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; CAAA1842F5F7F4D105FAC2951DA031CE /* Bolts-Swift-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 218AE57BFFFAA6EF91A1FDB717AF2B6A /* Bolts-Swift-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - CB0C5EBE0273D65A11DF2E441518732C /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1055045CA95BD2B47B08BD783A980121 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CB1350F27E336490823BD587185AC1DE /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = F28F4FB76B2B65A671A7F0342CC64711 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CB16E626268E9A409C05FA8CD4C1100D /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED30FE0D206D2DEB526E26E7D3A002BD /* MblMwDataSignal+Async.swift */; }; - CB2CAA055B3C04CC3BD57AB26B4022A4 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 5F88F3C950B2435CD21FD23C8D341C23 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - CC1F26589EFC481F3C3C3C005508D143 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B83AA79D41272316A3114303985BB4F0 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CC419409FE48638E26CF081C974A0CE8 /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AEE665D716662DBB922425D97CDB83CC /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CCE14D48B264F002F71AFEE9B68DFEA6 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8BC482C61CBAE6CB05B493775955BDE /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CD0BEB14777A580B49E9689899DCB69A /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C6E0959E06A9BC6D49824DCEC497E3B /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CAC718DF77A83AD76672186346F2F543 /* ZipArchive.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDAB73F304877FD4585F078B919261FC /* ZipArchive.swift */; }; + CC39DFF49A6E53E6B3A163FE5B41B5CE /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 10539D2C6125287AB283CED2EE8DBAEA /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CCF7E2DBC1310F7CDFF81C30998B531D /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC9364B24DE258463B7BF1ABC14CF53A /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CDB0A8EFD1DDC0370F227ED821D36803 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = F28F4FB76B2B65A671A7F0342CC64711 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; CDCBE46791F0F4EB121D67CF91BFFE3A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FB77A25C245095329AF91D690A2BE70A /* Foundation.framework */; }; - CE504D2DACDEFD0E36CDEEE2788210B2 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FCF2F5A5C94712F9BAE705347593E4A /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CE91AD2F62B01F558ABF753C68EE6224 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5F6357DB75F21135B725219F131B8F8B /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CEDD84CCA0498F69C16D2267A817C627 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 20B0727D623002B7F4C82B61F2E53BCE /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CF10CC5ECE77A9237B2F5423B84D736D /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = 326C7A13414F85997D21C1DB7AF746AC /* MetaWear+LED.swift */; }; - CF12A219994F7C66E871F5E9A530A7EA /* DFUPacket.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21E0B5E72AE22F9985373E6D5A602217 /* DFUPacket.swift */; }; - CF9AB22BAF140F99F510FD93DEA501E0 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CB6950BDD7E3014E744A1D82DCD7D8F /* ScannerModel.swift */; }; - CFC38370084E6BB3041D4DA073A9B9FE /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C116B2146C21545E9C6286225384C304 /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CEFE54A5B9844E369C8B63A01ACE98C8 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7B6FF697AF15FAD5B996B730D32226F /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; CFCBAB9BC93AB5301EB60F1D2BB3E9A3 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0BBBD00DC9B06AD86CC60B957ECBC143 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-dummy.m */; }; - D069ACD4764F38EDC6E2129A03EA7A7C /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = AB0670C7A0A1C99783AB3946244DD414 /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - D0746507FCC6B3E82619FF2FA087B270 /* SoftdeviceBootloaderInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 692329CE0A9A63D15123D684C9F2AA34 /* SoftdeviceBootloaderInfo.swift */; }; - D236D689B19D10C2F59BCC1C6690C4D2 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 150D817BA455C92B497629C15EB2969A /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D281B43E4BF5A23318C8B34CC565B246 /* JavaScriptGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC74A8C206ABDA0979899B483C9DD1AA /* JavaScriptGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D29F777663A6514EC2500CF18FBFF3CE /* common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 79039E935AA8A9170F0A2AA8C3F03298 /* common.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CFF95046998A80B26F33641540178714 /* ZIPFoundation-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 5FD25505429CF7363965185D3FDC0B8B /* ZIPFoundation-iOS-dummy.m */; }; + D01F9FA8A401279792B1A8C95DA8010B /* DFUServiceController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE1BFCB3F1461B4BFBEB3D809F511712 /* DFUServiceController.swift */; }; + D03590221FDFC80A4E795C7D20768AF2 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CB6950BDD7E3014E744A1D82DCD7D8F /* ScannerModel.swift */; }; + D03F856B69ECCCC338A35F73F8F4E3E2 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB0B5A7F5BA80F54C48F6FA85802E3D0 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D0713114804939CF12F191B98B40FD6A /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 558698560BA6BBAF9D08401CC4190DD9 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D11AA4DC813F375DAD2CC62079D21BC7 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C11BD0E842D22950988BD3A9316D7FE0 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D13C18B3DB889AADC4E7695AD62C7DF9 /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 95A619B3EEC20F8735D86AE1CC35A961 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; D2BB8E4486E2CCE36E17A3D11F0D2617 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = FDE3D37DD489EAD78FB0EA6897F9D991 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - D34948C7A95097D458D1BF75219FB6E2 /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC4B70F9F0E4EAAE94860B390EEC84A5 /* MetaWear+Async.swift */; }; - D36C1E42978B57A75A0F94FD2130AAB8 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5B2809F72B0544508607C4E1AD38065 /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D2EE5CB79EAACFD0F3D34D7A6F7E85DA /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 10539D2C6125287AB283CED2EE8DBAEA /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; D38271DE6284656553FA7CDD96319E11 /* Task.swift in Sources */ = {isa = PBXBuildFile; fileRef = 222241CB9EC5A831040351E44E164F47 /* Task.swift */; }; - D3A6BE91393D5FBB0506700791D0A188 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 10B5EE02F081CB150B64BC4FB70FBF7B /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; D3B23F7DD46BE628FFFAD2E73116208E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F7D4003C2F97282E3C82E5711C7F8C46 /* Foundation.framework */; }; - D519C222962A0DA43CED7F37127AC60D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; - D544F16A2F4EA6474217584164401012 /* MetaWearScanner+Mock.swift in Sources */ = {isa = PBXBuildFile; fileRef = D116DFA4679AFCC77CE41D2A4F735077 /* MetaWearScanner+Mock.swift */; }; - D5C1D44CA11068BFB66A2403185B8E11 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 687FF210AC568843A9F8C1CDA491ECC7 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D6228F29D7BA7EC921D3B408E3AA1B2E /* FirmwareServer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80C496E7C90E9994CC0590530ADB9D9C /* FirmwareServer.swift */; }; + D3BB5BE57C0032E4C11C42F6BE9333BD /* crc32.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3448F7A74DD00F5CC447008E69AB4CED /* crc32.swift */; }; + D4AA2193E0B8A167E79A6DBDFBA7E2F2 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 74A29439E113714AC0CB0797D42B41E1 /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; D7C318ECB2D5345DE5BE1CAF2925D26F /* Task+WhenAll.swift in Sources */ = {isa = PBXBuildFile; fileRef = A871018BA4CDDC3C7ABFB39783B1073B /* Task+WhenAll.swift */; }; + D7D4F746850286F22D19965D67163BB1 /* DFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5A0D8FB52AF6316B11FB61560858335 /* DFUPeripheral.swift */; }; D8E64CBAD5BB57243A5A56C5077FE779 /* Bolts-Swift-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2E676C8C851F2DFC1BD8673237F3566F /* Bolts-Swift-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + D97DC90A6C7A759A93044FF2C9CBADE7 /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 07D8C4BF82FC47746C3493658B1DAC84 /* CoreBluetooth.framework */; }; D98235E72935453E54B089197BE2B921 /* Task+WhenAll.swift in Sources */ = {isa = PBXBuildFile; fileRef = A871018BA4CDDC3C7ABFB39783B1073B /* Task+WhenAll.swift */; }; D9AA07C34C9AAEED782F2E5E3A7AD02A /* Executor.swift in Sources */ = {isa = PBXBuildFile; fileRef = B478AA720F432EAEB3DAAD27B7EDB2E3 /* Executor.swift */; }; - D9F84B12B689E30F40E573EBA21F6F55 /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D1BEC515335A4A180470B94CAF11CDB7 /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - DA0BA96FBE4C30FE7C490744AFB595DE /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CB6950BDD7E3014E744A1D82DCD7D8F /* ScannerModel.swift */; }; - DA5CF7C3FA05E0E1A01D6C300F6DCC6A /* DFUStreamZip.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F8DDE74839FCA2D7300179DBCB4FC0F /* DFUStreamZip.swift */; }; - DA666289E3AA5470F666BEF965B130AB /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C0FFFB6700BEC9C36BFFEFCA6F08B772 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - DB326AC92EB7EB9211A2F91781039C24 /* Manifest.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2F403E27DBF07E56940860662756CB3 /* Manifest.swift */; }; - DB84782D1150C106FFDF5871FE405345 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C165784B2F3FBC73025B5730BD84A454 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - DB9F68E99658F947BDCD4604BA95555C /* SecureDFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = A27370D863F0F27023F575D449AFBB9A /* SecureDFUPeripheral.swift */; }; + DA010432F37EDDF11CC2CBDA0149F324 /* Data+Compression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8482F9546AEBA3CC01ADA5A949FAD144 /* Data+Compression.swift */; }; + DA971ED3470661DADAF8096E988FCE41 /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D79846913C5C3DB9B906408EA67CDBE4 /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DAF2B9708569ECB7BB42513B27F0FD84 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8657FCFE4420CEF9B76222E0A97AF791 /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DBE22474D33C394ABA99B1753F97C582 /* LegacyDFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63F893AF4ECF8B17198E585DCD8FB233 /* LegacyDFUServiceInitiator.swift */; }; + DBE4DA3DF72C420319A95A689707AAF2 /* crc32.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3448F7A74DD00F5CC447008E69AB4CED /* crc32.swift */; }; DBF1205E35E600D83FB97DB1093EB6B5 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = B1CD75C05ED2021363C4A9C77D793D4B /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - DC64F62C4B48F921340DB96DE8EC9D62 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5F6357DB75F21135B725219F131B8F8B /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - DC79127714493BA1091228E5D6D6218C /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2EFE9D6C87239704BBC5413982E2438 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - DCC31370219FF51E63ACF29AB118A5B0 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C165784B2F3FBC73025B5730BD84A454 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - DD2457A5153A813B135AF112C1B6CCDB /* JavaScriptGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC74A8C206ABDA0979899B483C9DD1AA /* JavaScriptGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - DD281E84F4BA2B4FA140F3FFA35DE28D /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 92A6AEE6F244210ACF8B60C22AFA8B6C /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - DD4C6800D6538DB9EC454347F385EE00 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CFD843C82D19CF619F26E922A6612134 /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - DD892482240EDC8423F5D3341CC3CFEB /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCE1CF16C54DD96420E6A5AAB43244C4 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - DEB8D4240C6E91F02C1B14E5BBBC5551 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B83AA79D41272316A3114303985BB4F0 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - DFB7A90D2517FDA86C0388F92A95A26A /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7B6FF697AF15FAD5B996B730D32226F /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DC19935EAB0D9074F5BC638FFE7CD914 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6A1B3EB7FA5C5F9452C98429C7A1DDF7 /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DD5E05DE288DC439292BA48BA8B35F57 /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3A93B08019D08C3B0F32E06B08257EFD /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DDC3D0310D20F17CB03007936F42F5FF /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */; }; + DE0F7209DE97126D255FA8712BABE0EF /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60E262EDBD11C805D5B628157982C484 /* MblMwEvent+Async.swift */; }; E127C713A2F3FE8C6C35D4196C55E2C5 /* Task+ContinueWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78CD9B634A9BABA2318BE06485DDB6AF /* Task+ContinueWith.swift */; }; - E15B47C69F2CEFC62720FC4ACA1693EF /* Data.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63054630F91FFCD9A2020927E552B534 /* Data.swift */; }; - E179EA57EE13138294FCDC8F041E9200 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CFD843C82D19CF619F26E922A6612134 /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E187D829EF2B2402CD757DCBE80B1C01 /* DFUStarterPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65F2AB5D288A5BC41E69EFE924EE0C37 /* DFUStarterPeripheral.swift */; }; - E2222C652943059B25FE74A766BF2CA4 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FF2AA8233135C47CC5AC6C25FBD6A516 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E32B4AAA2A4370ECE632AD00BC598CE0 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C165784B2F3FBC73025B5730BD84A454 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E59AB5B99D0CDB0BAE2318DB92D35418 /* DFUServiceController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE1BFCB3F1461B4BFBEB3D809F511712 /* DFUServiceController.swift */; }; - E5D58DCFABE47A3A63B32EEBAB7A72AB /* SecureDFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E2C83FD3D501DC7B7DB4B19590A9D15 /* SecureDFUPeripheralDelegate.swift */; }; - E61E48D565CA7D1251666921044E0023 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 70F6B686369511CDB37017E366F11DFA /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E14ECECA57D8F282865443B9D523AD28 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 07774B397919BA3B2A371F29C47F646E /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m */; }; + E254D74E47A6D6FDEBA65D2FAF158557 /* DFUVersion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AFE0686F81066118B61F4F390340CB1 /* DFUVersion.swift */; }; + E25A8AE2CC1C25E8091D8ADBF294193C /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2936B84D7ABBBF409F954F6039C48833 /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E29F48BEE4D2D2CF137B7EF46BF85C32 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 32A9D2FFDC176644FDA8EA8A07E27CEC /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E382671EB7F7861B000F60359E1FFD1F /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 558698560BA6BBAF9D08401CC4190DD9 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E4B38BBFBD02FAE175B85DA21E570BDE /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 902980F5FF5383884A7D57FAFFE032AC /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E51D72703EF22E7F8EDC509BC2F77B9D /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F47FBA22B56EC0161953A195874050D1 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E707818F63B93F44F35177E686B26BC2 /* SecureDFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = A27370D863F0F27023F575D449AFBB9A /* SecureDFUPeripheral.swift */; }; + E85B84B8C6BB5588F426295CF0994EFA /* Data+Serialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = C84784ABFBF917BB22BF2077A55A8FAA /* Data+Serialization.swift */; }; E90AC37B868C0143CB8C1345DC8C332D /* Task+WhenAll.swift in Sources */ = {isa = PBXBuildFile; fileRef = A871018BA4CDDC3C7ABFB39783B1073B /* Task+WhenAll.swift */; }; - E935FB9E9488C6879B2AEB8ECCAB4CCF /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C165784B2F3FBC73025B5730BD84A454 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - EA35A488DAE44CAE90F52CF3717FE92F /* Archive+Reading.swift in Sources */ = {isa = PBXBuildFile; fileRef = 085E4CB728B2A20CE1F1A3E86A7E6BF7 /* Archive+Reading.swift */; }; - EAA9FDA26FCC68FFA825EE1DE534B221 /* iOSDFULibrary-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = E92D86C475B17A3AB3793FC4EB6D4E99 /* iOSDFULibrary-macOS-dummy.m */; }; - EBEBFD91F79EC1D2B6752E450DBC112A /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C116B2146C21545E9C6286225384C304 /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E96BD58330EEDA16927D962297386179 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC9364B24DE258463B7BF1ABC14CF53A /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E9AC708D8ED10F0D6C6CA9B88928AF80 /* Archive+Writing.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63E0C68FB96F88E28D9871C8FB7C1C98 /* Archive+Writing.swift */; }; + E9BE1A043BBB61BD6E45C8CBCD9B2DFE /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A934C4144529FEC2455E9EA58EEF3641 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + EA2DADE24A623F502F8701499C459C59 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 150D817BA455C92B497629C15EB2969A /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + EA4D60E30BF84566AF91EDE71A738577 /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC4B70F9F0E4EAAE94860B390EEC84A5 /* MetaWear+Async.swift */; }; + EB4859C266B82CC9AD7556192C714235 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2936B84D7ABBBF409F954F6039C48833 /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + EC7E2A0AA1508D840598A819D7440F5C /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 979F58FE576BD81A336BCBD43C3032E7 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; EC81B6C016677EDE69A61A1D8DF3159A /* Bolts-Swift-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0F7522AE1D3130829DAE82D6901E1EB6 /* Bolts-Swift-iOS-dummy.m */; }; - ECCADC2D5BA9340742A57723E261B438 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73948BE2C0569FB3BF68F6A4A189B95F /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; ECF40D95E0DB4B34F8C0A332A677E44D /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EE9B4B804B5A82BC67B27E62E4E47BC /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - EDA28C957C97A0F5433AC3DA8977C640 /* ZIPFoundation-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D35F2A88DC0477C6B52780CE08C435D /* ZIPFoundation-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - EDF49FE8F36AE454CE64A5F87B2B98F4 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1055045CA95BD2B47B08BD783A980121 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - EE15B6389BC5DB5DB8C78B3F5114A756 /* Entry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6067A156E323544E0A4766030061A5B2 /* Entry.swift */; }; - EEC6CC69EE2C35A01AF0B00A1E0AA951 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D71AFCE59F7E5D0E3C3C14DB7E71A34E /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - EEF9385072F5934435F5AB64EF45E101 /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCE1CF16C54DD96420E6A5AAB43244C4 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + ED03D8EFB165840778709AF726640BF3 /* DFUServiceDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8C525780CB40473CE06F0E9500FE182 /* DFUServiceDelegate.swift */; }; + EE0EA67320A35024F90D5AAFA9EC0FC4 /* DFUControlPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6271165BB2AE86465A9943D2EF112D11 /* DFUControlPoint.swift */; }; + EE3DEA5141A96AC54BAD316D3C0F387D /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC4B70F9F0E4EAAE94860B390EEC84A5 /* MetaWear+Async.swift */; }; EF151BD9E0597C91523D5427BFFADDDA /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */; }; - EF243877934AA8AB72605F69ACC81732 /* LoggerHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 301FE6ECD82EE6FB8E3F50AAA7F50766 /* LoggerHelper.swift */; }; - EF3A748A398DDEEC2E0DEDACAF4AD24C /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BFD6B2E301BA8ACDC2D3BCD0E758C1D /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F08B321D7E3C926EDAFB5462535CB86E /* iOSDFULibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D11B9606AF00BF65E342847EF05B8AEB /* iOSDFULibrary.framework */; }; + F04E88FFD97A7936E27F2AA7B8E5B797 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 18923ACBB26FEBC52207506844407E81 /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F10D1E76041102270A9B10555C4C521B /* Archive+Reading.swift in Sources */ = {isa = PBXBuildFile; fileRef = 085E4CB728B2A20CE1F1A3E86A7E6BF7 /* Archive+Reading.swift */; }; F1369AA6A64A78DEA0419CEF01AF6A13 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EC706D80D1653386F8E95C9A27FBD84 /* Errors.swift */; }; + F1800F1EE6ED6D6CD4CA091628C67136 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 18D1FB2F31E04EA9F0ECE4139861D861 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F3146E1A998FB0A82E7553E6F78AE07F /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C6E0959E06A9BC6D49824DCEC497E3B /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F38EDDC06E0E88FF7B31055605FB5666 /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC4B70F9F0E4EAAE94860B390EEC84A5 /* MetaWear+Async.swift */; }; F3DD65EDD9AB76FE5D7C5620C24EF9C5 /* Executor.swift in Sources */ = {isa = PBXBuildFile; fileRef = B478AA720F432EAEB3DAAD27B7EDB2E3 /* Executor.swift */; }; - F4804A768A6923BF6813DFA584CD0ADD /* DFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7ECD3097C2FDB03555157378AE408FC1 /* DFUService.swift */; }; - F4A12C8A6329FADD5A332FE3798F981C /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FF2AA8233135C47CC5AC6C25FBD6A516 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F56733AF54DC5642779F3F65257572C2 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9E0362A7CDF8C01C9D967F8417265F7C /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F5B015389FF1D05AB43E9DA28518F2D1 /* CSharpGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DB1185C771E66593125CF8CDD0EB8DB0 /* CSharpGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F65759A24D22201808A645D31AFD9CFC /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D79846913C5C3DB9B906408EA67CDBE4 /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F6809A948DB09B744EAAA02F7716A602 /* iOSDFULibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D11B9606AF00BF65E342847EF05B8AEB /* iOSDFULibrary.framework */; }; - F6CC8F5C1ECDD542E127270FB6DABEB2 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BF6180B8C72293B7BA5EB27B28FA560 /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F75C621B8FFA6B0398E95DE3B2260F9F /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED30FE0D206D2DEB526E26E7D3A002BD /* MblMwDataSignal+Async.swift */; }; - F78498E278FAAF3AEE2C9403D4E17B31 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = F28F4FB76B2B65A671A7F0342CC64711 /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F85E374B772FEAC1A66A8BD7D16ED810 /* IntelHex2BinConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AE8742872C84BB77BE446ECCB5F2089 /* IntelHex2BinConverter.swift */; }; - F89FF8564BE515E32A9E4070451E8754 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F69F488242700F24D60C5C01A27E5F9C /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F8A1B033F66B444C07EB86007CD8EF57 /* DFUStreamHex.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED716A1D05AB6938853D4091D6F8F559 /* DFUStreamHex.swift */; }; + F46CE4416A15F548E7973612CD0B52D9 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9EF25ABDC4C7F400A50E64C961ED9408 /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F4AAAAA9EF801C5CEE3A8D6595F17285 /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */; }; + F4EC53A68192A50191E672787CB3ABC7 /* MetaWearScanner+Mock.swift in Sources */ = {isa = PBXBuildFile; fileRef = D116DFA4679AFCC77CE41D2A4F735077 /* MetaWearScanner+Mock.swift */; }; + F4F9CE0A10B3D5542268B4EA769119F3 /* DFUPeripheralSelectorDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A26C1C50C1866FDC9FA4437D526F6038 /* DFUPeripheralSelectorDelegate.swift */; }; + F533A43237E3E202ECB2ED18CF072C37 /* LegacyDFUPeripheralDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1381FD8CC75E8C4F6F506D2A5535FB9E /* LegacyDFUPeripheralDelegate.swift */; }; + F5A46590E4817432B685E1D0616161BB /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6326D13C7B229BA3C76C140DF0348018 /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F7402CC09B9F5E8A2B22653D4695A8E8 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 978459E240560B17507244A6549F4229 /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F83F3888FE72BBA526A1B973823C96C4 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 48BAF38843147CF61083BD1B5E606613 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F84731A99BB57AAB6933D0F0A580C0B8 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6A1B3EB7FA5C5F9452C98429C7A1DDF7 /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; F8C48F64D2977972D017B714ACC1DFA2 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EC706D80D1653386F8E95C9A27FBD84 /* Errors.swift */; }; F929BAF7730F09CF4B674AF3CF4698F7 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 633834F9772E6C85C49F77052241B97F /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - FA1AC83BEA313F5231D1A22DE9DF8BB3 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D71AFCE59F7E5D0E3C3C14DB7E71A34E /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FA6DB392671A30FE07ACF393B6053C95 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7B6FF697AF15FAD5B996B730D32226F /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FA7017AB9BEE677131AE7169B258206A /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 827E9F987EB8540D345C89BCCF2B194C /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FAD68810E64D49FAC279EFBCC79FCAB7 /* DFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5A0D8FB52AF6316B11FB61560858335 /* DFUPeripheral.swift */; }; - FAEDD66CCEAA1CC94BC0BF339D273F86 /* LegacyDFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63F893AF4ECF8B17198E585DCD8FB233 /* LegacyDFUServiceInitiator.swift */; }; - FBC3FCCDEF86C946AFE7E39E616469D9 /* CSharpGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DB1185C771E66593125CF8CDD0EB8DB0 /* CSharpGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FD67251885303BE1F329465F700C7010 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5B2809F72B0544508607C4E1AD38065 /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FD955F3FF63408645E99B278B1762E0A /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2C439C24DEA34C216997BFDB48274C53 /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F9CD511C3EF02099014B37765C61DA7B /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E8638215484973EEFECD6AB74476B075 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FA9F1794745CC192928270CDCAC2F868 /* LegacyDFUPeripheral.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDF52030FE274FEC72DE7FD300FE48D3 /* LegacyDFUPeripheral.swift */; }; + FAC6165D11CF77DB46D99BE08B431BF1 /* ZipArchive.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDAB73F304877FD4585F078B919261FC /* ZipArchive.swift */; }; + FB8715DD5DA3B7924CA05A6314CA9F81 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EB8542490FD75B1B911315898FEBB4D9 /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FC7AA766956F20EC418DF852EB980191 /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */; }; + FD32D8AE7DA49307CD48CC660A85735E /* LoggerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BD2DBCCF615B8BBB6F900E4540C8EF5 /* LoggerDelegate.swift */; }; + FD3A2F9A9FB1005D6EC33FDF62AC004B /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 404A96C52A94C9574CC02A2A53C0D18D /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m */; }; + FD892452E9581BA1E1CDAC50AAE89C4F /* DFUStreamZip.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F8DDE74839FCA2D7300179DBCB4FC0F /* DFUStreamZip.swift */; }; FDD99EFFE1EC469B75338ED4F452FFCB /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = C626F85A8564BCF486B43AC72451FC24 /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-dummy.m */; }; - FDF8F0F97587C116BD5E31F7EB019D2E /* LoggerHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 301FE6ECD82EE6FB8E3F50AAA7F50766 /* LoggerHelper.swift */; }; + FE040EA1A5D5FBD711A7E2253A469DB7 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2936B84D7ABBBF409F954F6039C48833 /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; FE1779E8FC6E02A5F862C44182F9DCC9 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */; }; - FE8E8A89D9CC670638401151217C6B9B /* LegacyDFUService.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC30364AD3168CD204AC57BFFB1936FA /* LegacyDFUService.swift */; }; FE93755A45DF3F35A3D67EB0483200D3 /* Pods-MetaWearIntegrationTests-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = FDDABF26A26EF18A186D1EE57BF9A884 /* Pods-MetaWearIntegrationTests-tvOS-dummy.m */; }; - FEE445EF8846C7B4FFCAEB050873DB67 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B4ECB2BFD9EC71AEC3128B318A9BA8CB /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FF5ECDE3099FEBC82CE167472A464B05 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B63F9B9F7BDAE3C2D1A99017A48D4C8E /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FEE739991DD736BBB54B577BE73F6157 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51AFD4D7267C86EF2C52B376EA4A25E2 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FFCAB7D23E8AEB3C929F9FC04861903C /* SecureDFUServiceInitiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3278B1D6E8FB851C63599138931CEC3F /* SecureDFUServiceInitiator.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 05C9E3CF3394D544FDA9B3754F3AD569 /* PBXContainerItemProxy */ = { + 06186ADC23B47533921ACA21A45E04EA /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; - remoteInfo = "Bolts-Swift-macOS"; - }; - 10775978D240B3CC0700D712E73A833F /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; - proxyType = 1; - remoteGlobalIDString = D34323F62557B06705361E449443F967; - remoteInfo = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS"; + remoteGlobalIDString = 667F340C7624C4E82D66A02A17E0B33D; + remoteInfo = "MetaWear-AsyncUtils-Core-UI-watchOS"; }; - 13F640600278E83472F3461DD4CC6A38 /* PBXContainerItemProxy */ = { + 0DCE60CAAB08FC7E3AF8217273AAF87E /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 8B5BB2050078EFCACBEDC5B4195B80CD; remoteInfo = "ZIPFoundation-macOS"; }; - 237511C50C9BE09BCF94D3C53BDDCD2C /* PBXContainerItemProxy */ = { + 1E7137AA06E32438A90DFBA1F76B5710 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; - remoteInfo = "Bolts-Swift-tvOS"; + remoteGlobalIDString = D5D94E351BD6926C6DC33FBD834E16AC; + remoteInfo = "iOSDFULibrary-iOS"; }; - 27BB945EAE3344C06679570DD14C005F /* PBXContainerItemProxy */ = { + 21A142E2AD634BC669EF6ADA54442E52 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 79F9638EA00F4594D84B597FE45CD2DC; - remoteInfo = "iOSDFULibrary-macOS"; + remoteGlobalIDString = 04C10A816CC356F24E80EFDC360742A5; + remoteInfo = "Bolts-Swift-watchOS"; }; - 2945BAB3488A9392C91743BB6FC81DF0 /* PBXContainerItemProxy */ = { + 27068BB70B9C0C8814841DD5C68AF574 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 79F9638EA00F4594D84B597FE45CD2DC; - remoteInfo = "iOSDFULibrary-macOS"; + remoteGlobalIDString = 8B5BB2050078EFCACBEDC5B4195B80CD; + remoteInfo = "ZIPFoundation-macOS"; }; - 2CA06FA7571CF5AD6639EA503136410A /* PBXContainerItemProxy */ = { + 2B00D3D014773BE98799928B981E3142 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 9AF8AE8821E967844EEF26BBB341564D; remoteInfo = "ZIPFoundation-iOS"; }; - 3B6B4690C5DFA62472184E4E90947D27 /* PBXContainerItemProxy */ = { + 33A20B401C11EFBB96547AA70FF210EC /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 285D0CB5C235EDD5B3B0975146484BE0; remoteInfo = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; }; - 42A95F515F9634ACDBEA3C34E99C338C /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 04C10A816CC356F24E80EFDC360742A5; - remoteInfo = "Bolts-Swift-watchOS"; - }; - 44E242F977B9B5141D1F8E58A1699C32 /* PBXContainerItemProxy */ = { + 35779F067CD8EEBEC466D32B0CA33FD7 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = D5D94E351BD6926C6DC33FBD834E16AC; - remoteInfo = "iOSDFULibrary-iOS"; + remoteGlobalIDString = 79F9638EA00F4594D84B597FE45CD2DC; + remoteInfo = "iOSDFULibrary-macOS"; }; - 585CE3983175E44568815D3D7380A15C /* PBXContainerItemProxy */ = { + 3E518946FC37B273FCA3A6BAC2FC7B89 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 79F9638EA00F4594D84B597FE45CD2DC; remoteInfo = "iOSDFULibrary-macOS"; }; - 66C484EC310615B38CAD918AB122E7B9 /* PBXContainerItemProxy */ = { + 42D33096E126F5CCA8BF2E2A4356EF2D /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 42FE80E7F4B82634FE879096E38AF67E; - remoteInfo = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; + remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; + remoteInfo = "Bolts-Swift-macOS"; }; - 711010DD4018732EF2B69AD110191064 /* PBXContainerItemProxy */ = { + 4A0AE48AE5842C4DC26C0D456C245915 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = D5D94E351BD6926C6DC33FBD834E16AC; remoteInfo = "iOSDFULibrary-iOS"; }; - 73098E235892B2F60AB2910EB335AA94 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; - proxyType = 1; - remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; - remoteInfo = "Bolts-Swift-iOS"; - }; - 75554CF568A2719BD9E97BFE2D63AB84 /* PBXContainerItemProxy */ = { + 4E7DE226AEA7AF2B4ED1673A5168A06B /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 8B5BB2050078EFCACBEDC5B4195B80CD; remoteInfo = "ZIPFoundation-macOS"; }; - 791C07C26EE4252511A485D94AEBA2F1 /* PBXContainerItemProxy */ = { + 503F98E425BCBB130968B2B5657E8E6A /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; - remoteInfo = "Bolts-Swift-tvOS"; + remoteGlobalIDString = 8804FF230B80287816DD00C23D7C3AFB; + remoteInfo = "MetaWear-AsyncUtils-Core-UI-tvOS"; }; - 7B78FA778BAAC88D8722ECB221FE9C83 /* PBXContainerItemProxy */ = { + 660D3B6E3FA5008E8C16D0F4D53440CF /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 04C10A816CC356F24E80EFDC360742A5; remoteInfo = "Bolts-Swift-watchOS"; }; - 864C61A1A60EF337AD9CB7AC5F7FF7E8 /* PBXContainerItemProxy */ = { + 6884F90B4715861C7A49D0024119963D /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = E495A89A7F691DD1EF5E2278AD5C03B0; - remoteInfo = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS"; + remoteGlobalIDString = 8804FF230B80287816DD00C23D7C3AFB; + remoteInfo = "MetaWear-AsyncUtils-Core-UI-tvOS"; }; - 887048131DC8D0273A24B249EF0F454D /* PBXContainerItemProxy */ = { + 6982874C1AA9D03CA808E7B5632394B9 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 667F340C7624C4E82D66A02A17E0B33D; - remoteInfo = "MetaWear-AsyncUtils-Core-UI-watchOS"; + remoteGlobalIDString = D5D94E351BD6926C6DC33FBD834E16AC; + remoteInfo = "iOSDFULibrary-iOS"; }; - 8C02976A56F3D589D7A255F59BF5B253 /* PBXContainerItemProxy */ = { + 6CAEBDB14F18312BF6C8E9AA29350129 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 8804FF230B80287816DD00C23D7C3AFB; - remoteInfo = "MetaWear-AsyncUtils-Core-UI-tvOS"; + remoteGlobalIDString = 42FE80E7F4B82634FE879096E38AF67E; + remoteInfo = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; }; - 9B8A9D3CED50028C926E1A46B32A91D0 /* PBXContainerItemProxy */ = { + 71316C3DDD1AAC898A200A9D32C85C84 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; - remoteInfo = "Bolts-Swift-iOS"; + remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; + remoteInfo = "Bolts-Swift-tvOS"; }; - A4B9DBA1C6AA546EE0201EF8C1E68BEA /* PBXContainerItemProxy */ = { + 74EAECF21E822B75305F2EAD499FF056 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 8804FF230B80287816DD00C23D7C3AFB; - remoteInfo = "MetaWear-AsyncUtils-Core-UI-tvOS"; + remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; + remoteInfo = "Bolts-Swift-macOS"; }; - AB84B45FACF93E9EA61A82A7217D013B /* PBXContainerItemProxy */ = { + 75D5B6AA9B6773B9290F33E05C887003 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = DC73C4CD23208E5286814B153B7BF656; - remoteInfo = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS"; + remoteGlobalIDString = 9AF8AE8821E967844EEF26BBB341564D; + remoteInfo = "ZIPFoundation-iOS"; }; - AF2AD260DFEAA7D8168ED456B6FCB3D3 /* PBXContainerItemProxy */ = { + 7E6EA7E31612BF7EBEB20268FB505E35 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; - remoteInfo = "Bolts-Swift-macOS"; + remoteGlobalIDString = 285D0CB5C235EDD5B3B0975146484BE0; + remoteInfo = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; }; - B400E8DD5417A408BC8F45BE8A94C88F /* PBXContainerItemProxy */ = { + 8E4B5A4BC5BAB76606B9904A04AAAAF5 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = D5D94E351BD6926C6DC33FBD834E16AC; - remoteInfo = "iOSDFULibrary-iOS"; + remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; + remoteInfo = "Bolts-Swift-iOS"; }; - BE897FE97B811C3234548B168D63920E /* PBXContainerItemProxy */ = { + 99A59F0ECEFE5AF325A5DFDD46A2209C /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 9AF8AE8821E967844EEF26BBB341564D; remoteInfo = "ZIPFoundation-iOS"; }; - D4B29AD9073326D336410C13DF4B6915 /* PBXContainerItemProxy */ = { + 9D53ED0E24AFE721D972613F660EDB09 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 9AF8AE8821E967844EEF26BBB341564D; - remoteInfo = "ZIPFoundation-iOS"; + remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; + remoteInfo = "Bolts-Swift-iOS"; }; - DBD458533DEA2D394E7724C8AD02DE25 /* PBXContainerItemProxy */ = { + A590ABECC35126142DE54287B55849B1 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; - remoteInfo = "Bolts-Swift-macOS"; + remoteGlobalIDString = DC73C4CD23208E5286814B153B7BF656; + remoteInfo = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS"; + }; + B3FE3E484A3E6CA1632A430E9A51CFFB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D34323F62557B06705361E449443F967; + remoteInfo = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS"; + }; + BF75AD80F02223AB13203799AC4D6D13 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 79F9638EA00F4594D84B597FE45CD2DC; + remoteInfo = "iOSDFULibrary-macOS"; }; - DD1B8670BCA35060346E26C7C8DBE590 /* PBXContainerItemProxy */ = { + C1788ADD9033BB42E10D9BF287E37BE4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; remoteInfo = "Bolts-Swift-tvOS"; }; - E56AF568A4DCBD7FDD6C199F0261AEB5 /* PBXContainerItemProxy */ = { + D1CAA10F3D71ADA70A81166204AC7133 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; - remoteInfo = "Bolts-Swift-iOS"; + remoteGlobalIDString = E495A89A7F691DD1EF5E2278AD5C03B0; + remoteInfo = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS"; }; - E7BA52ED09E4D626E7C312225546CF0F /* PBXContainerItemProxy */ = { + D474F1F2685D15E70343A935B1BD0B42 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 8B5BB2050078EFCACBEDC5B4195B80CD; - remoteInfo = "ZIPFoundation-macOS"; + remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; + remoteInfo = "Bolts-Swift-iOS"; }; - F39A203151A809E55F4EE7F052EE034F /* PBXContainerItemProxy */ = { + F0A045233B226CDA41BB0599AA0A7993 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 42FE80E7F4B82634FE879096E38AF67E; remoteInfo = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; }; - F6CA060E8BE65E7804E4E2BDAA4C9E94 /* PBXContainerItemProxy */ = { + F9658AA2CDBA1BC0C296DF88256D9301 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 285D0CB5C235EDD5B3B0975146484BE0; - remoteInfo = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; + remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; + remoteInfo = "Bolts-Swift-macOS"; + }; + FE7494A8273143D0B299BF5B79E9B735 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; + remoteInfo = "Bolts-Swift-tvOS"; }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 004F2B2F88E223F15641B8434DF89667 /* miniz.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = miniz.cpp; sourceTree = ""; }; - 00582FE3731876451149806FBB0E5A28 /* led.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = led.rst; path = Docs/source/led.rst; sourceTree = ""; }; + 00582FE3731876451149806FBB0E5A28 /* led.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = led.rst; path = Docs/source/led.rst; sourceTree = ""; }; 0196948ACFF051DD8861A6C465F8CE3F /* CoreBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreBluetooth.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS14.0.sdk/System/Library/Frameworks/CoreBluetooth.framework; sourceTree = DEVELOPER_DIR; }; - 028E0B50105A41869AE9683AA8EF087F /* debug.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = debug.cpp; sourceTree = ""; }; - 032CEC809A22F93CB6C3F5E5A317521C /* environment.pickle */ = {isa = PBXFileReference; includeInIndex = 1; name = environment.pickle; path = Docs/build/doctrees/environment.pickle; sourceTree = ""; }; + 032CEC809A22F93CB6C3F5E5A317521C /* environment.pickle */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = environment.pickle; path = Docs/build/doctrees/environment.pickle; sourceTree = ""; }; 035E0D2F7DDEC194A3C14B7536168D1E /* Double.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Double.swift; path = iOSDFULibrary/Classes/Utilities/Double.swift; sourceTree = ""; }; - 03D31D20DBC3442CB19A9F770F0F669B /* haptic.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = haptic.doctree; path = Docs/build/doctrees/haptic.doctree; sourceTree = ""; }; + 03D31D20DBC3442CB19A9F770F0F669B /* haptic.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = haptic.doctree; path = Docs/build/doctrees/haptic.doctree; sourceTree = ""; }; 03D9E375058658E47E963E6C82D21FDD /* Pods-MetaWearIntegrationTests-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWearIntegrationTests-macOS-Info.plist"; sourceTree = ""; }; 03F1E3102C3F890C45FE08306FFD60EF /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.debug.xcconfig"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.debug.xcconfig"; sourceTree = ""; }; 0421114FF4A72C4B6114B97C28A38C3A /* MetaWear-AsyncUtils-Core-UI-watchOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-UI-watchOS.release.xcconfig"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.release.xcconfig"; sourceTree = ""; }; 04C6362C74068C59599ACDB1ABD11C44 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap"; sourceTree = ""; }; - 04F1146BEBA5AADD27791BB2E2AAA4EB /* dataprocessor.html */ = {isa = PBXFileReference; includeInIndex = 1; name = dataprocessor.html; path = Docs/build/html/dataprocessor.html; sourceTree = ""; }; + 04F1146BEBA5AADD27791BB2E2AAA4EB /* dataprocessor.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = dataprocessor.html; path = Docs/build/html/dataprocessor.html; sourceTree = ""; }; 072882DA4A73974B94C6CCC3ED91235A /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-Info.plist"; sourceTree = ""; }; - 074889A87EA13F8E63B6FF6CEDBB3038 /* theme.css */ = {isa = PBXFileReference; includeInIndex = 1; name = theme.css; path = Docs/build/html/_static/css/theme.css; sourceTree = ""; }; + 074889A87EA13F8E63B6FF6CEDBB3038 /* theme.css */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.css; name = theme.css; path = Docs/build/html/_static/css/theme.css; sourceTree = ""; }; 07774B397919BA3B2A371F29C47F646E /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m"; sourceTree = ""; }; 078F0731749B6E528288AA919346D9BA /* iOSDFULibrary-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "iOSDFULibrary-macOS-Info.plist"; path = "../iOSDFULibrary-macOS/iOSDFULibrary-macOS-Info.plist"; sourceTree = ""; }; 07D8C4BF82FC47746C3493658B1DAC84 /* CoreBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreBluetooth.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/CoreBluetooth.framework; sourceTree = DEVELOPER_DIR; }; - 083209CBEC7188026918DF4412D0A88C /* ibeacon.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = ibeacon.rst; path = Docs/source/ibeacon.rst; sourceTree = ""; }; + 083209CBEC7188026918DF4412D0A88C /* ibeacon.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = ibeacon.rst; path = Docs/source/ibeacon.rst; sourceTree = ""; }; 085E4CB728B2A20CE1F1A3E86A7E6BF7 /* Archive+Reading.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Archive+Reading.swift"; path = "Sources/ZIPFoundation/Archive+Reading.swift"; sourceTree = ""; }; 097626843A2BE88C200372747C32142B /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-Info.plist"; sourceTree = ""; }; 09FB029345B1A704BD8F64B899B729F7 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.release.xcconfig"; sourceTree = ""; }; - 0A3CA4C5806BBDE749B2721D6009C367 /* logging.html */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.html; path = Docs/build/html/logging.html; sourceTree = ""; }; + 0A3CA4C5806BBDE749B2721D6009C367 /* logging.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = logging.html; path = Docs/build/html/logging.html; sourceTree = ""; }; 0A6BB5254DA6F253B7F224A37040448D /* Bolts-Swift-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-tvOS.release.xcconfig"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS.release.xcconfig"; sourceTree = ""; }; - 0AC46E876C3E1B90B4DFE9C79D18A0E1 /* barometer.html */ = {isa = PBXFileReference; includeInIndex = 1; name = barometer.html; path = Docs/build/html/barometer.html; sourceTree = ""; }; + 0AC46E876C3E1B90B4DFE9C79D18A0E1 /* barometer.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = barometer.html; path = Docs/build/html/barometer.html; sourceTree = ""; }; 0BBBD00DC9B06AD86CC60B957ECBC143 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-dummy.m"; sourceTree = ""; }; 0BF6180B8C72293B7BA5EB27B28FA560 /* String+VersionCompare.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "String+VersionCompare.swift"; sourceTree = ""; }; 0C3C1A8257A68A4723AECC744D10ED3B /* ZIPFoundation-macOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "ZIPFoundation-macOS-prefix.pch"; path = "../ZIPFoundation-macOS/ZIPFoundation-macOS-prefix.pch"; sourceTree = ""; }; 0C4CBE6DC013E76847C1FBA2CE286155 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS.release.xcconfig"; sourceTree = ""; }; - 0C5FB000D6B6DDBC03223EA811B3D032 /* macro.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = macro.rst; path = Docs/source/macro.rst; sourceTree = ""; }; + 0C5FB000D6B6DDBC03223EA811B3D032 /* macro.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = macro.rst; path = Docs/source/macro.rst; sourceTree = ""; }; 0CA1F6023A3DB618EA8AEB4FE0E7ABD6 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-acknowledgements.markdown"; sourceTree = ""; }; - 0CB733F1ABB28FD09CC24CAFF4208936 /* logger.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = logger.rst; path = Docs/source/logger.rst; sourceTree = ""; }; + 0CB733F1ABB28FD09CC24CAFF4208936 /* logger.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = logger.rst; path = Docs/source/logger.rst; sourceTree = ""; }; 0D0F2455951621C92FC852B3CA01A025 /* Pods-MetaWearIntegrationTests-iOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWearIntegrationTests-iOS-acknowledgements.markdown"; sourceTree = ""; }; - 0D9DFE8A544DE8FAD30184591A1A9EC3 /* temperature.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = temperature.doctree; path = Docs/build/doctrees/temperature.doctree; sourceTree = ""; }; + 0D9DFE8A544DE8FAD30184591A1A9EC3 /* temperature.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = temperature.doctree; path = Docs/build/doctrees/temperature.doctree; sourceTree = ""; }; 0EE452657460D902FBF3DF3941516A6F /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-dummy.m"; sourceTree = ""; }; - 0F1EB82D49AB88821356CA73A0771FD5 /* settings.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.rst.txt; path = Docs/build/html/_sources/settings.rst.txt; sourceTree = ""; }; + 0F1EB82D49AB88821356CA73A0771FD5 /* settings.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = settings.rst.txt; path = Docs/build/html/_sources/settings.rst.txt; sourceTree = ""; }; 0F662C509A889C1CDF18249B1C366873 /* Pods-MetaWearIntegrationTests-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWearIntegrationTests-tvOS.release.xcconfig"; sourceTree = ""; }; 0F7522AE1D3130829DAE82D6901E1EB6 /* Bolts-Swift-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Bolts-Swift-iOS-dummy.m"; sourceTree = ""; }; - 0FCF2F5A5C94712F9BAE705347593E4A /* haptic.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = haptic.cpp; sourceTree = ""; }; 103D1343B162D7C561457279B0ED5AD6 /* Pods-MetaWearIntegrationTests-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWearIntegrationTests-iOS-Info.plist"; sourceTree = ""; }; - 1055045CA95BD2B47B08BD783A980121 /* anonymous_datasignal.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = anonymous_datasignal.cpp; sourceTree = ""; }; + 10539D2C6125287AB283CED2EE8DBAEA /* datasignal.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = datasignal.cpp; sourceTree = ""; }; 1084C07F80C0D31B449AC6A192D39F3F /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.modulemap"; sourceTree = ""; }; - 10B5EE02F081CB150B64BC4FB70FBF7B /* datainterpreter.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = datainterpreter.cpp; sourceTree = ""; }; 10D3E4D3F3DF5923B59F5AA158D6FAA8 /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension.release.xcconfig"; sourceTree = ""; }; 1170D3A9194D58C03AC23B4BD8B40D36 /* DFUStreamBin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUStreamBin.swift; path = iOSDFULibrary/Classes/Utilities/Streams/DFUStreamBin.swift; sourceTree = ""; }; - 11CADFF53C91E1A30202D8FF4E333388 /* gpio.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = gpio.doctree; path = Docs/build/doctrees/gpio.doctree; sourceTree = ""; }; - 11D7E43CE0EF603C44855E4593EAB0BA /* temperature.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = temperature.rst; path = Docs/source/temperature.rst; sourceTree = ""; }; - 1225B2929A00F38CEC6D51ADA16F1AC0 /* metawearboard.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearboard.rst; path = Docs/source/metawearboard.rst; sourceTree = ""; }; + 11CADFF53C91E1A30202D8FF4E333388 /* gpio.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = gpio.doctree; path = Docs/build/doctrees/gpio.doctree; sourceTree = ""; }; + 11D7E43CE0EF603C44855E4593EAB0BA /* temperature.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = temperature.rst; path = Docs/source/temperature.rst; sourceTree = ""; }; + 1225B2929A00F38CEC6D51ADA16F1AC0 /* metawearboard.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = metawearboard.rst; path = Docs/source/metawearboard.rst; sourceTree = ""; }; 123A22AEC2E29C7F895B12525B23F87C /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.debug.xcconfig"; sourceTree = ""; }; - 130F499F721C1B377D36A98D02F77DD8 /* logging.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.rst; path = Docs/source/logging.rst; sourceTree = ""; }; + 130F499F721C1B377D36A98D02F77DD8 /* logging.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = logging.rst; path = Docs/source/logging.rst; sourceTree = ""; }; + 1348C828ED80F76140C635967D764E8B /* dataprocessor_config.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dataprocessor_config.cpp; sourceTree = ""; }; 1381FD8CC75E8C4F6F506D2A5535FB9E /* LegacyDFUPeripheralDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LegacyDFUPeripheralDelegate.swift; path = iOSDFULibrary/Classes/Implementation/LegacyDFU/Peripherals/LegacyDFUPeripheralDelegate.swift; sourceTree = ""; }; 13829EDE662D97D87D0E32811BDB409F /* Bolts-Swift-watchOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "Bolts-Swift-watchOS-Info.plist"; path = "../Bolts-Swift-watchOS/Bolts-Swift-watchOS-Info.plist"; sourceTree = ""; }; 14072DD4081A19ABE0CA94D6B8577713 /* ZIPFoundation-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "ZIPFoundation-iOS-Info.plist"; sourceTree = ""; }; - 1411C15BEC5AF49F39FEBE09D9673803 /* sensors.html */ = {isa = PBXFileReference; includeInIndex = 1; name = sensors.html; path = Docs/build/html/sensors.html; sourceTree = ""; }; + 1411C15BEC5AF49F39FEBE09D9673803 /* sensors.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = sensors.html; path = Docs/build/html/sensors.html; sourceTree = ""; }; 150D817BA455C92B497629C15EB2969A /* Bridging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Bridging.swift; sourceTree = ""; }; 15337C8C5853077863392CCCAE3D6D92 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-acknowledgements.plist"; sourceTree = ""; }; 15846FC0DBF518C187A55CDA92587321 /* MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch"; sourceTree = ""; }; - 15D2FB5A458C72908F44B10B63D71EF7 /* badge_only.js */ = {isa = PBXFileReference; includeInIndex = 1; name = badge_only.js; path = Docs/build/html/_static/js/badge_only.js; sourceTree = ""; }; - 1630E35F3CDA6F4D83398862B274956F /* index.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = index.doctree; path = Docs/build/doctrees/index.doctree; sourceTree = ""; }; + 15D2FB5A458C72908F44B10B63D71EF7 /* badge_only.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = badge_only.js; path = Docs/build/html/_static/js/badge_only.js; sourceTree = ""; }; + 1630E35F3CDA6F4D83398862B274956F /* index.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = index.doctree; path = Docs/build/doctrees/index.doctree; sourceTree = ""; }; 17006AC50F87FE957B3791E1DC7C78CC /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 172FBC6BF4C64CB216A0D7FDD91B84AC /* ZIPFoundation-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "ZIPFoundation-macOS.modulemap"; path = "../ZIPFoundation-macOS/ZIPFoundation-macOS.modulemap"; sourceTree = ""; }; - 17CCDA63A1BE61939C8547776C1A883B /* macro.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = macro.doctree; path = Docs/build/doctrees/macro.doctree; sourceTree = ""; }; - 1841D19E78EC3951F80B2F159EB39BB6 /* objects.inv */ = {isa = PBXFileReference; includeInIndex = 1; name = objects.inv; path = Docs/build/html/objects.inv; sourceTree = ""; }; + 17CCDA63A1BE61939C8547776C1A883B /* macro.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = macro.doctree; path = Docs/build/doctrees/macro.doctree; sourceTree = ""; }; + 1841D19E78EC3951F80B2F159EB39BB6 /* objects.inv */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = objects.inv; path = Docs/build/html/objects.inv; sourceTree = ""; }; 1881483EDF6FAA713D89C78E866AEDF8 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.release.xcconfig"; sourceTree = ""; }; - 192093A37DD2B580540A720F1C1EDBB0 /* spi.html */ = {isa = PBXFileReference; includeInIndex = 1; name = spi.html; path = Docs/build/html/spi.html; sourceTree = ""; }; + 18923ACBB26FEBC52207506844407E81 /* miniz.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = miniz.cpp; sourceTree = ""; }; + 18D1FB2F31E04EA9F0ECE4139861D861 /* timer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = timer.cpp; sourceTree = ""; }; + 192093A37DD2B580540A720F1C1EDBB0 /* spi.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = spi.html; path = Docs/build/html/spi.html; sourceTree = ""; }; 1A345CDF1F508DD005B1A5DF065BAFEC /* iOSDFULibrary-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "iOSDFULibrary-iOS-Info.plist"; sourceTree = ""; }; - 1AB700AD1E77526C1584F3E4CA6A880C /* switch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = switch.cpp; sourceTree = ""; }; 1ABB43FC0D3E225C0671B3C8F70E8152 /* DFUCharacteristic.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUCharacteristic.swift; path = iOSDFULibrary/Classes/Implementation/GenericDFU/DFUCharacteristic.swift; sourceTree = ""; }; 1BBCC393FC3A41158FF2F3A62082CB69 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-Info.plist"; sourceTree = ""; }; - 1D07E927F7D808F604AF5624418F4F14 /* advanced_features.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = advanced_features.rst.txt; path = Docs/build/html/_sources/advanced_features.rst.txt; sourceTree = ""; }; + 1D07E927F7D808F604AF5624418F4F14 /* advanced_features.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = advanced_features.rst.txt; path = Docs/build/html/_sources/advanced_features.rst.txt; sourceTree = ""; }; 1D23DA01A9AF58E28A2EBD8F1BEA380A /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-frameworks.sh"; sourceTree = ""; }; - 1D5AAA0720CDB17B211FFF8D4037D68C /* peripherals.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = peripherals.rst; path = Docs/source/peripherals.rst; sourceTree = ""; }; - 1DB0754FCFAA5EB6F0F312EBB3B8F528 /* barometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = barometer.rst; path = Docs/source/barometer.rst; sourceTree = ""; }; - 1DBB1FB0B10FBF78D05ADF85318B6529 /* cppbridge.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = cppbridge.rst.txt; path = Docs/build/html/_sources/cppbridge.rst.txt; sourceTree = ""; }; - 1DEAEE66CB7A6E65AA70C29F4C092CEE /* index.html */ = {isa = PBXFileReference; includeInIndex = 1; name = index.html; path = Docs/build/html/index.html; sourceTree = ""; }; + 1D5AAA0720CDB17B211FFF8D4037D68C /* peripherals.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = peripherals.rst; path = Docs/source/peripherals.rst; sourceTree = ""; }; + 1DB0754FCFAA5EB6F0F312EBB3B8F528 /* barometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = barometer.rst; path = Docs/source/barometer.rst; sourceTree = ""; }; + 1DBB1FB0B10FBF78D05ADF85318B6529 /* cppbridge.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = cppbridge.rst.txt; path = Docs/build/html/_sources/cppbridge.rst.txt; sourceTree = ""; }; + 1DEAEE66CB7A6E65AA70C29F4C092CEE /* index.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = index.html; path = Docs/build/html/index.html; sourceTree = ""; }; 1EC706D80D1653386F8E95C9A27FBD84 /* Errors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Errors.swift; path = Sources/BoltsSwift/Errors.swift; sourceTree = ""; }; 1EEBF63821E151EA85AFD8192EE64F2B /* Pods-MetaWearIntegrationTests-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWearIntegrationTests-tvOS.debug.xcconfig"; sourceTree = ""; }; 1F2F9B8E65A9F447C9A12C27A37C2C8F /* ButtonlessDFU.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ButtonlessDFU.swift; path = iOSDFULibrary/Classes/Implementation/SecureDFU/Characteristics/ButtonlessDFU.swift; sourceTree = ""; }; - 1FEAD48A2DC9006470AEA6A870085C76 /* version.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = version.cpp; sourceTree = ""; }; - 20B0727D623002B7F4C82B61F2E53BCE /* gpio.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = gpio.cpp; sourceTree = ""; }; 218AE57BFFFAA6EF91A1FDB717AF2B6A /* Bolts-Swift-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-macOS-umbrella.h"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS-umbrella.h"; sourceTree = ""; }; 21E0B5E72AE22F9985373E6D5A602217 /* DFUPacket.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUPacket.swift; path = iOSDFULibrary/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift; sourceTree = ""; }; 222241CB9EC5A831040351E44E164F47 /* Task.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Task.swift; path = Sources/BoltsSwift/Task.swift; sourceTree = ""; }; 225DB3D8DBC28CCF0A73CEFF033FFE1C /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-dummy.m"; sourceTree = ""; }; - 22B736D3FC1B0B4BFBA2053785D7DA8D /* project.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = project.rst; path = Docs/source/project.rst; sourceTree = ""; }; - 23DEC02CD53AF8DC02BA2775736F0B88 /* lato-normal.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-normal.woff"; path = "Docs/build/html/_static/css/fonts/lato-normal.woff"; sourceTree = ""; }; - 262B515345D9A281E9DB178889EAB01F /* barometer_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = barometer_bosch.cpp; sourceTree = ""; }; + 22B736D3FC1B0B4BFBA2053785D7DA8D /* project.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = project.rst; path = Docs/source/project.rst; sourceTree = ""; }; + 23DEC02CD53AF8DC02BA2775736F0B88 /* lato-normal.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-normal.woff"; path = "Docs/build/html/_static/css/fonts/lato-normal.woff"; sourceTree = ""; }; 26A488517176F845577DBC09E94C2DA9 /* MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist"; sourceTree = ""; }; 26C4EF6D5527107553AC8C6445B50DFA /* Bolts-Swift-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "Bolts-Swift-macOS.modulemap"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS.modulemap"; sourceTree = ""; }; - 26CD56EFF4847CE728D5433E2DB7AFD1 /* badge_only.css */ = {isa = PBXFileReference; includeInIndex = 1; name = badge_only.css; path = Docs/build/html/_static/css/badge_only.css; sourceTree = ""; }; - 298FBFA2961E0ABE180C7D3500ABC25E /* gyro.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = gyro.rst; path = Docs/source/gyro.rst; sourceTree = ""; }; + 26CD56EFF4847CE728D5433E2DB7AFD1 /* badge_only.css */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.css; name = badge_only.css; path = Docs/build/html/_static/css/badge_only.css; sourceTree = ""; }; + 2936B84D7ABBBF409F954F6039C48833 /* accelerometer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer.cpp; sourceTree = ""; }; + 298FBFA2961E0ABE180C7D3500ABC25E /* gyro.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = gyro.rst; path = Docs/source/gyro.rst; sourceTree = ""; }; 29BB9C0E37B83968F84668AE79A17E3E /* Bolts-Swift-watchOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "Bolts-Swift-watchOS.modulemap"; path = "../Bolts-Swift-watchOS/Bolts-Swift-watchOS.modulemap"; sourceTree = ""; }; 29BEF66C4C982AC2F1A552DB5471A6C9 /* Bolts-Swift-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-macOS.debug.xcconfig"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS.debug.xcconfig"; sourceTree = ""; }; 2A20403D099EE1D872F28342554B7D6E /* SecureDFUExecutor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SecureDFUExecutor.swift; path = iOSDFULibrary/Classes/Implementation/SecureDFU/DFU/SecureDFUExecutor.swift; sourceTree = ""; }; 2A4F63777B002CC7B784A6DAD3DC137F /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-acknowledgements.markdown"; sourceTree = ""; }; 2AD021230759BF1564016D431AF27FD1 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS.debug.xcconfig"; sourceTree = ""; }; + 2B995D2F14F8DEC62B8EC6A0C94DA4C0 /* serialpassthrough.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = serialpassthrough.cpp; sourceTree = ""; }; 2BA85EFA3BF15A9489343A185CEA6A26 /* Pods-MetaWearIntegrationTests-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWearIntegrationTests-macOS-umbrella.h"; sourceTree = ""; }; 2BD2D2BB4D92665D01ACDFCE31BBC15B /* MockModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MockModule.swift; path = MetaWear/Mocks/MockModule.swift; sourceTree = ""; }; - 2C439C24DEA34C216997BFDB48274C53 /* datasignal.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = datasignal.cpp; sourceTree = ""; }; 2C6E0959E06A9BC6D49824DCEC497E3B /* MblMwGattChar.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MblMwGattChar.swift; sourceTree = ""; }; - 2C8D80D65202BB8439A01802C09D6B78 /* searchtools.js */ = {isa = PBXFileReference; includeInIndex = 1; name = searchtools.js; path = Docs/build/html/_static/searchtools.js; sourceTree = ""; }; + 2C8D80D65202BB8439A01802C09D6B78 /* searchtools.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = searchtools.js; path = Docs/build/html/_static/searchtools.js; sourceTree = ""; }; 2DB87BBBFD5759619456A8FCB9DE2B32 /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-acknowledgements.plist"; sourceTree = ""; }; 2DE5AFD8F526047908EF1A6F8FDAE4E9 /* Task+Delay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Task+Delay.swift"; path = "Sources/BoltsSwift/Task+Delay.swift"; sourceTree = ""; }; 2DF84184A9E66C8B0438197B2C362EE5 /* Bolts-Swift-watchOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-watchOS-prefix.pch"; path = "../Bolts-Swift-watchOS/Bolts-Swift-watchOS-prefix.pch"; sourceTree = ""; }; 2E2C83FD3D501DC7B7DB4B19590A9D15 /* SecureDFUPeripheralDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SecureDFUPeripheralDelegate.swift; path = iOSDFULibrary/Classes/Implementation/SecureDFU/Peripheral/SecureDFUPeripheralDelegate.swift; sourceTree = ""; }; - 2E392B44F6DBAEA7B61F13E33DE5355D /* metawearscanner.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearscanner.rst; path = Docs/source/metawearscanner.rst; sourceTree = ""; }; + 2E392B44F6DBAEA7B61F13E33DE5355D /* metawearscanner.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = metawearscanner.rst; path = Docs/source/metawearscanner.rst; sourceTree = ""; }; 2E60F458071A86FFE0F81E3486039F3D /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-prefix.pch"; sourceTree = ""; }; 2E676C8C851F2DFC1BD8673237F3566F /* Bolts-Swift-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Bolts-Swift-iOS-umbrella.h"; sourceTree = ""; }; 2F84DDC719FC0880B153F57CEF28B283 /* SecureDFUControlPoint.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SecureDFUControlPoint.swift; path = iOSDFULibrary/Classes/Implementation/SecureDFU/Characteristics/SecureDFUControlPoint.swift; sourceTree = ""; }; 301FE6ECD82EE6FB8E3F50AAA7F50766 /* LoggerHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LoggerHelper.swift; path = iOSDFULibrary/Classes/Utilities/Logging/LoggerHelper.swift; sourceTree = ""; }; - 308C742B5F0678EBC7ADFA2BA4BA741A /* Pods_MetaWear_MetaWear_iOS_MetaWearIntegrationTestHost_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWear_MetaWear_iOS_MetaWearIntegrationTestHost_iOS.framework; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 30CBD70D5E2C9D164E5B0A50AB856B7B /* led.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = led.doctree; path = Docs/build/doctrees/led.doctree; sourceTree = ""; }; + 308C742B5F0678EBC7ADFA2BA4BA741A /* Pods_MetaWear_MetaWear_iOS_MetaWearIntegrationTestHost_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWear_MetaWear_iOS_MetaWearIntegrationTestHost_iOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 30CBD70D5E2C9D164E5B0A50AB856B7B /* led.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = led.doctree; path = Docs/build/doctrees/led.doctree; sourceTree = ""; }; 310CE7870B01D5B716AC8334A7A0D3D8 /* ZIPFoundation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ZIPFoundation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 3241C05D8C5E343CF0B2BAB01F725786 /* i2c.html */ = {isa = PBXFileReference; includeInIndex = 1; name = i2c.html; path = Docs/build/html/i2c.html; sourceTree = ""; }; - 324E2FE9A0F859A4365077C4FF606DBA /* fontawesome-webfont.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.ttf"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.ttf"; sourceTree = ""; }; + 3241C05D8C5E343CF0B2BAB01F725786 /* i2c.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = i2c.html; path = Docs/build/html/i2c.html; sourceTree = ""; }; + 324E2FE9A0F859A4365077C4FF606DBA /* fontawesome-webfont.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "fontawesome-webfont.ttf"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.ttf"; sourceTree = ""; }; 326C7A13414F85997D21C1DB7AF746AC /* MetaWear+LED.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+LED.swift"; path = "MetaWear/AsyncUtils/MetaWear+LED.swift"; sourceTree = ""; }; 3278B1D6E8FB851C63599138931CEC3F /* SecureDFUServiceInitiator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SecureDFUServiceInitiator.swift; path = iOSDFULibrary/Classes/Implementation/SecureDFU/DFU/SecureDFUServiceInitiator.swift; sourceTree = ""; }; - 32B29E729EDF0C9B22DEB3D5A271F90D /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MetaWear.framework; path = "MetaWear-AsyncUtils-Core-UI-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 32CB9E5FAD9892725D6936A428426733 /* underscore-1.3.1.js */ = {isa = PBXFileReference; includeInIndex = 1; name = "underscore-1.3.1.js"; path = "Docs/build/html/_static/underscore-1.3.1.js"; sourceTree = ""; }; - 331BCE7E8A4E6CAC55A76D56AA68EA82 /* datasignal.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = datasignal.rst.txt; path = Docs/build/html/_sources/datasignal.rst.txt; sourceTree = ""; }; - 3436227BE8D2D5C12C6BB7932BBB9564 /* gpio.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = gpio.rst; path = Docs/source/gpio.rst; sourceTree = ""; }; + 32A9D2FFDC176644FDA8EA8A07E27CEC /* macro.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = macro.cpp; sourceTree = ""; }; + 32B29E729EDF0C9B22DEB3D5A271F90D /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MetaWear.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 32CB9E5FAD9892725D6936A428426733 /* underscore-1.3.1.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = "underscore-1.3.1.js"; path = "Docs/build/html/_static/underscore-1.3.1.js"; sourceTree = ""; }; + 331BCE7E8A4E6CAC55A76D56AA68EA82 /* datasignal.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = datasignal.rst.txt; path = Docs/build/html/_sources/datasignal.rst.txt; sourceTree = ""; }; + 3436227BE8D2D5C12C6BB7932BBB9564 /* gpio.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = gpio.rst; path = Docs/source/gpio.rst; sourceTree = ""; }; 3448F7A74DD00F5CC447008E69AB4CED /* crc32.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = crc32.swift; path = iOSDFULibrary/Classes/Utilities/crc32.swift; sourceTree = ""; }; - 345ABF33B8336E5C17E9A833DBAC86E1 /* metawearscanner.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearscanner.rst.txt; path = Docs/build/html/_sources/metawearscanner.rst.txt; sourceTree = ""; }; + 345ABF33B8336E5C17E9A833DBAC86E1 /* metawearscanner.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = metawearscanner.rst.txt; path = Docs/build/html/_sources/metawearscanner.rst.txt; sourceTree = ""; }; 3540CBE383E25657CDB213399E0E6302 /* Bolts-Swift-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Bolts-Swift-iOS.debug.xcconfig"; sourceTree = ""; }; - 3562CFA855EC2EE37012CDA3F992E2B4 /* sensors.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = sensors.doctree; path = Docs/build/doctrees/sensors.doctree; sourceTree = ""; }; + 3562CFA855EC2EE37012CDA3F992E2B4 /* sensors.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = sensors.doctree; path = Docs/build/doctrees/sensors.doctree; sourceTree = ""; }; 36BD1B8C3920C3C9428AC4CAEC29A875 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-Info.plist"; sourceTree = ""; }; 36E45F45E8CDA6E6A0C3123B5180CBB3 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - 3794B3C15BC07E0E2EC76B0024A06914 /* sensor_fusion.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = sensor_fusion.rst.txt; path = Docs/build/html/_sources/sensor_fusion.rst.txt; sourceTree = ""; }; - 3900651C6419D97D66B3CE4CC38E0293 /* dataprocessor.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = dataprocessor.doctree; path = Docs/build/doctrees/dataprocessor.doctree; sourceTree = ""; }; - 39EFC3444868D94E50BD6C83FB0CD5CD /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = BoltsSwift.framework; path = "Bolts-Swift-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 3794B3C15BC07E0E2EC76B0024A06914 /* sensor_fusion.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = sensor_fusion.rst.txt; path = Docs/build/html/_sources/sensor_fusion.rst.txt; sourceTree = ""; }; + 38FEFFA5A3AF15ED1E41DCFDD70C86E7 /* multichanneltemperature.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = multichanneltemperature.cpp; sourceTree = ""; }; + 3900651C6419D97D66B3CE4CC38E0293 /* dataprocessor.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = dataprocessor.doctree; path = Docs/build/doctrees/dataprocessor.doctree; sourceTree = ""; }; + 39EFC3444868D94E50BD6C83FB0CD5CD /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 3A46D8DB37147B302C46801703C55133 /* Bolts-Swift-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Bolts-Swift-macOS-dummy.m"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS-dummy.m"; sourceTree = ""; }; + 3A93B08019D08C3B0F32E06B08257EFD /* switch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = switch.cpp; sourceTree = ""; }; 3AD54ED09D15C9FCDAB012469BA87074 /* DFUExecutor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUExecutor.swift; path = iOSDFULibrary/Classes/Implementation/GenericDFU/DFUExecutor.swift; sourceTree = ""; }; 3ADC0D7C3B1D964CF4DF6C520CF6DD63 /* Pods-MetaWearIntegrationTests-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWearIntegrationTests-tvOS-umbrella.h"; sourceTree = ""; }; - 3AF105819F0CF98F677510BD677E9C91 /* responseheader.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = responseheader.cpp; sourceTree = ""; }; - 3B52446E71CE54FAE4CD18972CC07B81 /* Roboto-Slab-Regular.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "Roboto-Slab-Regular.woff"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Regular.woff"; sourceTree = ""; }; + 3B52446E71CE54FAE4CD18972CC07B81 /* Roboto-Slab-Regular.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "Roboto-Slab-Regular.woff"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Regular.woff"; sourceTree = ""; }; 3B7BBB487AAC8C4468FD0CFD70FBC0C8 /* DFUStream.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUStream.swift; path = iOSDFULibrary/Classes/Utilities/Streams/DFUStream.swift; sourceTree = ""; }; 3D2B1F9C879E8EB4367F37D3E1478883 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.modulemap"; sourceTree = ""; }; 3D8C61E4E4D79DEF8B04C260B2AE7AD5 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-acknowledgements.plist"; sourceTree = ""; }; - 3EC1C6520D805971B93CEE5E29C7C7B8 /* PythonGenerator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = PythonGenerator.cpp; sourceTree = ""; }; - 3F885996234BEE8561A281623A50A68C /* search.html */ = {isa = PBXFileReference; includeInIndex = 1; name = search.html; path = Docs/build/html/search.html; sourceTree = ""; }; + 3F885996234BEE8561A281623A50A68C /* search.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = search.html; path = Docs/build/html/search.html; sourceTree = ""; }; 3F8DDE74839FCA2D7300179DBCB4FC0F /* DFUStreamZip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUStreamZip.swift; path = iOSDFULibrary/Classes/Utilities/Streams/DFUStreamZip.swift; sourceTree = ""; }; 3FE3BE012AF1F6794DE98F2C27FC8C97 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-frameworks.sh"; sourceTree = ""; }; 404A96C52A94C9574CC02A2A53C0D18D /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m"; sourceTree = ""; }; - 404E52D706E88C3E2D21665D3787BD3F /* logger.html */ = {isa = PBXFileReference; includeInIndex = 1; name = logger.html; path = Docs/build/html/logger.html; sourceTree = ""; }; - 4072A5BE975773E7CFDF4BFC8339D23A /* pygments.css */ = {isa = PBXFileReference; includeInIndex = 1; name = pygments.css; path = Docs/build/html/_static/pygments.css; sourceTree = ""; }; + 404E52D706E88C3E2D21665D3787BD3F /* logger.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = logger.html; path = Docs/build/html/logger.html; sourceTree = ""; }; + 4072A5BE975773E7CFDF4BFC8339D23A /* pygments.css */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.css; name = pygments.css; path = Docs/build/html/_static/pygments.css; sourceTree = ""; }; 40C1B9695CC5C828A750BEE404A97766 /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension.modulemap"; sourceTree = ""; }; - 411B3D554AF16BD66FA67215A26B8FF0 /* sensor_fusion.html */ = {isa = PBXFileReference; includeInIndex = 1; name = sensor_fusion.html; path = Docs/build/html/sensor_fusion.html; sourceTree = ""; }; - 41A5789A4143D06989F5C16916FAE013 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MetaWear.framework; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 4211F351A32AB011F5605555A8BF3D12 /* humidity.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = humidity.rst; path = Docs/source/humidity.rst; sourceTree = ""; }; - 4216C5024631D84CC9C285B13B5BDFC6 /* datasignal.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = datasignal.doctree; path = Docs/build/doctrees/datasignal.doctree; sourceTree = ""; }; - 435B486F13B6505CA701B00C43A96144 /* event.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = event.rst; path = Docs/source/event.rst; sourceTree = ""; }; - 43702C7E71143F7A58027486BF754B2A /* lato-bold.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-bold.woff"; path = "Docs/build/html/_static/css/fonts/lato-bold.woff"; sourceTree = ""; }; + 411B3D554AF16BD66FA67215A26B8FF0 /* sensor_fusion.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = sensor_fusion.html; path = Docs/build/html/sensor_fusion.html; sourceTree = ""; }; + 41A5789A4143D06989F5C16916FAE013 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MetaWear.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 4211F351A32AB011F5605555A8BF3D12 /* humidity.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = humidity.rst; path = Docs/source/humidity.rst; sourceTree = ""; }; + 4216C5024631D84CC9C285B13B5BDFC6 /* datasignal.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = datasignal.doctree; path = Docs/build/doctrees/datasignal.doctree; sourceTree = ""; }; + 435B486F13B6505CA701B00C43A96144 /* event.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = event.rst; path = Docs/source/event.rst; sourceTree = ""; }; + 43702C7E71143F7A58027486BF754B2A /* lato-bold.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bold.woff"; path = "Docs/build/html/_static/css/fonts/lato-bold.woff"; sourceTree = ""; }; 43D861454051E98CCCE7D0C4E5D735FF /* Pods-MetaWearIntegrationTests-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWearIntegrationTests-iOS.modulemap"; sourceTree = ""; }; 43F1699B4BFCC7DCC805D93E2651F30D /* Bolts-Swift-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Bolts-Swift-iOS.release.xcconfig"; sourceTree = ""; }; 461F37C28C6FFB3F5C385EDBA3791EB4 /* Pods-MetaWearIntegrationTests-macOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWearIntegrationTests-macOS-acknowledgements.plist"; sourceTree = ""; }; - 4673FCA4465DD7964AE1990F01D5A03C /* event.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = event.rst.txt; path = Docs/build/html/_sources/event.rst.txt; sourceTree = ""; }; - 4704E1F7A5A48B0E8FAB31DE03DC6677 /* metawearboard.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearboard.rst.txt; path = Docs/build/html/_sources/metawearboard.rst.txt; sourceTree = ""; }; + 4673FCA4465DD7964AE1990F01D5A03C /* event.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = event.rst.txt; path = Docs/build/html/_sources/event.rst.txt; sourceTree = ""; }; + 4704E1F7A5A48B0E8FAB31DE03DC6677 /* metawearboard.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = metawearboard.rst.txt; path = Docs/build/html/_sources/metawearboard.rst.txt; sourceTree = ""; }; 471949DE1C588949EA675BC34BD52CF8 /* ZIPFoundation-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "ZIPFoundation-iOS.debug.xcconfig"; sourceTree = ""; }; 473572BB5FB1EE409EF6CF74DF7D9CED /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-umbrella.h"; sourceTree = ""; }; 47A42A6D0D2C373B25D8BD3F4C472B37 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS.release.xcconfig"; sourceTree = ""; }; 480D43633F8D604BCC70A3AED00509EB /* MetaWear-AsyncUtils-Core-UI-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-UI-tvOS.debug.xcconfig"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.debug.xcconfig"; sourceTree = ""; }; - 4817A1760DAC2F13567CC1326F7608BF /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = BoltsSwift.framework; path = "Bolts-Swift-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 4821C5ECED4C42454F1906EB1AB599A1 /* gyro.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = gyro.doctree; path = Docs/build/doctrees/gyro.doctree; sourceTree = ""; }; - 4885CEB6BA0EF397973C461A3C2CF385 /* Pods_MetaWear_MetaWear_macOS_MetaWearIntegrationTestHost_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWear_MetaWear_macOS_MetaWearIntegrationTestHost_macOS.framework; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 48D266E399A4AD8C456953D262CD9B0E /* dfu_operations.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_operations.cpp; sourceTree = ""; }; - 48F8F2BDEC18CA3064EA81017692099B /* humidity.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = humidity.doctree; path = Docs/build/doctrees/humidity.doctree; sourceTree = ""; }; - 497A3D8D030881DB6CB6B5B326C990C0 /* language_data.js */ = {isa = PBXFileReference; includeInIndex = 1; name = language_data.js; path = Docs/build/html/_static/language_data.js; sourceTree = ""; }; - 4AA1701D1A0307E77BEFC6CE5848A6A2 /* advanced_features.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = advanced_features.doctree; path = Docs/build/doctrees/advanced_features.doctree; sourceTree = ""; }; - 4B0F720B27CAD8659810EDA5A6C35DA9 /* ambientlightsensor.html */ = {isa = PBXFileReference; includeInIndex = 1; name = ambientlightsensor.html; path = Docs/build/html/ambientlightsensor.html; sourceTree = ""; }; - 4B2223E12D44FB73DAB5D6F7891EF8E5 /* core_modules.html */ = {isa = PBXFileReference; includeInIndex = 1; name = core_modules.html; path = Docs/build/html/core_modules.html; sourceTree = ""; }; + 4817A1760DAC2F13567CC1326F7608BF /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 4821C5ECED4C42454F1906EB1AB599A1 /* gyro.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = gyro.doctree; path = Docs/build/doctrees/gyro.doctree; sourceTree = ""; }; + 4885CEB6BA0EF397973C461A3C2CF385 /* Pods_MetaWear_MetaWear_macOS_MetaWearIntegrationTestHost_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWear_MetaWear_macOS_MetaWearIntegrationTestHost_macOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 48BAF38843147CF61083BD1B5E606613 /* moduleinfo.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = moduleinfo.cpp; sourceTree = ""; }; + 48F8F2BDEC18CA3064EA81017692099B /* humidity.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = humidity.doctree; path = Docs/build/doctrees/humidity.doctree; sourceTree = ""; }; + 497A3D8D030881DB6CB6B5B326C990C0 /* language_data.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = language_data.js; path = Docs/build/html/_static/language_data.js; sourceTree = ""; }; + 4AA1701D1A0307E77BEFC6CE5848A6A2 /* advanced_features.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = advanced_features.doctree; path = Docs/build/doctrees/advanced_features.doctree; sourceTree = ""; }; + 4B0F720B27CAD8659810EDA5A6C35DA9 /* ambientlightsensor.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = ambientlightsensor.html; path = Docs/build/html/ambientlightsensor.html; sourceTree = ""; }; + 4B2223E12D44FB73DAB5D6F7891EF8E5 /* core_modules.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = core_modules.html; path = Docs/build/html/core_modules.html; sourceTree = ""; }; + 4E01D3B402B676363B8F8D3BA1BF5FA6 /* barometer_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = barometer_bosch.cpp; sourceTree = ""; }; 4E247C10432A5C6B95A2AE5F2AE6D8A7 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS.modulemap"; sourceTree = ""; }; 4E9A83075A09FD9BDE74BE1E67C5A7B2 /* MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch"; sourceTree = ""; }; - 501284F1E104D14C18436A424A19E883 /* jquery.js */ = {isa = PBXFileReference; includeInIndex = 1; name = jquery.js; path = Docs/build/html/_static/jquery.js; sourceTree = ""; }; - 50692CB646BDCD767666CDE52F27C1B5 /* gyro.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = gyro.rst.txt; path = Docs/build/html/_sources/gyro.rst.txt; sourceTree = ""; }; - 50B59F59DDFF8BB73F22F4DE89235858 /* Pods_MetaWear_MetaWear_tvOS_MetaWearIntegrationTestHost_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWear_MetaWear_tvOS_MetaWearIntegrationTestHost_tvOS.framework; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 501284F1E104D14C18436A424A19E883 /* jquery.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = jquery.js; path = Docs/build/html/_static/jquery.js; sourceTree = ""; }; + 50692CB646BDCD767666CDE52F27C1B5 /* gyro.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = gyro.rst.txt; path = Docs/build/html/_sources/gyro.rst.txt; sourceTree = ""; }; + 50B59F59DDFF8BB73F22F4DE89235858 /* Pods_MetaWear_MetaWear_tvOS_MetaWearIntegrationTestHost_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWear_MetaWear_tvOS_MetaWearIntegrationTestHost_tvOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 51189966EA72E1BB869E16AD41078072 /* file.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = file.png; path = Docs/build/html/_static/file.png; sourceTree = ""; }; - 514460527B164C2C158F0F4C80FD9A7C /* accelerometer.html */ = {isa = PBXFileReference; includeInIndex = 1; name = accelerometer.html; path = Docs/build/html/accelerometer.html; sourceTree = ""; }; - 520A92BC8C90DCB592994BC47170F913 /* humidity.html */ = {isa = PBXFileReference; includeInIndex = 1; name = humidity.html; path = Docs/build/html/humidity.html; sourceTree = ""; }; + 514460527B164C2C158F0F4C80FD9A7C /* accelerometer.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = accelerometer.html; path = Docs/build/html/accelerometer.html; sourceTree = ""; }; + 51AFD4D7267C86EF2C52B376EA4A25E2 /* colordetector_tcs34725.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = colordetector_tcs34725.cpp; sourceTree = ""; }; + 520A92BC8C90DCB592994BC47170F913 /* humidity.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = humidity.html; path = Docs/build/html/humidity.html; sourceTree = ""; }; 52FAF418AD94109385FA1D3AC0AFCD2B /* plus.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = plus.png; path = Docs/build/html/_static/plus.png; sourceTree = ""; }; - 548D0D8C70C6E8B79D50BD75D74ACBFA /* timer.html */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.html; path = Docs/build/html/timer.html; sourceTree = ""; }; + 548D0D8C70C6E8B79D50BD75D74ACBFA /* timer.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = timer.html; path = Docs/build/html/timer.html; sourceTree = ""; }; 557CC9311371072DE27F296FFA82ADB3 /* Bolts-Swift-macOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-macOS-prefix.pch"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS-prefix.pch"; sourceTree = ""; }; - 560F38EC88DBD603FFFF8C2824D54F7D /* Pods_MetaWearIntegrationTests_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWearIntegrationTests_tvOS.framework; path = "Pods-MetaWearIntegrationTests-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 5662EC03B5572F934B93D68A89840281 /* LICENSE.md */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE.md; sourceTree = ""; }; + 558698560BA6BBAF9D08401CC4190DD9 /* responseheader.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = responseheader.cpp; sourceTree = ""; }; + 560F38EC88DBD603FFFF8C2824D54F7D /* Pods_MetaWearIntegrationTests_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWearIntegrationTests_tvOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 5662EC03B5572F934B93D68A89840281 /* LICENSE.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; path = LICENSE.md; sourceTree = ""; }; 57460BDA6ED4060B16C109DBB0C06D17 /* minus.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = minus.png; path = Docs/build/html/_static/minus.png; sourceTree = ""; }; 57E06254CA848BA44D929B9100D93F9C /* Archive.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Archive.swift; path = Sources/ZIPFoundation/Archive.swift; sourceTree = ""; }; - 58071458C3E37173B5E9FB77B0B402B6 /* gpio.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = gpio.rst.txt; path = Docs/build/html/_sources/gpio.rst.txt; sourceTree = ""; }; + 58071458C3E37173B5E9FB77B0B402B6 /* gpio.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = gpio.rst.txt; path = Docs/build/html/_sources/gpio.rst.txt; sourceTree = ""; }; 597BB4FDABFB4BEA9A3862A562CED887 /* ZIPFoundation-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "ZIPFoundation-macOS.debug.xcconfig"; path = "../ZIPFoundation-macOS/ZIPFoundation-macOS.debug.xcconfig"; sourceTree = ""; }; - 5AC5DFA72F02AB91382E962E3A359F7A /* fontawesome-webfont.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.woff2"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.woff2"; sourceTree = ""; }; + 5AC5DFA72F02AB91382E962E3A359F7A /* fontawesome-webfont.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "fontawesome-webfont.woff2"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.woff2"; sourceTree = ""; }; 5AE8742872C84BB77BE446ECCB5F2089 /* IntelHex2BinConverter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IntelHex2BinConverter.swift; path = iOSDFULibrary/Classes/Utilities/HexToBinConverter/IntelHex2BinConverter.swift; sourceTree = ""; }; 5B4AB69038A39EEC97BC88ED51E3ACDB /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.debug.xcconfig"; sourceTree = ""; }; 5BD2DBCCF615B8BBB6F900E4540C8EF5 /* LoggerDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LoggerDelegate.swift; path = iOSDFULibrary/Classes/Utilities/Logging/LoggerDelegate.swift; sourceTree = ""; }; 5C22E154342A29296540C960F791BBC0 /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-acknowledgements.markdown"; sourceTree = ""; }; - 5CDF0BF0876C2225488C3E38AF10B72A /* metawearscanner.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearscanner.doctree; path = Docs/build/doctrees/metawearscanner.doctree; sourceTree = ""; }; - 5DB5789E22EE88A6BFC93CA12B1FD2C6 /* jquery-3.5.1.js */ = {isa = PBXFileReference; includeInIndex = 1; name = "jquery-3.5.1.js"; path = "Docs/build/html/_static/jquery-3.5.1.js"; sourceTree = ""; }; - 5F6357DB75F21135B725219F131B8F8B /* utils.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = utils.cpp; sourceTree = ""; }; + 5CDF0BF0876C2225488C3E38AF10B72A /* metawearscanner.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = metawearscanner.doctree; path = Docs/build/doctrees/metawearscanner.doctree; sourceTree = ""; }; + 5DB5789E22EE88A6BFC93CA12B1FD2C6 /* jquery-3.5.1.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = "jquery-3.5.1.js"; path = "Docs/build/html/_static/jquery-3.5.1.js"; sourceTree = ""; }; 5F88F3C950B2435CD21FD23C8D341C23 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h"; sourceTree = ""; }; 5FD25505429CF7363965185D3FDC0B8B /* ZIPFoundation-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "ZIPFoundation-iOS-dummy.m"; sourceTree = ""; }; 6067A156E323544E0A4766030061A5B2 /* Entry.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Entry.swift; path = Sources/ZIPFoundation/Entry.swift; sourceTree = ""; }; @@ -933,311 +912,307 @@ 6271165BB2AE86465A9943D2EF112D11 /* DFUControlPoint.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUControlPoint.swift; path = iOSDFULibrary/Classes/Implementation/LegacyDFU/Characteristics/DFUControlPoint.swift; sourceTree = ""; }; 63054630F91FFCD9A2020927E552B534 /* Data.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Data.swift; path = iOSDFULibrary/Classes/Utilities/Data.swift; sourceTree = ""; }; 631135C66E00C37097164C7288D9F606 /* iOSDFULibrary-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "iOSDFULibrary-iOS.modulemap"; sourceTree = ""; }; + 6326D13C7B229BA3C76C140DF0348018 /* proximity_tsl2671.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = proximity_tsl2671.cpp; sourceTree = ""; }; 633834F9772E6C85C49F77052241B97F /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-umbrella.h"; sourceTree = ""; }; - 633D81E45903968FFC677683B3A3F959 /* settings.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.doctree; path = Docs/build/doctrees/settings.doctree; sourceTree = ""; }; + 633D81E45903968FFC677683B3A3F959 /* settings.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = settings.doctree; path = Docs/build/doctrees/settings.doctree; sourceTree = ""; }; 63637A0110ACD81470E07A8160E1A6BC /* CoreBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreBluetooth.framework; path = Platforms/WatchOS.platform/Developer/SDKs/WatchOS7.0.sdk/System/Library/Frameworks/CoreBluetooth.framework; sourceTree = DEVELOPER_DIR; }; - 63DB63974E1D8A4DE90926A7EC7E85F6 /* haptic.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = haptic.rst.txt; path = Docs/build/html/_sources/haptic.rst.txt; sourceTree = ""; }; + 63DB63974E1D8A4DE90926A7EC7E85F6 /* haptic.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = haptic.rst.txt; path = Docs/build/html/_sources/haptic.rst.txt; sourceTree = ""; }; 63E0C68FB96F88E28D9871C8FB7C1C98 /* Archive+Writing.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Archive+Writing.swift"; path = "Sources/ZIPFoundation/Archive+Writing.swift"; sourceTree = ""; }; 63F893AF4ECF8B17198E585DCD8FB233 /* LegacyDFUServiceInitiator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LegacyDFUServiceInitiator.swift; path = iOSDFULibrary/Classes/Implementation/LegacyDFU/DFU/LegacyDFUServiceInitiator.swift; sourceTree = ""; }; 65173B28ED6AD2FE12AFE7E956FFBFC2 /* ZIPFoundation-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ZIPFoundation-iOS-prefix.pch"; sourceTree = ""; }; 654DCE21AC89C0F9F341E40F45A4305E /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-Info.plist"; sourceTree = ""; }; - 658733D97A210807EE17BB34B195AE8D /* cppbridge.html */ = {isa = PBXFileReference; includeInIndex = 1; name = cppbridge.html; path = Docs/build/html/cppbridge.html; sourceTree = ""; }; - 65A2066632648F45012E132A371FDFEA /* MetaWear.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = MetaWear.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 658733D97A210807EE17BB34B195AE8D /* cppbridge.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = cppbridge.html; path = Docs/build/html/cppbridge.html; sourceTree = ""; }; + 65A2066632648F45012E132A371FDFEA /* MetaWear.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; path = MetaWear.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; 65F2AB5D288A5BC41E69EFE924EE0C37 /* DFUStarterPeripheral.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUStarterPeripheral.swift; path = iOSDFULibrary/Classes/Implementation/DFUSelector/DFUStarterPeripheral.swift; sourceTree = ""; }; - 6699D0CB02E787285C092BE4A823805C /* gpio.html */ = {isa = PBXFileReference; includeInIndex = 1; name = gpio.html; path = Docs/build/html/gpio.html; sourceTree = ""; }; + 6699D0CB02E787285C092BE4A823805C /* gpio.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = gpio.html; path = Docs/build/html/gpio.html; sourceTree = ""; }; 672B2D7A0E34DC6D036DB37FB6B0B04B /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-acknowledgements.plist"; sourceTree = ""; }; 672DB1967DAC409A8FA6A8594D4D5E1A /* MetaWear-AsyncUtils-Core-UI-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MetaWear-AsyncUtils-Core-UI-tvOS.modulemap"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.modulemap"; sourceTree = ""; }; - 67A38240C2F6AB3D988103B06FDA2E56 /* lato-bold-italic.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-bold-italic.woff"; path = "Docs/build/html/_static/css/fonts/lato-bold-italic.woff"; sourceTree = ""; }; - 687FF210AC568843A9F8C1CDA491ECC7 /* metawearboard.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = metawearboard.cpp; sourceTree = ""; }; - 6882BE967AA96319C1FDCEF8A43A9D96 /* Pods_MetaWearIntegrationTests_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWearIntegrationTests_iOS.framework; path = "Pods-MetaWearIntegrationTests-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 67A38240C2F6AB3D988103B06FDA2E56 /* lato-bold-italic.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bold-italic.woff"; path = "Docs/build/html/_static/css/fonts/lato-bold-italic.woff"; sourceTree = ""; }; + 6882BE967AA96319C1FDCEF8A43A9D96 /* Pods_MetaWearIntegrationTests_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWearIntegrationTests_iOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 692329CE0A9A63D15123D684C9F2AA34 /* SoftdeviceBootloaderInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SoftdeviceBootloaderInfo.swift; path = iOSDFULibrary/Classes/Utilities/DFUPackage/Manifest/SoftdeviceBootloaderInfo.swift; sourceTree = ""; }; - 6B9EDE710F3548E412213762FDCADC66 /* lato-bold.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-bold.woff2"; path = "Docs/build/html/_static/css/fonts/lato-bold.woff2"; sourceTree = ""; }; - 6BBCB51C4982A10638899AD215F08324 /* html5shiv-printshiv.min.js */ = {isa = PBXFileReference; includeInIndex = 1; name = "html5shiv-printshiv.min.js"; path = "Docs/build/html/_static/js/html5shiv-printshiv.min.js"; sourceTree = ""; }; - 6BFEE138BC7A89EF1FBCEAA81ECDB61D /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MetaWear.framework; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 6A1B3EB7FA5C5F9452C98429C7A1DDF7 /* sensor_fusion.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = sensor_fusion.cpp; sourceTree = ""; }; + 6B9EDE710F3548E412213762FDCADC66 /* lato-bold.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bold.woff2"; path = "Docs/build/html/_static/css/fonts/lato-bold.woff2"; sourceTree = ""; }; + 6BBCB51C4982A10638899AD215F08324 /* html5shiv-printshiv.min.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = "html5shiv-printshiv.min.js"; path = "Docs/build/html/_static/js/html5shiv-printshiv.min.js"; sourceTree = ""; }; + 6BFEE138BC7A89EF1FBCEAA81ECDB61D /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MetaWear.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 6CAACF692341F5E4F9F6BAB7580C4D25 /* Bolts-Swift-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "Bolts-Swift-tvOS.modulemap"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS.modulemap"; sourceTree = ""; }; 6CB6950BDD7E3014E744A1D82DCD7D8F /* ScannerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScannerModel.swift; path = MetaWear/UI/ScannerModel.swift; sourceTree = ""; }; 6EE9B4B804B5A82BC67B27E62E4E47BC /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-umbrella.h"; sourceTree = ""; }; 707BD7956532BB56B82F2E086BAA65B6 /* Bolts-Swift-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-macOS.release.xcconfig"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS.release.xcconfig"; sourceTree = ""; }; 70DF358FE7A2143E5B4227575929C6B2 /* MetaWear-AsyncUtils-Core-UI-watchOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MetaWear-AsyncUtils-Core-UI-watchOS.modulemap"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.modulemap"; sourceTree = ""; }; - 70F6B686369511CDB37017E366F11DFA /* dfu_operations_details.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_operations_details.cpp; sourceTree = ""; }; - 7186CA92E6615BDC8A925FE560577AFA /* iOSDFULibrary.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = iOSDFULibrary.framework; path = "iOSDFULibrary-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 7186CA92E6615BDC8A925FE560577AFA /* iOSDFULibrary.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = iOSDFULibrary.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 71F5F864C4982BC76607079C311ADC9F /* Pods-MetaWearIntegrationTests-iOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWearIntegrationTests-iOS-acknowledgements.plist"; sourceTree = ""; }; - 72928F4CC81798BC3C646D23CA73DF97 /* magnetometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = magnetometer.doctree; path = Docs/build/doctrees/magnetometer.doctree; sourceTree = ""; }; + 72679D30CADB9E4EDCA6F731B66600DA /* debug.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = debug.cpp; sourceTree = ""; }; + 72928F4CC81798BC3C646D23CA73DF97 /* magnetometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = magnetometer.doctree; path = Docs/build/doctrees/magnetometer.doctree; sourceTree = ""; }; 73382012C258EBFE88507E82E856CFED /* Pods-MetaWearIntegrationTests-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWearIntegrationTests-tvOS-Info.plist"; sourceTree = ""; }; - 73948BE2C0569FB3BF68F6A4A189B95F /* neopixel.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = neopixel.cpp; sourceTree = ""; }; - 741F76A53255EB4BC0727D609E6089B9 /* macro.html */ = {isa = PBXFileReference; includeInIndex = 1; name = macro.html; path = Docs/build/html/macro.html; sourceTree = ""; }; - 74F43548816C5AB91261972E941D884F /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; - 75DED9099614D8712B0635C463327671 /* spi.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = spi.rst; path = Docs/source/spi.rst; sourceTree = ""; }; + 741F76A53255EB4BC0727D609E6089B9 /* macro.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = macro.html; path = Docs/build/html/macro.html; sourceTree = ""; }; + 74A29439E113714AC0CB0797D42B41E1 /* gpio.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = gpio.cpp; sourceTree = ""; }; + 74F43548816C5AB91261972E941D884F /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; }; + 75DED9099614D8712B0635C463327671 /* spi.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = spi.rst; path = Docs/source/spi.rst; sourceTree = ""; }; 7728E7D9EBAE97ECA45528D9287757A0 /* iOSDFULibrary-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "iOSDFULibrary-iOS.release.xcconfig"; sourceTree = ""; }; 7769AC997032271E069339B687955653 /* Bolts-Swift-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Bolts-Swift-iOS-Info.plist"; sourceTree = ""; }; + 780308159364B1C8AB364E6071F61F24 /* ibeacon.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ibeacon.cpp; sourceTree = ""; }; 7846879128A8BE11B689442278929DB2 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.modulemap"; sourceTree = ""; }; 78CD9B634A9BABA2318BE06485DDB6AF /* Task+ContinueWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Task+ContinueWith.swift"; path = "Sources/BoltsSwift/Task+ContinueWith.swift"; sourceTree = ""; }; - 79039E935AA8A9170F0A2AA8C3F03298 /* common.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = common.cpp; sourceTree = ""; }; 7913C1B823CE0F965DA62F0491D4EC8A /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-acknowledgements.markdown"; sourceTree = ""; }; 7A07AA9738C8E78AB4FEDF17BE7E0B36 /* iOSDFULibrary-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "iOSDFULibrary-iOS-dummy.m"; sourceTree = ""; }; 7A61E82795569E9BA7E8CC6376F61A26 /* LegacyDFUExecutor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LegacyDFUExecutor.swift; path = iOSDFULibrary/Classes/Implementation/LegacyDFU/DFU/LegacyDFUExecutor.swift; sourceTree = ""; }; 7A6B9FEEAA92367CFC5CD79E0FCAF8B2 /* Bolts-Swift-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-tvOS.debug.xcconfig"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS.debug.xcconfig"; sourceTree = ""; }; - 7ADBB8E2ADA5627BE9240BCE2E1E4F1D /* datasignal.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = datasignal.rst; path = Docs/source/datasignal.rst; sourceTree = ""; }; - 7AE36CBB6092A9591700292C286683A3 /* project.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = project.doctree; path = Docs/build/doctrees/project.doctree; sourceTree = ""; }; - 7BD4CEEA8B02382D430964158161A432 /* peripherals.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = peripherals.rst.txt; path = Docs/build/html/_sources/peripherals.rst.txt; sourceTree = ""; }; + 7ADBB8E2ADA5627BE9240BCE2E1E4F1D /* datasignal.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = datasignal.rst; path = Docs/source/datasignal.rst; sourceTree = ""; }; + 7AE36CBB6092A9591700292C286683A3 /* project.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = project.doctree; path = Docs/build/doctrees/project.doctree; sourceTree = ""; }; + 7BD4CEEA8B02382D430964158161A432 /* peripherals.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = peripherals.rst.txt; path = Docs/build/html/_sources/peripherals.rst.txt; sourceTree = ""; }; 7C569DCC32CA7024AF9A2AF738BDBAE1 /* ZIPFoundation-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "ZIPFoundation-iOS.modulemap"; sourceTree = ""; }; 7CBCC60DB47689C9DF8BDC32C9BD5D30 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-acknowledgements.markdown"; sourceTree = ""; }; - 7CF37884298133CBFBC43F4FEFD1F96F /* lato-normal.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-normal.woff2"; path = "Docs/build/html/_static/css/fonts/lato-normal.woff2"; sourceTree = ""; }; + 7CF37884298133CBFBC43F4FEFD1F96F /* lato-normal.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-normal.woff2"; path = "Docs/build/html/_static/css/fonts/lato-normal.woff2"; sourceTree = ""; }; 7D53C4762331E313543557FEEFC58092 /* MetaWear-AsyncUtils-Core-UI-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-UI-tvOS.release.xcconfig"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.release.xcconfig"; sourceTree = ""; }; 7E7516D67300A5AC3B8C3943326CEECF /* Bolts-Swift-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "Bolts-Swift-tvOS-Info.plist"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS-Info.plist"; sourceTree = ""; }; 7EC78867C7F5C1F8A875A7FB1CEB8BB0 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS.release.xcconfig"; sourceTree = ""; }; 7ECD3097C2FDB03555157378AE408FC1 /* DFUService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUService.swift; path = iOSDFULibrary/Classes/Implementation/GenericDFU/DFUService.swift; sourceTree = ""; }; - 7EFA8928A7D73201A6861C54687033CC /* basic.css */ = {isa = PBXFileReference; includeInIndex = 1; name = basic.css; path = Docs/build/html/_static/basic.css; sourceTree = ""; }; + 7EFA8928A7D73201A6861C54687033CC /* basic.css */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.css; name = basic.css; path = Docs/build/html/_static/basic.css; sourceTree = ""; }; 7F692F934DEDB660C6698A9485AA4F76 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.release.xcconfig"; sourceTree = ""; }; 804F804E9F5EF675B36052B75A24FEBA /* DFUServiceSelector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUServiceSelector.swift; path = iOSDFULibrary/Classes/Implementation/DFUSelector/DFUServiceSelector.swift; sourceTree = ""; }; 80C496E7C90E9994CC0590530ADB9D9C /* FirmwareServer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FirmwareServer.swift; path = MetaWear/DFU/FirmwareServer.swift; sourceTree = ""; }; - 81339F75DCE72B5AE681B25A8DB18914 /* magnetometer.html */ = {isa = PBXFileReference; includeInIndex = 1; name = magnetometer.html; path = Docs/build/html/magnetometer.html; sourceTree = ""; }; - 814C461CEADC4525DC008CBFD193DC1F /* underscore.js */ = {isa = PBXFileReference; includeInIndex = 1; name = underscore.js; path = Docs/build/html/_static/underscore.js; sourceTree = ""; }; - 8238F7B09D7BE1CEAF69B873EC0D0393 /* ibeacon.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = ibeacon.doctree; path = Docs/build/doctrees/ibeacon.doctree; sourceTree = ""; }; - 827E9F987EB8540D345C89BCCF2B194C /* proximity_tsl2671.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = proximity_tsl2671.cpp; sourceTree = ""; }; + 81339F75DCE72B5AE681B25A8DB18914 /* magnetometer.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = magnetometer.html; path = Docs/build/html/magnetometer.html; sourceTree = ""; }; + 814C461CEADC4525DC008CBFD193DC1F /* underscore.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = underscore.js; path = Docs/build/html/_static/underscore.js; sourceTree = ""; }; + 8238F7B09D7BE1CEAF69B873EC0D0393 /* ibeacon.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = ibeacon.doctree; path = Docs/build/doctrees/ibeacon.doctree; sourceTree = ""; }; + 82A200E21B4A962602907DC1F3C32C09 /* gyro_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = gyro_bosch.cpp; sourceTree = ""; }; 82D6BB676A3452CF143E065E861A4B89 /* CBUUID.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CBUUID.swift; sourceTree = ""; }; - 8360F1633C74840A0D782F57C0CA2FBE /* metawearscanner.html */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearscanner.html; path = Docs/build/html/metawearscanner.html; sourceTree = ""; }; - 83B812187337366BA2C0FEBBCCFBB5E7 /* Pods_MetaWear_MetaWear_tvOS_MetaWearUnitTests_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWear_MetaWear_tvOS_MetaWearUnitTests_tvOS.framework; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 84678036820087139307A0D5A9DD0AEF /* logger.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = logger.doctree; path = Docs/build/doctrees/logger.doctree; sourceTree = ""; }; + 8360F1633C74840A0D782F57C0CA2FBE /* metawearscanner.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = metawearscanner.html; path = Docs/build/html/metawearscanner.html; sourceTree = ""; }; + 83B812187337366BA2C0FEBBCCFBB5E7 /* Pods_MetaWear_MetaWear_tvOS_MetaWearUnitTests_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWear_MetaWear_tvOS_MetaWearUnitTests_tvOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 84678036820087139307A0D5A9DD0AEF /* logger.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = logger.doctree; path = Docs/build/doctrees/logger.doctree; sourceTree = ""; }; 8482F9546AEBA3CC01ADA5A949FAD144 /* Data+Compression.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Data+Compression.swift"; path = "Sources/ZIPFoundation/Data+Compression.swift"; sourceTree = ""; }; 84E03BFBB984132CE3A62BD704AD87DA /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-frameworks.sh"; sourceTree = ""; }; - 869157F2C8657463A638538E4A4D4542 /* ibeacon.html */ = {isa = PBXFileReference; includeInIndex = 1; name = ibeacon.html; path = Docs/build/html/ibeacon.html; sourceTree = ""; }; - 871C3E184118A1C65B2DAEAA3016D788 /* threadpool.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = threadpool.cpp; sourceTree = ""; }; + 8657FCFE4420CEF9B76222E0A97AF791 /* threadpool.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = threadpool.cpp; sourceTree = ""; }; + 869157F2C8657463A638538E4A4D4542 /* ibeacon.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = ibeacon.html; path = Docs/build/html/ibeacon.html; sourceTree = ""; }; + 8707E77673C38369948433F76F81F16E /* logging.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = logging.cpp; sourceTree = ""; }; + 88A6C13CB83BD51E74443DB16CBF224E /* dfu_operations.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_operations.cpp; sourceTree = ""; }; 88D9DEE679B18E5C458D4795D10E1890 /* Task+WhenAny.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Task+WhenAny.swift"; path = "Sources/BoltsSwift/Task+WhenAny.swift"; sourceTree = ""; }; 8940A499B23F205CC27EDBA8204CED90 /* ZIPFoundation-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "ZIPFoundation-macOS.release.xcconfig"; path = "../ZIPFoundation-macOS/ZIPFoundation-macOS.release.xcconfig"; sourceTree = ""; }; 8A01E47CCFD3D4C5FE06847E2E757638 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-frameworks.sh"; sourceTree = ""; }; 8A925FEACFBE227CEDCF7149D4EF12F9 /* SecureDFUPacket.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SecureDFUPacket.swift; path = iOSDFULibrary/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift; sourceTree = ""; }; - 8AA20D9BF6393C428E6E50D1E08642CF /* index.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = index.rst; path = Docs/source/index.rst; sourceTree = ""; }; + 8AA20D9BF6393C428E6E50D1E08642CF /* index.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = index.rst; path = Docs/source/index.rst; sourceTree = ""; }; 8AA5ADF22289EA5AB17FE593C7F71A66 /* Bolts-Swift-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-tvOS-umbrella.h"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS-umbrella.h"; sourceTree = ""; }; - 8BFD6B2E301BA8ACDC2D3BCD0E758C1D /* dfu_utility.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_utility.cpp; sourceTree = ""; }; 8C89F32D45B17F47A3F719DD83C1A8AD /* iOSDFULibrary-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "iOSDFULibrary-macOS.modulemap"; path = "../iOSDFULibrary-macOS/iOSDFULibrary-macOS.modulemap"; sourceTree = ""; }; 8D17966E7C661CDB7AF17155D537360E /* Bolts-Swift-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Bolts-Swift-tvOS-dummy.m"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS-dummy.m"; sourceTree = ""; }; - 8D3652B146CA2A7F874401124545A2F0 /* doctools.js */ = {isa = PBXFileReference; includeInIndex = 1; name = doctools.js; path = Docs/build/html/_static/doctools.js; sourceTree = ""; }; - 8DE8452EC12E2741702A570A088DEAC7 /* conf.py */ = {isa = PBXFileReference; includeInIndex = 1; name = conf.py; path = Docs/source/conf.py; sourceTree = ""; }; + 8D3652B146CA2A7F874401124545A2F0 /* doctools.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = doctools.js; path = Docs/build/html/_static/doctools.js; sourceTree = ""; }; + 8DE8452EC12E2741702A570A088DEAC7 /* conf.py */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.python; name = conf.py; path = Docs/source/conf.py; sourceTree = ""; }; 8E83FA47CA9F4A746A08313BB59BC889 /* DFUController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUController.swift; path = iOSDFULibrary/Classes/Implementation/GenericDFU/DFUController.swift; sourceTree = ""; }; 8F7724217436B9FE484B879ACC362C63 /* Pods-MetaWearIntegrationTests-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWearIntegrationTests-iOS-dummy.m"; sourceTree = ""; }; + 902980F5FF5383884A7D57FAFFE032AC /* led.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = led.cpp; sourceTree = ""; }; 9030F92CAA3CC18008C7AE0477355CDD /* iOSDFULibrary-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "iOSDFULibrary-iOS-umbrella.h"; sourceTree = ""; }; 910DB833579EEEB4A5DFC605DEEAD46E /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.debug.xcconfig"; sourceTree = ""; }; - 9138B3C087F2809AADC4A5C030F4518C /* temperature.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = temperature.rst.txt; path = Docs/build/html/_sources/temperature.rst.txt; sourceTree = ""; }; - 917DB45A8FEE7B728716F772FBF8E126 /* logging.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.rst.txt; path = Docs/build/html/_sources/logging.rst.txt; sourceTree = ""; }; - 91FE19D118211B202B45011055DBB4D7 /* accelerometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = accelerometer.rst.txt; path = Docs/build/html/_sources/accelerometer.rst.txt; sourceTree = ""; }; + 9138B3C087F2809AADC4A5C030F4518C /* temperature.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = temperature.rst.txt; path = Docs/build/html/_sources/temperature.rst.txt; sourceTree = ""; }; + 917DB45A8FEE7B728716F772FBF8E126 /* logging.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = logging.rst.txt; path = Docs/build/html/_sources/logging.rst.txt; sourceTree = ""; }; + 91FE19D118211B202B45011055DBB4D7 /* accelerometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = accelerometer.rst.txt; path = Docs/build/html/_sources/accelerometer.rst.txt; sourceTree = ""; }; 920B7554281F1A16BF53CD2B6B7089FD /* DFUPeripheralDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUPeripheralDelegate.swift; path = iOSDFULibrary/Classes/Implementation/GenericDFU/DFUPeripheralDelegate.swift; sourceTree = ""; }; - 92A6AEE6F244210ACF8B60C22AFA8B6C /* memory.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = memory.cpp; sourceTree = ""; }; 933DBB0AE7312AE2E8CA02E963642898 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-acknowledgements.plist"; sourceTree = ""; }; - 935D1394AE639E8F00BE3081913443F7 /* accelerometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = accelerometer.rst; path = Docs/source/accelerometer.rst; sourceTree = ""; }; - 944953FB01FBE8D198344E47AFF13C77 /* project.html */ = {isa = PBXFileReference; includeInIndex = 1; name = project.html; path = Docs/build/html/project.html; sourceTree = ""; }; + 935D1394AE639E8F00BE3081913443F7 /* accelerometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = accelerometer.rst; path = Docs/source/accelerometer.rst; sourceTree = ""; }; + 944953FB01FBE8D198344E47AFF13C77 /* project.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = project.html; path = Docs/build/html/project.html; sourceTree = ""; }; 9481942C645F5AF023E048963705B7E7 /* CoreBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreBluetooth.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/CoreBluetooth.framework; sourceTree = DEVELOPER_DIR; }; - 95AD9E24CD1B164E8D6D3A8B3C8A45EF /* timer.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.rst; path = Docs/source/timer.rst; sourceTree = ""; }; + 95A619B3EEC20F8735D86AE1CC35A961 /* conductance.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = conductance.cpp; sourceTree = ""; }; + 95AD9E24CD1B164E8D6D3A8B3C8A45EF /* timer.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = timer.rst; path = Docs/source/timer.rst; sourceTree = ""; }; + 9610CBAC873B84393551C455F94393AB /* utils.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = utils.cpp; sourceTree = ""; }; + 978459E240560B17507244A6549F4229 /* accelerometer_mma8452q.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer_mma8452q.cpp; sourceTree = ""; }; + 979F58FE576BD81A336BCBD43C3032E7 /* task.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = task.cpp; sourceTree = ""; }; 97C51E97CF16960547680A71A8496785 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS.debug.xcconfig"; sourceTree = ""; }; - 97D05E467C307ABB9635B28110FA349E /* advanced_features.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = advanced_features.rst; path = Docs/source/advanced_features.rst; sourceTree = ""; }; - 97D77859A95F9FF7EF1BDB0F7A1068ED /* project.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = project.rst.txt; path = Docs/build/html/_sources/project.rst.txt; sourceTree = ""; }; + 97D05E467C307ABB9635B28110FA349E /* advanced_features.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = advanced_features.rst; path = Docs/source/advanced_features.rst; sourceTree = ""; }; + 97D77859A95F9FF7EF1BDB0F7A1068ED /* project.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = project.rst.txt; path = Docs/build/html/_sources/project.rst.txt; sourceTree = ""; }; 97F1DCCFC14B7947C5099612BEE5C8C1 /* Pods-MetaWearIntegrationTests-tvOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWearIntegrationTests-tvOS-acknowledgements.markdown"; sourceTree = ""; }; 98F7AF2CE23CC1930AC18ED6BAA3A177 /* ZIPFoundation-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "ZIPFoundation-iOS.release.xcconfig"; sourceTree = ""; }; 998509386935A1962593008EF42F79F9 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-umbrella.h"; sourceTree = ""; }; 9AFE0686F81066118B61F4F390340CB1 /* DFUVersion.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUVersion.swift; path = iOSDFULibrary/Classes/Implementation/LegacyDFU/Characteristics/DFUVersion.swift; sourceTree = ""; }; 9B955A6106805E43023472610E0D7DCE /* Pods-MetaWearIntegrationTests-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWearIntegrationTests-macOS.debug.xcconfig"; sourceTree = ""; }; - 9BC1F246F7EF310C62A17B761E63BACE /* ZIPFoundation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = ZIPFoundation.framework; path = "ZIPFoundation-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 9BC1F246F7EF310C62A17B761E63BACE /* ZIPFoundation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ZIPFoundation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 9BF181820020E2FCF8951F8775EE9150 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-dummy.m"; sourceTree = ""; }; 9D33E3506F1148C04329908970491D35 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h"; sourceTree = ""; }; 9D35F2A88DC0477C6B52780CE08C435D /* ZIPFoundation-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "ZIPFoundation-macOS-umbrella.h"; path = "../ZIPFoundation-macOS/ZIPFoundation-macOS-umbrella.h"; sourceTree = ""; }; - 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; 9DB01C7B4CE59D18C6D04EB428451795 /* DFUFirmware.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUFirmware.swift; path = iOSDFULibrary/Classes/Implementation/Firmware/DFUFirmware.swift; sourceTree = ""; }; - 9E0362A7CDF8C01C9D967F8417265F7C /* timer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = timer.cpp; sourceTree = ""; }; - 9E7D6F9807103C2CE80B3165286C6ED0 /* dataprocessor.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dataprocessor.cpp; sourceTree = ""; }; - 9EF83BCCEFAE08B31095A9B245E76A58 /* ZIPFoundation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = ZIPFoundation.framework; path = "ZIPFoundation-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 9EF25ABDC4C7F400A50E64C961ED9408 /* dfu_utility.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_utility.cpp; sourceTree = ""; }; + 9EF83BCCEFAE08B31095A9B245E76A58 /* ZIPFoundation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ZIPFoundation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 9F7BDCC0DDB58CBFC744204A18B335BA /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-frameworks.sh"; sourceTree = ""; }; 9F800835A6F77B0E3045D698A12979F1 /* MetaWear-AsyncUtils-Core-UI-watchOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-UI-watchOS.debug.xcconfig"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.debug.xcconfig"; sourceTree = ""; }; A01FADE8176233701717C48A086CF801 /* Bolts-Swift-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Bolts-Swift-iOS-prefix.pch"; sourceTree = ""; }; A26C1C50C1866FDC9FA4437D526F6038 /* DFUPeripheralSelectorDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUPeripheralSelectorDelegate.swift; path = iOSDFULibrary/Classes/Implementation/DFUPeripheralSelectorDelegate.swift; sourceTree = ""; }; A27370D863F0F27023F575D449AFBB9A /* SecureDFUPeripheral.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SecureDFUPeripheral.swift; path = iOSDFULibrary/Classes/Implementation/SecureDFU/Peripheral/SecureDFUPeripheral.swift; sourceTree = ""; }; A3FAF8D54517745664357BCB15561320 /* Bolts-Swift-watchOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Bolts-Swift-watchOS-dummy.m"; path = "../Bolts-Swift-watchOS/Bolts-Swift-watchOS-dummy.m"; sourceTree = ""; }; + A48E122F9DA1F7EB1E163F2101A849EF /* event.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = event.cpp; sourceTree = ""; }; A4E0213149863042429885F1816E57F1 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-dummy.m"; sourceTree = ""; }; A4E3A2856DD2DE3A50333624C5B9C228 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-acknowledgements.markdown"; sourceTree = ""; }; A5057174F707642422A495ABC81A5E39 /* Pods-MetaWearIntegrationTests-macOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWearIntegrationTests-macOS-acknowledgements.markdown"; sourceTree = ""; }; A5A0D8FB52AF6316B11FB61560858335 /* DFUPeripheral.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUPeripheral.swift; path = iOSDFULibrary/Classes/Implementation/GenericDFU/DFUPeripheral.swift; sourceTree = ""; }; - A5B4FB7363E1CAB3F67C07B1E02C3AB5 /* lato-normal-italic.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-normal-italic.woff2"; path = "Docs/build/html/_static/css/fonts/lato-normal-italic.woff2"; sourceTree = ""; }; + A5B4FB7363E1CAB3F67C07B1E02C3AB5 /* lato-normal-italic.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-normal-italic.woff2"; path = "Docs/build/html/_static/css/fonts/lato-normal-italic.woff2"; sourceTree = ""; }; A6E61DA0AEC4E07501D1C47D17DFE362 /* Pods-MetaWearIntegrationTests-tvOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWearIntegrationTests-tvOS-acknowledgements.plist"; sourceTree = ""; }; A6F258AF5B520A69684A5F72D7F51E17 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m"; sourceTree = ""; }; - A72C83474F51912B437DDBB99635529C /* Roboto-Slab-Bold.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "Roboto-Slab-Bold.woff"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Bold.woff"; sourceTree = ""; }; + A72C83474F51912B437DDBB99635529C /* Roboto-Slab-Bold.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "Roboto-Slab-Bold.woff"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Bold.woff"; sourceTree = ""; }; A7AC3A5CA8277B0B4A65335FA05570B6 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-acknowledgements.plist"; sourceTree = ""; }; A871018BA4CDDC3C7ABFB39783B1073B /* Task+WhenAll.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Task+WhenAll.swift"; path = "Sources/BoltsSwift/Task+WhenAll.swift"; sourceTree = ""; }; + A87DEF4B413807CE32269EAD7DB2BE27 /* magnetometer_bmm150.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = magnetometer_bmm150.cpp; sourceTree = ""; }; A8B2B732F6AD9127EE241F1535789E96 /* ZIPFoundation-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "ZIPFoundation-macOS-dummy.m"; path = "../ZIPFoundation-macOS/ZIPFoundation-macOS-dummy.m"; sourceTree = ""; }; A8C525780CB40473CE06F0E9500FE182 /* DFUServiceDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUServiceDelegate.swift; path = iOSDFULibrary/Classes/Implementation/DFUServiceDelegate.swift; sourceTree = ""; }; - A8EA025156B2B2B4253BA7971E51513D /* Roboto-Slab-Regular.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "Roboto-Slab-Regular.woff2"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Regular.woff2"; sourceTree = ""; }; - AA2F5A0B9829FA254786E60EEF5D6B41 /* spi.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = spi.doctree; path = Docs/build/doctrees/spi.doctree; sourceTree = ""; }; - AA3F0486442D250B585153BC0B50AB16 /* settings.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.rst; path = Docs/source/settings.rst; sourceTree = ""; }; + A8EA025156B2B2B4253BA7971E51513D /* Roboto-Slab-Regular.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "Roboto-Slab-Regular.woff2"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Regular.woff2"; sourceTree = ""; }; + A934C4144529FEC2455E9EA58EEF3641 /* memory.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = memory.cpp; sourceTree = ""; }; + AA2F5A0B9829FA254786E60EEF5D6B41 /* spi.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = spi.doctree; path = Docs/build/doctrees/spi.doctree; sourceTree = ""; }; + AA3F0486442D250B585153BC0B50AB16 /* settings.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = settings.rst; path = Docs/source/settings.rst; sourceTree = ""; }; AB0670C7A0A1C99783AB3946244DD414 /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h"; sourceTree = ""; }; AB0851094434AE3AB131EAA5B548883F /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.debug.xcconfig"; sourceTree = ""; }; + AB0B5A7F5BA80F54C48F6FA85802E3D0 /* async_creator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = async_creator.cpp; sourceTree = ""; }; AB1E37A13754FFEFD8230A743ECEAD66 /* Bolts-Swift-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "Bolts-Swift-macOS-Info.plist"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS-Info.plist"; sourceTree = ""; }; - AB51FA4A873B8D6D3BBE74CE5C51B01E /* led.html */ = {isa = PBXFileReference; includeInIndex = 1; name = led.html; path = Docs/build/html/led.html; sourceTree = ""; }; - AB77385D74E1D2C5ED9DF53F991E41CA /* accelerometer_mma8452q.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer_mma8452q.cpp; sourceTree = ""; }; + AB51FA4A873B8D6D3BBE74CE5C51B01E /* led.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = led.html; path = Docs/build/html/led.html; sourceTree = ""; }; AC14F27D31997A9BAB52F11719E73EB8 /* iOSDFULibrary-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "iOSDFULibrary-iOS.debug.xcconfig"; sourceTree = ""; }; AC68A1B035D2F7A706C5CEC4FAAB22F9 /* iOSDFULibrary-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "iOSDFULibrary-macOS.debug.xcconfig"; path = "../iOSDFULibrary-macOS/iOSDFULibrary-macOS.debug.xcconfig"; sourceTree = ""; }; - ACFC7B105FC5C65A1C19F17E04F17015 /* datasignal.html */ = {isa = PBXFileReference; includeInIndex = 1; name = datasignal.html; path = Docs/build/html/datasignal.html; sourceTree = ""; }; - AD3D2DC5607A28C341643D91B5403730 /* magnetometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = magnetometer.rst.txt; path = Docs/build/html/_sources/magnetometer.rst.txt; sourceTree = ""; }; + ACFC7B105FC5C65A1C19F17E04F17015 /* datasignal.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = datasignal.html; path = Docs/build/html/datasignal.html; sourceTree = ""; }; + AD3D2DC5607A28C341643D91B5403730 /* magnetometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = magnetometer.rst.txt; path = Docs/build/html/_sources/magnetometer.rst.txt; sourceTree = ""; }; + AD72C1111CD9303EAB58262CB8E268FA /* settings.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = settings.cpp; sourceTree = ""; }; AE0358D314C8BEEE6DF294E6CFBE3DCC /* Pods-MetaWearIntegrationTests-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWearIntegrationTests-macOS-dummy.m"; sourceTree = ""; }; - AE12E6F73BE35D420EB8C194BF598725 /* advanced_features.html */ = {isa = PBXFileReference; includeInIndex = 1; name = advanced_features.html; path = Docs/build/html/advanced_features.html; sourceTree = ""; }; + AE12E6F73BE35D420EB8C194BF598725 /* advanced_features.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = advanced_features.html; path = Docs/build/html/advanced_features.html; sourceTree = ""; }; AE64C0498D8FA63678FB1804701156AB /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist"; sourceTree = ""; }; - AEE665D716662DBB922425D97CDB83CC /* serialpassthrough.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = serialpassthrough.cpp; sourceTree = ""; }; - AF2983805A10D5A49BB98AC1AE1F38F5 /* Pods_MetaWear_MetaWear_watchOS_MetaWearIntegrationTestHost_watchOS_Extension.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWear_MetaWear_watchOS_MetaWearIntegrationTestHost_watchOS_Extension.framework; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - AF305215DFE9A27CE1ADBE7E7B770BFB /* documentation_options.js */ = {isa = PBXFileReference; includeInIndex = 1; name = documentation_options.js; path = Docs/build/html/_static/documentation_options.js; sourceTree = ""; }; + AF2983805A10D5A49BB98AC1AE1F38F5 /* Pods_MetaWear_MetaWear_watchOS_MetaWearIntegrationTestHost_watchOS_Extension.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWear_MetaWear_watchOS_MetaWearIntegrationTestHost_watchOS_Extension.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + AF305215DFE9A27CE1ADBE7E7B770BFB /* documentation_options.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = documentation_options.js; path = Docs/build/html/_static/documentation_options.js; sourceTree = ""; }; B1CD75C05ED2021363C4A9C77D793D4B /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-umbrella.h"; sourceTree = ""; }; - B2DFE15A0E62BE06D2CF9D4AE53F927D /* SwiftGenerator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = SwiftGenerator.cpp; sourceTree = ""; }; - B3F719EDFB984964533497C04A536A14 /* sensors.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = sensors.rst; path = Docs/source/sensors.rst; sourceTree = ""; }; + B3F719EDFB984964533497C04A536A14 /* sensors.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = sensors.rst; path = Docs/source/sensors.rst; sourceTree = ""; }; B478AA720F432EAEB3DAAD27B7EDB2E3 /* Executor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Executor.swift; path = Sources/BoltsSwift/Executor.swift; sourceTree = ""; }; - B4ECB2BFD9EC71AEC3128B318A9BA8CB /* multichanneltemperature.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = multichanneltemperature.cpp; sourceTree = ""; }; - B581D3CA36F57D8DE2568093A974DC0A /* timer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.doctree; path = Docs/build/doctrees/timer.doctree; sourceTree = ""; }; + B581D3CA36F57D8DE2568093A974DC0A /* timer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = timer.doctree; path = Docs/build/doctrees/timer.doctree; sourceTree = ""; }; B5BE3C3ED8B205DDC9F2354DB07DBECB /* Pods-MetaWearIntegrationTests-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWearIntegrationTests-macOS.release.xcconfig"; sourceTree = ""; }; B63D4838726436C6026DAF93887F6EF6 /* iOSDFULibrary-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "iOSDFULibrary-iOS-prefix.pch"; sourceTree = ""; }; - B63F9B9F7BDAE3C2D1A99017A48D4C8E /* accelerometer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer.cpp; sourceTree = ""; }; B69D599AAFD0A9D835E0CEF64BE9814D /* FirmwareBuild.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FirmwareBuild.swift; path = MetaWear/DFU/FirmwareBuild.swift; sourceTree = ""; }; - B83AA79D41272316A3114303985BB4F0 /* moduleinfo.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = moduleinfo.cpp; sourceTree = ""; }; B876E0D4A3F50F454DC20BD74E467B32 /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension.debug.xcconfig"; sourceTree = ""; }; B880930B9DA7C2371D6E05ED7CDC76B2 /* Pods-MetaWearIntegrationTests-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWearIntegrationTests-macOS.modulemap"; sourceTree = ""; }; B8FCB726B5BF324DE5E3DBF04E36E12E /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-dummy.m"; sourceTree = ""; }; - B91F1C9A6EAB40C8B17FAC50BAD8CE94 /* i2c.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = i2c.rst; path = Docs/source/i2c.rst; sourceTree = ""; }; - B9DE04807240DAD7B7615C77F2C88E0E /* lato-bold-italic.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-bold-italic.woff2"; path = "Docs/build/html/_static/css/fonts/lato-bold-italic.woff2"; sourceTree = ""; }; - BA09895315AED647C4679C191B80F007 /* sensors.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = sensors.rst.txt; path = Docs/build/html/_sources/sensors.rst.txt; sourceTree = ""; }; - BA6D9315DF7722D1CBA54A84730A431B /* metawearboard.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearboard.doctree; path = Docs/build/doctrees/metawearboard.doctree; sourceTree = ""; }; + B91F1C9A6EAB40C8B17FAC50BAD8CE94 /* i2c.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = i2c.rst; path = Docs/source/i2c.rst; sourceTree = ""; }; + B9B52711F5B464ED2C018FC5CA48EC24 /* dfu_operations_details.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_operations_details.cpp; sourceTree = ""; }; + B9DE04807240DAD7B7615C77F2C88E0E /* lato-bold-italic.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bold-italic.woff2"; path = "Docs/build/html/_static/css/fonts/lato-bold-italic.woff2"; sourceTree = ""; }; + BA09895315AED647C4679C191B80F007 /* sensors.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = sensors.rst.txt; path = Docs/build/html/_sources/sensors.rst.txt; sourceTree = ""; }; + BA6D9315DF7722D1CBA54A84730A431B /* metawearboard.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = metawearboard.doctree; path = Docs/build/doctrees/metawearboard.doctree; sourceTree = ""; }; BBA029B34AF11D91E7C23C3BA4EEAD6F /* Bolts-Swift-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Bolts-Swift-iOS.modulemap"; sourceTree = ""; }; BBE6BE9F290F399278452EF43CA4D1B9 /* iOSDFULibrary-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "iOSDFULibrary-macOS.release.xcconfig"; path = "../iOSDFULibrary-macOS/iOSDFULibrary-macOS.release.xcconfig"; sourceTree = ""; }; BC30364AD3168CD204AC57BFFB1936FA /* LegacyDFUService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LegacyDFUService.swift; path = iOSDFULibrary/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift; sourceTree = ""; }; BC4B70F9F0E4EAAE94860B390EEC84A5 /* MetaWear+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+Async.swift"; path = "MetaWear/AsyncUtils/MetaWear+Async.swift"; sourceTree = ""; }; BC7F3645E8994A3A164C80B4BAF8B8E8 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-Info.plist"; sourceTree = ""; }; - BCE1CF16C54DD96420E6A5AAB43244C4 /* accelerometer_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer_bosch.cpp; sourceTree = ""; }; - BE81155C54FB572EC008598255A83F98 /* sensor_fusion.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = sensor_fusion.doctree; path = Docs/build/doctrees/sensor_fusion.doctree; sourceTree = ""; }; - BEF0743B28C3D9777CDD2245E75150D7 /* conductance.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = conductance.cpp; sourceTree = ""; }; + BC9364B24DE258463B7BF1ABC14CF53A /* version.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = version.cpp; sourceTree = ""; }; + BE81155C54FB572EC008598255A83F98 /* sensor_fusion.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = sensor_fusion.doctree; path = Docs/build/doctrees/sensor_fusion.doctree; sourceTree = ""; }; BFAA633966C968BF70362AFA2B44336F /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h"; sourceTree = ""; }; BFEAA5C46CEC3615548C77D7E8DBB3C7 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch"; sourceTree = ""; }; - C0FB3ABB2BB2B9595997C842A141AEBC /* event.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = event.doctree; path = Docs/build/doctrees/event.doctree; sourceTree = ""; }; - C0FFFB6700BEC9C36BFFEFCA6F08B772 /* ibeacon.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ibeacon.cpp; sourceTree = ""; }; - C116B2146C21545E9C6286225384C304 /* ambientlight_ltr329.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ambientlight_ltr329.cpp; sourceTree = ""; }; - C165784B2F3FBC73025B5730BD84A454 /* colordetector_tcs34725.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = colordetector_tcs34725.cpp; sourceTree = ""; }; - C1B910DE72812567B6DFD9510F7A5FDE /* core_modules.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = core_modules.rst.txt; path = Docs/build/html/_sources/core_modules.rst.txt; sourceTree = ""; }; + C0F1F6DBF8F5751CA37EBDBEDDD1A15F /* humidity_bme280.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = humidity_bme280.cpp; sourceTree = ""; }; + C0FB3ABB2BB2B9595997C842A141AEBC /* event.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = event.doctree; path = Docs/build/doctrees/event.doctree; sourceTree = ""; }; + C11BD0E842D22950988BD3A9316D7FE0 /* neopixel.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = neopixel.cpp; sourceTree = ""; }; + C1B910DE72812567B6DFD9510F7A5FDE /* core_modules.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = core_modules.rst.txt; path = Docs/build/html/_sources/core_modules.rst.txt; sourceTree = ""; }; C20B24F55F0CFEBCD610216AA9691067 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-acknowledgements.markdown"; sourceTree = ""; }; - C22749D2B8E00599A0F94B486EEAF752 /* humidity_bme280.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = humidity_bme280.cpp; sourceTree = ""; }; - C393E99AF46B41DC9FDFECDD8627EF5B /* Roboto-Slab-Bold.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "Roboto-Slab-Bold.woff2"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Bold.woff2"; sourceTree = ""; }; - C48F81905939F13E116B931697115385 /* ambientlightsensor.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = ambientlightsensor.rst; path = Docs/source/ambientlightsensor.rst; sourceTree = ""; }; - C4C44D4B1A5357B81BE64B8843779793 /* cppbridge.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = cppbridge.doctree; path = Docs/build/doctrees/cppbridge.doctree; sourceTree = ""; }; + C393E99AF46B41DC9FDFECDD8627EF5B /* Roboto-Slab-Bold.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "Roboto-Slab-Bold.woff2"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Bold.woff2"; sourceTree = ""; }; + C48F81905939F13E116B931697115385 /* ambientlightsensor.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = ambientlightsensor.rst; path = Docs/source/ambientlightsensor.rst; sourceTree = ""; }; + C4C44D4B1A5357B81BE64B8843779793 /* cppbridge.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = cppbridge.doctree; path = Docs/build/doctrees/cppbridge.doctree; sourceTree = ""; }; C626F85A8564BCF486B43AC72451FC24 /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-dummy.m"; sourceTree = ""; }; - C702ED0809CC0E4E97F466336F3EA047 /* Makefile */ = {isa = PBXFileReference; includeInIndex = 1; name = Makefile; path = Docs/Makefile; sourceTree = ""; }; - C71508F7B93AE559E77814E3E7A2FA27 /* core_modules.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = core_modules.rst; path = Docs/source/core_modules.rst; sourceTree = ""; }; + C702ED0809CC0E4E97F466336F3EA047 /* Makefile */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.make; name = Makefile; path = Docs/Makefile; sourceTree = ""; }; + C71508F7B93AE559E77814E3E7A2FA27 /* core_modules.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = core_modules.rst; path = Docs/source/core_modules.rst; sourceTree = ""; }; C7D0FDF991487027613374C0F7701226 /* LogDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = LogDelegate.swift; sourceTree = ""; }; - C7D96C1FB9ED1E49325F6E92F2AE4F33 /* task.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = task.cpp; sourceTree = ""; }; C7E8E5C03C74D4FEB1A37C2CB0DC3B12 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-Info.plist"; sourceTree = ""; }; C8147C4850AEABDA11389CD1C19E9ECE /* Pods-MetaWearIntegrationTests-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWearIntegrationTests-iOS.debug.xcconfig"; sourceTree = ""; }; C84784ABFBF917BB22BF2077A55A8FAA /* Data+Serialization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Data+Serialization.swift"; path = "Sources/ZIPFoundation/Data+Serialization.swift"; sourceTree = ""; }; C88285F433CF218408492BC8304A0044 /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-frameworks.sh"; sourceTree = ""; }; C9059A703233CE911E22855733F6AFEB /* DFUPeripheralSelector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUPeripheralSelector.swift; path = iOSDFULibrary/Classes/Implementation/DFUPeripheralSelector.swift; sourceTree = ""; }; - CA4BB0314E9D78D56FD5027D6B01DD6A /* dataprocessor.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = dataprocessor.rst; path = Docs/source/dataprocessor.rst; sourceTree = ""; }; + CA4BB0314E9D78D56FD5027D6B01DD6A /* dataprocessor.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = dataprocessor.rst; path = Docs/source/dataprocessor.rst; sourceTree = ""; }; CA99C2A255521A7E4969446E2550F350 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-umbrella.h"; sourceTree = ""; }; - CACDA00D168FB45E46CEC36074EFB198 /* temperature.html */ = {isa = PBXFileReference; includeInIndex = 1; name = temperature.html; path = Docs/build/html/temperature.html; sourceTree = ""; }; - CC54A8F259F505BE581162985789AB82 /* settings.html */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.html; path = Docs/build/html/settings.html; sourceTree = ""; }; + CACDA00D168FB45E46CEC36074EFB198 /* temperature.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = temperature.html; path = Docs/build/html/temperature.html; sourceTree = ""; }; + CC54A8F259F505BE581162985789AB82 /* settings.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = settings.html; path = Docs/build/html/settings.html; sourceTree = ""; }; CC664CACE8271F6C72F9F07D47468A39 /* SecureDFUService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SecureDFUService.swift; path = iOSDFULibrary/Classes/Implementation/SecureDFU/Services/SecureDFUService.swift; sourceTree = ""; }; - CC82E3F634ECDF89CE55E835D0005849 /* peripherals.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = peripherals.doctree; path = Docs/build/doctrees/peripherals.doctree; sourceTree = ""; }; + CC82E3F634ECDF89CE55E835D0005849 /* peripherals.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = peripherals.doctree; path = Docs/build/doctrees/peripherals.doctree; sourceTree = ""; }; CD21CD6E45D18F771B094E6ABEC8C67F /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist"; sourceTree = ""; }; - CE69A2567D12B12C2B107E5850828454 /* haptic.html */ = {isa = PBXFileReference; includeInIndex = 1; name = haptic.html; path = Docs/build/html/haptic.html; sourceTree = ""; }; - CFD843C82D19CF619F26E922A6612134 /* dataprocessor_config.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dataprocessor_config.cpp; sourceTree = ""; }; + CE69A2567D12B12C2B107E5850828454 /* haptic.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = haptic.html; path = Docs/build/html/haptic.html; sourceTree = ""; }; D09FB64A86FF74F0E70311D16B77A1F3 /* ZIPFoundation-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "ZIPFoundation-macOS-Info.plist"; path = "../ZIPFoundation-macOS/ZIPFoundation-macOS-Info.plist"; sourceTree = ""; }; D116DFA4679AFCC77CE41D2A4F735077 /* MetaWearScanner+Mock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWearScanner+Mock.swift"; path = "MetaWear/Mocks/MetaWearScanner+Mock.swift"; sourceTree = ""; }; D11B9606AF00BF65E342847EF05B8AEB /* iOSDFULibrary.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = iOSDFULibrary.framework; sourceTree = BUILT_PRODUCTS_DIR; }; D12D376B2FB3C5BF3FDF1DB158DB3C0C /* Bolts-Swift-watchOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-watchOS.release.xcconfig"; path = "../Bolts-Swift-watchOS/Bolts-Swift-watchOS.release.xcconfig"; sourceTree = ""; }; - D1BEC515335A4A180470B94CAF11CDB7 /* gyro_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = gyro_bosch.cpp; sourceTree = ""; }; - D345321EDE2EE8B59FF85A74DB084CE4 /* accelerometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = accelerometer.doctree; path = Docs/build/doctrees/accelerometer.doctree; sourceTree = ""; }; - D5B93887430E6C591556A0EF02C766B0 /* core_modules.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = core_modules.doctree; path = Docs/build/doctrees/core_modules.doctree; sourceTree = ""; }; - D5D8D9BB704897DB80AEF35223822F59 /* led.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = led.rst.txt; path = Docs/build/html/_sources/led.rst.txt; sourceTree = ""; }; - D5E133000ABA8F10FA6F13CB0871577E /* iOSDFULibrary.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = iOSDFULibrary.framework; path = "iOSDFULibrary-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - D64E6CDBA4D2E8418FC7A8D31F7A6A54 /* logging.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.doctree; path = Docs/build/doctrees/logging.doctree; sourceTree = ""; }; + D345321EDE2EE8B59FF85A74DB084CE4 /* accelerometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = accelerometer.doctree; path = Docs/build/doctrees/accelerometer.doctree; sourceTree = ""; }; + D5B93887430E6C591556A0EF02C766B0 /* core_modules.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = core_modules.doctree; path = Docs/build/doctrees/core_modules.doctree; sourceTree = ""; }; + D5D8D9BB704897DB80AEF35223822F59 /* led.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = led.rst.txt; path = Docs/build/html/_sources/led.rst.txt; sourceTree = ""; }; + D5E133000ABA8F10FA6F13CB0871577E /* iOSDFULibrary.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = iOSDFULibrary.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + D64E6CDBA4D2E8418FC7A8D31F7A6A54 /* logging.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = logging.doctree; path = Docs/build/doctrees/logging.doctree; sourceTree = ""; }; D67806B7EF620D21EEB845FE7B2BF36C /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS.debug.xcconfig"; sourceTree = ""; }; - D68405B5CAE3BEB51AA16FD72FE685E6 /* spi.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = spi.rst.txt; path = Docs/build/html/_sources/spi.rst.txt; sourceTree = ""; }; - D715619D059164B067FC6E5C2BF2CCFA /* lato-normal-italic.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-normal-italic.woff"; path = "Docs/build/html/_static/css/fonts/lato-normal-italic.woff"; sourceTree = ""; }; - D71AFCE59F7E5D0E3C3C14DB7E71A34E /* sensor_fusion.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = sensor_fusion.cpp; sourceTree = ""; }; + D68405B5CAE3BEB51AA16FD72FE685E6 /* spi.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = spi.rst.txt; path = Docs/build/html/_sources/spi.rst.txt; sourceTree = ""; }; + D715619D059164B067FC6E5C2BF2CCFA /* lato-normal-italic.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-normal-italic.woff"; path = "Docs/build/html/_static/css/fonts/lato-normal-italic.woff"; sourceTree = ""; }; D79846913C5C3DB9B906408EA67CDBE4 /* MetaWearData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWearData.swift; sourceTree = ""; }; D7B6FF697AF15FAD5B996B730D32226F /* MetaWear.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWear.swift; sourceTree = ""; }; - D884DF08ED52525ED6047FFED870B836 /* fontawesome-webfont.eot */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.eot"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.eot"; sourceTree = ""; }; + D884DF08ED52525ED6047FFED870B836 /* fontawesome-webfont.eot */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "fontawesome-webfont.eot"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.eot"; sourceTree = ""; }; D928D6F667DCB346AB64385873DBCEC4 /* Pods-MetaWearIntegrationTests-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWearIntegrationTests-iOS.release.xcconfig"; sourceTree = ""; }; - D9722619DF8B6D03DC8CB4379C169217 /* ibeacon.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = ibeacon.rst.txt; path = Docs/build/html/_sources/ibeacon.rst.txt; sourceTree = ""; }; - D9B3EDDDD55372316292289426ACEB2A /* dataprocessor.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = dataprocessor.rst.txt; path = Docs/build/html/_sources/dataprocessor.rst.txt; sourceTree = ""; }; + D9722619DF8B6D03DC8CB4379C169217 /* ibeacon.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = ibeacon.rst.txt; path = Docs/build/html/_sources/ibeacon.rst.txt; sourceTree = ""; }; + D9B3EDDDD55372316292289426ACEB2A /* dataprocessor.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = dataprocessor.rst.txt; path = Docs/build/html/_sources/dataprocessor.rst.txt; sourceTree = ""; }; D9D0F940E407571A9D2C3CC137C7217E /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS.modulemap"; sourceTree = ""; }; DA367DEDE4621CF8CD3DAE036431A3E1 /* MetaWear+Mock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+Mock.swift"; path = "MetaWear/Mocks/MetaWear+Mock.swift"; sourceTree = ""; }; - DB1185C771E66593125CF8CDD0EB8DB0 /* CSharpGenerator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = CSharpGenerator.cpp; sourceTree = ""; }; DBB36CF618A7EA2BCDD2F8FE59B83C9F /* Bolts-Swift-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-tvOS-prefix.pch"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS-prefix.pch"; sourceTree = ""; }; DBC0B44C8FB29FE5F9CAA480D7FC5222 /* DFUServiceInitiator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUServiceInitiator.swift; path = iOSDFULibrary/Classes/Implementation/DFUServiceInitiator.swift; sourceTree = ""; }; + DC1FBF6EFB976B89E85A523A5D3F22A9 /* anonymous_datasignal.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = anonymous_datasignal.cpp; sourceTree = ""; }; DC3832F63755F2711E07CE499A57479E /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-frameworks.sh"; sourceTree = ""; }; - DC74A8C206ABDA0979899B483C9DD1AA /* JavaScriptGenerator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = JavaScriptGenerator.cpp; sourceTree = ""; }; - DD223C6AEAA57760FEBCFC7B233F76DF /* metawearboard.html */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearboard.html; path = Docs/build/html/metawearboard.html; sourceTree = ""; }; - DD4ACD0AB6CA3263FFD6FADEAC6D2806 /* Pods_MetaWear_MetaWear_iOS_MetaWearUnitTests_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWear_MetaWear_iOS_MetaWearUnitTests_iOS.framework; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - DE34A01D996FD05426F39C73144DEE3B /* logger.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = logger.rst.txt; path = Docs/build/html/_sources/logger.rst.txt; sourceTree = ""; }; - E0EF817B8ACF2B742709EEB078D73948 /* html5shiv.min.js */ = {isa = PBXFileReference; includeInIndex = 1; name = html5shiv.min.js; path = Docs/build/html/_static/js/html5shiv.min.js; sourceTree = ""; }; - E11C052B3CED55F30D1DEDDFAAA7E408 /* async_creator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = async_creator.cpp; sourceTree = ""; }; - E14BDF534FA1AE0403D1BF3B178BA512 /* humidity.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = humidity.rst.txt; path = Docs/build/html/_sources/humidity.rst.txt; sourceTree = ""; }; + DC6B95B06278269E39C133FD158C980D /* metawearboard.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = metawearboard.cpp; sourceTree = ""; }; + DD223C6AEAA57760FEBCFC7B233F76DF /* metawearboard.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = metawearboard.html; path = Docs/build/html/metawearboard.html; sourceTree = ""; }; + DD4ACD0AB6CA3263FFD6FADEAC6D2806 /* Pods_MetaWear_MetaWear_iOS_MetaWearUnitTests_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWear_MetaWear_iOS_MetaWearUnitTests_iOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + DE34A01D996FD05426F39C73144DEE3B /* logger.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = logger.rst.txt; path = Docs/build/html/_sources/logger.rst.txt; sourceTree = ""; }; + E0EF817B8ACF2B742709EEB078D73948 /* html5shiv.min.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = html5shiv.min.js; path = Docs/build/html/_static/js/html5shiv.min.js; sourceTree = ""; }; + E14BDF534FA1AE0403D1BF3B178BA512 /* humidity.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = humidity.rst.txt; path = Docs/build/html/_sources/humidity.rst.txt; sourceTree = ""; }; E1BAE33B69D5B09EF1A9FC27B6F9104C /* cbindings.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = cbindings.swift; sourceTree = ""; }; - E235F6D9ABDD5F5648321517AE0873C0 /* haptic.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = haptic.rst; path = Docs/source/haptic.rst; sourceTree = ""; }; - E236F0C7316A3ED6DB87F905B6188019 /* searchindex.js */ = {isa = PBXFileReference; includeInIndex = 1; name = searchindex.js; path = Docs/build/html/searchindex.js; sourceTree = ""; }; - E246335CB932FE248C468993795938D3 /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = BoltsSwift.framework; path = "Bolts-Swift-watchOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - E263A509D6D173F177A0D7C86EDFF2AB /* ambientlightsensor.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = ambientlightsensor.doctree; path = Docs/build/doctrees/ambientlightsensor.doctree; sourceTree = ""; }; - E27D22C5334E9B4D5A2A6D07C03A2D06 /* barometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = barometer.rst.txt; path = Docs/build/html/_sources/barometer.rst.txt; sourceTree = ""; }; - E2EFE9D6C87239704BBC5413982E2438 /* led.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = led.cpp; sourceTree = ""; }; - E39D91CF240BF79A063CA446F493AA94 /* barometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = barometer.doctree; path = Docs/build/doctrees/barometer.doctree; sourceTree = ""; }; + E2165E6CEB6AD910CF5F0459F42C12B2 /* datainterpreter.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = datainterpreter.cpp; sourceTree = ""; }; + E235F6D9ABDD5F5648321517AE0873C0 /* haptic.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = haptic.rst; path = Docs/source/haptic.rst; sourceTree = ""; }; + E236F0C7316A3ED6DB87F905B6188019 /* searchindex.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = searchindex.js; path = Docs/build/html/searchindex.js; sourceTree = ""; }; + E246335CB932FE248C468993795938D3 /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + E263A509D6D173F177A0D7C86EDFF2AB /* ambientlightsensor.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = ambientlightsensor.doctree; path = Docs/build/doctrees/ambientlightsensor.doctree; sourceTree = ""; }; + E27D22C5334E9B4D5A2A6D07C03A2D06 /* barometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = barometer.rst.txt; path = Docs/build/html/_sources/barometer.rst.txt; sourceTree = ""; }; + E39D91CF240BF79A063CA446F493AA94 /* barometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = barometer.doctree; path = Docs/build/doctrees/barometer.doctree; sourceTree = ""; }; E43893E60AA833FD5CE59855FFBCA9CF /* TaskCompletionSource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskCompletionSource.swift; path = Sources/BoltsSwift/TaskCompletionSource.swift; sourceTree = ""; }; E4A59430561A111DB9F99CFA9FC7796C /* upload.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; name = upload.sh; path = Docs/upload.sh; sourceTree = ""; }; - E4EA3B4DDA717762D1BEED67A285324C /* macro.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = macro.rst.txt; path = Docs/build/html/_sources/macro.rst.txt; sourceTree = ""; }; - E611B7FB86FBA0CB0FAC5D47D53C5AB7 /* event.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = event.cpp; sourceTree = ""; }; - E698377A71CB8AF4779D7846D77AF57C /* i2c.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = i2c.rst.txt; path = Docs/build/html/_sources/i2c.rst.txt; sourceTree = ""; }; - E8BC482C61CBAE6CB05B493775955BDE /* logging.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = logging.cpp; sourceTree = ""; }; + E4EA3B4DDA717762D1BEED67A285324C /* macro.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = macro.rst.txt; path = Docs/build/html/_sources/macro.rst.txt; sourceTree = ""; }; + E698377A71CB8AF4779D7846D77AF57C /* i2c.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = i2c.rst.txt; path = Docs/build/html/_sources/i2c.rst.txt; sourceTree = ""; }; + E8638215484973EEFECD6AB74476B075 /* file_operations.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = file_operations.cpp; sourceTree = ""; }; + E90E62927116C1466743A0A90469D57F /* accelerometer_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer_bosch.cpp; sourceTree = ""; }; E92D86C475B17A3AB3793FC4EB6D4E99 /* iOSDFULibrary-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "iOSDFULibrary-macOS-dummy.m"; path = "../iOSDFULibrary-macOS/iOSDFULibrary-macOS-dummy.m"; sourceTree = ""; }; - E9AF0AFF425D0015BA54FDFB5BF52DA5 /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = BoltsSwift.framework; path = "Bolts-Swift-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - EAF29DB335832647F87F4775D7DE5BB7 /* Pods_MetaWearIntegrationTests_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWearIntegrationTests_macOS.framework; path = "Pods-MetaWearIntegrationTests-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + E9AF0AFF425D0015BA54FDFB5BF52DA5 /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + EAF29DB335832647F87F4775D7DE5BB7 /* Pods_MetaWearIntegrationTests_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWearIntegrationTests_macOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + EB8542490FD75B1B911315898FEBB4D9 /* haptic.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = haptic.cpp; sourceTree = ""; }; ED30FE0D206D2DEB526E26E7D3A002BD /* MblMwDataSignal+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MblMwDataSignal+Async.swift"; path = "MetaWear/AsyncUtils/MblMwDataSignal+Async.swift"; sourceTree = ""; }; - ED58B4B256AA26B8E0D5EE629023B10F /* ambientlightsensor.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = ambientlightsensor.rst.txt; path = Docs/build/html/_sources/ambientlightsensor.rst.txt; sourceTree = ""; }; + ED58B4B256AA26B8E0D5EE629023B10F /* ambientlightsensor.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = ambientlightsensor.rst.txt; path = Docs/build/html/_sources/ambientlightsensor.rst.txt; sourceTree = ""; }; ED716A1D05AB6938853D4091D6F8F559 /* DFUStreamHex.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUStreamHex.swift; path = iOSDFULibrary/Classes/Utilities/Streams/DFUStreamHex.swift; sourceTree = ""; }; - EDE1CE76B901CA6A6EE5A0736A9E0736 /* Pods_MetaWear_MetaWear_macOS_MetaWearUnitTests_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_MetaWear_MetaWear_macOS_MetaWearUnitTests_macOS.framework; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - EDEA9B8D4A6C78359421B18F6D8BEF21 /* layout.html */ = {isa = PBXFileReference; includeInIndex = 1; name = layout.html; path = Docs/source/_templates/layout.html; sourceTree = ""; }; + EDE1CE76B901CA6A6EE5A0736A9E0736 /* Pods_MetaWear_MetaWear_macOS_MetaWearUnitTests_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MetaWear_MetaWear_macOS_MetaWearUnitTests_macOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + EDEA9B8D4A6C78359421B18F6D8BEF21 /* layout.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = layout.html; path = Docs/source/_templates/layout.html; sourceTree = ""; }; EE1BFCB3F1461B4BFBEB3D809F511712 /* DFUServiceController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUServiceController.swift; path = iOSDFULibrary/Classes/Implementation/DFUServiceController.swift; sourceTree = ""; }; - EE25A9247D4788AD16B427E2C8AF7537 /* magnetometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = magnetometer.rst; path = Docs/source/magnetometer.rst; sourceTree = ""; }; + EE25A9247D4788AD16B427E2C8AF7537 /* magnetometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = magnetometer.rst; path = Docs/source/magnetometer.rst; sourceTree = ""; }; EE3D0F73A6653041193A830938A672A5 /* iOSDFULibrary-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "iOSDFULibrary-macOS-umbrella.h"; path = "../iOSDFULibrary-macOS/iOSDFULibrary-macOS-umbrella.h"; sourceTree = ""; }; - EF34EB256255B71089C801BAB95F8822 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MetaWear.framework; path = "MetaWear-AsyncUtils-Core-UI-watchOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - EF66C281C1B0C3D03EAA4F00432DBED2 /* cppbridge.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = cppbridge.rst; path = Docs/source/cppbridge.rst; sourceTree = ""; }; - EF6AC1C6C417468EA7F148210B469862 /* fontawesome-webfont.svg */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.svg"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.svg"; sourceTree = ""; }; - F1A627A8DD7F9FBBF8952FE393BEC265 /* sensor_fusion.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = sensor_fusion.rst; path = Docs/source/sensor_fusion.rst; sourceTree = ""; }; + EF34EB256255B71089C801BAB95F8822 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MetaWear.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + EF66C281C1B0C3D03EAA4F00432DBED2 /* cppbridge.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = cppbridge.rst; path = Docs/source/cppbridge.rst; sourceTree = ""; }; + EF6AC1C6C417468EA7F148210B469862 /* fontawesome-webfont.svg */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xml; name = "fontawesome-webfont.svg"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.svg"; sourceTree = ""; }; + F1A627A8DD7F9FBBF8952FE393BEC265 /* sensor_fusion.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = sensor_fusion.rst; path = Docs/source/sensor_fusion.rst; sourceTree = ""; }; F28F4FB76B2B65A671A7F0342CC64711 /* DeviceInformation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DeviceInformation.swift; sourceTree = ""; }; F2EE0CC34C014504301CE5D84714CE4E /* ZIPFoundation-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ZIPFoundation-iOS-umbrella.h"; sourceTree = ""; }; F2F403E27DBF07E56940860662756CB3 /* Manifest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Manifest.swift; path = iOSDFULibrary/Classes/Utilities/DFUPackage/Manifest/Manifest.swift; sourceTree = ""; }; + F47FBA22B56EC0161953A195874050D1 /* dataprocessor.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dataprocessor.cpp; sourceTree = ""; }; F50536BAD847A62129397161AB3353B0 /* ManifestFirmwareInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ManifestFirmwareInfo.swift; path = iOSDFULibrary/Classes/Utilities/DFUPackage/Manifest/ManifestFirmwareInfo.swift; sourceTree = ""; }; - F561F46581972559F90E50096FFE0D68 /* fontawesome-webfont.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.woff"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.woff"; sourceTree = ""; }; - F59C202178C076EDA446977F2FEFCD12 /* index.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = index.rst.txt; path = Docs/build/html/_sources/index.rst.txt; sourceTree = ""; }; - F5B2809F72B0544508607C4E1AD38065 /* macro.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = macro.cpp; sourceTree = ""; }; + F561F46581972559F90E50096FFE0D68 /* fontawesome-webfont.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "fontawesome-webfont.woff"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.woff"; sourceTree = ""; }; + F59C202178C076EDA446977F2FEFCD12 /* index.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = index.rst.txt; path = Docs/build/html/_sources/index.rst.txt; sourceTree = ""; }; F65E2D28785A0B3AEC5090ECACA32651 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Cocoa.framework; sourceTree = DEVELOPER_DIR; }; - F65FD667B6AF9DC18ADA3F036A17D751 /* genindex.html */ = {isa = PBXFileReference; includeInIndex = 1; name = genindex.html; path = Docs/build/html/genindex.html; sourceTree = ""; }; + F65FD667B6AF9DC18ADA3F036A17D751 /* genindex.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = genindex.html; path = Docs/build/html/genindex.html; sourceTree = ""; }; F666FA2CBC156AC724FC36C8FA56C963 /* Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS.modulemap"; sourceTree = ""; }; F671E9F4ADCCBF97B74EC54AA341E8F6 /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m"; path = "../MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m"; sourceTree = ""; }; - F69F488242700F24D60C5C01A27E5F9C /* magnetometer_bmm150.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = magnetometer_bmm150.cpp; sourceTree = ""; }; F6D5B615CEC629B84F8D01C126CDDBAF /* Bolts-Swift-watchOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-watchOS.debug.xcconfig"; path = "../Bolts-Swift-watchOS/Bolts-Swift-watchOS.debug.xcconfig"; sourceTree = ""; }; F76864CFCBA1480F3B682B71128820A5 /* iOSDFULibrary-macOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "iOSDFULibrary-macOS-prefix.pch"; path = "../iOSDFULibrary-macOS/iOSDFULibrary-macOS-prefix.pch"; sourceTree = ""; }; F7B8882026B8D908567C13E297BD6436 /* Bolts-Swift-watchOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-watchOS-umbrella.h"; path = "../Bolts-Swift-watchOS/Bolts-Swift-watchOS-umbrella.h"; sourceTree = ""; }; F7D4003C2F97282E3C82E5711C7F8C46 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS14.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; F85B983DE4FFFAFAF0F7E87BB5CE2FF9 /* DFUUuidHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DFUUuidHelper.swift; path = iOSDFULibrary/Classes/Implementation/DFUUuidHelper.swift; sourceTree = ""; }; F860B790D62343F8134E5954F4C4366D /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.modulemap"; sourceTree = ""; }; - F880D193B51445AAF2927FB1E01099CF /* event.html */ = {isa = PBXFileReference; includeInIndex = 1; name = event.html; path = Docs/build/html/event.html; sourceTree = ""; }; - FACEF7A2C43428C48F8D9064DBDFE262 /* gyro.html */ = {isa = PBXFileReference; includeInIndex = 1; name = gyro.html; path = Docs/build/html/gyro.html; sourceTree = ""; }; + F880D193B51445AAF2927FB1E01099CF /* event.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = event.html; path = Docs/build/html/event.html; sourceTree = ""; }; + F886A5936801A6689720AC5377AE0ABB /* ambientlight_ltr329.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ambientlight_ltr329.cpp; sourceTree = ""; }; + FACEF7A2C43428C48F8D9064DBDFE262 /* gyro.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = gyro.html; path = Docs/build/html/gyro.html; sourceTree = ""; }; FAF9B7ACE4773B4D39C8F25F3B7E77C9 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.release.xcconfig"; sourceTree = ""; }; - FB0DD21CB704F683E0A6CF1532AA860C /* timer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.rst.txt; path = Docs/build/html/_sources/timer.rst.txt; sourceTree = ""; }; + FB0DD21CB704F683E0A6CF1532AA860C /* timer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = timer.rst.txt; path = Docs/build/html/_sources/timer.rst.txt; sourceTree = ""; }; FB77A25C245095329AF91D690A2BE70A /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/WatchOS.platform/Developer/SDKs/WatchOS7.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; FBE9F7026ACDB8291BF9EA7BC156FC58 /* MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist"; path = "../MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist"; sourceTree = ""; }; FC2DEB55514859BAD3CF4DA5A03DBA15 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.release.xcconfig"; path = "../MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.release.xcconfig"; sourceTree = ""; }; FC3F5F9EFAF6F59EB814261D256C5F2F /* Pods-MetaWearIntegrationTests-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWearIntegrationTests-iOS-umbrella.h"; sourceTree = ""; }; - FC53B70009CA08373DF91D7B6A55785E /* peripherals.html */ = {isa = PBXFileReference; includeInIndex = 1; name = peripherals.html; path = Docs/build/html/peripherals.html; sourceTree = ""; }; + FC53B70009CA08373DF91D7B6A55785E /* peripherals.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = peripherals.html; path = Docs/build/html/peripherals.html; sourceTree = ""; }; FD76483586B514A5C673056B7A731FE8 /* MetaWear+Firmware.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+Firmware.swift"; path = "MetaWear/DFU/MetaWear+Firmware.swift"; sourceTree = ""; }; FDAB73F304877FD4585F078B919261FC /* ZipArchive.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ZipArchive.swift; path = iOSDFULibrary/Classes/Utilities/ZipArchive.swift; sourceTree = ""; }; FDDABF26A26EF18A186D1EE57BF9A884 /* Pods-MetaWearIntegrationTests-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MetaWearIntegrationTests-tvOS-dummy.m"; sourceTree = ""; }; FDDEEF001B39C50489B492A3EAD87AC9 /* Pods-MetaWearIntegrationTests-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MetaWearIntegrationTests-tvOS.modulemap"; sourceTree = ""; }; FDE3D37DD489EAD78FB0EA6897F9D991 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-umbrella.h"; sourceTree = ""; }; FDF52030FE274FEC72DE7FD300FE48D3 /* LegacyDFUPeripheral.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LegacyDFUPeripheral.swift; path = iOSDFULibrary/Classes/Implementation/LegacyDFU/Peripherals/LegacyDFUPeripheral.swift; sourceTree = ""; }; - FE4DE47D314987E0F452D7DCD0416DB2 /* file_operations.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = file_operations.cpp; sourceTree = ""; }; - FEF8B7DBE8F65750D1E171E1F79C410B /* i2c.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = i2c.doctree; path = Docs/build/doctrees/i2c.doctree; sourceTree = ""; }; + FEF8B7DBE8F65750D1E171E1F79C410B /* i2c.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = i2c.doctree; path = Docs/build/doctrees/i2c.doctree; sourceTree = ""; }; FF09F8084F7DCF227B244653A4135332 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-acknowledgements.plist"; sourceTree = ""; }; - FF2AA8233135C47CC5AC6C25FBD6A516 /* settings.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = settings.cpp; sourceTree = ""; }; - FFC67266CA93B9F91719C19A38CE3E82 /* theme.js */ = {isa = PBXFileReference; includeInIndex = 1; name = theme.js; path = Docs/build/html/_static/js/theme.js; sourceTree = ""; }; + FFC67266CA93B9F91719C19A38CE3E82 /* theme.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = theme.js; path = Docs/build/html/_static/js/theme.js; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -1265,38 +1240,30 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 188BFBC13E2010BB6C5A35FD234E3D98 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 126B864FD5B9D3B79BA674EEBF8131E8 /* Cocoa.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 1C5C1A73253B010AD8C259AA95FAA698 /* Frameworks */ = { + 2547AA320698C69CC6FEEE7AE8FC0519 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - A8ECBE25D5BF892F76F29248EA41D29B /* BoltsSwift.framework in Frameworks */, - 6071E48F737A11BC76CF9F7D0AD0A27C /* CoreBluetooth.framework in Frameworks */, - B7F9890DA52935259F88791A5175AC5F /* Foundation.framework in Frameworks */, - F6809A948DB09B744EAAA02F7716A602 /* iOSDFULibrary.framework in Frameworks */, + 83B1B34720AA1EAAE7D713AEDE74A678 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 2547AA320698C69CC6FEEE7AE8FC0519 /* Frameworks */ = { + 31ED1501A0FC7F8050A2446AC2707858 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 83B1B34720AA1EAAE7D713AEDE74A678 /* Foundation.framework in Frameworks */, + D3B23F7DD46BE628FFFAD2E73116208E /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 31ED1501A0FC7F8050A2446AC2707858 /* Frameworks */ = { + 32B87607DE1D9355AA5C68500BCE7E87 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - D3B23F7DD46BE628FFFAD2E73116208E /* Foundation.framework in Frameworks */, + 54823A75E564478A26B7829F94E6F107 /* BoltsSwift.framework in Frameworks */, + 97AAAA105CBD4F01F3B9639FB41ABDCE /* Cocoa.framework in Frameworks */, + D97DC90A6C7A759A93044FF2C9CBADE7 /* CoreBluetooth.framework in Frameworks */, + A2F0B801E6F361C4C3978C2DBF0A8FC7 /* iOSDFULibrary.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1308,11 +1275,11 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 3FACD50741EF96C7700D554DA50482C9 /* Frameworks */ = { + 468FCCC18F80692F7BB4CF1661621E51 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - D519C222962A0DA43CED7F37127AC60D /* Foundation.framework in Frameworks */, + 1553937004C3E64B19CD89EF8AFE47F8 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1324,32 +1291,30 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 68E3DA2904A9227CB8FB0662ED8AC1EB /* Frameworks */ = { + 7254513FBB40D23ECF62BBF721E062D1 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 1B259F8D638758507076CF53E0D5F385 /* BoltsSwift.framework in Frameworks */, - 8EA9F3D6FE3BA71834FD3BC20D58F16D /* CoreBluetooth.framework in Frameworks */, - A6CA40D0AFFC130126BA57464CA1EA03 /* Foundation.framework in Frameworks */, + FE1779E8FC6E02A5F862C44182F9DCC9 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 7254513FBB40D23ECF62BBF721E062D1 /* Frameworks */ = { + 8D1ACFFF8DFA0997176AA20C8E538D81 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - FE1779E8FC6E02A5F862C44182F9DCC9 /* Foundation.framework in Frameworks */, + 31991D2555E6F1774C9782B9425ACFA4 /* Foundation.framework in Frameworks */, + 99B73EC4612D3B00C74ACD8659B16DB2 /* ZIPFoundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 83591A8A1939BDA251052A14239FFC42 /* Frameworks */ = { + 8D8F63998F7A532026EE473DD12E3D49 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 887FEA896B88053C97317E53E87B8FD3 /* BoltsSwift.framework in Frameworks */, - 2C1907D0785CFB6C1FC5C2C0071EFA28 /* Cocoa.framework in Frameworks */, - 0936DDEF5A4B9650C5ECD5C663515D2B /* CoreBluetooth.framework in Frameworks */, - F08B321D7E3C926EDAFB5462535CB86E /* iOSDFULibrary.framework in Frameworks */, + FC7AA766956F20EC418DF852EB980191 /* BoltsSwift.framework in Frameworks */, + 2221EF07AD9EA07D21AB339401CBF99A /* CoreBluetooth.framework in Frameworks */, + BF0FE7560C9DA63FBD8DAAA194CF695A /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1369,13 +1334,24 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - ABEF92D0CBC742D571A4A2579E0F7715 /* Frameworks */ = { + 9B6ABFE44C8BEF42176B28EF75604578 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + F4AAAAA9EF801C5CEE3A8D6595F17285 /* BoltsSwift.framework in Frameworks */, + 6AF1592BB698329EBC1D18917C7F89CF /* CoreBluetooth.framework in Frameworks */, + BA954476EFD16379C89A5598B716C028 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + A4EB7C114B1C367FD5F95D5E5B6311C3 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 53855E4FB33EAD16A2F39AD607AB01DC /* BoltsSwift.framework in Frameworks */, - 8CE840023AEBD9CA850183FEFEA7D41E /* CoreBluetooth.framework in Frameworks */, - 21CC738C0902AC17332D3AE2731C3029 /* Foundation.framework in Frameworks */, + DDC3D0310D20F17CB03007936F42F5FF /* BoltsSwift.framework in Frameworks */, + 18409AAD5C7E82D5049A2610FABD7FD9 /* CoreBluetooth.framework in Frameworks */, + C42881A7C4D99FE9206779541733750E /* Foundation.framework in Frameworks */, + 9300138FE7693FCBFAC2C3F02B324D0C /* iOSDFULibrary.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1403,29 +1379,28 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - D1B62453835FE722C8144C28016F1587 /* Frameworks */ = { + D1ED09B16FF152696F258A418A669B39 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 8F45F401EC45EFACA04EB237E3CA3E3D /* Foundation.framework in Frameworks */, - 7A6C843BC6A55BEE9B49AA332A462C63 /* ZIPFoundation.framework in Frameworks */, + 2D2440F7B4FA277B9D9C5789257A8902 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - D1ED09B16FF152696F258A418A669B39 /* Frameworks */ = { + ED341352F5318F0AEA304BA528A90673 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 2D2440F7B4FA277B9D9C5789257A8902 /* Foundation.framework in Frameworks */, + 58F88141DC3FF94DB1ED61ABC6423B8E /* Cocoa.framework in Frameworks */, + 4EE0CB89C04B370395D3A3ACF952E0A8 /* ZIPFoundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - E92196D2BFFB948DCF5E66C8725278A6 /* Frameworks */ = { + FADBB83B33B7A8054241E5C5B64B92FB /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 64A222ADB2B5A14846D38D0641863452 /* Cocoa.framework in Frameworks */, - 07F7F397A569ABA0B41AB17F699C0312 /* ZIPFoundation.framework in Frameworks */, + 6F56C4C2740E10ED89DC8FD8A8EC8BEC /* Cocoa.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1454,17 +1429,15 @@ 60BEE52C89C924410FA20A8C8FDEFDA7 /* FileManager+ZIP.swift */, 7B59D2B5FA7674A77769690EC31B69E0 /* Support Files */, ); - name = ZIPFoundation; path = ZIPFoundation; sourceTree = ""; }; - 03F2399154FDB3AC562243870DC2B39D /* core */ = { + 08FDDE1A88C65310D914640DB285F9C1 /* dfu */ = { isa = PBXGroup; children = ( - 8BA14648532FAD77B1D0C4E4AAAC530B /* cpp */, + 72088804710293F03D48EFACD01C0042 /* cpp */, ); - name = core; - path = core; + path = dfu; sourceTree = ""; }; 09AF99F7ADB313EFE8D9BEA6A3E4B478 /* Core */ = { @@ -1490,6 +1463,15 @@ name = Frameworks; sourceTree = ""; }; + 0FC2203F6D78A8C2F4158CC33946B92D /* cpp */ = { + isa = PBXGroup; + children = ( + F47FBA22B56EC0161953A195874050D1 /* dataprocessor.cpp */, + 1348C828ED80F76140C635967D764E8B /* dataprocessor_config.cpp */, + ); + path = cpp; + sourceTree = ""; + }; 13BC394ED500FB5D749341AD51D6F5D3 /* UI */ = { isa = PBXGroup; children = ( @@ -1515,6 +1497,15 @@ path = "Target Support Files/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS"; sourceTree = ""; }; + 2561AAD964D1350A2DFC35B34AA6C523 /* cpp */ = { + isa = PBXGroup; + children = ( + E2165E6CEB6AD910CF5F0459F42C12B2 /* datainterpreter.cpp */, + DC6B95B06278269E39C133FD158C980D /* metawearboard.cpp */, + ); + path = cpp; + sourceTree = ""; + }; 311305D77133BD41A30CA4BD548B1F01 /* Pods-MetaWearIntegrationTests-tvOS */ = { isa = PBXGroup; children = ( @@ -1531,41 +1522,12 @@ path = "Target Support Files/Pods-MetaWearIntegrationTests-tvOS"; sourceTree = ""; }; - 32711B679FCD2A62E893D391E4822167 /* src */ = { - isa = PBXGroup; - children = ( - 3DA7B381901D7ED3F11CF702426BBE92 /* metawear */, - ); - name = src; - path = src; - sourceTree = ""; - }; - 3626EA163A7603EF0BF70CB7128D48A6 /* cpp */ = { + 3BB0DBAD07FBC378CE8D81B2DC67CA20 /* core */ = { isa = PBXGroup; children = ( - 0FCF2F5A5C94712F9BAE705347593E4A /* haptic.cpp */, - C0FFFB6700BEC9C36BFFEFCA6F08B772 /* ibeacon.cpp */, - E2EFE9D6C87239704BBC5413982E2438 /* led.cpp */, - 73948BE2C0569FB3BF68F6A4A189B95F /* neopixel.cpp */, + 658A1423B9E1B390E75836EB65AA7CA5 /* cpp */, ); - name = cpp; - path = cpp; - sourceTree = ""; - }; - 3DA7B381901D7ED3F11CF702426BBE92 /* metawear */ = { - isa = PBXGroup; - children = ( - 03F2399154FDB3AC562243870DC2B39D /* core */, - 67D29520CBB3BA8180B1DE136EA75EB6 /* dfu */, - 4BF6868D519E398C9B20A49BE44750D7 /* generator */, - A9EBA85700A2C273EB2C6FA2138C8E66 /* impl */, - FE1E12BF53AA453246E280FE6167B1B4 /* peripheral */, - 810C28BAB686C4E6FD8F77E4A2067ECB /* platform */, - 777D3F3A51492B71055685C25D623DF9 /* processor */, - F219E3586AB5AE6305C127B1E97E78FB /* sensor */, - ); - name = metawear; - path = metawear; + path = core; sourceTree = ""; }; 40CEFE65EA92DB7EA688C135BB32568C /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS */ = { @@ -1603,40 +1565,6 @@ name = "OS X"; sourceTree = ""; }; - 4B4319F3FB5EA78CBD754F80F2E2BE31 /* cpp */ = { - isa = PBXGroup; - children = ( - B63F9B9F7BDAE3C2D1A99017A48D4C8E /* accelerometer.cpp */, - BCE1CF16C54DD96420E6A5AAB43244C4 /* accelerometer_bosch.cpp */, - AB77385D74E1D2C5ED9DF53F991E41CA /* accelerometer_mma8452q.cpp */, - C116B2146C21545E9C6286225384C304 /* ambientlight_ltr329.cpp */, - 262B515345D9A281E9DB178889EAB01F /* barometer_bosch.cpp */, - C165784B2F3FBC73025B5730BD84A454 /* colordetector_tcs34725.cpp */, - BEF0743B28C3D9777CDD2245E75150D7 /* conductance.cpp */, - 20B0727D623002B7F4C82B61F2E53BCE /* gpio.cpp */, - D1BEC515335A4A180470B94CAF11CDB7 /* gyro_bosch.cpp */, - C22749D2B8E00599A0F94B486EEAF752 /* humidity_bme280.cpp */, - F69F488242700F24D60C5C01A27E5F9C /* magnetometer_bmm150.cpp */, - B4ECB2BFD9EC71AEC3128B318A9BA8CB /* multichanneltemperature.cpp */, - 827E9F987EB8540D345C89BCCF2B194C /* proximity_tsl2671.cpp */, - D71AFCE59F7E5D0E3C3C14DB7E71A34E /* sensor_fusion.cpp */, - AEE665D716662DBB922425D97CDB83CC /* serialpassthrough.cpp */, - 1AB700AD1E77526C1584F3E4CA6A880C /* switch.cpp */, - 5F6357DB75F21135B725219F131B8F8B /* utils.cpp */, - ); - name = cpp; - path = cpp; - sourceTree = ""; - }; - 4BF6868D519E398C9B20A49BE44750D7 /* generator */ = { - isa = PBXGroup; - children = ( - DBFFFB2D69AC3ECD5FDA323B6C279422 /* cpp */, - ); - name = generator; - path = generator; - sourceTree = ""; - }; 4C331B0E08CEDD601AF9FF76827198FC /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS */ = { isa = PBXGroup; children = ( @@ -1667,7 +1595,6 @@ E43893E60AA833FD5CE59855FFBCA9CF /* TaskCompletionSource.swift */, F1A1AC3BB4A89AA1E39895BA4B77E06A /* Support Files */, ); - name = "Bolts-Swift"; path = "Bolts-Swift"; sourceTree = ""; }; @@ -1675,12 +1602,20 @@ isa = PBXGroup; children = ( 74EA8693466C057CF8FDABE82AC19D93 /* bindings */, - 32711B679FCD2A62E893D391E4822167 /* src */, + 755A9E33A2E3C874604E2D34FC5E8CB5 /* src */, ); name = "MetaWear-SDK-Cpp"; path = "MetaWear/MetaWear-SDK-Cpp"; sourceTree = ""; }; + 4DB5C988CD006E5BF374DC29B764FB93 /* peripheral */ = { + isa = PBXGroup; + children = ( + 5959B0CDC036FE28E09486F7EC6E7962 /* cpp */, + ); + path = peripheral; + sourceTree = ""; + }; 4E025A61715011D0B2A1AA6A0B32FED5 /* iOS */ = { isa = PBXGroup; children = ( @@ -1707,16 +1642,14 @@ path = "Target Support Files/Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS"; sourceTree = ""; }; - 62A37558BA95823811F8CEFA1874A990 /* cpp */ = { + 5959B0CDC036FE28E09486F7EC6E7962 /* cpp */ = { isa = PBXGroup; children = ( - 48D266E399A4AD8C456953D262CD9B0E /* dfu_operations.cpp */, - 70F6B686369511CDB37017E366F11DFA /* dfu_operations_details.cpp */, - 8BFD6B2E301BA8ACDC2D3BCD0E758C1D /* dfu_utility.cpp */, - FE4DE47D314987E0F452D7DCD0416DB2 /* file_operations.cpp */, - 004F2B2F88E223F15641B8434DF89667 /* miniz.cpp */, + EB8542490FD75B1B911315898FEBB4D9 /* haptic.cpp */, + 780308159364B1C8AB364E6071F61F24 /* ibeacon.cpp */, + 902980F5FF5383884A7D57FAFFE032AC /* led.cpp */, + C11BD0E842D22950988BD3A9316D7FE0 /* neopixel.cpp */, ); - name = cpp; path = cpp; sourceTree = ""; }; @@ -1745,25 +1678,24 @@ name = Pods; sourceTree = ""; }; - 66F8BAC8698C48EC514EC917367F47D6 /* cpp */ = { + 658A1423B9E1B390E75836EB65AA7CA5 /* cpp */ = { isa = PBXGroup; children = ( - 10B5EE02F081CB150B64BC4FB70FBF7B /* datainterpreter.cpp */, - 687FF210AC568843A9F8C1CDA491ECC7 /* metawearboard.cpp */, + DC1FBF6EFB976B89E85A523A5D3F22A9 /* anonymous_datasignal.cpp */, + 10539D2C6125287AB283CED2EE8DBAEA /* datasignal.cpp */, + 72679D30CADB9E4EDCA6F731B66600DA /* debug.cpp */, + A48E122F9DA1F7EB1E163F2101A849EF /* event.cpp */, + 8707E77673C38369948433F76F81F16E /* logging.cpp */, + 32A9D2FFDC176644FDA8EA8A07E27CEC /* macro.cpp */, + 48BAF38843147CF61083BD1B5E606613 /* moduleinfo.cpp */, + 558698560BA6BBAF9D08401CC4190DD9 /* responseheader.cpp */, + AD72C1111CD9303EAB58262CB8E268FA /* settings.cpp */, + 18D1FB2F31E04EA9F0ECE4139861D861 /* timer.cpp */, + BC9364B24DE258463B7BF1ABC14CF53A /* version.cpp */, ); - name = cpp; path = cpp; sourceTree = ""; }; - 67D29520CBB3BA8180B1DE136EA75EB6 /* dfu */ = { - isa = PBXGroup; - children = ( - 62A37558BA95823811F8CEFA1874A990 /* cpp */, - ); - name = dfu; - path = dfu; - sourceTree = ""; - }; 6834BAF960218FEF459A4BC5DF80C641 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS */ = { isa = PBXGroup; children = ( @@ -1781,6 +1713,14 @@ path = "Target Support Files/Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS"; sourceTree = ""; }; + 6CF7FAFDC80CCCE2EC6165CE2E2300D1 /* processor */ = { + isa = PBXGroup; + children = ( + 0FC2203F6D78A8C2F4158CC33946B92D /* cpp */, + ); + path = processor; + sourceTree = ""; + }; 6FA53FF751BB23DBE4F9BA733E785630 /* Products */ = { isa = PBXGroup; children = ( @@ -1832,22 +1772,32 @@ path = "../Target Support Files/iOSDFULibrary-iOS"; sourceTree = ""; }; + 72088804710293F03D48EFACD01C0042 /* cpp */ = { + isa = PBXGroup; + children = ( + 88A6C13CB83BD51E74443DB16CBF224E /* dfu_operations.cpp */, + B9B52711F5B464ED2C018FC5CA48EC24 /* dfu_operations_details.cpp */, + 9EF25ABDC4C7F400A50E64C961ED9408 /* dfu_utility.cpp */, + E8638215484973EEFECD6AB74476B075 /* file_operations.cpp */, + 18923ACBB26FEBC52207506844407E81 /* miniz.cpp */, + ); + path = cpp; + sourceTree = ""; + }; 74EA8693466C057CF8FDABE82AC19D93 /* bindings */ = { isa = PBXGroup; children = ( B5A81ADA70C6AA946CCCB90576766106 /* swift */, ); - name = bindings; path = bindings; sourceTree = ""; }; - 777D3F3A51492B71055685C25D623DF9 /* processor */ = { + 755A9E33A2E3C874604E2D34FC5E8CB5 /* src */ = { isa = PBXGroup; children = ( - C185FD33C3AF7739349C3ACF020C88B8 /* cpp */, + BF8397A47913E2E770339AD8E7F7FF55 /* metawear */, ); - name = processor; - path = processor; + path = src; sourceTree = ""; }; 7B59D2B5FA7674A77769690EC31B69E0 /* Support Files */ = { @@ -1872,34 +1822,6 @@ path = "../Target Support Files/ZIPFoundation-iOS"; sourceTree = ""; }; - 810C28BAB686C4E6FD8F77E4A2067ECB /* platform */ = { - isa = PBXGroup; - children = ( - E05067ADEB4444D99C9909B8C9B4104A /* cpp */, - ); - name = platform; - path = platform; - sourceTree = ""; - }; - 8BA14648532FAD77B1D0C4E4AAAC530B /* cpp */ = { - isa = PBXGroup; - children = ( - 1055045CA95BD2B47B08BD783A980121 /* anonymous_datasignal.cpp */, - 2C439C24DEA34C216997BFDB48274C53 /* datasignal.cpp */, - 028E0B50105A41869AE9683AA8EF087F /* debug.cpp */, - E611B7FB86FBA0CB0FAC5D47D53C5AB7 /* event.cpp */, - E8BC482C61CBAE6CB05B493775955BDE /* logging.cpp */, - F5B2809F72B0544508607C4E1AD38065 /* macro.cpp */, - B83AA79D41272316A3114303985BB4F0 /* moduleinfo.cpp */, - 3AF105819F0CF98F677510BD677E9C91 /* responseheader.cpp */, - FF2AA8233135C47CC5AC6C25FBD6A516 /* settings.cpp */, - 9E0362A7CDF8C01C9D967F8417265F7C /* timer.cpp */, - 1FEAD48A2DC9006470AEA6A870085C76 /* version.cpp */, - ); - name = cpp; - path = cpp; - sourceTree = ""; - }; 92D5A60EEF60447A3C8B4F9A2D6CBED2 /* Core */ = { isa = PBXGroup; children = ( @@ -1967,7 +1889,6 @@ FDAB73F304877FD4585F078B919261FC /* ZipArchive.swift */, 71BA9937DBE20F4EF08BE1DE86EB8335 /* Support Files */, ); - name = iOSDFULibrary; path = iOSDFULibrary; sourceTree = ""; }; @@ -2042,12 +1963,19 @@ path = "MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; sourceTree = ""; }; - A9EBA85700A2C273EB2C6FA2138C8E66 /* impl */ = { + A9B8A54FFECCB7CEF66BBF4F50448F08 /* platform */ = { + isa = PBXGroup; + children = ( + ECE04D20800E807AFDAC7DB50D63148F /* cpp */, + ); + path = platform; + sourceTree = ""; + }; + B44C41A67BD5ABE27DF20D5E0450642C /* impl */ = { isa = PBXGroup; children = ( - 66F8BAC8698C48EC514EC917367F47D6 /* cpp */, + 2561AAD964D1350A2DFC35B34AA6C523 /* cpp */, ); - name = impl; path = impl; sourceTree = ""; }; @@ -2073,7 +2001,6 @@ children = ( E1BAE33B69D5B09EF1A9FC27B6F9104C /* cbindings.swift */, ); - name = swift; path = swift; sourceTree = ""; }; @@ -2267,14 +2194,18 @@ name = AsyncUtils; sourceTree = ""; }; - C185FD33C3AF7739349C3ACF020C88B8 /* cpp */ = { + BF8397A47913E2E770339AD8E7F7FF55 /* metawear */ = { isa = PBXGroup; children = ( - 9E7D6F9807103C2CE80B3165286C6ED0 /* dataprocessor.cpp */, - CFD843C82D19CF619F26E922A6612134 /* dataprocessor_config.cpp */, + 3BB0DBAD07FBC378CE8D81B2DC67CA20 /* core */, + 08FDDE1A88C65310D914640DB285F9C1 /* dfu */, + B44C41A67BD5ABE27DF20D5E0450642C /* impl */, + 4DB5C988CD006E5BF374DC29B764FB93 /* peripheral */, + A9B8A54FFECCB7CEF66BBF4F50448F08 /* platform */, + 6CF7FAFDC80CCCE2EC6165CE2E2300D1 /* processor */, + DD3BA2106AE8F4B10EA64A3766DDBA7C /* sensor */, ); - name = cpp; - path = cpp; + path = metawear; sourceTree = ""; }; C32B69DF97E92F5EBEF89B5AEB18800D /* Development Pods */ = { @@ -2314,29 +2245,36 @@ name = "Targets Support Files"; sourceTree = ""; }; - DBFFFB2D69AC3ECD5FDA323B6C279422 /* cpp */ = { + DBA69CA81297D8D8A56CEF54036581A5 /* cpp */ = { isa = PBXGroup; children = ( - 79039E935AA8A9170F0A2AA8C3F03298 /* common.cpp */, - DB1185C771E66593125CF8CDD0EB8DB0 /* CSharpGenerator.cpp */, - DC74A8C206ABDA0979899B483C9DD1AA /* JavaScriptGenerator.cpp */, - 3EC1C6520D805971B93CEE5E29C7C7B8 /* PythonGenerator.cpp */, - B2DFE15A0E62BE06D2CF9D4AE53F927D /* SwiftGenerator.cpp */, + 2936B84D7ABBBF409F954F6039C48833 /* accelerometer.cpp */, + E90E62927116C1466743A0A90469D57F /* accelerometer_bosch.cpp */, + 978459E240560B17507244A6549F4229 /* accelerometer_mma8452q.cpp */, + F886A5936801A6689720AC5377AE0ABB /* ambientlight_ltr329.cpp */, + 4E01D3B402B676363B8F8D3BA1BF5FA6 /* barometer_bosch.cpp */, + 51AFD4D7267C86EF2C52B376EA4A25E2 /* colordetector_tcs34725.cpp */, + 95A619B3EEC20F8735D86AE1CC35A961 /* conductance.cpp */, + 74A29439E113714AC0CB0797D42B41E1 /* gpio.cpp */, + 82A200E21B4A962602907DC1F3C32C09 /* gyro_bosch.cpp */, + C0F1F6DBF8F5751CA37EBDBEDDD1A15F /* humidity_bme280.cpp */, + A87DEF4B413807CE32269EAD7DB2BE27 /* magnetometer_bmm150.cpp */, + 38FEFFA5A3AF15ED1E41DCFDD70C86E7 /* multichanneltemperature.cpp */, + 6326D13C7B229BA3C76C140DF0348018 /* proximity_tsl2671.cpp */, + 6A1B3EB7FA5C5F9452C98429C7A1DDF7 /* sensor_fusion.cpp */, + 2B995D2F14F8DEC62B8EC6A0C94DA4C0 /* serialpassthrough.cpp */, + 3A93B08019D08C3B0F32E06B08257EFD /* switch.cpp */, + 9610CBAC873B84393551C455F94393AB /* utils.cpp */, ); - name = cpp; path = cpp; sourceTree = ""; }; - E05067ADEB4444D99C9909B8C9B4104A /* cpp */ = { + DD3BA2106AE8F4B10EA64A3766DDBA7C /* sensor */ = { isa = PBXGroup; children = ( - E11C052B3CED55F30D1DEDDFAAA7E408 /* async_creator.cpp */, - 92A6AEE6F244210ACF8B60C22AFA8B6C /* memory.cpp */, - C7D96C1FB9ED1E49325F6E92F2AE4F33 /* task.cpp */, - 871C3E184118A1C65B2DAEAA3016D788 /* threadpool.cpp */, + DBA69CA81297D8D8A56CEF54036581A5 /* cpp */, ); - name = cpp; - path = cpp; + path = sensor; sourceTree = ""; }; E26B388969235E8564664B12AD9BD7DE /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension */ = { @@ -2356,6 +2294,17 @@ path = "Target Support Files/Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension"; sourceTree = ""; }; + ECE04D20800E807AFDAC7DB50D63148F /* cpp */ = { + isa = PBXGroup; + children = ( + AB0B5A7F5BA80F54C48F6FA85802E3D0 /* async_creator.cpp */, + A934C4144529FEC2455E9EA58EEF3641 /* memory.cpp */, + 979F58FE576BD81A336BCBD43C3032E7 /* task.cpp */, + 8657FCFE4420CEF9B76222E0A97AF791 /* threadpool.cpp */, + ); + path = cpp; + sourceTree = ""; + }; F1A1AC3BB4A89AA1E39895BA4B77E06A /* Support Files */ = { isa = PBXGroup; children = ( @@ -2392,24 +2341,6 @@ path = "../Target Support Files/Bolts-Swift-iOS"; sourceTree = ""; }; - F219E3586AB5AE6305C127B1E97E78FB /* sensor */ = { - isa = PBXGroup; - children = ( - 4B4319F3FB5EA78CBD754F80F2E2BE31 /* cpp */, - ); - name = sensor; - path = sensor; - sourceTree = ""; - }; - FE1E12BF53AA453246E280FE6167B1B4 /* peripheral */ = { - isa = PBXGroup; - children = ( - 3626EA163A7603EF0BF70CB7128D48A6 /* cpp */, - ); - name = peripheral; - path = peripheral; - sourceTree = ""; - }; FF5B84E7E5CC018492AFD5659AFAF887 /* Pods-MetaWearIntegrationTests-macOS */ = { isa = PBXGroup; children = ( @@ -2453,115 +2384,123 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 3033C27A10F2ED0A7D0D06BA1DEEAEF1 /* Headers */ = { + 42649B7A363AEEB4FC11934679FBA3A7 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 4372F9E0D0AD29E55CDCF6C48016A505 /* ZIPFoundation-iOS-umbrella.h in Headers */, + 1F5E15976D948FEBBE265FC121F0BE7A /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 3AA6503654418AA521C4D7BBFE26CF82 /* Headers */ = { + 816FF818C0C6CF23783952FF055C7966 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 592B337FA5931F1F3E682E46975D1CBB /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h in Headers */, + ACA1338C1C2ACC6B3990B3DB45D1584B /* iOSDFULibrary-iOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 64D22000C2FDA8E68386CD6CF9277CF2 /* Headers */ = { + 8F50EF9E840BA515CF8653E091A8D1DE /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - EDA28C957C97A0F5433AC3DA8977C640 /* ZIPFoundation-macOS-umbrella.h in Headers */, + 697CCE81E02FD15611AD5B4C86D3B2C8 /* Bolts-Swift-tvOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 827CA640E25C74A814ABD0EEFEBC152E /* Headers */ = { + 9A5D86E7A0420CF118F00621A5298502 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 30B1037AEE08E9DFF03B5458E5D9AEE3 /* iOSDFULibrary-macOS-umbrella.h in Headers */, + D8E64CBAD5BB57243A5A56C5077FE779 /* Bolts-Swift-iOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 8F50EF9E840BA515CF8653E091A8D1DE /* Headers */ = { + 9FB26D076006B858FA5EA331313A4F38 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 697CCE81E02FD15611AD5B4C86D3B2C8 /* Bolts-Swift-tvOS-umbrella.h in Headers */, + 81D2A98BA34444AF500499AC080FACD2 /* iOSDFULibrary-macOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 979B5E4E7AE4F7DC3B3DB45C6F89E85B /* Headers */ = { + A3876E32A82638A5192F2139EAE91B81 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - D069ACD4764F38EDC6E2129A03EA7A7C /* MetaWear-AsyncUtils-Core-UI-watchOS-umbrella.h in Headers */, + ECF40D95E0DB4B34F8C0A332A677E44D /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 9A5D86E7A0420CF118F00621A5298502 /* Headers */ = { + A985F2F35C09D3BB9631ADD8CD04F10E /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - D8E64CBAD5BB57243A5A56C5077FE779 /* Bolts-Swift-iOS-umbrella.h in Headers */, + 538AB836189BCE4210CAA24B170E26DA /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - A3876E32A82638A5192F2139EAE91B81 /* Headers */ = { + AADEE0C7368F8DFF333732CEAF53E5FD /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - ECF40D95E0DB4B34F8C0A332A677E44D /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-umbrella.h in Headers */, + 3611004D23F30DCBD3C8247A2AF37FDA /* Pods-MetaWearIntegrationTests-macOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - AADEE0C7368F8DFF333732CEAF53E5FD /* Headers */ = { + B28B442C5C117E2D7ABD18C5ED677DC3 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 3611004D23F30DCBD3C8247A2AF37FDA /* Pods-MetaWearIntegrationTests-macOS-umbrella.h in Headers */, + 17A4A4D8C600CB7DC5794D87C33EA580 /* Bolts-Swift-watchOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - B0B09555022026A5FC925D1426A4F8FB /* Headers */ = { + B4DB61D0321538F9D273231E17E8523F /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 20864E5EE9812F5F3E0BC8EED1F520D3 /* MetaWear-AsyncUtils-Core-UI-tvOS-umbrella.h in Headers */, + D2BB8E4486E2CCE36E17A3D11F0D2617 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - B28B442C5C117E2D7ABD18C5ED677DC3 /* Headers */ = { + B6BE6E4FB293EC60A9F42D3CB0ECBD7B /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 17A4A4D8C600CB7DC5794D87C33EA580 /* Bolts-Swift-watchOS-umbrella.h in Headers */, + 618C2E0152378DD659637F45561A830C /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - B4DB61D0321538F9D273231E17E8523F /* Headers */ = { + BC1C1A71CD439B46216C615C530E2158 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - D2BB8E4486E2CCE36E17A3D11F0D2617 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS-umbrella.h in Headers */, + BF161F165088B7BB04666B63AFB5EAC5 /* ZIPFoundation-macOS-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + CF8E9FBD1287C777A3B2202DF22914DD /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 24FA742C4FAC73CBA8E64B0913612E40 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - BEE876BC24A0E51E512E7D10A5802A7B /* Headers */ = { + E7502C48F6B36B8EF677E05AF482B389 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - CB2CAA055B3C04CC3BD57AB26B4022A4 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h in Headers */, + 397231CB0CD69318CFD3A00BB6CAEC92 /* ZIPFoundation-iOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - CF8E9FBD1287C777A3B2202DF22914DD /* Headers */ = { + E9EDCA496805C9261DF70484C504EE9D /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 24FA742C4FAC73CBA8E64B0913612E40 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-umbrella.h in Headers */, + B188D7D39FCAD27DE9C8A3054AD74D40 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2597,14 +2536,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - FEDAEA035557C683661E9394BF8A97C0 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - CA3CACD4BD19D74A7DC7AACFD228CEAA /* iOSDFULibrary-iOS-umbrella.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ @@ -2638,10 +2569,10 @@ buildRules = ( ); dependencies = ( - 71611EF2F78A917F33AF736D2856ADD9 /* PBXTargetDependency */, - 89D8BF044049A4B5FE34B86CADF48AB1 /* PBXTargetDependency */, - 079A8D57CB3BA54A0B22B7486EF377C4 /* PBXTargetDependency */, - FCD46C66D111F00D78F6CB4EBF09FA9D /* PBXTargetDependency */, + 0BA3B993609E42DC5CEFE9A92B74E8F8 /* PBXTargetDependency */, + EDCF3C61D915CF80C748D3AC6F502D91 /* PBXTargetDependency */, + 56731B468E4A2652E5925A8B035ED4B4 /* PBXTargetDependency */, + DF7B720D433A03540B4F77D0582285D1 /* PBXTargetDependency */, ); name = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS"; productName = "Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS"; @@ -2650,18 +2581,18 @@ }; 285D0CB5C235EDD5B3B0975146484BE0 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 2F4F90BF93F6FEC582100163F3CCA8BE /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS" */; + buildConfigurationList = E04EC46CB2314773E61FC314A05B05F8 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS" */; buildPhases = ( - BEE876BC24A0E51E512E7D10A5802A7B /* Headers */, - 77C61F9A9D4702C968DB7CD10CB18CAD /* Sources */, - 1C5C1A73253B010AD8C259AA95FAA698 /* Frameworks */, - 482175E6692DCA4222178A88C05B623D /* Resources */, + E9EDCA496805C9261DF70484C504EE9D /* Headers */, + 0B1B20C475A1AE40610844DF9E14CC2C /* Sources */, + A4EB7C114B1C367FD5F95D5E5B6311C3 /* Frameworks */, + EBCC7D65D184C942708C9880E6F76404 /* Resources */, ); buildRules = ( ); dependencies = ( - B88684C6B1812C1021FE2999413A2306 /* PBXTargetDependency */, - 2C068D6689112805BDCE38728DF36AFA /* PBXTargetDependency */, + 9977B9AA9FDD8DF22BEE4F7931996A1F /* PBXTargetDependency */, + 8605DE001DCC36A832DF08E64A610CFF /* PBXTargetDependency */, ); name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; productName = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; @@ -2670,18 +2601,18 @@ }; 42FE80E7F4B82634FE879096E38AF67E /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS */ = { isa = PBXNativeTarget; - buildConfigurationList = FB874F0DBDC55C5513173BE0C143D5EB /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS" */; + buildConfigurationList = 4E68E76D640A5A3FA22B853334D37E38 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS" */; buildPhases = ( - 3AA6503654418AA521C4D7BBFE26CF82 /* Headers */, - 40B8FDBA598274F8CC505AC2CEA4AC88 /* Sources */, - 83591A8A1939BDA251052A14239FFC42 /* Frameworks */, - DF7EF825EB2DD2343328AB1B9985AD1E /* Resources */, + B6BE6E4FB293EC60A9F42D3CB0ECBD7B /* Headers */, + 7DED437B9FBA0326F28546A97662A1AC /* Sources */, + 32B87607DE1D9355AA5C68500BCE7E87 /* Frameworks */, + 355D667085C76B18F1104B9B6CF0EA75 /* Resources */, ); buildRules = ( ); dependencies = ( - 6CE2CCD50B23851198168E503F8AF353 /* PBXTargetDependency */, - 87A2714FD722D52DA60800C1BC4D7E1A /* PBXTargetDependency */, + A18D6D7477FA388C793E99D28AB58694 /* PBXTargetDependency */, + FCA27A74B4ADF6CCEAE9B40FE97EA455 /* PBXTargetDependency */, ); name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; productName = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; @@ -2700,8 +2631,8 @@ buildRules = ( ); dependencies = ( - A7FC9D747F1AE8BAC97BBB188203490A /* PBXTargetDependency */, - 4E1CB07D44E9A1861F66C98DA4ABD512 /* PBXTargetDependency */, + D7BDBB87FCFEB5D29331E5AF63CF024E /* PBXTargetDependency */, + 08936E7FA7579C5C8DDA7433E976D107 /* PBXTargetDependency */, ); name = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension"; productName = "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension"; @@ -2746,17 +2677,17 @@ }; 667F340C7624C4E82D66A02A17E0B33D /* MetaWear-AsyncUtils-Core-UI-watchOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 40B3C411F942B04A8F769CB88A944DAD /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-UI-watchOS" */; + buildConfigurationList = 0F9414FB0836F7F4A5F8B1D2248F60F0 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-UI-watchOS" */; buildPhases = ( - 979B5E4E7AE4F7DC3B3DB45C6F89E85B /* Headers */, - 39A94AEDBAF79BEC22748DCD2292E067 /* Sources */, - 68E3DA2904A9227CB8FB0662ED8AC1EB /* Frameworks */, - 0CC9498288F2D2D8823DB3AE8E46D35E /* Resources */, + 42649B7A363AEEB4FC11934679FBA3A7 /* Headers */, + B9715CE3B6447B370205E93A34D375FD /* Sources */, + 8D8F63998F7A532026EE473DD12E3D49 /* Frameworks */, + 2AC08857FB320B46FB22270391F8FB10 /* Resources */, ); buildRules = ( ); dependencies = ( - D4775D319C2D7C9BAA4F34CB6927ACDF /* PBXTargetDependency */, + 93FF68C0629F4EAB5A37F2F68E2F84C3 /* PBXTargetDependency */, ); name = "MetaWear-AsyncUtils-Core-UI-watchOS"; productName = "MetaWear-AsyncUtils-Core-UI-watchOS"; @@ -2765,17 +2696,17 @@ }; 79F9638EA00F4594D84B597FE45CD2DC /* iOSDFULibrary-macOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 23777FCC2AB054866C68B9DFE7934AD7 /* Build configuration list for PBXNativeTarget "iOSDFULibrary-macOS" */; + buildConfigurationList = 1F57030E1010E5367D81D87A02B4BE32 /* Build configuration list for PBXNativeTarget "iOSDFULibrary-macOS" */; buildPhases = ( - 827CA640E25C74A814ABD0EEFEBC152E /* Headers */, - D1D6CF4D5E9CA6BDBDC90A15FEED77A3 /* Sources */, - E92196D2BFFB948DCF5E66C8725278A6 /* Frameworks */, - F0249FE6D454D5718B7F7F1F52160B3F /* Resources */, + 9FB26D076006B858FA5EA331313A4F38 /* Headers */, + 83B04911D37997A48B52272C123D2331 /* Sources */, + ED341352F5318F0AEA304BA528A90673 /* Frameworks */, + DCC8AD608A8E2135D0732D46AE3AF585 /* Resources */, ); buildRules = ( ); dependencies = ( - 2D1A0F7701A1420FDD6D7BB3D22F9D99 /* PBXTargetDependency */, + 670B6C5BF3F441C1A80C9DA1F7B71A6C /* PBXTargetDependency */, ); name = "iOSDFULibrary-macOS"; productName = "iOSDFULibrary-macOS"; @@ -2794,8 +2725,8 @@ buildRules = ( ); dependencies = ( - 2C22C3A9F47F79DCEC63E04FF3E8A878 /* PBXTargetDependency */, - EA3D1AFEA43653FD4C5DA0D3ED04091B /* PBXTargetDependency */, + D26DB6A48921000799BB338FABC1BF5F /* PBXTargetDependency */, + 5ADACCDA857E1293D07DD3B9909D4611 /* PBXTargetDependency */, ); name = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS"; productName = "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS"; @@ -2804,17 +2735,17 @@ }; 8804FF230B80287816DD00C23D7C3AFB /* MetaWear-AsyncUtils-Core-UI-tvOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 6F6ACB325DC7480C7D93A67FBE0D6472 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-UI-tvOS" */; + buildConfigurationList = 165A0C60F81957823324F36997AE8171 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-UI-tvOS" */; buildPhases = ( - B0B09555022026A5FC925D1426A4F8FB /* Headers */, - 716C1241C4C5D47A855CFEC9F8D09690 /* Sources */, - ABEF92D0CBC742D571A4A2579E0F7715 /* Frameworks */, - FB0107DA7861C6FF47BFFEC431532BC5 /* Resources */, + A985F2F35C09D3BB9631ADD8CD04F10E /* Headers */, + 8C79D62E27A62D21A79446FD664305A4 /* Sources */, + 9B6ABFE44C8BEF42176B28EF75604578 /* Frameworks */, + 59ACC97EC962BE76113F6E696856387C /* Resources */, ); buildRules = ( ); dependencies = ( - B45CB4F6C6AA4DB8B34735411BEDE1F0 /* PBXTargetDependency */, + 8BB3FF743A2A9A9657CD71319F1AF00D /* PBXTargetDependency */, ); name = "MetaWear-AsyncUtils-Core-UI-tvOS"; productName = "MetaWear-AsyncUtils-Core-UI-tvOS"; @@ -2823,12 +2754,12 @@ }; 8B5BB2050078EFCACBEDC5B4195B80CD /* ZIPFoundation-macOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 605C826BCDB00CF8B50903B0EF1EF2A3 /* Build configuration list for PBXNativeTarget "ZIPFoundation-macOS" */; + buildConfigurationList = 000FABAB2B19275F6A6F57FBDC36FF7F /* Build configuration list for PBXNativeTarget "ZIPFoundation-macOS" */; buildPhases = ( - 64D22000C2FDA8E68386CD6CF9277CF2 /* Headers */, - 71C033570A17242F42A504C15BF12409 /* Sources */, - 188BFBC13E2010BB6C5A35FD234E3D98 /* Frameworks */, - F83795A95B03C0C8F572DF2EC3FFA796 /* Resources */, + BC1C1A71CD439B46216C615C530E2158 /* Headers */, + A630D0B65CC13D35B771E4506C4581FF /* Sources */, + FADBB83B33B7A8054241E5C5B64B92FB /* Frameworks */, + 583FE99366343A2AAE437A99380C5943 /* Resources */, ); buildRules = ( ); @@ -2841,12 +2772,12 @@ }; 9AF8AE8821E967844EEF26BBB341564D /* ZIPFoundation-iOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 591E3BE00906A2A9ADB253E6B9529947 /* Build configuration list for PBXNativeTarget "ZIPFoundation-iOS" */; + buildConfigurationList = 11799B5FAD378C1E645674BFD2AFF2C2 /* Build configuration list for PBXNativeTarget "ZIPFoundation-iOS" */; buildPhases = ( - 3033C27A10F2ED0A7D0D06BA1DEEAEF1 /* Headers */, - F2253E4CDEFB243F76B4E99B5F6F2759 /* Sources */, - 3FACD50741EF96C7700D554DA50482C9 /* Frameworks */, - 02F8B72FB6E8B42F5D69BC7B6AA2B4C7 /* Resources */, + E7502C48F6B36B8EF677E05AF482B389 /* Headers */, + 8F679A50E37B3AD0410090B374AD6D9B /* Sources */, + 468FCCC18F80692F7BB4CF1661621E51 /* Frameworks */, + 32E0DB1F9779EDA9388124832FEF9221 /* Resources */, ); buildRules = ( ); @@ -2887,10 +2818,10 @@ buildRules = ( ); dependencies = ( - D620C620B8C3B51FE68AAC58EB87B988 /* PBXTargetDependency */, - 2BE45CE86595EE4B41860C7B496B35F8 /* PBXTargetDependency */, - BAFCF6E87F4C45DE0426C5B09E8E695E /* PBXTargetDependency */, - CF6E2CCFEFDE8852F13398D462105425 /* PBXTargetDependency */, + 5DD5174BBA2540C20754F30D4C540A9E /* PBXTargetDependency */, + FD7E7F2363875AEBE5E19A97AD8BD541 /* PBXTargetDependency */, + 238925E82BA17529B13FA9537E08C2DC /* PBXTargetDependency */, + 70137C73E53C56399A4A7B416516718D /* PBXTargetDependency */, ); name = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS"; productName = "Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS"; @@ -2909,7 +2840,7 @@ buildRules = ( ); dependencies = ( - 487A458D5A75D6451A1D1F1455C09F88 /* PBXTargetDependency */, + ED9559C9F5709D4389FC503EC2C9F73F /* PBXTargetDependency */, ); name = "Pods-MetaWearIntegrationTests-macOS"; productName = "Pods-MetaWearIntegrationTests-macOS"; @@ -2928,7 +2859,7 @@ buildRules = ( ); dependencies = ( - 782403B8CCE6FE8592259F4FDE9CCF88 /* PBXTargetDependency */, + 9836C5F4752EE0DA9D38367D604C7C05 /* PBXTargetDependency */, ); name = "Pods-MetaWearIntegrationTests-tvOS"; productName = "Pods-MetaWearIntegrationTests-tvOS"; @@ -2947,10 +2878,10 @@ buildRules = ( ); dependencies = ( - D4DFCBE4E799F8310AC9D1A23CDE1054 /* PBXTargetDependency */, - E92E57414ED46106EF21D68D331A34B4 /* PBXTargetDependency */, - 629A1127E60231EBE67605EA16F58991 /* PBXTargetDependency */, - 615E3F20B7DEED298C8A6D84F7F97176 /* PBXTargetDependency */, + 89838DAC075C015CCBFABE7C3989684C /* PBXTargetDependency */, + 65E24D1ADB614B5DCD54FFEA9425746C /* PBXTargetDependency */, + 585B04839DA6E89C88F068EE77DF672B /* PBXTargetDependency */, + BCC2FFFDCE494EB48F4D17D436F6D391 /* PBXTargetDependency */, ); name = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS"; productName = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS"; @@ -2959,17 +2890,17 @@ }; D5D94E351BD6926C6DC33FBD834E16AC /* iOSDFULibrary-iOS */ = { isa = PBXNativeTarget; - buildConfigurationList = CA3FF7C1A2DCC5CBDF2CCC91996FE6FA /* Build configuration list for PBXNativeTarget "iOSDFULibrary-iOS" */; + buildConfigurationList = 5DF1D27648DEB747445A5F3B9D40615B /* Build configuration list for PBXNativeTarget "iOSDFULibrary-iOS" */; buildPhases = ( - FEDAEA035557C683661E9394BF8A97C0 /* Headers */, - 1A48BD74C9395E8E229BD3BE39EADDFF /* Sources */, - D1B62453835FE722C8144C28016F1587 /* Frameworks */, - 5BDF15C22DEFD657DC16B457650E1CBB /* Resources */, + 816FF818C0C6CF23783952FF055C7966 /* Headers */, + 53AC377F8175A46223227DD50F900562 /* Sources */, + 8D1ACFFF8DFA0997176AA20C8E538D81 /* Frameworks */, + 838EBC4F2BAC4ED32F4F4F9B5A01273E /* Resources */, ); buildRules = ( ); dependencies = ( - 1285FC91DD8D2E04239EF5E7D43816B1 /* PBXTargetDependency */, + F51783FE11D8B709B7C73610BF61E08F /* PBXTargetDependency */, ); name = "iOSDFULibrary-iOS"; productName = "iOSDFULibrary-iOS"; @@ -2988,10 +2919,10 @@ buildRules = ( ); dependencies = ( - 2EBDDC15435A98F403EBB67111DFBB80 /* PBXTargetDependency */, - C993AF623745FD530B5A25F265C8E50E /* PBXTargetDependency */, - F2832AC7076F272759BEDF224B918D29 /* PBXTargetDependency */, - 393F1632B86CA53F8222A2AA04D341BC /* PBXTargetDependency */, + 2FEBB250F5C82A340FEFCB6170D6886E /* PBXTargetDependency */, + A8229844E49D5B0D49E56E7D250E2A57 /* PBXTargetDependency */, + 7533D96D4521C2F251FB5AA7209F8BF6 /* PBXTargetDependency */, + 61CDE3AD9BC7AA28BEF62550F4E7CD3C /* PBXTargetDependency */, ); name = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS"; productName = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS"; @@ -3010,7 +2941,7 @@ buildRules = ( ); dependencies = ( - F66F1927E22203B8CBD8D3A9630A16D1 /* PBXTargetDependency */, + 345D4295EC6E80B47D6A533EE099C168 /* PBXTargetDependency */, ); name = "Pods-MetaWearIntegrationTests-iOS"; productName = "Pods-MetaWearIntegrationTests-iOS"; @@ -3029,8 +2960,8 @@ buildRules = ( ); dependencies = ( - AD5ADE6638A6DF92B41DAF315B1B8A58 /* PBXTargetDependency */, - F2612DFC1564ADE930C3215603234BC0 /* PBXTargetDependency */, + 9A653109705591055FD5EBEF997DE95C /* PBXTargetDependency */, + D1F1FB74EAA43BE0B20F86D39B7E231C /* PBXTargetDependency */, ); name = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS"; productName = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS"; @@ -3044,7 +2975,7 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 1100; - LastUpgradeCheck = 1100; + LastUpgradeCheck = 1240; }; buildConfigurationList = 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */; compatibilityVersion = "Xcode 3.2"; @@ -3093,42 +3024,49 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 02F8B72FB6E8B42F5D69BC7B6AA2B4C7 /* Resources */ = { + 12D4B625E3BC1609ABC8BB1B93740CB5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 17EBC057BC92603A1001E439704EC412 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 0CC9498288F2D2D8823DB3AE8E46D35E /* Resources */ = { + 1D18BB4CA0ECD260ADD53D6EF75DBA7A /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 12D4B625E3BC1609ABC8BB1B93740CB5 /* Resources */ = { + 1DC3B8FDC7B7E3D24BCB0F3046FC9624 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 17EBC057BC92603A1001E439704EC412 /* Resources */ = { + 2AC08857FB320B46FB22270391F8FB10 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 1D18BB4CA0ECD260ADD53D6EF75DBA7A /* Resources */ = { + 32E0DB1F9779EDA9388124832FEF9221 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 1DC3B8FDC7B7E3D24BCB0F3046FC9624 /* Resources */ = { + 355D667085C76B18F1104B9B6CF0EA75 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( @@ -3149,14 +3087,14 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 482175E6692DCA4222178A88C05B623D /* Resources */ = { + 583FE99366343A2AAE437A99380C5943 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 5BDF15C22DEFD657DC16B457650E1CBB /* Resources */ = { + 59ACC97EC962BE76113F6E696856387C /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( @@ -3191,58 +3129,125 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - DF7EF825EB2DD2343328AB1B9985AD1E /* Resources */ = { + 838EBC4F2BAC4ED32F4F4F9B5A01273E /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - E244DD6A01FC4823C8E7D98C6256AF2E /* Resources */ = { + DCC8AD608A8E2135D0732D46AE3AF585 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - F0249FE6D454D5718B7F7F1F52160B3F /* Resources */ = { + E244DD6A01FC4823C8E7D98C6256AF2E /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - F0E124A4FA91AD44F3B03B4C3C0EDD02 /* Resources */ = { + EBCC7D65D184C942708C9880E6F76404 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - F60AAF1F2F5C5595422B9AF0AD0C23AF /* Resources */ = { + F0E124A4FA91AD44F3B03B4C3C0EDD02 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - F83795A95B03C0C8F572DF2EC3FFA796 /* Resources */ = { + F60AAF1F2F5C5595422B9AF0AD0C23AF /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - FB0107DA7861C6FF47BFFEC431532BC5 /* Resources */ = { - isa = PBXResourcesBuildPhase; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 0B1B20C475A1AE40610844DF9E14CC2C /* Sources */ = { + isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + FE040EA1A5D5FBD711A7E2253A469DB7 /* accelerometer.cpp in Sources */, + 76838C052D2E7DEFA8259CCF459C2A79 /* accelerometer_bosch.cpp in Sources */, + 04B763707CCEC4BA1105A677AF571A1A /* accelerometer_mma8452q.cpp in Sources */, + 6D0BE2BE15FB05768048457A18B50ADB /* ambientlight_ltr329.cpp in Sources */, + 97B41065901A16F836BAFE393E2A9975 /* anonymous_datasignal.cpp in Sources */, + 01AD46AF7B18FE8665526613202E5064 /* async_creator.cpp in Sources */, + A7D80F9013058B754C6ECF8803D13A2F /* barometer_bosch.cpp in Sources */, + 7F46ACE41226B4C2073D0F536FE274D3 /* Bridging.swift in Sources */, + AE35C1459882EC1E5676A2E2FC693093 /* cbindings.swift in Sources */, + 4652C8E6E297298ADF6EBF7D6ACCCC72 /* CBUUID.swift in Sources */, + FEE739991DD736BBB54B577BE73F6157 /* colordetector_tcs34725.cpp in Sources */, + D13C18B3DB889AADC4E7695AD62C7DF9 /* conductance.cpp in Sources */, + 4EAB9009EA3ED5304393860EE323F713 /* datainterpreter.cpp in Sources */, + 6587029C0ECD4A6A140D5C55B81B7BAD /* dataprocessor.cpp in Sources */, + 95676DB998F0B059128A985C825A963F /* dataprocessor_config.cpp in Sources */, + 8BEF57F8238E3F13F6CB21B8EEA311BA /* datasignal.cpp in Sources */, + 3639C170BF72BDA54679BE20B76A7BB0 /* debug.cpp in Sources */, + CDB0A8EFD1DDC0370F227ED821D36803 /* DeviceInformation.swift in Sources */, + 0E1F0D3D18BA15A0EBC692B3D0B13B42 /* dfu_operations.cpp in Sources */, + 9D16F0DB6BF7595AE8F2240E83A63A33 /* dfu_operations_details.cpp in Sources */, + 35839139969BC650DCC6055ADA6B3E54 /* dfu_utility.cpp in Sources */, + AFF5954EC84E82E0701FA72637C9F363 /* event.cpp in Sources */, + F9CD511C3EF02099014B37765C61DA7B /* file_operations.cpp in Sources */, + B2E07A60BCDDC584D5B054E6A2986439 /* FirmwareBuild.swift in Sources */, + 406214F6FD8F09E9EBEDEDAA157CCA22 /* FirmwareServer.swift in Sources */, + BD2E8C21ADE311331D74EBFDAFC12758 /* gpio.cpp in Sources */, + 4CCB7DD2FE46592A81D40231E0960C5A /* gyro_bosch.cpp in Sources */, + 641FA6A3841EDFF619B22D544561E433 /* haptic.cpp in Sources */, + 5F7534BE6DBC6D7CFE6AD2FF929EF056 /* humidity_bme280.cpp in Sources */, + 46262CFB4CDEAB97C9734FCC88764347 /* ibeacon.cpp in Sources */, + E4B38BBFBD02FAE175B85DA21E570BDE /* led.cpp in Sources */, + 9C2474D62A659CFFA82DA110C862122F /* LogDelegate.swift in Sources */, + 9C1A34ABFA33D8B2A9AB00FA53965828 /* logging.cpp in Sources */, + 51DD29EFE882A04DF80D30EFE22E4B12 /* macro.cpp in Sources */, + A6A43F8D016F782088295CF67621FA4A /* magnetometer_bmm150.cpp in Sources */, + 83212826A42FEC58527F1A5AEE5B3BD1 /* MblMwDataSignal+Async.swift in Sources */, + 50F6BB5EDF7E74DED3CCF60CCFE1D562 /* MblMwEvent+Async.swift in Sources */, + 38A6780D715AC8EEDF5A8A63FBB78CF9 /* MblMwGattChar.swift in Sources */, + E9BE1A043BBB61BD6E45C8CBCD9B2DFE /* memory.cpp in Sources */, + F38EDDC06E0E88FF7B31055605FB5666 /* MetaWear+Async.swift in Sources */, + 6FAC135F7B1A3F354CF3530338ADD973 /* MetaWear+Firmware.swift in Sources */, + 64AB594646AB554728422022D75EAD31 /* MetaWear+LED.swift in Sources */, + 4A7CAD61D3789CE0D21122FCDB16AD5F /* MetaWear+Mock.swift in Sources */, + 9315E48B658F4AAB1D85289FC6683EB0 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m in Sources */, + CEFE54A5B9844E369C8B63A01ACE98C8 /* MetaWear.swift in Sources */, + 9ADE63A051AEFE2A87201B2049D866EB /* metawearboard.cpp in Sources */, + 93290F2418FEF2B22FE9DDA21D7C3F79 /* MetaWearData.swift in Sources */, + 617C93CFE7C31A01F0312230F4C1BAD4 /* MetaWearScanner+Mock.swift in Sources */, + 6014FFC969BCADA4D2C0EB59769DEEAE /* MetaWearScanner.swift in Sources */, + F04E88FFD97A7936E27F2AA7B8E5B797 /* miniz.cpp in Sources */, + 6997F01058C9C3DCAAC010B4740364E8 /* MockModule.swift in Sources */, + F83F3888FE72BBA526A1B973823C96C4 /* moduleinfo.cpp in Sources */, + 968314316E5E71D836515D86E391CA5E /* multichanneltemperature.cpp in Sources */, + 0D602DD7A7806EF2F07419DEFC5AF091 /* neopixel.cpp in Sources */, + F5A46590E4817432B685E1D0616161BB /* proximity_tsl2671.cpp in Sources */, + 47FAE6BCC9280F225DE9002DF9CC621B /* responseheader.cpp in Sources */, + AA290FD4EB22EE547C8CBAB3E72DDD90 /* ScannerModel.swift in Sources */, + F84731A99BB57AAB6933D0F0A580C0B8 /* sensor_fusion.cpp in Sources */, + 3D78704A317B1D9B5E5919B22A508305 /* serialpassthrough.cpp in Sources */, + C759CFF8D68E32DD8F3789DE2BE2680C /* settings.cpp in Sources */, + 54D08EA6CE30CCF77FAF6D5CD2B9F1E4 /* String+VersionCompare.swift in Sources */, + DD5E05DE288DC439292BA48BA8B35F57 /* switch.cpp in Sources */, + 841A194D0728E7606D531CA3F1A05E6E /* task.cpp in Sources */, + 9898AD524FAC6440B376CFB86A2E494A /* threadpool.cpp in Sources */, + F1800F1EE6ED6D6CD4CA091628C67136 /* timer.cpp in Sources */, + 8DE57D23078C25BCD80CC203F2B034AC /* utils.cpp in Sources */, + E96BD58330EEDA16927D962297386179 /* version.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ 0D67D570288528561EBA8674131AE032 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -3267,407 +3272,313 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 1A48BD74C9395E8E229BD3BE39EADDFF /* Sources */ = { + 3544CE63F45B4B93587C02D4B3CA618E /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 1CADD7A896823EF5185631C6D57635F1 /* ButtonlessDFU.swift in Sources */, - 735531D156980870A7645451DCECA66A /* crc32.swift in Sources */, - AD0B82CB7D4B5F5986DEAA4FC8478BCE /* Data.swift in Sources */, - B2C1EF48ECD31E16654BC0A75B5DE06E /* DFUCharacteristic.swift in Sources */, - C6079D6D42B7C2F367FE07828465C83E /* DFUController.swift in Sources */, - 9FFBF3B43DEE945F23D3D77DA91ECD43 /* DFUControlPoint.swift in Sources */, - AC7FBD000833CE0AA0780000DF877CAD /* DFUExecutor.swift in Sources */, - 308B17F7F30282DF493B081CC6A5FD8A /* DFUFirmware.swift in Sources */, - 188275890C0D3FCCD5A67D9DD8CC65B2 /* DFUPacket.swift in Sources */, - 9C22643BAAA91B75CCA6B27C4D3E2FB7 /* DFUPeripheral.swift in Sources */, - 14AF0B18A01840828ED5089E3379B526 /* DFUPeripheralDelegate.swift in Sources */, - 0E29E57AF6AC1AD2248240AB57A012EB /* DFUPeripheralSelector.swift in Sources */, - C493373E17CB73BBEA93E5F64C12C67D /* DFUPeripheralSelectorDelegate.swift in Sources */, - A65164131E4320DB3DD1584E83E9289D /* DFUService.swift in Sources */, - 347BB2B062D84D6B7C9B09AFBC09FB91 /* DFUServiceController.swift in Sources */, - 0C88FBBCF68DBA46CCB126C90BD75594 /* DFUServiceDelegate.swift in Sources */, - 032AD90C350C65248D85DD7B25E5EB6E /* DFUServiceInitiator.swift in Sources */, - 5103287D213950F50D47EBD676DB310E /* DFUServiceSelector.swift in Sources */, - E187D829EF2B2402CD757DCBE80B1C01 /* DFUStarterPeripheral.swift in Sources */, - 5FC52D268FF641B1B0E32B8F0ABD7DEA /* DFUStream.swift in Sources */, - 24A23AB2F7913D2EB87D6FD27603B43E /* DFUStreamBin.swift in Sources */, - F8A1B033F66B444C07EB86007CD8EF57 /* DFUStreamHex.swift in Sources */, - 911168D7D46ED8BA905F46FCFC1962F4 /* DFUStreamZip.swift in Sources */, - 728713D831E5C67953D1AE2618596FDB /* DFUUuidHelper.swift in Sources */, - 19432894F6F393BF6771768267E52499 /* DFUVersion.swift in Sources */, - 48EB9E2ADEFB89AB57A7391C6E142443 /* Double.swift in Sources */, - F85E374B772FEAC1A66A8BD7D16ED810 /* IntelHex2BinConverter.swift in Sources */, - 5FC4771416BF2F0BF2EC39721D21B6D0 /* iOSDFULibrary-iOS-dummy.m in Sources */, - 2F22343EC96BC393C5FA93697BBAE4E7 /* LegacyDFUExecutor.swift in Sources */, - BD0ADC1BD42C7848938BAD55D6188199 /* LegacyDFUPeripheral.swift in Sources */, - 337ABFE1F4D627B5183D0E4F51EA5C4C /* LegacyDFUPeripheralDelegate.swift in Sources */, - FE8E8A89D9CC670638401151217C6B9B /* LegacyDFUService.swift in Sources */, - 80CF7D6D10372DBEDD73460E1C0EC1AE /* LegacyDFUServiceInitiator.swift in Sources */, - 44EAA1152D17331DC98B1641AC153A2B /* LoggerDelegate.swift in Sources */, - FDF8F0F97587C116BD5E31F7EB019D2E /* LoggerHelper.swift in Sources */, - DB326AC92EB7EB9211A2F91781039C24 /* Manifest.swift in Sources */, - 441CDA6387C0EEF565E8B8F28331DC75 /* ManifestFirmwareInfo.swift in Sources */, - 3888442616EB83A0FB442B67A69805C2 /* SecureDFUControlPoint.swift in Sources */, - B70303F911F288B8B6A0FE5D784D31E2 /* SecureDFUExecutor.swift in Sources */, - 080AF0D1D25D654E04B7B5A1891C52E5 /* SecureDFUPacket.swift in Sources */, - DB9F68E99658F947BDCD4604BA95555C /* SecureDFUPeripheral.swift in Sources */, - E5D58DCFABE47A3A63B32EEBAB7A72AB /* SecureDFUPeripheralDelegate.swift in Sources */, - A3E475AC83D7DAEF0DCEED394B555B40 /* SecureDFUService.swift in Sources */, - 538E57A469E7D1132B6B6F02A23C9CCD /* SecureDFUServiceInitiator.swift in Sources */, - D0746507FCC6B3E82619FF2FA087B270 /* SoftdeviceBootloaderInfo.swift in Sources */, - C797F038C09DAB332331F0D0F37832BB /* ZipArchive.swift in Sources */, + 501586404F73DC62B61210C361AD0953 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 3544CE63F45B4B93587C02D4B3CA618E /* Sources */ = { + 53AC377F8175A46223227DD50F900562 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 501586404F73DC62B61210C361AD0953 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-dummy.m in Sources */, + 704A3F778A934F2472EC835E996FCF72 /* ButtonlessDFU.swift in Sources */, + D3BB5BE57C0032E4C11C42F6BE9333BD /* crc32.swift in Sources */, + 4D6B560A47E08C3770670D51A25804CE /* Data.swift in Sources */, + B94FCA2E08F181DB148B3F9D5CF556DE /* DFUCharacteristic.swift in Sources */, + 87FBAC409636BB3D059A1FA8D8157FB1 /* DFUController.swift in Sources */, + EE0EA67320A35024F90D5AAFA9EC0FC4 /* DFUControlPoint.swift in Sources */, + A2D8CB45BEC484FDC28BE6A70F562460 /* DFUExecutor.swift in Sources */, + 24688CF4B5BFC10FA2CC799452829A36 /* DFUFirmware.swift in Sources */, + 8EE5A16E9FB4EA2687286F61040579AB /* DFUPacket.swift in Sources */, + 69297B00D475A7B0123C0D6D7CD7CCD4 /* DFUPeripheral.swift in Sources */, + 5D2B4DFB3C84AB2EBEBABD874D6C261B /* DFUPeripheralDelegate.swift in Sources */, + 4719A0A80BF48D30363F717C058E7267 /* DFUPeripheralSelector.swift in Sources */, + 04516D86101442EEB7653E4DDE856285 /* DFUPeripheralSelectorDelegate.swift in Sources */, + A106FD93326552DE2B4EC5F6190123F6 /* DFUService.swift in Sources */, + D01F9FA8A401279792B1A8C95DA8010B /* DFUServiceController.swift in Sources */, + ED03D8EFB165840778709AF726640BF3 /* DFUServiceDelegate.swift in Sources */, + 0B0F24CA86CD28287A05F7E4F686C214 /* DFUServiceInitiator.swift in Sources */, + 0A8C66AE0602BBAC0F56EFF3BF331D23 /* DFUServiceSelector.swift in Sources */, + 6B52516A75A66D6544260E5578B131F8 /* DFUStarterPeripheral.swift in Sources */, + 8536CC729140069321652B98DDD3F922 /* DFUStream.swift in Sources */, + 8D135F92EE68A7E9E36DC0244ED5D0A7 /* DFUStreamBin.swift in Sources */, + 41648BB1ED1A935BDF36055932C4522C /* DFUStreamHex.swift in Sources */, + FD892452E9581BA1E1CDAC50AAE89C4F /* DFUStreamZip.swift in Sources */, + 24B20B06C09356413260CA896A97E22A /* DFUUuidHelper.swift in Sources */, + 20AEBD979A60C765A1D64DCDB5F8D867 /* DFUVersion.swift in Sources */, + 361E62503BE2EE40AC3DFE3EBD8C7F72 /* Double.swift in Sources */, + 581FF2930258BD89700B12E803AEF0D3 /* IntelHex2BinConverter.swift in Sources */, + 833BFB7ECBB6D5C1B2057AB35B52B0D4 /* iOSDFULibrary-iOS-dummy.m in Sources */, + C3B56926AD7F16B8C2AFF85B7BABE9E2 /* LegacyDFUExecutor.swift in Sources */, + 4E41D52E3F432EDA7C954270134BD963 /* LegacyDFUPeripheral.swift in Sources */, + 2B9FA166075DDE593000E1C0AB69D867 /* LegacyDFUPeripheralDelegate.swift in Sources */, + 43FFA63BF489084BE3F0F74C74274472 /* LegacyDFUService.swift in Sources */, + DBE22474D33C394ABA99B1753F97C582 /* LegacyDFUServiceInitiator.swift in Sources */, + FD32D8AE7DA49307CD48CC660A85735E /* LoggerDelegate.swift in Sources */, + 20D81E15DE3D341130BA23A8860664FF /* LoggerHelper.swift in Sources */, + 433C42516CE00AB37754E21F5BD683EB /* Manifest.swift in Sources */, + 3839A38E4982FF357678DAA026E67272 /* ManifestFirmwareInfo.swift in Sources */, + 449B6D2D82FE4CE89EEC0A3A0FE7DA55 /* SecureDFUControlPoint.swift in Sources */, + 6B085112BAD6798C6CDE127ABAECF1FD /* SecureDFUExecutor.swift in Sources */, + 4D3B8C09162F34CF750710FAB82FC090 /* SecureDFUPacket.swift in Sources */, + 9F8AAAD0143D4F0EEAC260090C59E52B /* SecureDFUPeripheral.swift in Sources */, + 8A1E4D473CA78B39413B12A4B1886A8C /* SecureDFUPeripheralDelegate.swift in Sources */, + 8F36298E48181A76A7A39A3BDE20BB36 /* SecureDFUService.swift in Sources */, + FFCAB7D23E8AEB3C929F9FC04861903C /* SecureDFUServiceInitiator.swift in Sources */, + AAA4530DCADC44AE0EF4C3E140C2AFD8 /* SoftdeviceBootloaderInfo.swift in Sources */, + FAC6165D11CF77DB46D99BE08B431BF1 /* ZipArchive.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 39A94AEDBAF79BEC22748DCD2292E067 /* Sources */ = { + 5FE6DB0EA207496BBE5281631D98CB03 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - AA3DC456A3184043ACF9A93876020294 /* accelerometer.cpp in Sources */, - BC508B43C0018E7C55710E543F70E3A6 /* accelerometer_bosch.cpp in Sources */, - 6631A90F61FE28E275B84EF59EA779FD /* accelerometer_mma8452q.cpp in Sources */, - B86EEB4D325EB05D800D1EC7A00FACD5 /* ambientlight_ltr329.cpp in Sources */, - 1ECAE15DEE3FD1676A8943959E89504C /* anonymous_datasignal.cpp in Sources */, - 53B58CE01638361725C6D6CDAD7DF223 /* async_creator.cpp in Sources */, - 23717EDBDE66946CC5ABD25186F96940 /* barometer_bosch.cpp in Sources */, - 1E952BF9706F06DFB81D9EAB50CF6177 /* Bridging.swift in Sources */, - 9A6F94B6A6E6297F0EFBB4BBA3C8F97E /* cbindings.swift in Sources */, - 42D282A333A0D042BD3A0B33D5567B7C /* CBUUID.swift in Sources */, - DB84782D1150C106FFDF5871FE405345 /* colordetector_tcs34725.cpp in Sources */, - 6DB8D54A28C2D885DB64C626F26C60CD /* common.cpp in Sources */, - AD5B208C305A0EF22D7903FFF64D830C /* conductance.cpp in Sources */, - FBC3FCCDEF86C946AFE7E39E616469D9 /* CSharpGenerator.cpp in Sources */, - 5652EAF28961A67935A4D58794FA63BB /* datainterpreter.cpp in Sources */, - 8AC8CADF691259CA357090F5B3F824E9 /* dataprocessor.cpp in Sources */, - 16E1904BB69FE6FD2073EAC3988F1721 /* dataprocessor_config.cpp in Sources */, - 2E2C24531F94DA5B766F87CA8B1BB4F3 /* datasignal.cpp in Sources */, - 4694B1C1CFE06D6715FA86553E59BB2B /* debug.cpp in Sources */, - 6857EB6BF165B523C2B853251CCF0CF0 /* DeviceInformation.swift in Sources */, - 1B3C6EDA792A5929A9D79A718B93CB20 /* dfu_operations.cpp in Sources */, - 5040CA784DF27201EEBBD5F0C70BD649 /* dfu_operations_details.cpp in Sources */, - EF3A748A398DDEEC2E0DEDACAF4AD24C /* dfu_utility.cpp in Sources */, - B4846254F71C4583A921A5511A235D19 /* event.cpp in Sources */, - 44231CFA2D62E08A5696662CB8B566F9 /* file_operations.cpp in Sources */, - CEDD84CCA0498F69C16D2267A817C627 /* gpio.cpp in Sources */, - B1EF93D0DEE708C0E687D236E39A8B89 /* gyro_bosch.cpp in Sources */, - 82FAADC4B6AEC1DC79D34AB75E366643 /* haptic.cpp in Sources */, - 121CE3D082190454BE774638A91B9043 /* humidity_bme280.cpp in Sources */, - DA666289E3AA5470F666BEF965B130AB /* ibeacon.cpp in Sources */, - C158A6C2AEFEB850F911470CC3AF276E /* JavaScriptGenerator.cpp in Sources */, - 8864ADD8424DD563982A26E87ED08400 /* led.cpp in Sources */, - C8124E181BAA74061EFE90C6AE399FCD /* LogDelegate.swift in Sources */, - B993A438129B64CF0E2960DE75F0B491 /* logging.cpp in Sources */, - A27DA1A3FCEDC68D2F68F58288BD83D3 /* macro.cpp in Sources */, - 1C42D298B1810B38EF8942B962BD20B9 /* magnetometer_bmm150.cpp in Sources */, - 741FD18B0865F56C50CA18F676017440 /* MblMwDataSignal+Async.swift in Sources */, - C77E40965F7B880597F05FF883784307 /* MblMwEvent+Async.swift in Sources */, - CD0BEB14777A580B49E9689899DCB69A /* MblMwGattChar.swift in Sources */, - 654533983CAA68AE1692775450809AD5 /* memory.cpp in Sources */, - B9986ED8A04C38F3659E19DDB5139066 /* MetaWear+Async.swift in Sources */, - CF10CC5ECE77A9237B2F5423B84D736D /* MetaWear+LED.swift in Sources */, - 797077F72F2CFDB09A7A1F61B770AC32 /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m in Sources */, - 5ECF35964FFEF36AB9CCD3DB3BB74488 /* MetaWear.swift in Sources */, - 260059DF33C18038565B57D41636D093 /* metawearboard.cpp in Sources */, - F65759A24D22201808A645D31AFD9CFC /* MetaWearData.swift in Sources */, - BFC145230F8030BF4DE7F0E8FCD9B0A8 /* MetaWearScanner.swift in Sources */, - 4E02097259EF9CA0D2DC7799706132BF /* miniz.cpp in Sources */, - 572AC3EEB55914EA02B785C02FA1C996 /* moduleinfo.cpp in Sources */, - 68B002D2945773B0574B1C7623A478D4 /* multichanneltemperature.cpp in Sources */, - ECCADC2D5BA9340742A57723E261B438 /* neopixel.cpp in Sources */, - FA7017AB9BEE677131AE7169B258206A /* proximity_tsl2671.cpp in Sources */, - 472BC998AD8EF60986351D1BD2CB31CB /* PythonGenerator.cpp in Sources */, - BFDFE7B666719136AB925DE93D779227 /* responseheader.cpp in Sources */, - 777439BF8F46CC57F35E6201185BB042 /* ScannerModel.swift in Sources */, - B5462793A724585049DCEFF4BAE2E6DB /* sensor_fusion.cpp in Sources */, - CC419409FE48638E26CF081C974A0CE8 /* serialpassthrough.cpp in Sources */, - 9DD909CD9309B5790D57ED5BF0526324 /* settings.cpp in Sources */, - 1C2D4B3CD377BE734D743D0037859335 /* String+VersionCompare.swift in Sources */, - 85AA10B7785FD166D3AFEA762A1D1A7B /* SwiftGenerator.cpp in Sources */, - 292D328A092F8BFEDF5AAB807F193EBD /* switch.cpp in Sources */, - 385ACA3C7FEE0EDD7DD83B25128433E7 /* task.cpp in Sources */, - 5C83264B240E63DA8FBB2CE4B75ACDE0 /* threadpool.cpp in Sources */, - F56733AF54DC5642779F3F65257572C2 /* timer.cpp in Sources */, - 7261B57C2B8E8DBCF1107D9779C32FAA /* utils.cpp in Sources */, - 71562FFD8C12FDF1978B60393AE5EAEA /* version.cpp in Sources */, + 1EFD82B98118369A8821D338DC1E85B2 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 40B8FDBA598274F8CC505AC2CEA4AC88 /* Sources */ = { + 796F5881AD96CD2CA57DC201EE5963B7 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 3CF4CEF79C228EB2A435E35AAA64FABC /* accelerometer.cpp in Sources */, - DD892482240EDC8423F5D3341CC3CFEB /* accelerometer_bosch.cpp in Sources */, - 3C8E28CCF6A9BA8C16E4C5A41AB0A363 /* accelerometer_mma8452q.cpp in Sources */, - 342787FC1F70B003C274C5B33794B812 /* ambientlight_ltr329.cpp in Sources */, - EDF49FE8F36AE454CE64A5F87B2B98F4 /* anonymous_datasignal.cpp in Sources */, - 6C7D2B2FBBE071A385704C85C325DE04 /* async_creator.cpp in Sources */, - B2B50106670E062A597105B5BFEC5538 /* barometer_bosch.cpp in Sources */, - 7C1BC588855DA6520E54B04D9C608A2A /* Bridging.swift in Sources */, - 91AC75396FE57029698CC2F7D77610E6 /* cbindings.swift in Sources */, - 94A1D9E3E4FDB2F784ABA4D16C43DEC7 /* CBUUID.swift in Sources */, - DCC31370219FF51E63ACF29AB118A5B0 /* colordetector_tcs34725.cpp in Sources */, - 6724AAE499F3043B1EA87C88346D3F4F /* common.cpp in Sources */, - 012B01012542A4CBB87158298D49A506 /* conductance.cpp in Sources */, - F5B015389FF1D05AB43E9DA28518F2D1 /* CSharpGenerator.cpp in Sources */, - 53F9B07D3B24ED26D48BDB6BD539A7B1 /* datainterpreter.cpp in Sources */, - 8CE5F98795C15D2E9AE0FBC38EDD497D /* dataprocessor.cpp in Sources */, - 2D0F244586918C3F6A39CCA821E0C0AF /* dataprocessor_config.cpp in Sources */, - AEEFAD74B9F7BE54BA20672922FB61B1 /* datasignal.cpp in Sources */, - 1A7B4E7FC45FA90D0DD30F0D940FBB4E /* debug.cpp in Sources */, - F78498E278FAAF3AEE2C9403D4E17B31 /* DeviceInformation.swift in Sources */, - 730D6F99EE75836E854A5CCAC22B9403 /* dfu_operations.cpp in Sources */, - A62E76430F1C10F25DFA3D9AC833B94D /* dfu_operations_details.cpp in Sources */, - 56369CD53A39D173A3401AEB41EC4F72 /* dfu_utility.cpp in Sources */, - B05F2A46B68EA620F131D05A8431D1A0 /* event.cpp in Sources */, - ABF1688875AD5A44084F20FB88E90DA7 /* file_operations.cpp in Sources */, - 2D30E37BBB05F6E5EE52C864109DB47A /* FirmwareBuild.swift in Sources */, - 1A98E01F9B9D25C199A6BF3CBCA8557A /* FirmwareServer.swift in Sources */, - 29132300AE6148203E0C2729AA2C8BB3 /* gpio.cpp in Sources */, - 15D53A1770AA72CF04FF651B94F63545 /* gyro_bosch.cpp in Sources */, - 771FEC36B502B1DC50C60978F41AE216 /* haptic.cpp in Sources */, - 69D375F2A849BF9373FE6551BF51772B /* humidity_bme280.cpp in Sources */, - 26B93A39DB6DBB7AD878332626A0B876 /* ibeacon.cpp in Sources */, - D281B43E4BF5A23318C8B34CC565B246 /* JavaScriptGenerator.cpp in Sources */, - 28AA1948C15F28A8B93DD71122D901EB /* led.cpp in Sources */, - 069EAE37E2606DE282CD5FAD098BCB58 /* LogDelegate.swift in Sources */, - CCE14D48B264F002F71AFEE9B68DFEA6 /* logging.cpp in Sources */, - D36C1E42978B57A75A0F94FD2130AAB8 /* macro.cpp in Sources */, - A28897D5B7E6ABBAFBAEAEDEAA82C280 /* magnetometer_bmm150.cpp in Sources */, - CB16E626268E9A409C05FA8CD4C1100D /* MblMwDataSignal+Async.swift in Sources */, - 2B3093F48320EE09AAC65B70C3F78A19 /* MblMwEvent+Async.swift in Sources */, - 96E6D2DACBD45D85A2B17F71ED234377 /* MblMwGattChar.swift in Sources */, - 40229AB80A82AAC04915D9E7158D22C4 /* memory.cpp in Sources */, - D34948C7A95097D458D1BF75219FB6E2 /* MetaWear+Async.swift in Sources */, - BC83A6F7CBAF0DAA200E54D893CE569D /* MetaWear+Firmware.swift in Sources */, - 4D8501DF1BB35763D41F30DDE3A73306 /* MetaWear+LED.swift in Sources */, - C7CB77C4CA6D22238AD774FB5689743B /* MetaWear+Mock.swift in Sources */, - 11E33FD9ACC6CF62AE80A452494679D9 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m in Sources */, - DFB7A90D2517FDA86C0388F92A95A26A /* MetaWear.swift in Sources */, - 947A5BA2B9D514958793256DFD9F85F1 /* metawearboard.cpp in Sources */, - C97C9BEFC76CE330365FECA64436CE36 /* MetaWearData.swift in Sources */, - D544F16A2F4EA6474217584164401012 /* MetaWearScanner+Mock.swift in Sources */, - 51B4FE440E78A79358510DAA40C9AD5B /* MetaWearScanner.swift in Sources */, - 35595B3C00C29CE6E079A0E81C17E1F7 /* miniz.cpp in Sources */, - 895347D5EC33FA6796A037ED304926CD /* MockModule.swift in Sources */, - 938174C63286604B37276B0C53C24976 /* moduleinfo.cpp in Sources */, - 80E37510D2A68AE5AB97BBA53D5B04CE /* multichanneltemperature.cpp in Sources */, - 172113A26B091458004E8C76139B865F /* neopixel.cpp in Sources */, - 966C4097A45E3EC7B84DA0AE19A048A3 /* proximity_tsl2671.cpp in Sources */, - C799407B659F535B187BADB41ADAEDCF /* PythonGenerator.cpp in Sources */, - 5036B9BC274E8B0C182DED918E5FFE2C /* responseheader.cpp in Sources */, - DA0BA96FBE4C30FE7C490744AFB595DE /* ScannerModel.swift in Sources */, - FA1AC83BEA313F5231D1A22DE9DF8BB3 /* sensor_fusion.cpp in Sources */, - 70838D5B656235CB6DF1B3C8C7E49FE7 /* serialpassthrough.cpp in Sources */, - 2968BC36D6BD17ED1B3473B365EFF462 /* settings.cpp in Sources */, - F6CC8F5C1ECDD542E127270FB6DABEB2 /* String+VersionCompare.swift in Sources */, - A705F4529D45553B3FAE4000B9AAD0CB /* SwiftGenerator.cpp in Sources */, - 8F97BF934C618374309585B62A557127 /* switch.cpp in Sources */, - 9FA0CD0897D8242D8E77DADCA8671BFB /* task.cpp in Sources */, - 36EB6DF354242389CF80833E6E8193F2 /* threadpool.cpp in Sources */, - 614E22AE1596BB4B98D4A17A6F7635B4 /* timer.cpp in Sources */, - DC64F62C4B48F921340DB96DE8EC9D62 /* utils.cpp in Sources */, - 9CDA2E36DA0CD2BCD1B5F33A237CEF81 /* version.cpp in Sources */, + FDD99EFFE1EC469B75338ED4F452FFCB /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 5FE6DB0EA207496BBE5281631D98CB03 /* Sources */ = { + 7DCC22220223C0C5D94D98DDEEDD61F3 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 1EFD82B98118369A8821D338DC1E85B2 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS-dummy.m in Sources */, + 1487CDA55700F066A6F326E5AD450FD4 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 716C1241C4C5D47A855CFEC9F8D09690 /* Sources */ = { + 7DED437B9FBA0326F28546A97662A1AC /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - FF5ECDE3099FEBC82CE167472A464B05 /* accelerometer.cpp in Sources */, - EEF9385072F5934435F5AB64EF45E101 /* accelerometer_bosch.cpp in Sources */, - 7F0699DAD8E64CEE03A8A1FBACAFFE92 /* accelerometer_mma8452q.cpp in Sources */, - CFC38370084E6BB3041D4DA073A9B9FE /* ambientlight_ltr329.cpp in Sources */, - 03351672B147CBDEFCFD62387D16B043 /* anonymous_datasignal.cpp in Sources */, - 5E3142A6EC11EB7F74600E077FD6BD21 /* async_creator.cpp in Sources */, - 261E2F3792214C4D434F1E826BFF268B /* barometer_bosch.cpp in Sources */, - D236D689B19D10C2F59BCC1C6690C4D2 /* Bridging.swift in Sources */, - 67E4F1F394AA3F4EEA504DC1DD0446FF /* cbindings.swift in Sources */, - 47D4B15ED860746F0CD77E274445ABA2 /* CBUUID.swift in Sources */, - E935FB9E9488C6879B2AEB8ECCAB4CCF /* colordetector_tcs34725.cpp in Sources */, - 72588964D8A3E73418C3574AA4625199 /* common.cpp in Sources */, - 40B56B448EC6A6EAD2EE9DB98160B66B /* conductance.cpp in Sources */, - BF83787F96799A45A45B1FABDC52B8C2 /* CSharpGenerator.cpp in Sources */, - 6306891733ECBA778D442410C7819E45 /* datainterpreter.cpp in Sources */, - 816B88E736DCFFE2A081EE0039C9AE70 /* dataprocessor.cpp in Sources */, - DD4C6800D6538DB9EC454347F385EE00 /* dataprocessor_config.cpp in Sources */, - FD955F3FF63408645E99B278B1762E0A /* datasignal.cpp in Sources */, - 2F5B3DDDDE2CE882B690B114B82955E5 /* debug.cpp in Sources */, - B7A503FDE7EAC9604C952B224A199F44 /* DeviceInformation.swift in Sources */, - 596B2B65357FC1D22F21CC14FC9128E6 /* dfu_operations.cpp in Sources */, - 411855DB839A2FA0F451F55F4FFDFE9D /* dfu_operations_details.cpp in Sources */, - 994B8516758EFA2B44BE235D6A2A87D7 /* dfu_utility.cpp in Sources */, - 9C3E15B210514C397386139A6C0517D3 /* event.cpp in Sources */, - 17A2DFBBB983925803335F35C3CFDDE7 /* file_operations.cpp in Sources */, - BFDF22FB742012E5700994D1C2553DE6 /* gpio.cpp in Sources */, - 00A82355034F26A4E7961A3AF89E1E45 /* gyro_bosch.cpp in Sources */, - 093FC2EF5E8C383EC4AF8679223C2119 /* haptic.cpp in Sources */, - 56EE5C0F33D84D5C6A26E559A033D0B5 /* humidity_bme280.cpp in Sources */, - 20BAA558AF83D38B7956AB017E79D089 /* ibeacon.cpp in Sources */, - DD2457A5153A813B135AF112C1B6CCDB /* JavaScriptGenerator.cpp in Sources */, - DC79127714493BA1091228E5D6D6218C /* led.cpp in Sources */, - 5EC11317DF6D83502516A73E16FF279F /* LogDelegate.swift in Sources */, - 21CEE4FD5D05B2A684D87854BEA96076 /* logging.cpp in Sources */, - FD67251885303BE1F329465F700C7010 /* macro.cpp in Sources */, - 17C0653B080B861ACBD6C6078FC8B5AD /* magnetometer_bmm150.cpp in Sources */, - 6270EB3BDC0A42EBECD688410FCE6D58 /* MblMwDataSignal+Async.swift in Sources */, - 7A02A8B89A814A1EDF029AF046DEE3B7 /* MblMwEvent+Async.swift in Sources */, - 92BB8641DBDC196D136EE749FEAD441F /* MblMwGattChar.swift in Sources */, - DD281E84F4BA2B4FA140F3FFA35DE28D /* memory.cpp in Sources */, - 3ADDAF25F52F7F8AE55FEBA3951FBC8E /* MetaWear+Async.swift in Sources */, - 92BFBE5048C1AF55A728D2E6A085DE79 /* MetaWear+LED.swift in Sources */, - AC7517337C6231AC406982FFD82253DF /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m in Sources */, - FA6DB392671A30FE07ACF393B6053C95 /* MetaWear.swift in Sources */, - 4B4A77925C01BB8EEBC6A24D40D85FED /* metawearboard.cpp in Sources */, - 3F66629C41DD84033EC1806492DC139F /* MetaWearData.swift in Sources */, - A758F76254D736A71B87F785E55EDAB3 /* MetaWearScanner.swift in Sources */, - 6B9DFD70B46996F96C59208EF3F12668 /* miniz.cpp in Sources */, - CC1F26589EFC481F3C3C3C005508D143 /* moduleinfo.cpp in Sources */, - FEE445EF8846C7B4FFCAEB050873DB67 /* multichanneltemperature.cpp in Sources */, - B2E54F2688DDF34A1A01DADFDC180914 /* neopixel.cpp in Sources */, - 9A69153E0A2554072903708090DA6D71 /* proximity_tsl2671.cpp in Sources */, - 00ECB95D9E1BE0B3A6969D10E551FD83 /* PythonGenerator.cpp in Sources */, - B3CDB8F487FBE468BC06F6D4099BC3FE /* responseheader.cpp in Sources */, - CF9AB22BAF140F99F510FD93DEA501E0 /* ScannerModel.swift in Sources */, - B06F042F8CC36AEF18F8E151A9C20A56 /* sensor_fusion.cpp in Sources */, - 488DDB8D9BF32B5B77710336DE4B352F /* serialpassthrough.cpp in Sources */, - F4A12C8A6329FADD5A332FE3798F981C /* settings.cpp in Sources */, - 95B8233C27C01902BBE1F08E8C77855B /* String+VersionCompare.swift in Sources */, - 9F50C2AC9D099359C885BEC5E3EFA855 /* SwiftGenerator.cpp in Sources */, - A20E9D62144F5FF38D5ABA566954F042 /* switch.cpp in Sources */, - 7AEA8B8F8198FAB859EDE3F61DD7A7E0 /* task.cpp in Sources */, - A49A81968CD3E8F51F3C46A2A6F7BC8A /* threadpool.cpp in Sources */, - 5D6135675F984E450A947ACDE9ADD921 /* timer.cpp in Sources */, - CE91AD2F62B01F558ABF753C68EE6224 /* utils.cpp in Sources */, - A0AB5C2107D30D947314FF5F3DE9C058 /* version.cpp in Sources */, + 6F6195AF9586831877A9E69DB98976C5 /* accelerometer.cpp in Sources */, + 213A585F22B024A32506A425EBA8D0D3 /* accelerometer_bosch.cpp in Sources */, + F7402CC09B9F5E8A2B22653D4695A8E8 /* accelerometer_mma8452q.cpp in Sources */, + C254ACFF87B1A5D5C75D609D9DACC691 /* ambientlight_ltr329.cpp in Sources */, + 2DA05BE2B17AA16857A8E6564263D090 /* anonymous_datasignal.cpp in Sources */, + 1B9E999471EF4743590F8A43BC49A618 /* async_creator.cpp in Sources */, + C0CBBCC811B4175420877ADD060632C7 /* barometer_bosch.cpp in Sources */, + EA2DADE24A623F502F8701499C459C59 /* Bridging.swift in Sources */, + 27021D0DF0BA13AAAEA7B952047BDF05 /* cbindings.swift in Sources */, + B8D2A72E1BFF34120452AABB2E0650F4 /* CBUUID.swift in Sources */, + 77A2F52ED02CBCF7AC0BD545CAE42D6A /* colordetector_tcs34725.cpp in Sources */, + 74A85E9B84E84651AA4116DAADDE9607 /* conductance.cpp in Sources */, + 5E405324B54BE1E872BC62844D8C4902 /* datainterpreter.cpp in Sources */, + 8647ABED018117DECA49BA3FCF175295 /* dataprocessor.cpp in Sources */, + 544C1B20933DDD988FA6BFD263BD7150 /* dataprocessor_config.cpp in Sources */, + 0F6B7F2BE1AA107C6237CF897A0E2374 /* datasignal.cpp in Sources */, + C244271D67D4377EDB6114F96EE12CE2 /* debug.cpp in Sources */, + 36752C7C4EF3146F22BDC09D52BED99E /* DeviceInformation.swift in Sources */, + 838BD9F46825BDEBE0C5218C94D1035A /* dfu_operations.cpp in Sources */, + A95FF357D09781C6DBA8454617466DCA /* dfu_operations_details.cpp in Sources */, + A7DDEFED496098EC1E750CE4DDD29121 /* dfu_utility.cpp in Sources */, + 4E044415DD2898CC93969DA2ECAC55DB /* event.cpp in Sources */, + 667D255467BB905CF19899AA65902B0F /* file_operations.cpp in Sources */, + 322C17E5837160838F5BD05FA58BF301 /* FirmwareBuild.swift in Sources */, + 597494BE77317E435B93F1B6A2810899 /* FirmwareServer.swift in Sources */, + 830481C81AF1AD3D83B3BA9DD211C49C /* gpio.cpp in Sources */, + BDEE1AD9CE4C0EC2BE82B85CEBCADF16 /* gyro_bosch.cpp in Sources */, + FB8715DD5DA3B7924CA05A6314CA9F81 /* haptic.cpp in Sources */, + A3E5A9CFC4F46BD277518C9C48D683D5 /* humidity_bme280.cpp in Sources */, + 0E5DC1CC1F3A25E8392E6F509FC578E0 /* ibeacon.cpp in Sources */, + 5050E251923D8E2863BB17EAEEA6F883 /* led.cpp in Sources */, + 7EDE2A9943EC2E5A26FF018BABF21308 /* LogDelegate.swift in Sources */, + 046E3E78DF3DA4E10DEC7A4780DF52A7 /* logging.cpp in Sources */, + 509539D87C172E01C442F4888FE53C33 /* macro.cpp in Sources */, + 94C54CC90AE2A4B383BB00AB65A3051E /* magnetometer_bmm150.cpp in Sources */, + B2BD0B38DFFA9D119A1414E8D269D250 /* MblMwDataSignal+Async.swift in Sources */, + A00CB1113E6E6062FC9579D92637C8C2 /* MblMwEvent+Async.swift in Sources */, + 77A9FDE4889E6D6FD2E98A67FA63E8AD /* MblMwGattChar.swift in Sources */, + 8F6C88BFEB2B678EC7E97B556B52FB9D /* memory.cpp in Sources */, + EE3DEA5141A96AC54BAD316D3C0F387D /* MetaWear+Async.swift in Sources */, + 788FC9624C1C5CB244D41EF871295909 /* MetaWear+Firmware.swift in Sources */, + A9671E13B50DD0DF77E292251F0A92D2 /* MetaWear+LED.swift in Sources */, + 026D8CF7C9F62B9CFE9096FC01DC9C08 /* MetaWear+Mock.swift in Sources */, + E14ECECA57D8F282865443B9D523AD28 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-dummy.m in Sources */, + BC2EEC962F9E3C2984A15120F2084C83 /* MetaWear.swift in Sources */, + 801E16CFE070E490FF9A82BF8733522C /* metawearboard.cpp in Sources */, + 8BDE12C672D8EFD2CEBC1FC57E800116 /* MetaWearData.swift in Sources */, + F4EC53A68192A50191E672787CB3ABC7 /* MetaWearScanner+Mock.swift in Sources */, + 9744A22E97B1C093DDC6D8532020CE9B /* MetaWearScanner.swift in Sources */, + BD8ECE803F899394FD99FC338D3401EA /* miniz.cpp in Sources */, + 0C108E89FBFF5D78BDD35FA0503B93C5 /* MockModule.swift in Sources */, + 2181D3C3F1164726619280DADACE1D37 /* moduleinfo.cpp in Sources */, + 18746315DEC08998CA60E6F187AA223E /* multichanneltemperature.cpp in Sources */, + 843D46D8324611B56A91715BEDCA9E63 /* neopixel.cpp in Sources */, + A80FEF9D0DDA062F50148870C8A3682A /* proximity_tsl2671.cpp in Sources */, + D0713114804939CF12F191B98B40FD6A /* responseheader.cpp in Sources */, + 8A705591318DB1F4E505D66C91EAEFB0 /* ScannerModel.swift in Sources */, + 616737B86B49C1EA1806E8A5EA93132C /* sensor_fusion.cpp in Sources */, + 3736D133B4AA89CE1D688E2024FA810C /* serialpassthrough.cpp in Sources */, + 0C10B294F0BB0109DAE218DDAF02A0C7 /* settings.cpp in Sources */, + 021717E57B0AE1B56DBC0633381DB387 /* String+VersionCompare.swift in Sources */, + 3B4F26E774F642036ACD94B531A5D15E /* switch.cpp in Sources */, + B06834AAE88D58104299455C19E4BC9F /* task.cpp in Sources */, + DAF2B9708569ECB7BB42513B27F0FD84 /* threadpool.cpp in Sources */, + 50016CFC2663A5E09A9621242FC520E1 /* timer.cpp in Sources */, + C4C85730087FD8F7AF411B59BCB0853D /* utils.cpp in Sources */, + 4564C0EFC0B72E29E5A5E7003B57DC54 /* version.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 71C033570A17242F42A504C15BF12409 /* Sources */ = { + 83B04911D37997A48B52272C123D2331 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 5FDC7FDB83669C1A6FAF361A010DA604 /* Archive+Reading.swift in Sources */, - 9D14B66E82F3275CC7E8528B426A98DB /* Archive+Writing.swift in Sources */, - 33100723B5271F7198C07886C025E42A /* Archive.swift in Sources */, - 956C38486C6F0DF54D466808AB391974 /* Data+Compression.swift in Sources */, - 0581438223EEBD568ADA85ACD5FF8778 /* Data+Serialization.swift in Sources */, - EE15B6389BC5DB5DB8C78B3F5114A756 /* Entry.swift in Sources */, - 4B5A2E535E4D34B20EA0A82FBA645094 /* FileManager+ZIP.swift in Sources */, - 7C71B5D451BEED1E9E6F2AE6A903D135 /* ZIPFoundation-macOS-dummy.m in Sources */, + 7970FBDD5904CCAB1E2A82A9EB7C9FE4 /* ButtonlessDFU.swift in Sources */, + DBE4DA3DF72C420319A95A689707AAF2 /* crc32.swift in Sources */, + 1DB4558E701401C9CB2E6A1641701A32 /* Data.swift in Sources */, + 6AC7B87740031333EC0820C797BFE5B8 /* DFUCharacteristic.swift in Sources */, + 6223579A2034450902C9CE66A004E8F8 /* DFUController.swift in Sources */, + B2F2509775C17BBCD10A40DBF27FB5C5 /* DFUControlPoint.swift in Sources */, + C3BBF29D2646236D6EEC7AC34BED516B /* DFUExecutor.swift in Sources */, + 34D2166EBBA5620E0B8C0606D1176817 /* DFUFirmware.swift in Sources */, + C73B10A8E8D6D128C626534667A46866 /* DFUPacket.swift in Sources */, + D7D4F746850286F22D19965D67163BB1 /* DFUPeripheral.swift in Sources */, + 85B6436FB14742C8B7F80D59E38787AF /* DFUPeripheralDelegate.swift in Sources */, + 9D9588222E17B2D9EA797817D11866F6 /* DFUPeripheralSelector.swift in Sources */, + F4F9CE0A10B3D5542268B4EA769119F3 /* DFUPeripheralSelectorDelegate.swift in Sources */, + 29F9C9652FE1D3A8BE4C9857C5731D76 /* DFUService.swift in Sources */, + 4116240A34CFAC833599E02CBC42F1E0 /* DFUServiceController.swift in Sources */, + B41E8E4E14769038BEE490D066EBC478 /* DFUServiceDelegate.swift in Sources */, + 0482BE2A682117148EBB773E38D0C092 /* DFUServiceInitiator.swift in Sources */, + ABEE79DEB15DF4970F49D785FD506CC4 /* DFUServiceSelector.swift in Sources */, + 76BD642BFE02E8CB583E9C6401951652 /* DFUStarterPeripheral.swift in Sources */, + 35A5230890F7C81159165C42EA4D753D /* DFUStream.swift in Sources */, + 7022E0349DBAF9D5F0E70BC1C41E197E /* DFUStreamBin.swift in Sources */, + 7DD0D512BFB72FB217F1930E8CCCA52E /* DFUStreamHex.swift in Sources */, + 863A8276D07FB674582A53BED2539587 /* DFUStreamZip.swift in Sources */, + 7B416DE9DD336432B92CBBF072BF08D4 /* DFUUuidHelper.swift in Sources */, + E254D74E47A6D6FDEBA65D2FAF158557 /* DFUVersion.swift in Sources */, + 2CE2125F9A36FDBCD0DA30E2B74DD53D /* Double.swift in Sources */, + 49585F056A2E9FAAEBCBEAD7565E1AE1 /* IntelHex2BinConverter.swift in Sources */, + 792A3129D4889BD9478F7860C21540BF /* iOSDFULibrary-macOS-dummy.m in Sources */, + 714D5465E5F81C7C3F9B6F7DB15068B6 /* LegacyDFUExecutor.swift in Sources */, + FA9F1794745CC192928270CDCAC2F868 /* LegacyDFUPeripheral.swift in Sources */, + F533A43237E3E202ECB2ED18CF072C37 /* LegacyDFUPeripheralDelegate.swift in Sources */, + 97FD42268DFBB7D5A1E91A208A904B36 /* LegacyDFUService.swift in Sources */, + 5CD5D9103A26024D282BA4D019EE5778 /* LegacyDFUServiceInitiator.swift in Sources */, + 129BBF8CE4F02F0E56C919F6A6199DE4 /* LoggerDelegate.swift in Sources */, + 8B18211BB556E6983DD3D40B22B77245 /* LoggerHelper.swift in Sources */, + A404F6AFE960925F82FC6696B952FB3A /* Manifest.swift in Sources */, + 0556ABB6371299E202F942E90D449A09 /* ManifestFirmwareInfo.swift in Sources */, + 3A47FC05E198AFD9C184425199A22C32 /* SecureDFUControlPoint.swift in Sources */, + 34138906B9D794D6AC56BD2E080285E5 /* SecureDFUExecutor.swift in Sources */, + A13BFACBCB78A55E8305C49BD0C99830 /* SecureDFUPacket.swift in Sources */, + E707818F63B93F44F35177E686B26BC2 /* SecureDFUPeripheral.swift in Sources */, + 0E43178E7D27E6304DEFE68DCCF063CF /* SecureDFUPeripheralDelegate.swift in Sources */, + 02BE4B231339295098C7331807465F26 /* SecureDFUService.swift in Sources */, + 0D1C5418FAA82415F24CC468476B7407 /* SecureDFUServiceInitiator.swift in Sources */, + 1372F0E76D14B60F164851F9817FA119 /* SoftdeviceBootloaderInfo.swift in Sources */, + CAC718DF77A83AD76672186346F2F543 /* ZipArchive.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 77C61F9A9D4702C968DB7CD10CB18CAD /* Sources */ = { + 8C79D62E27A62D21A79446FD664305A4 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 3C965716FF953D89F35CF59126237A50 /* accelerometer.cpp in Sources */, - 8DEFC823822730871231F6CCEA0A1880 /* accelerometer_bosch.cpp in Sources */, - 6533E8F44A82D67EF9ECC6F9CBFB57ED /* accelerometer_mma8452q.cpp in Sources */, - EBEBFD91F79EC1D2B6752E450DBC112A /* ambientlight_ltr329.cpp in Sources */, - CB0C5EBE0273D65A11DF2E441518732C /* anonymous_datasignal.cpp in Sources */, - 6E1C3A0A127DBF0C59643863E01B8C64 /* async_creator.cpp in Sources */, - 732B7286A2F03F048EF8FE2FE57CCB1D /* barometer_bosch.cpp in Sources */, - A0E6BFB8BB7C5506226DCFAC65AE894D /* Bridging.swift in Sources */, - 9C3406F2A86B170F7981D5E7EA225A08 /* cbindings.swift in Sources */, - 06709CCD489C7FDE4DE94255D49DE405 /* CBUUID.swift in Sources */, - E32B4AAA2A4370ECE632AD00BC598CE0 /* colordetector_tcs34725.cpp in Sources */, - D29F777663A6514EC2500CF18FBFF3CE /* common.cpp in Sources */, - 904C09BA1550659B7F1F7A59D5E13EFD /* conductance.cpp in Sources */, - 0B27031AAACDA81E8E849E219A1F4CDE /* CSharpGenerator.cpp in Sources */, - D3A6BE91393D5FBB0506700791D0A188 /* datainterpreter.cpp in Sources */, - 85DD21C28C500B7B461FB8A78537C195 /* dataprocessor.cpp in Sources */, - E179EA57EE13138294FCDC8F041E9200 /* dataprocessor_config.cpp in Sources */, - 417668ECDFFE05C356D2F2C98E6FCF2E /* datasignal.cpp in Sources */, - 5B008EC07535202F35B7EBAE64EC8AAD /* debug.cpp in Sources */, - CB1350F27E336490823BD587185AC1DE /* DeviceInformation.swift in Sources */, - 46EACB73E7AA6910B55E4F2B1E2DCF8D /* dfu_operations.cpp in Sources */, - E61E48D565CA7D1251666921044E0023 /* dfu_operations_details.cpp in Sources */, - 72845BD38C34D42F747AF687E5CC51D5 /* dfu_utility.cpp in Sources */, - AA7463920DDA1674EB4887984C87C1E3 /* event.cpp in Sources */, - B0B9C4AE34FEC3A2354D7A0EB4D056E1 /* file_operations.cpp in Sources */, - 117E14EB164B7AF6F08D59EE5CA9F5F3 /* FirmwareBuild.swift in Sources */, - D6228F29D7BA7EC921D3B408E3AA1B2E /* FirmwareServer.swift in Sources */, - 3CCE7FE57D2900872C671C3C89299B68 /* gpio.cpp in Sources */, - D9F84B12B689E30F40E573EBA21F6F55 /* gyro_bosch.cpp in Sources */, - CE504D2DACDEFD0E36CDEEE2788210B2 /* haptic.cpp in Sources */, - C433FB4CBD429C9314FFA6630097FC31 /* humidity_bme280.cpp in Sources */, - 27E5E1FB12794AE58BCC10FE671B3FB5 /* ibeacon.cpp in Sources */, - 03CFA0B8079E6576425F4835DDE77ED0 /* JavaScriptGenerator.cpp in Sources */, - 771BACA6A2B750B6609346439736FC2A /* led.cpp in Sources */, - 247DF9AD5289D103B7F22A2F5A930A27 /* LogDelegate.swift in Sources */, - 2674F1682601B71874AE8D8CC995E2F8 /* logging.cpp in Sources */, - 064CE382AE40C174C1DC8BA796B5AE05 /* macro.cpp in Sources */, - F89FF8564BE515E32A9E4070451E8754 /* magnetometer_bmm150.cpp in Sources */, - F75C621B8FFA6B0398E95DE3B2260F9F /* MblMwDataSignal+Async.swift in Sources */, - 4A7416818F69F179DEB912E1E0387A97 /* MblMwEvent+Async.swift in Sources */, - 410F5DFCFD4E62BCF79717F6687AD971 /* MblMwGattChar.swift in Sources */, - 58692948A131C4CD93CB5B896839C0D2 /* memory.cpp in Sources */, - 857853F39816FEACB8D3C0E57107EFA0 /* MetaWear+Async.swift in Sources */, - 22419F8867C810F51EF0CC7AF432FB83 /* MetaWear+Firmware.swift in Sources */, - 3A8706725957E819D8DC3615F70A46C1 /* MetaWear+LED.swift in Sources */, - B3B679E3C1B86869166B297890624A5B /* MetaWear+Mock.swift in Sources */, - 093DA195BCD14D219407DA9BCE156938 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-dummy.m in Sources */, - 27FC097670EF6169E41D06FAE06F663F /* MetaWear.swift in Sources */, - D5C1D44CA11068BFB66A2403185B8E11 /* metawearboard.cpp in Sources */, - 045BA212BE52B8EDE106B91E414DB964 /* MetaWearData.swift in Sources */, - AE86ED24982F1028DD71C5EE416BDCBA /* MetaWearScanner+Mock.swift in Sources */, - 1C5D66653EB9C9204FAB73D5DB0F3EFD /* MetaWearScanner.swift in Sources */, - 135DD576FCB7F363D39568A049B0AFBB /* miniz.cpp in Sources */, - C35A4A3DE2DE3C77DDAA685D72FE1C1C /* MockModule.swift in Sources */, - DEB8D4240C6E91F02C1B14E5BBBC5551 /* moduleinfo.cpp in Sources */, - 330A63C562FA1E5B405D7E923242BA00 /* multichanneltemperature.cpp in Sources */, - 8E402F1738B72CE43094753C240DB916 /* neopixel.cpp in Sources */, - 43E82F86E8A7615D81CFCD92A5CB798B /* proximity_tsl2671.cpp in Sources */, - 1A28AB5C7E329BE1AB1AC09F80307C29 /* PythonGenerator.cpp in Sources */, - 31B350AF75DC001266B48EC6C6993119 /* responseheader.cpp in Sources */, - 44285E104F9F75358A972F911E17CF03 /* ScannerModel.swift in Sources */, - EEC6CC69EE2C35A01AF0B00A1E0AA951 /* sensor_fusion.cpp in Sources */, - 4DD385F0EE9337783A3DB10D34B07ADA /* serialpassthrough.cpp in Sources */, - E2222C652943059B25FE74A766BF2CA4 /* settings.cpp in Sources */, - 3C2AE8F311EB26FD27E7E2C7A67D53BB /* String+VersionCompare.swift in Sources */, - 28165A59FF99E7B34602554A862862FD /* SwiftGenerator.cpp in Sources */, - 336FEFCF9EE2E66243E6A6278ED6EB8C /* switch.cpp in Sources */, - 521AA91B3FB3349AACFDB81C7B28CB17 /* task.cpp in Sources */, - 8D5758068C67709E82B54A8974B68A82 /* threadpool.cpp in Sources */, - 1CB7EF48662BF5C27BDE484D646E0191 /* timer.cpp in Sources */, - 874C6150F3EFD75188A8A5936EEE0F7A /* utils.cpp in Sources */, - 05DA9279F033674F3AD45EAA20C12B06 /* version.cpp in Sources */, + E25A8AE2CC1C25E8091D8ADBF294193C /* accelerometer.cpp in Sources */, + 3C6DCCAFFD7DED5144107CD2405909FB /* accelerometer_bosch.cpp in Sources */, + 36570CDB3CBA7FF4D0794AA65C7F44EE /* accelerometer_mma8452q.cpp in Sources */, + 73C12B397A9503E0CE7E2829A587E0C9 /* ambientlight_ltr329.cpp in Sources */, + 66CB0C4AD53C4E4C78F60AEB105D81A5 /* anonymous_datasignal.cpp in Sources */, + D03F856B69ECCCC338A35F73F8F4E3E2 /* async_creator.cpp in Sources */, + 483A304918362DDC911114B349018B67 /* barometer_bosch.cpp in Sources */, + A5C926E8293C69E09622B83268E631DC /* Bridging.swift in Sources */, + 07322D9EAC2DCA68C1BCA8CAE4F2B03A /* cbindings.swift in Sources */, + 8B4E6A1D8AA5603CCD58F2FB67A0D8E4 /* CBUUID.swift in Sources */, + 8D45522067F31D7C6875F640DCD93250 /* colordetector_tcs34725.cpp in Sources */, + 8186ABA8A13018BA908E84DEA976DE23 /* conductance.cpp in Sources */, + 2BDD154014295070CD0BB00D69EC59BE /* datainterpreter.cpp in Sources */, + A2154D3088857BB5850BF6928B1605D6 /* dataprocessor.cpp in Sources */, + 3335DCC77261FD1EB46CF4F44ABC385E /* dataprocessor_config.cpp in Sources */, + CC39DFF49A6E53E6B3A163FE5B41B5CE /* datasignal.cpp in Sources */, + 3C463BC5B4D079A60442247C207C64CF /* debug.cpp in Sources */, + C949D06346AF330D88D31B60F253321C /* DeviceInformation.swift in Sources */, + 03181B22BDD0C017D13C7F3040654259 /* dfu_operations.cpp in Sources */, + 1C0AFF10495A592C709D320057676484 /* dfu_operations_details.cpp in Sources */, + 6766D3E742D16F2DF2E26E0028606E6F /* dfu_utility.cpp in Sources */, + 7BF73B872E8B7CF7602736962C5BEFCD /* event.cpp in Sources */, + 44D307C513FB40C570FA1D1EE381D962 /* file_operations.cpp in Sources */, + D4AA2193E0B8A167E79A6DBDFBA7E2F2 /* gpio.cpp in Sources */, + B03F4021980914FA6AFA475CF6691A95 /* gyro_bosch.cpp in Sources */, + 00E32E8A443F8A3AF0D0236B71141EAA /* haptic.cpp in Sources */, + 78FFF9172353FE9D9841C839FA134639 /* humidity_bme280.cpp in Sources */, + 34669597F64A6CE5E6CAB296721BB8B9 /* ibeacon.cpp in Sources */, + 9029272896277B960AEE9A4453E5AA17 /* led.cpp in Sources */, + 66868F4C5D1F5F1526F924094BEE9272 /* LogDelegate.swift in Sources */, + 738018CECEEA010C7743FAEF54081CF9 /* logging.cpp in Sources */, + E29F48BEE4D2D2CF137B7EF46BF85C32 /* macro.cpp in Sources */, + 632627A60D4942306F641B788D63F25E /* magnetometer_bmm150.cpp in Sources */, + BE91EA11B507CB3B3F04E9FEAA70B0C1 /* MblMwDataSignal+Async.swift in Sources */, + DE0F7209DE97126D255FA8712BABE0EF /* MblMwEvent+Async.swift in Sources */, + F3146E1A998FB0A82E7553E6F78AE07F /* MblMwGattChar.swift in Sources */, + 5EBA78EFD9EBC6F038E3A8EA5A8F1CA1 /* memory.cpp in Sources */, + EA4D60E30BF84566AF91EDE71A738577 /* MetaWear+Async.swift in Sources */, + 4260F321E71CBA3075FFDC6AA20F1627 /* MetaWear+LED.swift in Sources */, + C5EAA145A82FFC73A1A3594334A346E6 /* MetaWear-AsyncUtils-Core-UI-tvOS-dummy.m in Sources */, + 274FE3163989CAA59B484249A9EFA0F7 /* MetaWear.swift in Sources */, + 2819B8C5B327749AD70B48033EDB1131 /* metawearboard.cpp in Sources */, + DA971ED3470661DADAF8096E988FCE41 /* MetaWearData.swift in Sources */, + 5F63BA7C90A4E68EE7B9BF78E0F98112 /* MetaWearScanner.swift in Sources */, + 68799688A45609D145BFACA87BF44843 /* miniz.cpp in Sources */, + 9A0AA2866338858D724FB9494CA10727 /* moduleinfo.cpp in Sources */, + A19D9982D73324048B2AB3A4EFC94464 /* multichanneltemperature.cpp in Sources */, + 834451418C6503DF26B4BC6E1ECC6469 /* neopixel.cpp in Sources */, + 0822C6349344E3701C73A27AD7F55B3C /* proximity_tsl2671.cpp in Sources */, + 45EC11E2F398BCC6BEA907D29DA2E5C8 /* responseheader.cpp in Sources */, + D03590221FDFC80A4E795C7D20768AF2 /* ScannerModel.swift in Sources */, + DC19935EAB0D9074F5BC638FFE7CD914 /* sensor_fusion.cpp in Sources */, + C77839149253FB60FAED06570F51F19A /* serialpassthrough.cpp in Sources */, + 6042E45E8B9E475272CE5F40485DED13 /* settings.cpp in Sources */, + 21A49072C92B27E5138FE43F37D2E2CB /* String+VersionCompare.swift in Sources */, + 65495A5E4040FA99F567D5B81A4E48CA /* switch.cpp in Sources */, + BF062057B2471737A8B7B6F32CF0DE2B /* task.cpp in Sources */, + AC28190F1925E0DB7E5D5E4A046D2383 /* threadpool.cpp in Sources */, + 6305895C390D4E0A6EE6AAAB791A6EDD /* timer.cpp in Sources */, + 336729F537CDAAFD63FA014948356178 /* utils.cpp in Sources */, + A6F15ADEB7610A4C2E36143217900482 /* version.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 796F5881AD96CD2CA57DC201EE5963B7 /* Sources */ = { + 8F679A50E37B3AD0410090B374AD6D9B /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - FDD99EFFE1EC469B75338ED4F452FFCB /* Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension-dummy.m in Sources */, + F10D1E76041102270A9B10555C4C521B /* Archive+Reading.swift in Sources */, + 1973FA877A74D15C0A06F194EEBBE235 /* Archive+Writing.swift in Sources */, + 8AF8AA6D6E0954EADB6F03BC19833E12 /* Archive.swift in Sources */, + DA010432F37EDDF11CC2CBDA0149F324 /* Data+Compression.swift in Sources */, + E85B84B8C6BB5588F426295CF0994EFA /* Data+Serialization.swift in Sources */, + B3F63F0EA82A9A2350C5E5954A356D8D /* Entry.swift in Sources */, + B43FD7E59B13E6525D57EDB5E6F41595 /* FileManager+ZIP.swift in Sources */, + CFF95046998A80B26F33641540178714 /* ZIPFoundation-iOS-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 7DCC22220223C0C5D94D98DDEEDD61F3 /* Sources */ = { + A630D0B65CC13D35B771E4506C4581FF /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 1487CDA55700F066A6F326E5AD450FD4 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-dummy.m in Sources */, + C3DDC49797CF018197E45BDB6DA05D8F /* Archive+Reading.swift in Sources */, + E9AC708D8ED10F0D6C6CA9B88928AF80 /* Archive+Writing.swift in Sources */, + 3197A95CCFC61C2C41152F8D985617BF /* Archive.swift in Sources */, + 48E48C8EA9C15AB2FB8A677487EE583D /* Data+Compression.swift in Sources */, + B4C726450D0A751C4FEEF89D6B7213C1 /* Data+Serialization.swift in Sources */, + 98DCA52F9CB35851F4A9D63C2C6CA78B /* Entry.swift in Sources */, + 9563B390C068D93DE9B9FBDC051D9EA6 /* FileManager+ZIP.swift in Sources */, + 6A92D83B8485582BF7D65B45C8751BBD /* ZIPFoundation-macOS-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3695,6 +3606,74 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + B9715CE3B6447B370205E93A34D375FD /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + EB4859C266B82CC9AD7556192C714235 /* accelerometer.cpp in Sources */, + C63E229A2827C951A94DA99AB106E30F /* accelerometer_bosch.cpp in Sources */, + 7D3FC2DF93335AF1B9C6FFCCDC408BD5 /* accelerometer_mma8452q.cpp in Sources */, + 2E5A12B4E732159DCD4E731A32C73FDB /* ambientlight_ltr329.cpp in Sources */, + BC59639D7765C2A29A3D9FCC970DE8F3 /* anonymous_datasignal.cpp in Sources */, + 0EA95E5EBDE48B344E571DA64C459062 /* async_creator.cpp in Sources */, + 752D7F9D167E5CF912FB1F89ACC3F352 /* barometer_bosch.cpp in Sources */, + 7D397F44D068B6BE5D5F75D371FCE92F /* Bridging.swift in Sources */, + B3576D0C83DD2EA32A99DDDBB45E0260 /* cbindings.swift in Sources */, + C4D2C54BAB926FE739B8E14044AB69EE /* CBUUID.swift in Sources */, + 76FA6E8AFFA7577A387F8C2ABA528FE8 /* colordetector_tcs34725.cpp in Sources */, + 9A835C1F3AFDFCF01F6C1D47ED5F89DA /* conductance.cpp in Sources */, + 7948EF21A331CD18954520510EEBA611 /* datainterpreter.cpp in Sources */, + E51D72703EF22E7F8EDC509BC2F77B9D /* dataprocessor.cpp in Sources */, + 8BA0161C6CC750D29E60D0091FCB3071 /* dataprocessor_config.cpp in Sources */, + D2EE5CB79EAACFD0F3D34D7A6F7E85DA /* datasignal.cpp in Sources */, + B34F1143CC0D7B7410FE9F2D10A9CC54 /* debug.cpp in Sources */, + AB6FD6DC7B45D725C5939A13BE3B00E6 /* DeviceInformation.swift in Sources */, + 60343D4E4439D398972BE83AE4365D1D /* dfu_operations.cpp in Sources */, + 081992832B423EC0CD42950454E74D26 /* dfu_operations_details.cpp in Sources */, + F46CE4416A15F548E7973612CD0B52D9 /* dfu_utility.cpp in Sources */, + 96654960A04AEFF3E398512F1EE08927 /* event.cpp in Sources */, + 21C9713CBC1EC99C56B270E3F781BF3F /* file_operations.cpp in Sources */, + 40AA617E2A8EC6D07EF58721AAE0B591 /* gpio.cpp in Sources */, + 608D2EA3AF4AE8952CF26E27F6F807C9 /* gyro_bosch.cpp in Sources */, + 692A14170BB7CBFEFCB3A5A508D8D745 /* haptic.cpp in Sources */, + C8E31BA99BD3FBEAAF50DE2A3C8FBD2A /* humidity_bme280.cpp in Sources */, + 9E1F9D2CBD7970AEA33D67193BE2DBB7 /* ibeacon.cpp in Sources */, + 6CCA3A6FC855D20EA9F24219D3A80F10 /* led.cpp in Sources */, + BF0A2A67A2CC558BCFD833350D8DFA5B /* LogDelegate.swift in Sources */, + 85322FAB23516ED44E5807A8D767B9DF /* logging.cpp in Sources */, + 34BA1C937AC3896F20A62F755E801A8A /* macro.cpp in Sources */, + 08B7D3A363B58703A42D68E6BE6C728D /* magnetometer_bmm150.cpp in Sources */, + 9F1AA8A9434FBFD1D0DF66E4EAF1D0D7 /* MblMwDataSignal+Async.swift in Sources */, + 49BDB99DB75897F0A702D22CC25F906E /* MblMwEvent+Async.swift in Sources */, + 37992E19FDF6212E258F24EEF6D1409A /* MblMwGattChar.swift in Sources */, + 6EB34457DF1E96BC4C3D3E642C60182B /* memory.cpp in Sources */, + 51140AA7260ECB6229A0FFAC326C50DB /* MetaWear+Async.swift in Sources */, + 9DE186E36774DA9805AD0F90872CF9EB /* MetaWear+LED.swift in Sources */, + FD3A2F9A9FB1005D6EC33FDF62AC004B /* MetaWear-AsyncUtils-Core-UI-watchOS-dummy.m in Sources */, + 6E7D93F253D1F977120860D54BE82B14 /* MetaWear.swift in Sources */, + 6F0343FA465B42A763B5B4A83E0691B4 /* metawearboard.cpp in Sources */, + C716607796240F4F50704E04C041D0CE /* MetaWearData.swift in Sources */, + 55CC2B7C2C433517239E3E0E667A7022 /* MetaWearScanner.swift in Sources */, + BB8564A39B290C14FA2621A430DB4BF8 /* miniz.cpp in Sources */, + 6BDCEAFAEF0CB2827F95CC8371281D04 /* moduleinfo.cpp in Sources */, + 500D2B38735C8F6A7BEC60CE96CC222F /* multichanneltemperature.cpp in Sources */, + D11AA4DC813F375DAD2CC62079D21BC7 /* neopixel.cpp in Sources */, + 1810A732F67791BA6D3D6B4FCCF81AA0 /* proximity_tsl2671.cpp in Sources */, + E382671EB7F7861B000F60359E1FFD1F /* responseheader.cpp in Sources */, + 6CFD1BDF79B4C6B5E9D4BC30620A8CE7 /* ScannerModel.swift in Sources */, + C14B1E95BEA286CB7B701061C0F61EFC /* sensor_fusion.cpp in Sources */, + 7CD8C809FFA0BAEC17F033652C912FB6 /* serialpassthrough.cpp in Sources */, + 1BDE297B97A60995D2EF6380AF500AC3 /* settings.cpp in Sources */, + 61C7B1FF52BDC7DA7BBC04B8D5ED5907 /* String+VersionCompare.swift in Sources */, + 4845B794A2FE2B92C7CDF221D100AD50 /* switch.cpp in Sources */, + EC7E2A0AA1508D840598A819D7440F5C /* task.cpp in Sources */, + 405CEDAFD0FC9185CA55ED75573E17DA /* threadpool.cpp in Sources */, + 9B57015F9223D1649F72D3311D610899 /* timer.cpp in Sources */, + 695D8DABCDB35D196D59F769EDF16A16 /* utils.cpp in Sources */, + CCF7E2DBC1310F7CDFF81C30998B531D /* version.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; C95541EB264FA3C6684F6E0DB7CB3D63 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -3727,59 +3706,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - D1D6CF4D5E9CA6BDBDC90A15FEED77A3 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 4CD0373B8830051BB7C6B42624F26BC5 /* ButtonlessDFU.swift in Sources */, - C387EA43B4C5143DD9A3C20CCF72AD0B /* crc32.swift in Sources */, - E15B47C69F2CEFC62720FC4ACA1693EF /* Data.swift in Sources */, - BEBD14234307840C13A72E7FBDAF3A2D /* DFUCharacteristic.swift in Sources */, - 7024D2881CE0B18F21E03D6B84DA75E7 /* DFUController.swift in Sources */, - 5A58FBE68A6B181E246E27F35678AD0D /* DFUControlPoint.swift in Sources */, - 6E701F7BB609CE128911B2743D6992A8 /* DFUExecutor.swift in Sources */, - 59E2D5D6787F2235391DCF079896CCDA /* DFUFirmware.swift in Sources */, - CF12A219994F7C66E871F5E9A530A7EA /* DFUPacket.swift in Sources */, - FAD68810E64D49FAC279EFBCC79FCAB7 /* DFUPeripheral.swift in Sources */, - 477DCCCFDEC5D3D2169E45B8264D6C76 /* DFUPeripheralDelegate.swift in Sources */, - 6CB9AE2B0DE03C9374C6B5CAC5597758 /* DFUPeripheralSelector.swift in Sources */, - 55BA23285A52A36F6C1FB31B1014913C /* DFUPeripheralSelectorDelegate.swift in Sources */, - F4804A768A6923BF6813DFA584CD0ADD /* DFUService.swift in Sources */, - E59AB5B99D0CDB0BAE2318DB92D35418 /* DFUServiceController.swift in Sources */, - 76B94E1A4B7BEB7E5905729C925304A6 /* DFUServiceDelegate.swift in Sources */, - 3F9A7A995F700B220AC36AA42F260A75 /* DFUServiceInitiator.swift in Sources */, - 7A5E4A83A26D7708E334CCE253704BF9 /* DFUServiceSelector.swift in Sources */, - 41295ECCE911F0108FEA0CB75D6F27D6 /* DFUStarterPeripheral.swift in Sources */, - 95873C61174D8D481393D4E906C081E1 /* DFUStream.swift in Sources */, - 891ED6BA8008F52EC301721E47958D30 /* DFUStreamBin.swift in Sources */, - C0DC4ABA6A0EB55932C53F7C533056F7 /* DFUStreamHex.swift in Sources */, - DA5CF7C3FA05E0E1A01D6C300F6DCC6A /* DFUStreamZip.swift in Sources */, - 58BC765CC7F9D60976B1F2846F9C443D /* DFUUuidHelper.swift in Sources */, - 757D3DAEAE3CFF8069844FAA26995346 /* DFUVersion.swift in Sources */, - 9AC34EBED2E65C0B6C239DB90EEB31B3 /* Double.swift in Sources */, - 0EDEAD15EA76CF20CC0CF0E1A767568C /* IntelHex2BinConverter.swift in Sources */, - EAA9FDA26FCC68FFA825EE1DE534B221 /* iOSDFULibrary-macOS-dummy.m in Sources */, - C6827AC15EC5E1612F6E4738AE162C57 /* LegacyDFUExecutor.swift in Sources */, - 18D1A8C4E85B6FBBB2079E8C5183FF3E /* LegacyDFUPeripheral.swift in Sources */, - 1EE2372DC27AA0C43FEC83A5C1E13963 /* LegacyDFUPeripheralDelegate.swift in Sources */, - 5F013013A3C0736A18EB56E1BA6921E7 /* LegacyDFUService.swift in Sources */, - FAEDD66CCEAA1CC94BC0BF339D273F86 /* LegacyDFUServiceInitiator.swift in Sources */, - 2342BB1503FC3BE2631E0ECB2B4CEE63 /* LoggerDelegate.swift in Sources */, - EF243877934AA8AB72605F69ACC81732 /* LoggerHelper.swift in Sources */, - 4F748795613245C9147640C9E7CD40A5 /* Manifest.swift in Sources */, - 31B3118D1630004A69B06C8287AEB8B6 /* ManifestFirmwareInfo.swift in Sources */, - 4F007320E788168C353D6ECB13A5DDFE /* SecureDFUControlPoint.swift in Sources */, - AFF41C17A7B544A3D8802249E9D46E34 /* SecureDFUExecutor.swift in Sources */, - 701F0207B3673657A585DF64BFB8E37B /* SecureDFUPacket.swift in Sources */, - 12570F94509FE8973817A526E54481D6 /* SecureDFUPeripheral.swift in Sources */, - 67659BDF47AD29C95A7758B3E3F19B98 /* SecureDFUPeripheralDelegate.swift in Sources */, - 0FE210F8580B0064D862A9029568F087 /* SecureDFUService.swift in Sources */, - 4D08513111FE8AD054634756086260D9 /* SecureDFUServiceInitiator.swift in Sources */, - 60F9D875CB58B072487CEECD78E27295 /* SoftdeviceBootloaderInfo.swift in Sources */, - 20591D483411BD8648DF767C557D51DE /* ZipArchive.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; EF353AEFD9621E6C7A321269278E6A7E /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -3812,225 +3738,240 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - F2253E4CDEFB243F76B4E99B5F6F2759 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - EA35A488DAE44CAE90F52CF3717FE92F /* Archive+Reading.swift in Sources */, - 7077BC573851D7D38D1D3B6CDED72989 /* Archive+Writing.swift in Sources */, - 0FBBDCB27DF56346CC85D9E88F62CB52 /* Archive.swift in Sources */, - 62FBDA31A22BCB5D9FC3045283D65F03 /* Data+Compression.swift in Sources */, - AF1FD8F583ECB1D76FE192EC70CBDC16 /* Data+Serialization.swift in Sources */, - 6F8B57571C7FF9B3E281B21985E3E72D /* Entry.swift in Sources */, - 20DD8171D33AE77417653D045FD65319 /* FileManager+ZIP.swift in Sources */, - 56E511ED0A9C5F7FC5D40A3AE34ED45E /* ZIPFoundation-iOS-dummy.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 079A8D57CB3BA54A0B22B7486EF377C4 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = "ZIPFoundation-iOS"; - target = 9AF8AE8821E967844EEF26BBB341564D /* ZIPFoundation-iOS */; - targetProxy = 2CA06FA7571CF5AD6639EA503136410A /* PBXContainerItemProxy */; - }; - 1285FC91DD8D2E04239EF5E7D43816B1 /* PBXTargetDependency */ = { + 08936E7FA7579C5C8DDA7433E976D107 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "ZIPFoundation-iOS"; - target = 9AF8AE8821E967844EEF26BBB341564D /* ZIPFoundation-iOS */; - targetProxy = D4B29AD9073326D336410C13DF4B6915 /* PBXContainerItemProxy */; - }; - 2BE45CE86595EE4B41860C7B496B35F8 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; - target = 42FE80E7F4B82634FE879096E38AF67E /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS */; - targetProxy = F39A203151A809E55F4EE7F052EE034F /* PBXContainerItemProxy */; - }; - 2C068D6689112805BDCE38728DF36AFA /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = "iOSDFULibrary-iOS"; - target = D5D94E351BD6926C6DC33FBD834E16AC /* iOSDFULibrary-iOS */; - targetProxy = B400E8DD5417A408BC8F45BE8A94C88F /* PBXContainerItemProxy */; + name = "MetaWear-AsyncUtils-Core-UI-watchOS"; + target = 667F340C7624C4E82D66A02A17E0B33D /* MetaWear-AsyncUtils-Core-UI-watchOS */; + targetProxy = 06186ADC23B47533921ACA21A45E04EA /* PBXContainerItemProxy */; }; - 2C22C3A9F47F79DCEC63E04FF3E8A878 /* PBXTargetDependency */ = { + 0BA3B993609E42DC5CEFE9A92B74E8F8 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-tvOS"; - target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; - targetProxy = 791C07C26EE4252511A485D94AEBA2F1 /* PBXContainerItemProxy */; + name = "Bolts-Swift-iOS"; + target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; + targetProxy = 9D53ED0E24AFE721D972613F660EDB09 /* PBXContainerItemProxy */; }; - 2D1A0F7701A1420FDD6D7BB3D22F9D99 /* PBXTargetDependency */ = { + 238925E82BA17529B13FA9537E08C2DC /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "ZIPFoundation-macOS"; target = 8B5BB2050078EFCACBEDC5B4195B80CD /* ZIPFoundation-macOS */; - targetProxy = 13F640600278E83472F3461DD4CC6A38 /* PBXContainerItemProxy */; + targetProxy = 0DCE60CAAB08FC7E3AF8217273AAF87E /* PBXContainerItemProxy */; }; - 2EBDDC15435A98F403EBB67111DFBB80 /* PBXTargetDependency */ = { + 2FEBB250F5C82A340FEFCB6170D6886E /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "Bolts-Swift-iOS"; target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; - targetProxy = 9B8A9D3CED50028C926E1A46B32A91D0 /* PBXContainerItemProxy */; + targetProxy = D474F1F2685D15E70343A935B1BD0B42 /* PBXContainerItemProxy */; }; - 393F1632B86CA53F8222A2AA04D341BC /* PBXTargetDependency */ = { + 345D4295EC6E80B47D6A533EE099C168 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "iOSDFULibrary-iOS"; - target = D5D94E351BD6926C6DC33FBD834E16AC /* iOSDFULibrary-iOS */; - targetProxy = 711010DD4018732EF2B69AD110191064 /* PBXContainerItemProxy */; - }; - 487A458D5A75D6451A1D1F1455C09F88 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS"; - target = D34323F62557B06705361E449443F967 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS */; - targetProxy = 10775978D240B3CC0700D712E73A833F /* PBXContainerItemProxy */; - }; - 4E1CB07D44E9A1861F66C98DA4ABD512 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = "MetaWear-AsyncUtils-Core-UI-watchOS"; - target = 667F340C7624C4E82D66A02A17E0B33D /* MetaWear-AsyncUtils-Core-UI-watchOS */; - targetProxy = 887048131DC8D0273A24B249EF0F454D /* PBXContainerItemProxy */; + name = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS"; + target = DC73C4CD23208E5286814B153B7BF656 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS */; + targetProxy = A590ABECC35126142DE54287B55849B1 /* PBXContainerItemProxy */; }; - 615E3F20B7DEED298C8A6D84F7F97176 /* PBXTargetDependency */ = { + 56731B468E4A2652E5925A8B035ED4B4 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "iOSDFULibrary-macOS"; - target = 79F9638EA00F4594D84B597FE45CD2DC /* iOSDFULibrary-macOS */; - targetProxy = 2945BAB3488A9392C91743BB6FC81DF0 /* PBXContainerItemProxy */; + name = "ZIPFoundation-iOS"; + target = 9AF8AE8821E967844EEF26BBB341564D /* ZIPFoundation-iOS */; + targetProxy = 99A59F0ECEFE5AF325A5DFDD46A2209C /* PBXContainerItemProxy */; }; - 629A1127E60231EBE67605EA16F58991 /* PBXTargetDependency */ = { + 585B04839DA6E89C88F068EE77DF672B /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "ZIPFoundation-macOS"; target = 8B5BB2050078EFCACBEDC5B4195B80CD /* ZIPFoundation-macOS */; - targetProxy = E7BA52ED09E4D626E7C312225546CF0F /* PBXContainerItemProxy */; + targetProxy = 4E7DE226AEA7AF2B4ED1673A5168A06B /* PBXContainerItemProxy */; }; - 6CE2CCD50B23851198168E503F8AF353 /* PBXTargetDependency */ = { + 5ADACCDA857E1293D07DD3B9909D4611 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "MetaWear-AsyncUtils-Core-UI-tvOS"; + target = 8804FF230B80287816DD00C23D7C3AFB /* MetaWear-AsyncUtils-Core-UI-tvOS */; + targetProxy = 503F98E425BCBB130968B2B5657E8E6A /* PBXContainerItemProxy */; + }; + 5DD5174BBA2540C20754F30D4C540A9E /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "Bolts-Swift-macOS"; target = 60E729C6D466746E969FA5CA967B984D /* Bolts-Swift-macOS */; - targetProxy = AF2AD260DFEAA7D8168ED456B6FCB3D3 /* PBXContainerItemProxy */; + targetProxy = F9658AA2CDBA1BC0C296DF88256D9301 /* PBXContainerItemProxy */; }; - 71611EF2F78A917F33AF736D2856ADD9 /* PBXTargetDependency */ = { + 61CDE3AD9BC7AA28BEF62550F4E7CD3C /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-iOS"; - target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; - targetProxy = 73098E235892B2F60AB2910EB335AA94 /* PBXContainerItemProxy */; + name = "iOSDFULibrary-iOS"; + target = D5D94E351BD6926C6DC33FBD834E16AC /* iOSDFULibrary-iOS */; + targetProxy = 6982874C1AA9D03CA808E7B5632394B9 /* PBXContainerItemProxy */; }; - 782403B8CCE6FE8592259F4FDE9CCF88 /* PBXTargetDependency */ = { + 65E24D1ADB614B5DCD54FFEA9425746C /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS"; - target = E495A89A7F691DD1EF5E2278AD5C03B0 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS */; - targetProxy = 864C61A1A60EF337AD9CB7AC5F7FF7E8 /* PBXContainerItemProxy */; + name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; + target = 42FE80E7F4B82634FE879096E38AF67E /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS */; + targetProxy = 6CAEBDB14F18312BF6C8E9AA29350129 /* PBXContainerItemProxy */; + }; + 670B6C5BF3F441C1A80C9DA1F7B71A6C /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "ZIPFoundation-macOS"; + target = 8B5BB2050078EFCACBEDC5B4195B80CD /* ZIPFoundation-macOS */; + targetProxy = 27068BB70B9C0C8814841DD5C68AF574 /* PBXContainerItemProxy */; }; - 87A2714FD722D52DA60800C1BC4D7E1A /* PBXTargetDependency */ = { + 70137C73E53C56399A4A7B416516718D /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "iOSDFULibrary-macOS"; target = 79F9638EA00F4594D84B597FE45CD2DC /* iOSDFULibrary-macOS */; - targetProxy = 27BB945EAE3344C06679570DD14C005F /* PBXContainerItemProxy */; + targetProxy = BF75AD80F02223AB13203799AC4D6D13 /* PBXContainerItemProxy */; }; - 89D8BF044049A4B5FE34B86CADF48AB1 /* PBXTargetDependency */ = { + 7533D96D4521C2F251FB5AA7209F8BF6 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; - target = 285D0CB5C235EDD5B3B0975146484BE0 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS */; - targetProxy = F6CA060E8BE65E7804E4E2BDAA4C9E94 /* PBXContainerItemProxy */; + name = "ZIPFoundation-iOS"; + target = 9AF8AE8821E967844EEF26BBB341564D /* ZIPFoundation-iOS */; + targetProxy = 2B00D3D014773BE98799928B981E3142 /* PBXContainerItemProxy */; }; - A7FC9D747F1AE8BAC97BBB188203490A /* PBXTargetDependency */ = { + 8605DE001DCC36A832DF08E64A610CFF /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-watchOS"; - target = 04C10A816CC356F24E80EFDC360742A5 /* Bolts-Swift-watchOS */; - targetProxy = 7B78FA778BAAC88D8722ECB221FE9C83 /* PBXContainerItemProxy */; + name = "iOSDFULibrary-iOS"; + target = D5D94E351BD6926C6DC33FBD834E16AC /* iOSDFULibrary-iOS */; + targetProxy = 4A0AE48AE5842C4DC26C0D456C245915 /* PBXContainerItemProxy */; }; - AD5ADE6638A6DF92B41DAF315B1B8A58 /* PBXTargetDependency */ = { + 89838DAC075C015CCBFABE7C3989684C /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-tvOS"; - target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; - targetProxy = 237511C50C9BE09BCF94D3C53BDDCD2C /* PBXContainerItemProxy */; + name = "Bolts-Swift-macOS"; + target = 60E729C6D466746E969FA5CA967B984D /* Bolts-Swift-macOS */; + targetProxy = 42D33096E126F5CCA8BF2E2A4356EF2D /* PBXContainerItemProxy */; }; - B45CB4F6C6AA4DB8B34735411BEDE1F0 /* PBXTargetDependency */ = { + 8BB3FF743A2A9A9657CD71319F1AF00D /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "Bolts-Swift-tvOS"; target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; - targetProxy = DD1B8670BCA35060346E26C7C8DBE590 /* PBXContainerItemProxy */; + targetProxy = FE7494A8273143D0B299BF5B79E9B735 /* PBXContainerItemProxy */; + }; + 93FF68C0629F4EAB5A37F2F68E2F84C3 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "Bolts-Swift-watchOS"; + target = 04C10A816CC356F24E80EFDC360742A5 /* Bolts-Swift-watchOS */; + targetProxy = 660D3B6E3FA5008E8C16D0F4D53440CF /* PBXContainerItemProxy */; }; - B88684C6B1812C1021FE2999413A2306 /* PBXTargetDependency */ = { + 9836C5F4752EE0DA9D38367D604C7C05 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS"; + target = E495A89A7F691DD1EF5E2278AD5C03B0 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS */; + targetProxy = D1CAA10F3D71ADA70A81166204AC7133 /* PBXContainerItemProxy */; + }; + 9977B9AA9FDD8DF22BEE4F7931996A1F /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "Bolts-Swift-iOS"; target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; - targetProxy = E56AF568A4DCBD7FDD6C199F0261AEB5 /* PBXContainerItemProxy */; + targetProxy = 8E4B5A4BC5BAB76606B9904A04AAAAF5 /* PBXContainerItemProxy */; }; - BAFCF6E87F4C45DE0426C5B09E8E695E /* PBXTargetDependency */ = { + 9A653109705591055FD5EBEF997DE95C /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "ZIPFoundation-macOS"; - target = 8B5BB2050078EFCACBEDC5B4195B80CD /* ZIPFoundation-macOS */; - targetProxy = 75554CF568A2719BD9E97BFE2D63AB84 /* PBXContainerItemProxy */; + name = "Bolts-Swift-tvOS"; + target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; + targetProxy = 71316C3DDD1AAC898A200A9D32C85C84 /* PBXContainerItemProxy */; }; - C993AF623745FD530B5A25F265C8E50E /* PBXTargetDependency */ = { + A18D6D7477FA388C793E99D28AB58694 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "Bolts-Swift-macOS"; + target = 60E729C6D466746E969FA5CA967B984D /* Bolts-Swift-macOS */; + targetProxy = 74EAECF21E822B75305F2EAD499FF056 /* PBXContainerItemProxy */; + }; + A8229844E49D5B0D49E56E7D250E2A57 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; target = 285D0CB5C235EDD5B3B0975146484BE0 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS */; - targetProxy = 3B6B4690C5DFA62472184E4E90947D27 /* PBXContainerItemProxy */; + targetProxy = 33A20B401C11EFBB96547AA70FF210EC /* PBXContainerItemProxy */; }; - CF6E2CCFEFDE8852F13398D462105425 /* PBXTargetDependency */ = { + BCC2FFFDCE494EB48F4D17D436F6D391 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "iOSDFULibrary-macOS"; target = 79F9638EA00F4594D84B597FE45CD2DC /* iOSDFULibrary-macOS */; - targetProxy = 585CE3983175E44568815D3D7380A15C /* PBXContainerItemProxy */; + targetProxy = 3E518946FC37B273FCA3A6BAC2FC7B89 /* PBXContainerItemProxy */; }; - D4775D319C2D7C9BAA4F34CB6927ACDF /* PBXTargetDependency */ = { + D1F1FB74EAA43BE0B20F86D39B7E231C /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-watchOS"; - target = 04C10A816CC356F24E80EFDC360742A5 /* Bolts-Swift-watchOS */; - targetProxy = 42A95F515F9634ACDBEA3C34E99C338C /* PBXContainerItemProxy */; + name = "MetaWear-AsyncUtils-Core-UI-tvOS"; + target = 8804FF230B80287816DD00C23D7C3AFB /* MetaWear-AsyncUtils-Core-UI-tvOS */; + targetProxy = 6884F90B4715861C7A49D0024119963D /* PBXContainerItemProxy */; }; - D4DFCBE4E799F8310AC9D1A23CDE1054 /* PBXTargetDependency */ = { + D26DB6A48921000799BB338FABC1BF5F /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-macOS"; - target = 60E729C6D466746E969FA5CA967B984D /* Bolts-Swift-macOS */; - targetProxy = 05C9E3CF3394D544FDA9B3754F3AD569 /* PBXContainerItemProxy */; + name = "Bolts-Swift-tvOS"; + target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; + targetProxy = C1788ADD9033BB42E10D9BF287E37BE4 /* PBXContainerItemProxy */; }; - D620C620B8C3B51FE68AAC58EB87B988 /* PBXTargetDependency */ = { + D7BDBB87FCFEB5D29331E5AF63CF024E /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-macOS"; - target = 60E729C6D466746E969FA5CA967B984D /* Bolts-Swift-macOS */; - targetProxy = DBD458533DEA2D394E7724C8AD02DE25 /* PBXContainerItemProxy */; + name = "Bolts-Swift-watchOS"; + target = 04C10A816CC356F24E80EFDC360742A5 /* Bolts-Swift-watchOS */; + targetProxy = 21A142E2AD634BC669EF6ADA54442E52 /* PBXContainerItemProxy */; }; - E92E57414ED46106EF21D68D331A34B4 /* PBXTargetDependency */ = { + DF7B720D433A03540B4F77D0582285D1 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; - target = 42FE80E7F4B82634FE879096E38AF67E /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS */; - targetProxy = 66C484EC310615B38CAD918AB122E7B9 /* PBXContainerItemProxy */; + name = "iOSDFULibrary-iOS"; + target = D5D94E351BD6926C6DC33FBD834E16AC /* iOSDFULibrary-iOS */; + targetProxy = 1E7137AA06E32438A90DFBA1F76B5710 /* PBXContainerItemProxy */; }; - EA3D1AFEA43653FD4C5DA0D3ED04091B /* PBXTargetDependency */ = { + ED9559C9F5709D4389FC503EC2C9F73F /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "MetaWear-AsyncUtils-Core-UI-tvOS"; - target = 8804FF230B80287816DD00C23D7C3AFB /* MetaWear-AsyncUtils-Core-UI-tvOS */; - targetProxy = A4B9DBA1C6AA546EE0201EF8C1E68BEA /* PBXContainerItemProxy */; + name = "Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS"; + target = D34323F62557B06705361E449443F967 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS */; + targetProxy = B3FE3E484A3E6CA1632A430E9A51CFFB /* PBXContainerItemProxy */; }; - F2612DFC1564ADE930C3215603234BC0 /* PBXTargetDependency */ = { + EDCF3C61D915CF80C748D3AC6F502D91 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "MetaWear-AsyncUtils-Core-UI-tvOS"; - target = 8804FF230B80287816DD00C23D7C3AFB /* MetaWear-AsyncUtils-Core-UI-tvOS */; - targetProxy = 8C02976A56F3D589D7A255F59BF5B253 /* PBXContainerItemProxy */; + name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS"; + target = 285D0CB5C235EDD5B3B0975146484BE0 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS */; + targetProxy = 7E6EA7E31612BF7EBEB20268FB505E35 /* PBXContainerItemProxy */; }; - F2832AC7076F272759BEDF224B918D29 /* PBXTargetDependency */ = { + F51783FE11D8B709B7C73610BF61E08F /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "ZIPFoundation-iOS"; target = 9AF8AE8821E967844EEF26BBB341564D /* ZIPFoundation-iOS */; - targetProxy = BE897FE97B811C3234548B168D63920E /* PBXContainerItemProxy */; + targetProxy = 75D5B6AA9B6773B9290F33E05C887003 /* PBXContainerItemProxy */; }; - F66F1927E22203B8CBD8D3A9630A16D1 /* PBXTargetDependency */ = { + FCA27A74B4ADF6CCEAE9B40FE97EA455 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS"; - target = DC73C4CD23208E5286814B153B7BF656 /* Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS */; - targetProxy = AB84B45FACF93E9EA61A82A7217D013B /* PBXContainerItemProxy */; + name = "iOSDFULibrary-macOS"; + target = 79F9638EA00F4594D84B597FE45CD2DC /* iOSDFULibrary-macOS */; + targetProxy = 35779F067CD8EEBEC466D32B0CA33FD7 /* PBXContainerItemProxy */; }; - FCD46C66D111F00D78F6CB4EBF09FA9D /* PBXTargetDependency */ = { + FD7E7F2363875AEBE5E19A97AD8BD541 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "iOSDFULibrary-iOS"; - target = D5D94E351BD6926C6DC33FBD834E16AC /* iOSDFULibrary-iOS */; - targetProxy = 44E242F977B9B5141D1F8E58A1699C32 /* PBXContainerItemProxy */; + name = "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS"; + target = 42FE80E7F4B82634FE879096E38AF67E /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS */; + targetProxy = F0A045233B226CDA41BB0599AA0A7993 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ + 0208EA2EF4D2BA5AE00178F030B8EB60 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 480D43633F8D604BCC70A3AED00509EB /* MetaWear-AsyncUtils-Core-UI-tvOS.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 12.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; 0776BD3DFF054C321E8441FCB696120C /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = 910DB833579EEEB4A5DFC605DEEAD46E /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.debug.xcconfig */; @@ -4057,7 +3998,7 @@ SDKROOT = appletvos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 12.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; @@ -4087,77 +4028,77 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.0; + TVOS_DEPLOYMENT_TARGET = 12.0; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Release; }; - 0F855A972F62B109CFC6D68335120CF2 /* Release */ = { + 0F410233F246C5F4B88558DB4F7F366F /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = FAF9B7ACE4773B4D39C8F25F3B7E77C9 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.release.xcconfig */; + baseConfigurationReference = 1881483EDF6FAA713D89C78E866AEDF8 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.release.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MACOSX_DEPLOYMENT_TARGET = 10.14; - MODULEMAP_FILE = "Target Support Files/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SDKROOT = macosx; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = iphoneos; SKIP_INSTALL = YES; - VERSIONING_SYSTEM = "apple-generic"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Release; }; - 12089D2662B226914136156E4A72830F /* Debug */ = { + 0F855A972F62B109CFC6D68335120CF2 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = AB0851094434AE3AB131EAA5B548883F /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.debug.xcconfig */; + baseConfigurationReference = FAF9B7ACE4773B4D39C8F25F3B7E77C9 /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.release.xcconfig */; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = iphoneos; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MODULEMAP_FILE = "Target Support Files/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS/Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = macosx; SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; + name = Release; }; 1501E793691B36AA9E564008201D5469 /* Debug */ = { isa = XCBuildConfiguration; @@ -4197,7 +4138,6 @@ baseConfigurationReference = 47A42A6D0D2C373B25D8BD3F4C472B37 /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -4242,7 +4182,7 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = "Target Support Files/Pods-MetaWearIntegrationTests-iOS/Pods-MetaWearIntegrationTests-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MACH_O_TYPE = staticlib; MODULEMAP_FILE = "Target Support Files/Pods-MetaWearIntegrationTests-iOS/Pods-MetaWearIntegrationTests-iOS.modulemap"; @@ -4263,7 +4203,6 @@ isa = XCBuildConfiguration; baseConfigurationReference = 707BD7956532BB56B82F2E086BAA65B6 /* Bolts-Swift-macOS.release.xcconfig */; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -4307,7 +4246,7 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = "Target Support Files/Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS/Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MACH_O_TYPE = staticlib; MODULEMAP_FILE = "Target Support Files/Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS/Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS.modulemap"; @@ -4324,11 +4263,11 @@ }; name = Debug; }; - 2BCDCD2DBFD68EA69C03D48B18652979 /* Release */ = { + 2C3CA8EB990C548A04076BE8BDD84888 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 0421114FF4A72C4B6114B97C28A38C3A /* MetaWear-AsyncUtils-Core-UI-watchOS.release.xcconfig */; + baseConfigurationReference = 09FB029345B1A704BD8F64B899B729F7 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.release.xcconfig */; buildSettings = { - APPLICATION_EXTENSION_API_ONLY = YES; + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; @@ -4337,30 +4276,30 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS/Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = watchos; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS/Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = appletvos; SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 4; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 12.0; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; - WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - 2C3CA8EB990C548A04076BE8BDD84888 /* Release */ = { + 2D0877D883B9DD5F412DEFCE55090046 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 09FB029345B1A704BD8F64B899B729F7 /* Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.release.xcconfig */; + baseConfigurationReference = 471949DE1C588949EA675BC34BD52CF8 /* ZIPFoundation-iOS.debug.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; @@ -4369,25 +4308,23 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS/Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS/Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SDKROOT = appletvos; + MODULEMAP_FILE = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS.modulemap"; + PRODUCT_MODULE_NAME = ZIPFoundation; + PRODUCT_NAME = ZIPFoundation; + SDKROOT = iphoneos; SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; - VALIDATE_PRODUCT = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; 2E2E4BABBE4CBB387811A7F5E669B850 /* Release */ = { isa = XCBuildConfiguration; @@ -4405,7 +4342,7 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = "Target Support Files/Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS/Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MACH_O_TYPE = staticlib; MODULEMAP_FILE = "Target Support Files/Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS/Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS.modulemap"; @@ -4476,7 +4413,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MACOSX_DEPLOYMENT_TARGET = 10.14; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; @@ -4487,7 +4424,7 @@ SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; SYMROOT = "${SRCROOT}/../build"; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 12.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; @@ -4518,12 +4455,105 @@ SDKROOT = appletvos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 12.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Debug; }; + 3F471C2C40898BC1A33F609C348CA983 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7728E7D9EBAE97ECA45528D9287757A0 /* iOSDFULibrary-iOS.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS.modulemap"; + PRODUCT_MODULE_NAME = iOSDFULibrary; + PRODUCT_NAME = iOSDFULibrary; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 4CEED4C7169576531AB256FE463B9F9F /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 8940A499B23F205CC27EDBA8204CED90 /* ZIPFoundation-macOS.release.xcconfig */; + buildSettings = { + CLANG_ENABLE_OBJC_WEAK = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MODULEMAP_FILE = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS.modulemap"; + PRODUCT_MODULE_NAME = ZIPFoundation; + PRODUCT_NAME = ZIPFoundation; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 51A25E784E037C7CD3D34056539A4E64 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = BBE6BE9F290F399278452EF43CA4D1B9 /* iOSDFULibrary-macOS.release.xcconfig */; + buildSettings = { + CLANG_ENABLE_OBJC_WEAK = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MODULEMAP_FILE = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS.modulemap"; + PRODUCT_MODULE_NAME = iOSDFULibrary; + PRODUCT_NAME = iOSDFULibrary; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; 5391949215976BCBBA1DB6C4DF54C7E3 /* Release */ = { isa = XCBuildConfiguration; baseConfigurationReference = 0F662C509A889C1CDF18249B1C366873 /* Pods-MetaWearIntegrationTests-tvOS.release.xcconfig */; @@ -4550,7 +4580,7 @@ SDKROOT = appletvos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 12.0; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; @@ -4562,7 +4592,6 @@ baseConfigurationReference = B5BE3C3ED8B205DDC9F2354DB07DBECB /* Pods-MetaWearIntegrationTests-macOS.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -4595,7 +4624,6 @@ isa = XCBuildConfiguration; baseConfigurationReference = 29BEF66C4C982AC2F1A552DB5471A6C9 /* Bolts-Swift-macOS.debug.xcconfig */; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -4639,7 +4667,7 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = "Target Support Files/Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS/Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MACH_O_TYPE = staticlib; MODULEMAP_FILE = "Target Support Files/Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS/Pods-MetaWear-MetaWear-iOS-MetaWearUnitTests-iOS.modulemap"; @@ -4662,7 +4690,6 @@ baseConfigurationReference = 9B955A6106805E43023472610E0D7DCE /* Pods-MetaWearIntegrationTests-macOS.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -4691,44 +4718,11 @@ }; name = Debug; }; - 61A424B662B5FD67E6A97BC4E6957026 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = FC2DEB55514859BAD3CF4DA5A03DBA15 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.release.xcconfig */; - buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; - CLANG_ENABLE_OBJC_WEAK = NO; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.14; - MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; 68B58760225CA188A9F974E2FA744FA1 /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = 5B4AB69038A39EEC97BC88ED51E3ACDB /* Pods-MetaWear-MetaWear-macOS-MetaWearUnitTests-macOS.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -4783,7 +4777,7 @@ SDKROOT = appletvos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 12.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; @@ -4823,42 +4817,42 @@ }; name = Release; }; - 6FD985B0E1326D7E1721575B80BBCB82 /* Release */ = { + 7B9B758043B0D11439E3E6B524A4FCEC /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 1881483EDF6FAA713D89C78E866AEDF8 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.release.xcconfig */; + baseConfigurationReference = FC2DEB55514859BAD3CF4DA5A03DBA15 /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.release.xcconfig */; buildSettings = { CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.modulemap"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap"; PRODUCT_MODULE_NAME = MetaWear; PRODUCT_NAME = MetaWear; - SDKROOT = iphoneos; + SDKROOT = macosx; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Release; }; - 759135CCC8A9C1F75F5125FD976986A0 /* Debug */ = { + 7DDF4755581705C01FBAF7A4841DA64F /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = AC14F27D31997A9BAB52F11719E73EB8 /* iOSDFULibrary-iOS.debug.xcconfig */; + baseConfigurationReference = 0421114FF4A72C4B6114B97C28A38C3A /* MetaWear-AsyncUtils-Core-UI-watchOS.release.xcconfig */; buildSettings = { + APPLICATION_EXTENSION_API_ONLY = YES; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; @@ -4867,119 +4861,56 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS.modulemap"; - PRODUCT_MODULE_NAME = iOSDFULibrary; - PRODUCT_NAME = iOSDFULibrary; - SDKROOT = iphoneos; + MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = watchos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; + TARGETED_DEVICE_FAMILY = 4; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; + WATCHOS_DEPLOYMENT_TARGET = 4.0; }; - name = Debug; + name = Release; }; - 771C8875D07B25A057B25A2748837466 /* Release */ = { + 813B6B34E324E150926BCAE4299CC0F1 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 7D53C4762331E313543557FEEFC58092 /* MetaWear-AsyncUtils-Core-UI-tvOS.release.xcconfig */; + baseConfigurationReference = 597BB4FDABFB4BEA9A3862A562CED887 /* ZIPFoundation-macOS.debug.xcconfig */; buildSettings = { + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 789DA5440EA708A6660FA34900936456 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = AC68A1B035D2F7A706C5CEC4FAAB22F9 /* iOSDFULibrary-macOS.debug.xcconfig */; - buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; - CLANG_ENABLE_OBJC_WEAK = NO; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.14; - MODULEMAP_FILE = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS.modulemap"; - PRODUCT_MODULE_NAME = iOSDFULibrary; - PRODUCT_NAME = iOSDFULibrary; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MODULEMAP_FILE = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS.modulemap"; + PRODUCT_MODULE_NAME = ZIPFoundation; + PRODUCT_NAME = ZIPFoundation; SDKROOT = macosx; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; + SWIFT_VERSION = 4.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Debug; }; - 793C6C46B72C17F315A9989AD8D61419 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = BBE6BE9F290F399278452EF43CA4D1B9 /* iOSDFULibrary-macOS.release.xcconfig */; - buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; - CLANG_ENABLE_OBJC_WEAK = NO; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.14; - MODULEMAP_FILE = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS.modulemap"; - PRODUCT_MODULE_NAME = iOSDFULibrary; - PRODUCT_NAME = iOSDFULibrary; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; 86FC65F43749AE836E1827AF03DF8384 /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = 7A6B9FEEAA92367CFC5CD79E0FCAF8B2 /* Bolts-Swift-tvOS.debug.xcconfig */; @@ -5004,17 +4935,16 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.0; + TVOS_DEPLOYMENT_TARGET = 12.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Debug; }; - 880FC9D63AC2701AACB0B1D834350F69 /* Release */ = { + 8B95F84E1A5EFC66B91EA976EAC4A4B2 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 8940A499B23F205CC27EDBA8204CED90 /* ZIPFoundation-macOS.release.xcconfig */; + baseConfigurationReference = 03F1E3102C3F890C45FE08306FFD60EF /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.debug.xcconfig */; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -5025,28 +4955,27 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.11; - MODULEMAP_FILE = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS.modulemap"; - PRODUCT_MODULE_NAME = ZIPFoundation; - PRODUCT_NAME = ZIPFoundation; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; SDKROOT = macosx; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 5.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; - 9281AB9050F4B185C2E05A687F9776EB /* Debug */ = { + 907ACE36F8E709352852914A208B1C1D /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 03F1E3102C3F890C45FE08306FFD60EF /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.debug.xcconfig */; + baseConfigurationReference = AC68A1B035D2F7A706C5CEC4FAAB22F9 /* iOSDFULibrary-macOS.debug.xcconfig */; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -5057,14 +4986,14 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.14; - MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; + MODULEMAP_FILE = "Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS.modulemap"; + PRODUCT_MODULE_NAME = iOSDFULibrary; + PRODUCT_NAME = iOSDFULibrary; SDKROOT = macosx; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; @@ -5106,6 +5035,37 @@ }; name = Release; }; + 9A584149B4C42DA8FF3C32B613F6D47E /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9F800835A6F77B0E3045D698A12979F1 /* MetaWear-AsyncUtils-Core-UI-watchOS.debug.xcconfig */; + buildSettings = { + APPLICATION_EXTENSION_API_ONLY = YES; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = watchos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 4; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + WATCHOS_DEPLOYMENT_TARGET = 4.0; + }; + name = Debug; + }; 9D65AF463D9644BC297E5D1293AC40CF /* Release */ = { isa = XCBuildConfiguration; baseConfigurationReference = 7F692F934DEDB660C6698A9485AA4F76 /* Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS.release.xcconfig */; @@ -5132,17 +5092,18 @@ SDKROOT = appletvos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 12.0; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Release; }; - A463E25A1D3D1C73661131206EA6655D /* Release */ = { + 9EBFAC548B18447D85E8D91457E5C3D0 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 98F7AF2CE23CC1930AC18ED6BAA3A177 /* ZIPFoundation-iOS.release.xcconfig */; + baseConfigurationReference = AB0851094434AE3AB131EAA5B548883F /* MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.debug.xcconfig */; buildSettings = { + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; @@ -5151,24 +5112,23 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS.modulemap"; - PRODUCT_MODULE_NAME = ZIPFoundation; - PRODUCT_NAME = ZIPFoundation; + MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; A8DA88E84817140B6C25E2DC6D561501 /* Debug */ = { isa = XCBuildConfiguration; @@ -5186,7 +5146,7 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = "Target Support Files/Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS/Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MACH_O_TYPE = staticlib; MODULEMAP_FILE = "Target Support Files/Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS/Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS.modulemap"; @@ -5219,7 +5179,7 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = "Target Support Files/Pods-MetaWearIntegrationTests-iOS/Pods-MetaWearIntegrationTests-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MACH_O_TYPE = staticlib; MODULEMAP_FILE = "Target Support Files/Pods-MetaWearIntegrationTests-iOS/Pods-MetaWearIntegrationTests-iOS.modulemap"; @@ -5318,59 +5278,56 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MACOSX_DEPLOYMENT_TARGET = 10.14; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; PRODUCT_NAME = "$(TARGET_NAME)"; STRIP_INSTALLED_PRODUCT = NO; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; SWIFT_VERSION = 5.0; SYMROOT = "${SRCROOT}/../build"; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 12.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - D5544B4A7063878360B3D460D3EC2216 /* Debug */ = { + D9362D5536BB08EFEC49B4CF3672F910 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 597BB4FDABFB4BEA9A3862A562CED887 /* ZIPFoundation-macOS.debug.xcconfig */; + baseConfigurationReference = 7D53C4762331E313543557FEEFC58092 /* MetaWear-AsyncUtils-Core-UI-tvOS.release.xcconfig */; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; - CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.11; - MODULEMAP_FILE = "Target Support Files/ZIPFoundation-macOS/ZIPFoundation-macOS.modulemap"; - PRODUCT_MODULE_NAME = ZIPFoundation; - PRODUCT_NAME = ZIPFoundation; - SDKROOT = macosx; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = appletvos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 12.0; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; + name = Release; }; DB83D1EE7C501C29FFB56136E79CA377 /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = D67806B7EF620D21EEB845FE7B2BF36C /* Pods-MetaWear-MetaWear-macOS-MetaWearIntegrationTestHost-macOS.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -5414,7 +5371,7 @@ GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-prefix.pch"; INFOPLIST_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS.modulemap"; PRODUCT_MODULE_NAME = BoltsSwift; @@ -5430,70 +5387,9 @@ }; name = Release; }; - EABCCFB6E292CA069E37FB26AE0D948F /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7728E7D9EBAE97ECA45528D9287757A0 /* iOSDFULibrary-iOS.release.xcconfig */; - buildSettings = { - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS.modulemap"; - PRODUCT_MODULE_NAME = iOSDFULibrary; - PRODUCT_NAME = iOSDFULibrary; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - EBA4F48B2CD0C545F960A5246EBA2C72 /* Debug */ = { + E316793094A4CCB20FA3634F6FE51BC3 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 480D43633F8D604BCC70A3AED00509EB /* MetaWear-AsyncUtils-Core-UI-tvOS.debug.xcconfig */; - buildSettings = { - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - F0A8955FFF11A43A63F5E7BCAB1D574D /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 471949DE1C588949EA675BC34BD52CF8 /* ZIPFoundation-iOS.debug.xcconfig */; + baseConfigurationReference = 98F7AF2CE23CC1930AC18ED6BAA3A177 /* ZIPFoundation-iOS.release.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -5506,7 +5402,7 @@ GCC_PREFIX_HEADER = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS-prefix.pch"; INFOPLIST_FILE = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/ZIPFoundation-iOS/ZIPFoundation-iOS.modulemap"; PRODUCT_MODULE_NAME = ZIPFoundation; @@ -5516,10 +5412,11 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 4.0; TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; + name = Release; }; F45B395995A265A551634585FB42F7BA /* Debug */ = { isa = XCBuildConfiguration; @@ -5536,7 +5433,7 @@ GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-prefix.pch"; INFOPLIST_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS.modulemap"; PRODUCT_MODULE_NAME = BoltsSwift; @@ -5551,11 +5448,10 @@ }; name = Debug; }; - F75255A785BEEA81E640056DF57C2848 /* Debug */ = { + F6AAD6688394A5F8F7C9334B4E993B69 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 9F800835A6F77B0E3045D698A12979F1 /* MetaWear-AsyncUtils-Core-UI-watchOS.debug.xcconfig */; + baseConfigurationReference = AC14F27D31997A9BAB52F11719E73EB8 /* iOSDFULibrary-iOS.debug.xcconfig */; buildSettings = { - APPLICATION_EXTENSION_API_ONLY = YES; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; @@ -5564,122 +5460,131 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = watchos; + MODULEMAP_FILE = "Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS.modulemap"; + PRODUCT_MODULE_NAME = iOSDFULibrary; + PRODUCT_NAME = iOSDFULibrary; + SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 4; + TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; - WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 13C25D9AC9187FA38F346C47190DCCAD /* Build configuration list for PBXNativeTarget "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS" */ = { + 000FABAB2B19275F6A6F57FBDC36FF7F /* Build configuration list for PBXNativeTarget "ZIPFoundation-macOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - A8DA88E84817140B6C25E2DC6D561501 /* Debug */, - 2E2E4BABBE4CBB387811A7F5E669B850 /* Release */, + 813B6B34E324E150926BCAE4299CC0F1 /* Debug */, + 4CEED4C7169576531AB256FE463B9F9F /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 23777FCC2AB054866C68B9DFE7934AD7 /* Build configuration list for PBXNativeTarget "iOSDFULibrary-macOS" */ = { + 0F9414FB0836F7F4A5F8B1D2248F60F0 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-UI-watchOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 789DA5440EA708A6660FA34900936456 /* Debug */, - 793C6C46B72C17F315A9989AD8D61419 /* Release */, + 9A584149B4C42DA8FF3C32B613F6D47E /* Debug */, + 7DDF4755581705C01FBAF7A4841DA64F /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 2F4F90BF93F6FEC582100163F3CCA8BE /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS" */ = { + 11799B5FAD378C1E645674BFD2AFF2C2 /* Build configuration list for PBXNativeTarget "ZIPFoundation-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 12089D2662B226914136156E4A72830F /* Debug */, - 6FD985B0E1326D7E1721575B80BBCB82 /* Release */, + 2D0877D883B9DD5F412DEFCE55090046 /* Debug */, + E316793094A4CCB20FA3634F6FE51BC3 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 2F798629613A0D4ED430EA0D4315E7A4 /* Build configuration list for PBXNativeTarget "Bolts-Swift-watchOS" */ = { + 13C25D9AC9187FA38F346C47190DCCAD /* Build configuration list for PBXNativeTarget "Pods-MetaWear-MetaWear-iOS-MetaWearIntegrationTestHost-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - B1FEAF5BAD79A74C1EAE4065A1479D0A /* Debug */, - 97A43AB452331A86357A1DCF328465C8 /* Release */, + A8DA88E84817140B6C25E2DC6D561501 /* Debug */, + 2E2E4BABBE4CBB387811A7F5E669B850 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 40B3C411F942B04A8F769CB88A944DAD /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-UI-watchOS" */ = { + 165A0C60F81957823324F36997AE8171 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-UI-tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - F75255A785BEEA81E640056DF57C2848 /* Debug */, - 2BCDCD2DBFD68EA69C03D48B18652979 /* Release */, + 0208EA2EF4D2BA5AE00178F030B8EB60 /* Debug */, + D9362D5536BB08EFEC49B4CF3672F910 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 41B6F4E1F3AAB1B5E9EE241620DE4166 /* Build configuration list for PBXNativeTarget "Bolts-Swift-iOS" */ = { + 1F57030E1010E5367D81D87A02B4BE32 /* Build configuration list for PBXNativeTarget "iOSDFULibrary-macOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - F45B395995A265A551634585FB42F7BA /* Debug */, - DB9EF5EA1C2C880EB3C1115933A773DE /* Release */, + 907ACE36F8E709352852914A208B1C1D /* Debug */, + 51A25E784E037C7CD3D34056539A4E64 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { + 2F798629613A0D4ED430EA0D4315E7A4 /* Build configuration list for PBXNativeTarget "Bolts-Swift-watchOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 3924CB03F1975542FF980F7E4C3F8AAA /* Debug */, - D2425854E2D497B9A62DCA4DBA91F2E7 /* Release */, + B1FEAF5BAD79A74C1EAE4065A1479D0A /* Debug */, + 97A43AB452331A86357A1DCF328465C8 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 550272F0F798FD0777D7AB355A95393E /* Build configuration list for PBXNativeTarget "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS" */ = { + 41B6F4E1F3AAB1B5E9EE241620DE4166 /* Build configuration list for PBXNativeTarget "Bolts-Swift-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 0776BD3DFF054C321E8441FCB696120C /* Debug */, - 9D65AF463D9644BC297E5D1293AC40CF /* Release */, + F45B395995A265A551634585FB42F7BA /* Debug */, + DB9EF5EA1C2C880EB3C1115933A773DE /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 3924CB03F1975542FF980F7E4C3F8AAA /* Debug */, + D2425854E2D497B9A62DCA4DBA91F2E7 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 591E3BE00906A2A9ADB253E6B9529947 /* Build configuration list for PBXNativeTarget "ZIPFoundation-iOS" */ = { + 4E68E76D640A5A3FA22B853334D37E38 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - F0A8955FFF11A43A63F5E7BCAB1D574D /* Debug */, - A463E25A1D3D1C73661131206EA6655D /* Release */, + 8B95F84E1A5EFC66B91EA976EAC4A4B2 /* Debug */, + 7B9B758043B0D11439E3E6B524A4FCEC /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 605C826BCDB00CF8B50903B0EF1EF2A3 /* Build configuration list for PBXNativeTarget "ZIPFoundation-macOS" */ = { + 550272F0F798FD0777D7AB355A95393E /* Build configuration list for PBXNativeTarget "Pods-MetaWear-MetaWear-tvOS-MetaWearUnitTests-tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - D5544B4A7063878360B3D460D3EC2216 /* Debug */, - 880FC9D63AC2701AACB0B1D834350F69 /* Release */, + 0776BD3DFF054C321E8441FCB696120C /* Debug */, + 9D65AF463D9644BC297E5D1293AC40CF /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 6F6ACB325DC7480C7D93A67FBE0D6472 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-UI-tvOS" */ = { + 5DF1D27648DEB747445A5F3B9D40615B /* Build configuration list for PBXNativeTarget "iOSDFULibrary-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - EBA4F48B2CD0C545F960A5246EBA2C72 /* Debug */, - 771C8875D07B25A057B25A2748837466 /* Release */, + F6AAD6688394A5F8F7C9334B4E993B69 /* Debug */, + 3F471C2C40898BC1A33F609C348CA983 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -5720,20 +5625,20 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - CA3FF7C1A2DCC5CBDF2CCC91996FE6FA /* Build configuration list for PBXNativeTarget "iOSDFULibrary-iOS" */ = { + D32C867FED70B68A0AF7D3B08A66EF1C /* Build configuration list for PBXNativeTarget "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension" */ = { isa = XCConfigurationList; buildConfigurations = ( - 759135CCC8A9C1F75F5125FD976986A0 /* Debug */, - EABCCFB6E292CA069E37FB26AE0D948F /* Release */, + 1501E793691B36AA9E564008201D5469 /* Debug */, + 6D37D324F98BC1BB2ED90E6C8AFCEC1E /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - D32C867FED70B68A0AF7D3B08A66EF1C /* Build configuration list for PBXNativeTarget "Pods-MetaWear-MetaWear-watchOS-MetaWearIntegrationTestHost-watchOS Extension" */ = { + E04EC46CB2314773E61FC314A05B05F8 /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 1501E793691B36AA9E564008201D5469 /* Debug */, - 6D37D324F98BC1BB2ED90E6C8AFCEC1E /* Release */, + 9EBFAC548B18447D85E8D91457E5C3D0 /* Debug */, + 0F410233F246C5F4B88558DB4F7F366F /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -5774,15 +5679,6 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - FB874F0DBDC55C5513173BE0C143D5EB /* Build configuration list for PBXNativeTarget "MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 9281AB9050F4B185C2E05A687F9776EB /* Debug */, - 61A424B662B5FD67E6A97BC4E6957026 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; FEDE60CFF2EB4F90C736D4BAA0EC99B5 /* Build configuration list for PBXNativeTarget "Pods-MetaWear-MetaWear-tvOS-MetaWearIntegrationTestHost-tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist b/MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist index 4af92a1..3424ca6 100644 --- a/MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist +++ b/MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-iOS-Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 3.4.3 + 4.0.0 CFBundleSignature ???? CFBundleVersion diff --git a/MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist b/MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist index 4af92a1..3424ca6 100644 --- a/MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist +++ b/MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS/MetaWear-AsyncUtils-Core-DFU-Mocks-UI-macOS-Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 3.4.3 + 4.0.0 CFBundleSignature ???? CFBundleVersion diff --git a/MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist b/MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist index 4af92a1..3424ca6 100644 --- a/MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist +++ b/MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-UI-tvOS/MetaWear-AsyncUtils-Core-UI-tvOS-Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 3.4.3 + 4.0.0 CFBundleSignature ???? CFBundleVersion diff --git a/MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist b/MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist index 4af92a1..3424ca6 100644 --- a/MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist +++ b/MetaWear/Pods/Target Support Files/MetaWear-AsyncUtils-Core-UI-watchOS/MetaWear-AsyncUtils-Core-UI-watchOS-Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 3.4.3 + 4.0.0 CFBundleSignature ???? CFBundleVersion diff --git a/README.md b/README.md index 377e84c..ae4e87e 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,7 @@ use_frameworks! target 'MyApp' do pod "MetaWear", :subspecs => ['UI', 'AsyncUtils', 'Mocks', 'DFU'] pod "MetaWear" - pod "MetaWear", '~> 3.4.3' + pod "MetaWear", '~> '4.0.0' end ``` Tip: CocoaPods provides a pod init command to create a Podfile with smart defaults. You should use it. diff --git a/StarterProject/Podfile.lock b/StarterProject/Podfile.lock index eccf1be..53c4ebc 100644 --- a/StarterProject/Podfile.lock +++ b/StarterProject/Podfile.lock @@ -1,11 +1,11 @@ PODS: - Bolts-Swift (1.5.0) - MBProgressHUD (1.2.0) - - MetaWear/AsyncUtils (3.4.3): + - MetaWear/AsyncUtils (4.0.0): - MetaWear/Core - - MetaWear/Core (3.4.3): + - MetaWear/Core (4.0.0): - Bolts-Swift (~> 1) - - MetaWear/UI (3.4.3): + - MetaWear/UI (4.0.0): - MetaWear/AsyncUtils - MetaWear/Core @@ -27,7 +27,7 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: Bolts-Swift: afbbaf8c8186e7f769be4afa656949c14087ba44 MBProgressHUD: 3ee5efcc380f6a79a7cc9b363dd669c5e1ae7406 - MetaWear: dfdae0f084c45f7fd06c02e9e5541009ba8dd863 + MetaWear: 26e6a18edf8f138f3cc479c06b1811bb76ab9bac PODFILE CHECKSUM: d30d97d5dcee211c7dad6cd6aecaa18d5c5a49a6 diff --git a/StarterProject/Pods/Local Podspecs/Bolts-Swift.podspec.json b/StarterProject/Pods/Local Podspecs/Bolts-Swift.podspec.json deleted file mode 100644 index c653c32..0000000 --- a/StarterProject/Pods/Local Podspecs/Bolts-Swift.podspec.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "name": "Bolts-Swift", - "version": "1.3.0", - "license": { - "type": "BSD" - }, - "summary": "Bolts is a collection of low-level libraries designed to make developing mobile apps easier.", - "homepage": "https://github.com/BoltsFramework", - "authors": { - "Nikita Lutsenko": "nlutsenko@me.com" - }, - "source": { - "git": "https://github.com/BoltsFramework/Bolts-Swift.git", - "tag": "1.3.0" - }, - "requires_arc": true, - "platforms": { - "ios": "8.0", - "osx": "10.10", - "tvos": "9.0", - "watchos": "2.0" - }, - "source_files": "Sources/BoltsSwift/*.swift", - "module_name": "BoltsSwift" -} diff --git a/StarterProject/Pods/Local Podspecs/MetaWear.podspec.json b/StarterProject/Pods/Local Podspecs/MetaWear.podspec.json index cf194a9..cd42b27 100644 --- a/StarterProject/Pods/Local Podspecs/MetaWear.podspec.json +++ b/StarterProject/Pods/Local Podspecs/MetaWear.podspec.json @@ -1,6 +1,6 @@ { "name": "MetaWear", - "version": "3.4.3", + "version": "4.0.0", "license": { "type": "Commercial", "text": "See https://www.mbientlab.com/terms/", @@ -14,7 +14,7 @@ }, "source": { "git": "https://github.com/mbientlab/MetaWear-SDK-iOS-macOS-tvOS.git", - "tag": "3.4.3", + "tag": "4.0.0", "submodules": true }, "platforms": { @@ -33,7 +33,13 @@ "preserve_paths": "MetaWear/MetaWear-SDK-Cpp/src/**/*", "source_files": [ "MetaWear/Core/**/*", - "MetaWear/MetaWear-SDK-Cpp/src/metawear/**/*.cpp", + "MetaWear/MetaWear-SDK-Cpp/src/metawear/core/*/*.cpp", + "MetaWear/MetaWear-SDK-Cpp/src/metawear/dfu/*/*.cpp", + "MetaWear/MetaWear-SDK-Cpp/src/metawear/impl/*/*.cpp", + "MetaWear/MetaWear-SDK-Cpp/src/metawear/peripheral/*/*.cpp", + "MetaWear/MetaWear-SDK-Cpp/src/metawear/platform/*/*.cpp", + "MetaWear/MetaWear-SDK-Cpp/src/metawear/processor/*/*.cpp", + "MetaWear/MetaWear-SDK-Cpp/src/metawear/sensor/*/*.cpp", "MetaWear/MetaWear-SDK-Cpp/bindings/swift/**/*" ], "compiler_flags": [ diff --git a/StarterProject/Pods/Manifest.lock b/StarterProject/Pods/Manifest.lock index eccf1be..53c4ebc 100644 --- a/StarterProject/Pods/Manifest.lock +++ b/StarterProject/Pods/Manifest.lock @@ -1,11 +1,11 @@ PODS: - Bolts-Swift (1.5.0) - MBProgressHUD (1.2.0) - - MetaWear/AsyncUtils (3.4.3): + - MetaWear/AsyncUtils (4.0.0): - MetaWear/Core - - MetaWear/Core (3.4.3): + - MetaWear/Core (4.0.0): - Bolts-Swift (~> 1) - - MetaWear/UI (3.4.3): + - MetaWear/UI (4.0.0): - MetaWear/AsyncUtils - MetaWear/Core @@ -27,7 +27,7 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: Bolts-Swift: afbbaf8c8186e7f769be4afa656949c14087ba44 MBProgressHUD: 3ee5efcc380f6a79a7cc9b363dd669c5e1ae7406 - MetaWear: dfdae0f084c45f7fd06c02e9e5541009ba8dd863 + MetaWear: 26e6a18edf8f138f3cc479c06b1811bb76ab9bac PODFILE CHECKSUM: d30d97d5dcee211c7dad6cd6aecaa18d5c5a49a6 diff --git a/StarterProject/Pods/MetaWear/LICENSE b/StarterProject/Pods/MetaWear/LICENSE deleted file mode 100644 index 45a44b8..0000000 --- a/StarterProject/Pods/MetaWear/LICENSE +++ /dev/null @@ -1,10 +0,0 @@ -Copyright 2014-2015 MbientLab Inc. All rights reserved. - -IMPORTANT: Your use of this Software is limited to those specific rights granted under the terms of a software license agreement between the user who downloaded the software, his/her employer (which must be your employer) and MbientLab Inc, (the "License"). -You may not use this Software unless you agree to abide by the terms of the License which can be found at www.mbientlab.com/terms. -The License limits your use, and you acknowledge, that the Software may be modified, copied, and distributed when used in conjunction with an MbientLab Inc, product. -Other than for the foregoing purpose, you may not use, reproduce, copy, prepare derivative works of, modify, distribute, perform, display or sell this Software and/or its documentation for any purpose. - -YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - -Should you have any questions regarding your right to use this Software, contact MbientLab via email: hello@mbientlab.com. diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Categories/BFTask+MBLExtensions.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Categories/BFTask+MBLExtensions.h deleted file mode 100644 index e21734f..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Categories/BFTask+MBLExtensions.h +++ /dev/null @@ -1,92 +0,0 @@ -/** - * BFTask+MBLExtensions.h - * MetaWear - * - * Created by Stephen Schiffli on 12/17/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Convience functions for dealing with BFTasks within the MetaWear SDK - */ -@interface BFExecutor (MBLExtensions) - -/** - Executes on the [MBLMetaWearManager dispatchQueue] - */ -+ (instancetype)dispatchExecutor; - -@end - - -/** - Convience functions for dealing with BFTasks within the MetaWear SDK - */ -@interface BFTask<__covariant ResultType> (MBLExtensions) - -typedef void (^MBLSuccessBlock)(ResultType result); -typedef void (^MBLErrorBlock)(NSError *error); - -/** - Add a block to be called if the task finishes successfully, complete with the - tasks result. This callback will occur on the dispatchExecutor. - */ -- (instancetype)success:(MBLSuccessBlock)block; - -/** - Add a block to be called if the task finishes with an error. - This callback will occur on the dispatchExecutor. - */ -- (instancetype)failure:(MBLErrorBlock)block; - - -/** - Enqueues the given block to be run once this task completes successfully. - This callback will occur on the dispatchExecutor. - */ -- (instancetype)continueOnDispatchWithSuccessBlock:(BFContinuationBlock)block; - -/** - Enqueues the given block to be run once this task completes. - This callback will occur on the dispatchExecutor. - */ -- (instancetype)continueOnDispatchWithBlock:(BFContinuationBlock)block; - -@end - - -extern void MBLForceLoadCategory_BFTask_MBLExtensions(); - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Categories/BFTask+MBLExtensions.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Categories/BFTask+MBLExtensions.m deleted file mode 100644 index b12bed1..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Categories/BFTask+MBLExtensions.m +++ /dev/null @@ -1,96 +0,0 @@ -/** - * BFTask+MBLExtensions.m - * MetaWear - * - * Created by Stephen Schiffli on 12/17/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "BFTask+MBLExtensions.h" -#import "BFTask+Private.h" -#import "MBLMetaWearManager+Private.h" - -@implementation BFExecutor (MBLExtensions) - - -+ (BFExecutor *)dispatchExecutor -{ - static BFExecutor *singleton; - static dispatch_once_t onceToken = 0; - dispatch_once(&onceToken, ^{ - singleton = [BFExecutor executorWithBlock:^void(void(^block)()) { - [[MBLMetaWearManager dispatchQueue] addOperationWithBlock:block]; - }]; - }); - return singleton; -} - -@end - -@implementation BFTask (MBLExtensions) - -- (instancetype)success:(MBLSuccessBlock)block -{ - return [self continueOnDispatchWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - // We need to send a non-null response but some tasks don't - // produce a result so we just fake a @YES for those - block(task.result ? task.result : @YES); - return task; - }]; -} - -- (instancetype)failure:(MBLErrorBlock)block -{ - return [self continueOnDispatchWithBlock:^id _Nullable(BFTask * _Nonnull task) { - if (task.error) { - block(task.error); - } - return task; - }]; -} - -- (instancetype)continueOnDispatchWithSuccessBlock:(BFContinuationBlock)block -{ - return [self continueWithExecutor:[BFExecutor dispatchExecutor] withSuccessBlock:block]; -} - -- (instancetype)continueOnDispatchWithBlock:(BFContinuationBlock)block -{ - return [self continueWithExecutor:[BFExecutor dispatchExecutor] withBlock:block]; -} - -@end - -void MBLForceLoadCategory_BFTask_MBLExtensions() -{ - NSString *string = nil; - [string description]; -} - diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLConstants.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLConstants.h deleted file mode 100644 index 769791c..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLConstants.h +++ /dev/null @@ -1,196 +0,0 @@ -/** - * MBLConstants.h - * MetaWear - * - * Created by Stephen Schiffli on 7/30/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -@class MBLAccelerometerData; -@class MBLDeviceInfo; -@class MBLFirmwareBuild; - -#if TARGET_OS_IOS || TARGET_OS_TV -#import -#define MBLColor UIColor -#else -#import -#define MBLColor NSColor -#endif - -NS_ASSUME_NONNULL_BEGIN - -extern NSString *const kMBLAPIVersion; - -#pragma mark - Enums - -/** - Supported Firmware Versions - */ -typedef NS_ENUM(uint8_t, MBLFirmwareVersion) { - MBLFirmwareVersion1_0_4, - MBLFirmwareVersion1_0_5, - MBLFirmwareVersion1_0_6, - MBLFirmwareVersion1_0_7, - MBLFirmwareVersion1_1_0, - MBLFirmwareVersion1_1_1, - MBLFirmwareVersion1_1_2, - MBLFirmwareVersion1_2_0, - MBLFirmwareVersion1_2_1, - MBLFirmwareVersion1_2_2, - MBLFirmwareVersion1_2_3, - MBLFirmwareVersion1_2_4, - MBLFirmwareVersion1_2_5 -}; -NSString *MBLFirmwareVersionString(MBLFirmwareVersion version); - -/** - Supported models of Meta family of products - */ -typedef NS_ENUM(uint8_t, MBLModel) { - MBLModelUnknown, - MBLModelMetaWearR, - MBLModelMetaWearRG, - MBLModelMetaWearRPro, - MBLModelMetaWearC, - MBLModelMetaWearCPro, - MBLModelMetaWearCEnv, - MBLModelMetaWearCDet, - MBLModelMetaWearHR, - MBLModelMetaWearPPG, - MBLModelMetaTracker, - MBLModelMetaMotionR, - MBLModelMetaMotionC -}; - -/** - Verbosity of log messages coming from the MetaWear SDK - */ -typedef NS_ENUM(uint8_t, MBLLogLevel) { - MBLLogLevelNone = 0, - MBLLogLevelError = 1, - MBLLogLevelWarning = 2, - MBLLogLevelInfo = 3, - MBLLogLevelDebug = 4 -}; - -#pragma mark - Block Typedefs - -typedef void (^MBLVoidHandler)(); -typedef void (^MBLErrorHandler)(NSError *__nullable error); -typedef void (^MBLDataHandler)(NSData *__nullable data, NSError *__nullable error); -typedef void (^MBLObjectHandler)(id __nullable obj, NSError *__nullable error); -typedef void (^MBLArrayHandler)(NSArray *__nonnull array); -typedef void (^MBLArrayErrorHandler)(NSArray *__nullable array, NSError *__nullable error); -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" -typedef void (^MBLCentralManagerStateHandler)(CBCentralManagerState state); -#pragma clang diagnostic pop -typedef void (^MBLAccelerometerHandler)(MBLAccelerometerData *__nullable acceleration, NSError *__nullable error); -typedef void (^MBLDeviceInfoHandler)(MBLDeviceInfo *__nullable deviceInfo, NSError *__nullable error); -typedef void (^MBLDecimalNumberHandler)(NSDecimalNumber *__nullable number, NSError *__nullable error); -typedef void (^MBLThresholdHandler)(NSDecimalNumber *__nullable number, BOOL isRising, NSError *__nullable error); -typedef void (^MBLNumberHandler)(NSNumber *__nullable number, NSError *__nullable error); -typedef void (^MBLSwitchStateHandler)(BOOL isPressed, NSError *__nullable error); -typedef void (^MBLBoolHandler)(BOOL isTrue, NSError *__nullable error); -typedef void (^MBLFloatHandler)(float number); -typedef void (^MBLLogProgressHandler)(uint32_t totalEntries, uint32_t remainingEntries); -typedef void (^MBLStringHandler)(NSString *__nullable string); -typedef void (^MBLFirmwareBuildHandler)(MBLFirmwareBuild *__nullable firmware, NSError *__nullable error); -typedef void (^MBLUrlHandler)(NSURL *__nullable url, NSError *__nullable error); -typedef void (^MBLFirmwareUpdateHandler)(NSURL *__nullable firmwareUrl, CBPeripheral *__nullable target, CBCentralManager *__nullable centralManager, NSError *__nullable error); - -#pragma mark - Errors - -extern NSString *__nonnull const kMBLErrorDomain; - -/*! @abstract 100: Unexpected number of bluetooth services */ -extern NSInteger const kMBLErrorUnexpectedServices; - -/*! @abstract 101: Unexpected number of bluetooth characteristics */ -extern NSInteger const kMBLErrorUnexpectedCharacteristics; - -/*! @abstract 102: Couldn't connect to firmware updater */ -extern NSInteger const kMBLErrorNoFirmwareUpdater; - -/*! @abstract 103: MetaWear object not recognized by MetaWearManager */ -extern NSInteger const kMBLErrorInvalidMetaWearObject; - -/*! @abstract 104: MetaWear not charged enough for firmware update */ -extern NSInteger const kMBLErrorInsufficientCharge; - -/*! @abstract 105: MetaWear firmware version too old */ -extern NSInteger const kMBLErrorOutdatedFirmware; - -/*! @abstract 106: Unexpected disconnect during a connection */ -extern NSInteger const kMBLErrorUnexpectedDisconnect; - -/*! @abstract 107: Timeout during connection */ -extern NSInteger const kMBLErrorConnectionTimeout; - -/*! @abstract 108: Couldn't perform DFU, bad model number given */ -extern NSInteger const kMBLErrorWrongFirmwareModelNumber; - -/*! @abstract 109: Couldn't perform DFU, no valid firmware releases found */ -extern NSInteger const kMBLErrorNoAvaliableFirmware; - -/*! @abstract 110: MetaWear not connected, can't perform operation */ -extern NSInteger const kMBLErrorNotConnected; - -/*! @abstract 111: MetaWear out of memory, can't perform action */ -extern NSInteger const kMBLErrorInsufficientMemory; - -/*! @abstract 112: Invalid use of API, can't perform action */ -extern NSInteger const kMBLErrorOperationInvalid; - -/*! @abstract 113: MetaWear had unexpected data */ -extern NSInteger const kMBLErrorUnexpectedData; - -/*! @abstract 114: Exception */ -extern NSInteger const kMBLErrorUnexpectedException; - -/*! @abstract 115: Core Bluetooth not powered on correctly */ -extern NSInteger const kMBLErrorBluetoothPoweredOff; - -/*! @abstract 116: The platform doesn't support the Bluetooth Low Energy Central/Client role */ -extern NSInteger const kMBLErrorBluetoothUnsupported; - -/*! @abstract 117: The application is not authorized to use the Bluetooth Low Energy Central/Client role.*/ -extern NSInteger const kMBLErrorBluetoothUnauthorized; - -/*! @abstract 118: Requested a disconnect while a connection was in progress .*/ -extern NSInteger const kMBLErrorDisconnectRequested; - -/*! @abstract 119: DFU service was found during a connection .*/ -extern NSInteger const kMBLErrorDFUServiceFound; - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLConstants.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLConstants.m deleted file mode 100644 index 7b95caa..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLConstants.m +++ /dev/null @@ -1,222 +0,0 @@ -/** - * MBLConstants.m - * MetaWear - * - * Created by Stephen Schiffli on 7/30/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLConstants.h" -#import "MBLConstants+Private.h" - -NSString *const kMBLAPIVersion = @"2.7.2"; - -NSString *MBLFirmwareVersionString(MBLFirmwareVersion version) -{ - switch (version) { - case MBLFirmwareVersion1_0_4: - return @"1.0.4"; - case MBLFirmwareVersion1_0_5: - return @"1.0.5"; - case MBLFirmwareVersion1_0_6: - return @"1.0.6"; - case MBLFirmwareVersion1_0_7: - return @"1.0.7"; - case MBLFirmwareVersion1_1_0: - return @"1.1.0"; - case MBLFirmwareVersion1_1_1: - return @"1.1.1"; - case MBLFirmwareVersion1_1_2: - return @"1.1.2"; - case MBLFirmwareVersion1_2_0: - return @"1.2.0"; - case MBLFirmwareVersion1_2_1: - return @"1.2.1"; - case MBLFirmwareVersion1_2_2: - return @"1.2.2"; - case MBLFirmwareVersion1_2_3: - return @"1.2.3"; - case MBLFirmwareVersion1_2_4: - return @"1.2.4"; - case MBLFirmwareVersion1_2_5: - return @"1.2.5"; - } -} - -#pragma mark - Errors - -NSString *const kMBLErrorDomain = @"com.mbientlab"; - -NSInteger const kMBLErrorUnexpectedServices = 100; -NSInteger const kMBLErrorUnexpectedCharacteristics = 101; -NSInteger const kMBLErrorNoFirmwareUpdater = 102; -NSInteger const kMBLErrorInvalidMetaWearObject = 103; -NSInteger const kMBLErrorInsufficientCharge = 104; -NSInteger const kMBLErrorOutdatedFirmware = 105; -NSInteger const kMBLErrorUnexpectedDisconnect = 106; -NSInteger const kMBLErrorConnectionTimeout = 107; -NSInteger const kMBLErrorWrongFirmwareModelNumber = 108; -NSInteger const kMBLErrorNoAvaliableFirmware = 109; -NSInteger const kMBLErrorNotConnected = 110; -NSInteger const kMBLErrorInsufficientMemory = 111; -NSInteger const kMBLErrorOperationInvalid = 112; -NSInteger const kMBLErrorUnexpectedData = 113; -NSInteger const kMBLErrorUnexpectedException = 114; -NSInteger const kMBLErrorBluetoothPoweredOff = 115; -NSInteger const kMBLErrorBluetoothUnsupported = 116; -NSInteger const kMBLErrorBluetoothUnauthorized = 117; -NSInteger const kMBLErrorDisconnectRequested = 118; -NSInteger const kMBLErrorDFUServiceFound = 119; - - -static const uint8_t simulatorKey; -static uint8_t simulatorContext; -static const uint8_t metaWearKey; -static uint8_t metaWearContext; - -@implementation MBLConstants - -+ (dispatch_queue_t)metaWearQueue; -{ - static dispatch_queue_t singleton; - static dispatch_once_t onceToken = 0; - dispatch_once(&onceToken, ^{ - singleton = dispatch_queue_create("com.mbientlab.metawear.metaWearQueue", DISPATCH_QUEUE_SERIAL); - dispatch_queue_set_specific(singleton, &metaWearKey, &metaWearContext, nil); - }); - return singleton; -} - -+ (dispatch_queue_t)simulatorQueue -{ - static dispatch_queue_t singleton; - static dispatch_once_t onceToken = 0; - dispatch_once(&onceToken, ^{ - singleton = dispatch_queue_create("com.mbientlab.metawear.simulator", DISPATCH_QUEUE_SERIAL); - dispatch_queue_set_specific(singleton, &simulatorKey, &simulatorContext, nil); - }); - return singleton; -} - -+ (BOOL)isSimulatorQueue -{ - return (&simulatorContext == dispatch_get_specific(&simulatorKey)); -} - -+ (BOOL)isMetaWearQueue -{ - return ((&metaWearContext == dispatch_get_specific(&metaWearKey)) || [MBLConstants isSimulatorQueue]); -} - -+ (CBUUID *)serviceUUID -{ - return [CBUUID UUIDWithString:@"326A9000-85CB-9195-D9DD-464CFBBAE75A"]; -} -+ (CBUUID *)commandUUID -{ - return [CBUUID UUIDWithString:@"326A9001-85CB-9195-D9DD-464CFBBAE75A"]; -} -+ (CBUUID *)notificationUUID -{ - return [CBUUID UUIDWithString:@"326A9006-85CB-9195-D9DD-464CFBBAE75A"]; -} - -+ (CBUUID *)DFUServiceUUID -{ - return [CBUUID UUIDWithString:@"00001530-1212-EFDE-1523-785FEABCD123"]; -} - -+ (CBUUID *)batteryServiceUUID -{ - return [CBUUID UUIDWithString:@"180F"]; -} -+ (CBUUID *)batteryLifeUUID -{ - return [CBUUID UUIDWithString:@"2A19"]; -} - -+ (CBUUID *)DISServiceUUID -{ - return [CBUUID UUIDWithString:@"180A"]; -} -+ (CBUUID *)DISModelNumberUUID -{ - return [CBUUID UUIDWithString:@"2A24"]; -} -+ (CBUUID *)DISSerialNumberUUID -{ - return [CBUUID UUIDWithString:@"2A25"]; -} -+ (CBUUID *)DISFirmwareRevUUID -{ - return [CBUUID UUIDWithString:@"2A26"]; -} -+ (CBUUID *)DISHardwareRevUUID -{ - return [CBUUID UUIDWithString:@"2A27"]; -} -+ (CBUUID *)DISManufacturerNameUUID -{ - return [CBUUID UUIDWithString:@"2A29"]; -} - -+ (BOOL)versionString:(NSString *)a isLessThan:(NSString *)b -{ - NSArray *aVersion = [a componentsSeparatedByString:@"."]; - NSArray *bVersion = [b componentsSeparatedByString:@"."]; - long size = MIN(aVersion.count, bVersion.count); - - for (int i = 0; i < size; i++) { - if ([aVersion[i] intValue] == [bVersion[i] intValue]) { - continue; - } - return [aVersion[i] intValue] < [bVersion[i] intValue]; - } - return aVersion.count < bVersion.count; -} - -#define CLAMP(x, low, high) ({\ -__typeof__(x) __x = (x); \ -__typeof__(low) __low = (low);\ -__typeof__(high) __high = (high);\ -__x > __high ? __high : (__x < __low ? __low : __x);\ -}) - -+ (double)clampDouble:(double)x low:(double)low high:(double)high -{ - return CLAMP(x, low, high); -} - -+ (double)clampInt:(int)x low:(int)low high:(int)high -{ - return CLAMP(x, low, high); -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLData.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLData.h deleted file mode 100644 index 80836c7..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLData.h +++ /dev/null @@ -1,87 +0,0 @@ -/** - * MBLData.h - * MetaWear - * - * Created by Stephen Schiffli on 1/23/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -@class MBLEvent; - -NS_ASSUME_NONNULL_BEGIN - -/** - This object represents synchronous data from sensors and peripherals on the MetaWear board. - */ -@interface MBLData : MBLRegister - -typedef void (^MBLDataNotificationHandler)(ResultType __nullable obj, NSError *__nullable error); - -/** - Perform a one time read of the current value, use the returned BFTask to get value. - */ -- (BFTask *)readAsync; - -/** - Create a new event that will periodically read this data a fixed number of times. - @param period Period time in mSec - @param eventCount Number of times event will be triggered, 0xFFFF will repeat forever - @returns New event that will read this data periodically - */ -- (MBLEvent *)periodicReadWithPeriod:(uint32_t)period - eventCount:(uint16_t)eventCount; - -/** - Create a new event that will periodically read this data until canceled. - @param period Period time in mSec - @returns New event that will read this data periodically - */ -- (MBLEvent *)periodicReadWithPeriod:(uint32_t)period; - - -/** - Manually receive callbacks when this data is read, note you need to set up something - else that will perform the actual reads. The type of the object that is passed to the - handler depends on the event being handled - @param handler Block invoked when this data is read - */ -- (void)addNotificationsHandler:(nullable MBLDataNotificationHandler)handler; - -/** - Remove all notification handlers for this data object - */ -- (void)removeNotificationHandlers; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLData.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLData.m deleted file mode 100644 index 2e392fa..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLData.m +++ /dev/null @@ -1,144 +0,0 @@ -/** - * MBLData.m - * MetaWear - * - * Created by Stephen Schiffli on 1/23/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLData+Private.h" -#import "MBLRegister+Private.h" -#import "MBLTimer+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLTriggeredRead.h" -#import "MBLConstants+Private.h" -#import "BFTask+Private.h" -#import "BFTask+MBLExtensions.h" -#import "MBLDownloadOnlyEvent.h" - - -@implementation MBLData - -- (instancetype)initWithModule:(MBLModule *)module registerId:(uint8_t)registerId index:(uint8_t)index format:(MBLFormat *)format -{ - self = [super initWithModule:module registerId:registerId index:index format:format]; - if (self) { - } - return self; -} - -- (instancetype)initWithModule:(MBLModule *)module registerId:(uint8_t)registerId format:(MBLFormat *)format -{ - return [self initWithModule:module registerId:registerId index:0xFF format:format]; -} - -- (BFTask *)simulatedReadAsync:(BOOL)isLocal -{ - assert([MBLConstants isSimulatorQueue]); - MBLMetaWear *device = self.module.device; - - // Increment the simulator queue - [device incrementCount]; - return [[[[[BFTask taskFromExecutor:[BFExecutor metaWearExecutor] withBlock:^id _Nonnull{ - return [self initializeAsync]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self activateAsync]; - }] continueWithExecutor:[BFExecutor simulatorExecutor] withBlock:^id _Nullable(BFTask * _Nonnull task) { - return isLocal ? [super localReadAsync] : [super readAsync]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - assert(device.command.activatedRegHandler); - device.command.activatedRegHandler(self, nil); - return task; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - [device decrementCount]; - return task; - }]; -} - -- (BFTask *)readAsync -{ - if ([MBLConstants isSimulatorQueue]) { - return [self simulatedReadAsync:NO]; - } - - MBLMetaWear *device = self.module.device; - [device incrementCount]; - BFTask __block *resultTask = nil; - return [[[[[[self initializeAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self activateAsync]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [super readAsync]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - resultTask = task; - return [self deactivateAsync]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self deinitializeAsync]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - [device decrementCount]; - return task.faulted ? task : resultTask; - }]; -} - -- (void)addNotificationsHandler:(MBLDataNotificationHandler)handler -{ - dispatch_async([MBLConstants metaWearQueue], ^{ - [super addNotificationWithExecutor:[BFExecutor dispatchExecutor] handler:handler]; - }); -} - -- (void)removeNotificationHandlers -{ - [super removeNotificationHandlers]; -} - -- (BFTask *)addLoggingEntry -{ - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - MBLEvent *event = [[MBLDownloadOnlyEvent alloc] initWithModule:self.module registerId:self.registerId | 0xC0 index:self.index format:self.format]; - [[[event startLoggingAsync] success:^(id _Nonnull result) { - [source trySetResult:event]; - }] failure:^(NSError * _Nonnull error) { - [source trySetError:error]; - }]; - return source.task; -} - -- (MBLEvent *)periodicReadWithPeriod:(uint32_t)period - eventCount:(uint16_t)eventCount -{ - return [[MBLTriggeredRead alloc] initWithData:self period:period eventCount:eventCount]; -} - -- (MBLEvent *)periodicReadWithPeriod:(uint32_t)period -{ - return [self periodicReadWithPeriod:period eventCount:0xFFFF]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDataSample.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDataSample.h deleted file mode 100644 index bce7ea2..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDataSample.h +++ /dev/null @@ -1,61 +0,0 @@ -/** - * MBLDataSample.h - * MetaWear - * - * Created by Stephen Schiffli on 5/7/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Generic base class for data coming from the MetaWear - */ -@interface MBLDataSample : NSObject - -/* - Date/Time on which this sample was taken - */ -@property (nonatomic, readonly) NSDate *timestamp; -/* - Raw data of the sample (if avaliable) - */ -@property (nonatomic, readonly, nullable) NSData *data; - -/* - A standardized CSV, new-line terminated representation of the sample - */ -@property (nonatomic, readonly, nullable) NSString *csvRepresentation; - -@end - -NS_ASSUME_NONNULL_END \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDataSample.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDataSample.m deleted file mode 100644 index 6c07394..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDataSample.m +++ /dev/null @@ -1,87 +0,0 @@ -/** - * MBLDataSample.m - * MetaWear - * - * Created by Stephen Schiffli on 5/7/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ -#import "MBLDataSample+Private.h" - -@interface MBLDataSample () -@property (nonatomic) NSDate *timestamp; -@property (nonatomic) NSData *data; -@end - -@implementation MBLDataSample - -- (instancetype)initWithTimestamp:(NSDate *)timestamp -{ - return [self initWithTimestamp:timestamp data:nil]; -} - -- (instancetype)initWithTimestamp:(NSDate *)timestamp data:(NSData *)data -{ - self = [super init]; - if (self) { - self.timestamp = timestamp; - self.data = data; - } - return self; -} - -- (NSString *)description -{ - if (self.data) { - return [NSString stringWithFormat:@"%@ %@", [NSDateFormatter localizedStringFromDate:self.timestamp - dateStyle:NSDateFormatterMediumStyle - timeStyle:NSDateFormatterMediumStyle], self.data]; - } else { - return [NSDateFormatter localizedStringFromDate:self.timestamp - dateStyle:NSDateFormatterMediumStyle - timeStyle:NSDateFormatterMediumStyle]; - } -} - -- (NSString *)csvRepresentation -{ - uint8_t const *bytes = self.data.bytes; - NSInteger length = self.data.length; - NSMutableString *str = [NSMutableString string]; - if (length > 0) { - [str appendFormat:@"%02X", *bytes]; - bytes++; - } - for (int i = 1; i < length; i++, bytes++) { - [str appendFormat:@"-%02X", *bytes]; - } - return [NSString stringWithFormat:@"%f,%@\n", self.timestamp.timeIntervalSince1970, str]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDataSwitch.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDataSwitch.h deleted file mode 100644 index 6a91858..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDataSwitch.h +++ /dev/null @@ -1,58 +0,0 @@ -/** - * MBLDataSwitch.h - * MetaWear - * - * Created by Stephen Schiffli on 2/17/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - The data switch filter conditionally allows the input values to pass. It can either - be on or off, or put into a countdown mode where it allows N samples to pass. - */ -@interface MBLDataSwitch : MBLFilter - -/** - Set the countdown to a specific value. This will allows 'count' values to pass through. - */ -- (BFTask *)resetCountAsync:(uint16_t)count; - -/** - Set the switch to allow samples to pass throught or not. YES will pass samples, NO will not. - */ -- (BFTask *)resetConditionalAsync:(BOOL)pass; - -@end - -NS_ASSUME_NONNULL_END \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDataSwitch.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDataSwitch.m deleted file mode 100644 index d1fbe1b..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDataSwitch.m +++ /dev/null @@ -1,54 +0,0 @@ -/** - * MBLDataSwitch.m - * MetaWear - * - * Created by Stephen Schiffli on 2/17/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLDataSwitch.h" -#import "MBLEvent+Private.h" -#import "MBLFilter+Private.h" -#import "MBLMetaWear+Private.h" - -@implementation MBLDataSwitch - -- (BFTask *)resetCountAsync:(uint16_t)count -{ - return [self resetStateWithDataAsync:[NSData dataWithBytes:&count length:2]]; -} - -- (BFTask *)resetConditionalAsync:(BOOL)pass -{ - uint16_t value = pass; - return [self resetStateWithDataAsync:[NSData dataWithBytes:&value length:2]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDeviceInfo.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDeviceInfo.h deleted file mode 100644 index c9d283c..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDeviceInfo.h +++ /dev/null @@ -1,68 +0,0 @@ -/** - * MBLDeviceInfo.h - * MetaWear - * - * Created by Stephen Schiffli on 8/12/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Container for a device revision data - */ -@interface MBLDeviceInfo : NSObject - -/** - Manufacturer Name string - */ -@property (nonatomic) NSString *manufacturerName; -/** - Serial Number string - */ -@property (nonatomic) NSString *serialNumber; -/** - Hardware Revision string - */ -@property (nonatomic) NSString *hardwareRevision; -/** - Firmware Revision string - */ -@property (nonatomic) NSString *firmwareRevision; -/** - Model Number string - */ -@property (nonatomic, nullable) NSString *modelNumber; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDeviceInfo.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDeviceInfo.m deleted file mode 100644 index d02bae2..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLDeviceInfo.m +++ /dev/null @@ -1,40 +0,0 @@ -/** - * MBLDeviceInfo.m - * MetaWear - * - * Created by Stephen Schiffli on 8/12/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLDeviceInfo.h" - -@implementation MBLDeviceInfo - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEntityEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEntityEvent.h deleted file mode 100644 index 5319195..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEntityEvent.h +++ /dev/null @@ -1,40 +0,0 @@ -/** - * MBLEntityEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 12/3/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -@interface MBLEntityEvent : MBLEvent - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEntityEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEntityEvent.m deleted file mode 100644 index fc76a00..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEntityEvent.m +++ /dev/null @@ -1,120 +0,0 @@ -/** - * MBLEntityEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 12/3/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - - -#import "MBLEntityEvent+Private.h" -#import "MBLEntityModule+Private.h" -#import "MBLDataSample+Private.h" -#import "MBLLogger.h" - -@interface MBLEntityEvent () -@property (nonatomic) NSData *addEntityParameters; -@end - -@implementation MBLEntityEvent - -- (instancetype)initWithModule:(MBLEntityModule *)module - registerId:(uint8_t)registerId - addEntityParameters:(NSData *)addEntityParameters - format:(MBLFormat *)format -{ - // Since all filters get their data through the single timerNotification register in - // the timer module, we create a dummy register which is optionally notified - // when we see a global notification which matches our filter id - self = [super initWithModule:module registerId:registerId format:format]; - if (self) { - self.addEntityParameters = addEntityParameters; - } - return self; -} - -- (BFTask *)isStateValid -{ - MBLEntityModule *module = (MBLEntityModule *)self.module; - return [[module.addEntity readForcedIndexAsync:self.index] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - MBLDataSample *result = task.result; - NSData *actualData = result.data; - NSData *expectedData = self.addEntityParameters; - if (actualData.length >= expectedData.length) { - if ([expectedData isEqualToData:[actualData subdataWithRange:NSMakeRange(0, expectedData.length)]]) { - return [BFTask taskWithResult:@YES]; - } - } - MBLLog(MBLLogLevelInfo, @"%@: Entity[%d] expected != actual (%@ != %@)", self.module, self.index, expectedData, actualData); - return [BFTask taskWithResult:@NO]; - }]; -} - -- (BFTask *)performAsyncInitialization -{ - MBLEntityModule *module = (MBLEntityModule *)self.module; - return [module performAsyncInitializationForEntity:self]; -} - -- (BFTask *)performAsyncDeinitialization -{ - MBLEntityModule *module = (MBLEntityModule *)self.module; - return [module performAsyncDeinitializationForEntity:self]; -} - -- (BFTask *)performAsyncActivation -{ - MBLEntityModule *module = (MBLEntityModule *)self.module; - return [module performAsyncActivationForEntity:self]; -} - -- (BFTask *)performAsyncDeactivation -{ - MBLEntityModule *module = (MBLEntityModule *)self.module; - return [module performAsyncDeactivationForEntity:self]; -} - -- (BFTask *)performAsyncStartNotifications -{ - MBLEntityModule *module = (MBLEntityModule *)self.module; - return [[module startNotificationsForEntity:self] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [super performAsyncStartNotifications]; - }]; -} - -- (BFTask *)performAsyncStopNotificationsAsync -{ - MBLEntityModule *module = (MBLEntityModule *)self.module; - return [[super performAsyncStopNotificationsAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [module stopNotificationsAsyncForEntity:self]; - }]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEntityModule.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEntityModule.h deleted file mode 100644 index d53bb44..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEntityModule.h +++ /dev/null @@ -1,40 +0,0 @@ -/** - * MBLEntityModule.h - * MetaWear - * - * Created by Stephen Schiffli on 12/3/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -@interface MBLEntityModule : MBLModule - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEntityModule.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEntityModule.m deleted file mode 100644 index f805bbd..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEntityModule.m +++ /dev/null @@ -1,190 +0,0 @@ -/** - * MBLEntityModule.m - * MetaWear - * - * Created by Stephen Schiffli on 12/3/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - - -#import "MBLEntityModule+Private.h" - -@interface MBLEntityModule () -@property (nonatomic) int activeNotifications; -@property (nonatomic) NSMutableArray *entities; -@property (nonatomic) int maxEntities; - -@property (nonatomic) MBLRegister *addEntity; -@property (nonatomic) MBLRegister *removeEntity; -@property (nonatomic) MBLRegister *activateEntity; -@property (nonatomic) MBLRegister *deactivateEntity; - -@property (nonatomic) MBLRegister *globalNotifications; -@property (nonatomic) MBLRegister *notificationEnable; -@end - -@implementation MBLEntityModule - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.activeNotifications = 0; - self.entities = [NSMutableArray array]; - self.maxEntities = 0; - } - return self; -} - - -- (BFTask *)performAsyncInitializationForEntity:(MBLEntityEvent *)entity -{ - if (!self.addEntity) { - return [BFTask taskWithResult:nil]; - } - - return [[BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - assert(entity.index == 0xFF); - if (self.entities.count >= self.maxEntities) { - NSError *error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorInsufficientMemory - userInfo:@{NSLocalizedDescriptionKey : [NSString stringWithFormat:@"MetaWear out of memory, can't perform action. Reset the MetaWear and use no more than %d entities", self.maxEntities]}]; - return [BFTask taskWithError:error]; - } - [self.entities addObject:entity]; - return [self.addEntity writeDataAsync:entity.addEntityParameters]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - if (task.faulted) { - [self.entities removeObject:entity]; - } else { - MBLDataSample *obj = task.result; - entity.index = *(uint8_t *)obj.data.bytes; - } - return task; - }]; -} - -- (BFTask *)performAsyncDeinitializationForEntity:(MBLEntityEvent *)entity -{ - if (!self.removeEntity) { - return [BFTask taskWithResult:nil]; - } - - return [[BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - assert(entity.index != 0xFF); - return [self.removeEntity writeByteAsync:entity.index]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - entity.index = 0xFF; - [self.entities removeObject:entity]; - return nil; - }]; -} - -- (BFTask *)performAsyncActivationForEntity:(MBLEntityEvent *)entity -{ - if (!self.activateEntity) { - return [BFTask taskWithResult:nil]; - } - - return [BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - assert(entity.index != 0xFF); - return [self.activateEntity writeByteAsync:entity.index]; - }]; -} - -- (BFTask *)performAsyncDeactivationForEntity:(MBLEntityEvent *)entity -{ - if (!self.deactivateEntity) { - return [BFTask taskWithResult:nil]; - } - - return [BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - assert(entity.index != 0xFF); - return [self.deactivateEntity writeByteAsync:entity.index]; - }]; -} - -- (BFTask *)startNotificationsForEntity:(MBLEntityEvent *)entity -{ - if (!self.globalNotifications || !self.notificationEnable) { - return [BFTask taskWithResult:nil]; - } - - return [[BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - // Turn on notifications for this filter - assert(entity.index != 0xFF); - uint8_t packet[] = { entity.index, 0x1 }; - return [self.notificationEnable writeDataAsync:[NSData dataWithBytes:&packet length:2]]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - self.activeNotifications++; - if (self.activeNotifications == 1) { - // Turn on global notifications - return [self.globalNotifications startNotificationsWithHandlerAsync:nil]; - } - return nil; - }]; -} - -- (BFTask *)stopNotificationsAsyncForEntity:(MBLEntityEvent *)entity -{ - if (!self.globalNotifications || !self.notificationEnable) { - return [BFTask taskWithResult:nil]; - } - - return [[BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - self.activeNotifications--; - if (self.activeNotifications == 0) { - // Turn off global notifications - return [self.globalNotifications stopNotificationsAsync]; - } - assert(self.activeNotifications >= 0); - self.activeNotifications = MAX(self.activeNotifications, 0); - return nil; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - // Turn off notifications for this filter - assert(entity.index != 0xFF); - uint8_t data[] = { entity.index, 0x0 }; - return [self.notificationEnable writeDataAsync:[NSData dataWithBytes:&data length:2]]; - }]; -} - -- (BFTask *)isStateValid -{ - return [BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - NSMutableArray *tasks = [NSMutableArray array]; - [tasks addObject:[BFTask taskWithResult:@YES]]; // Base case - for (MBLEntityEvent *entity in self.entities) { - [tasks addObject:[entity isStateValid]]; - } - return [BFTask taskForCompletionOfAllTasksWithResults:tasks]; - }]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEvent.h deleted file mode 100644 index 6634fdf..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEvent.h +++ /dev/null @@ -1,393 +0,0 @@ -/** - * MBLEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 10/8/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import - -@class MBLData; -@class MBLFilter; -@class MBLDataSwitch; -@class MBLNumericData; - -NS_ASSUME_NONNULL_BEGIN - -/** - Supported Comparison filter operations - */ -typedef NS_ENUM(uint8_t, MBLComparisonOperation) { - MBLComparisonOperationEqual = 0, - MBLComparisonOperationNotEqual = 1, - MBLComparisonOperationLessThan = 2, - MBLComparisonOperationLessThanOrEqual = 3, - MBLComparisonOperationGreaterThan = 4, - MBLComparisonOperationGreaterThanOrEqual = 5 -}; -/** - Supported Comparison filter output types - */ -typedef NS_ENUM(uint8_t, MBLComparisonOutput) { - MBLComparisonOutputValue = 0, - MBLComparisonOutputRightHandSide = 1, - MBLComparisonOutputZone = 2, - MBLComparisonOutputBinary = 3 -}; - -/** - Supported Arithmetic filter operations - */ -typedef NS_ENUM(uint8_t, MBLArithmeticOperation) { - MBLArithmeticOperationNoOp = 0, - MBLArithmeticOperationAdd = 1, - MBLArithmeticOperationMultiply = 2, - MBLArithmeticOperationDivide = 3, - MBLArithmeticOperationModulus = 4, - MBLArithmeticOperationExponent = 5, - MBLArithmeticOperationSquareRoot = 6, - MBLArithmeticOperationLeftShift = 7, - MBLArithmeticOperationRightShift = 8, - MBLArithmeticOperationSubtract = 9, - MBLArithmeticOperationAbsoluteValue = 10, - MBLArithmeticOperationConstantOutput = 11 -}; - -/** - Pluse filter output types - */ -typedef NS_ENUM(uint8_t, MBLPulseOutput) { - MBLPulseOutputWidth = 0, - MBLPulseOutputArea = 1, - MBLPulseOutputPeak = 2, - MBLPulseOutputOnDetection = 3 -}; - -/** - Delta value filter output types - */ -typedef NS_ENUM(uint8_t, MBLDeltaValueOutput) { - MBLDeltaValueOutputAbsolute = 0, // Output is Value - MBLDeltaValueOutputDifferential = 1, // Output is Delta From Last - MBLDeltaValueOutputBinary = 2 // Output is 1 if Increased, -1 if Decreased -}; - -/** - Threshold value filter output types - */ -typedef NS_ENUM(uint8_t, MBLThresholdValueOutput) { - MBLThresholdValueOutputAbsolute = 0, // Output is Value - MBLThresholdValueOutputBinary = 1, // Output is 1 rising edge, -1 if falling -}; - -/** - This object represents "events" generated by sensors and peripherals on the MetaWear board. - - There are several things you can do when an event occurs, all of which are programmable using - this object, they are: - - 1. Send notifications to the connected iOS device when the event occurs, see - startNotificationsWithHandlerAsync: and stopNotificationsAsync - 2. Program other commands to be executed offline on the MetaWear device when the event occurs, - see programCommandsToRunOnEventAsync: and eraseCommandsToRunOnEventAsync. - 3. Log the event in the MetaWear's flash storage, see startLoggingAsync and - downloadLogAndStopLogging:handler:progressHandler: - 4. Pass the event data into a filter, which and process the data in some way and outputs the result - in a new MBLEvent. See summationOfEvent and periodicSampleOfEvent:. - - ## Examples - Consider the switch update event, [MBLMechanicalSwitch switchUpdateEvent]. - -**Notifications**: - - If you call startNotificationsWithHandlerAsync: and keep a live connection to the MetaWear, - any time you press or release the switch you will get a callback to the provided block. - - [device.mechanicalSwitch.switchUpdateEvent startNotificationsWithHandlerAsync:^(id obj, NSError *error) { - // Handle the button press/release - }]; - - **Logging**: - - If you call startLoggingAsync, then anytime you press or release the button, an entry will - be created in the log which can be download later using downloadLogAndStopLogging:handler:progressHandler:. - - [device.mechanicalSwitch.switchUpdateEvent startLoggingAsync]; - // Some time later.. - [device.mechanicalSwitch.switchUpdateEvent downloadLogAndStopLogging:YES/NO handler:{...} progressHandler:{...}]; - - **Commands**: - - If you want the device to buzz when you press the switch then you would do the following: - - [device.mechanicalSwitch.switchUpdateEvent programCommandsToRunOnEventAsync:^{ - [device.hapticBuzzer startHapticWithDutyCycle:248 pulseWidth:500 completion:nil] - }]; - - **Processing**: - - If you want to log a running count of pushbutton events, you could do the following: - - MBLEvent *event = [device.mechanicalSwitch.switchUpdateEvent summationOfEvent]; - [event startLoggingAsync]; - // Some time later.. - [event downloadLogAndStopLogging:YES/NO handler:{...} progressHandler:{...}]; - - ## Gotchas - - @warning Calling summationOfEvent or any other filter method returns a freshly created - MBLEvent object which you must retain for later use. This is different from the MBLEvent - properties on the various modules which internally save the MBLEvent object and always return - the same pointer through the property. - @warning Since all MBLEvent's are invalidated on disconnect, you need a way to restore your - custom event on reconnect. This is where the MBLRestorable comes in, you can call - setConfiguration:handler: on the MBLMetaWear object to save any properties on your custom - MBLRestorable object. - */ -@interface MBLEvent : MBLRegister - -typedef void (^MBLNotificationHandler)(ResultType __nullable obj, NSError *__nullable error); - -///---------------------------------- -/// @name Notifications -///---------------------------------- - -/** - Start receiving callbacks when this event occurs. The type of the - object that is passed to the handler depends on the event being handled - @param handler Block invoked when this event occus - */ -- (BFTask *)startNotificationsWithHandlerAsync:(nullable MBLNotificationHandler)handler; -/** - Stop receiving callbacks when this event occurs, and release the block provided - to startNotificationsWithHandlerAsync: - */ -- (BFTask *)stopNotificationsAsync; -/** - See if this event currently has notifications enabled - @returns YES if logging, NO otherwise - */ -- (BOOL)isNotifying; - -///---------------------------------- -/// @name Commands -///---------------------------------- - -/** - This method is used for programing the Metawear device to perform actions - automatically. - - Any time this even occurs you can have it trigger other - Metawear API calls even when the phone isn't connected. - When this method is called, the given block executed and checked for - validity. All Metawear API calls inside the block are sent to the device - for execution later. - @warning THE BLOCK IS ONLY EXECUTED ONCE DURNING THIS CALL AND - NEVER AGAIN, DON'T ATTEMPT TO USE CALLBACKS INSIDE THIS BLOCK - @param block Block consisting of API calls to make when this event occus - */ -- (BFTask *)programCommandsToRunOnEventAsync:(MBLVoidHandler)block; -/** - Removes all commands setup when calling programCommandsToRunOnEventAsync: - */ -- (BFTask *)eraseCommandsToRunOnEventAsync; -/** - See if this event currently has commands programmed to run - @returns YES if has commands, NO otherwise - */ -- (BOOL)hasCommands; - -///---------------------------------- -/// @name Logging -///---------------------------------- - -/** - Start recording notifications for this event. - - Each time this event occus an entry is made into non-volatile flash memory - that is on the metawear device. This is useful for tracking things while the - phone isn't connected to the Metawear - */ -- (BFTask *)startLoggingAsync; -/** - Fetch contents of log from MetaWear device, and optionally turn off logging. - - Executes the progressHandler periodically with the progress (0.0 - 1.0), - progressHandler will get called with 1.0 before handler is called. The handler - is passed an array of entries, the exact class of the entry depends on what is - being logged. For example, the accelerometer log returns an array of MBLAccelerometerData's - @param stopLogging YES: Stop logging the current event, NO: Keep logging the event after download - @param progressHandler Periodically called while log download is in progress - */ -- (BFTask *> *)downloadLogAndStopLoggingAsync:(BOOL)stopLogging progressHandler:(nullable MBLFloatHandler)progressHandler; -- (BFTask *> *)downloadLogAndStopLoggingAsync:(BOOL)stopLogging remainingHandler:(nullable MBLLogProgressHandler)progressHandler; -- (BFTask *> *)downloadLogAndStopLoggingAsync:(BOOL)stopLogging; - -/** - See if this event is currently being logged - @returns YES if logging, NO otherwise - */ -- (BOOL)isLogging; - - -///---------------------------------- -/// @name Processing Filters -///---------------------------------- - -/** - Create a new event that allows input samples to pass or not. Event callbacks - will be provided the same object as the input. - @param pass Initially allow samples to pass or not - @returns New event that conditionally represents the input - */ -- (MBLDataSwitch *)conditionalDataSwitch:(BOOL)pass; - -/** - Create a new event that allows N input samples to pass to the output. - After N samples, no further events will be generated. Event callbacks - will be provided the same object as the input. - @param initialCount Number of samples to allow through - @returns New event representing N events of the input - */ -- (MBLDataSwitch *)countingDataSwitch:(uint16_t)initialCount; - -/** - Create a new event that accumulates the output data values of the current event. - Event callbacks will be provided the same object as the input. - @returns New event representing accumulated output - */ -- (MBLFilter *)summationOfEvent; - -/** - Create a new event that accumulates the number of times the current event fires. - Event callbacks will be provided an MBLNumericData data object whose int value - will be the number of times the input event fired. - @returns New event representing counted intput - */ -- (MBLFilter *)counterOfEvent; - -/** - Create a new event that averages the output data of the current event. This - uses a recursive average technique so the answers are approximate. - Event callbacks will be provided the same object as the input. - @param depth Number of samples to average (works fastest if a power of 2) - @returns New event representing average of input - */ -- (MBLFilter *)averageOfEventWithDepth:(uint8_t)depth; - -/** - Create a new event that compares the current event's value to one or more data points - @param op Operation type to perform - @parma data Array of values to compare against - @parma output Type of data to output - @returns New event representing input values that meet the comparison condition - */ -- (MBLFilter *)compareEventUsingOperation:(MBLComparisonOperation)op data:(NSArray *)data output:(MBLComparisonOutput)output; - -/** - Create a new event that occurs at most once every period milliseconds. - Event callbacks will be provided the same object as the input. - @param periodInMsec Sample period in msec - @returns New event representing periodically sampled output - */ -- (MBLFilter *)periodicSampleOfEvent:(uint32_t)periodInMsec; - -/** - Create a new event that represents the difference bettween the current event - every periodInMsec milliseconds. This acts a differential filter giving you - the changed in value of a signal. Event callbacks will be provided the same - object as the input. - @param periodInMsec Sample period in msec - @returns New event representing differential output - */ -- (MBLFilter *)differentialSampleOfEvent:(uint32_t)periodInMsec; - -/** - Create a new event that delays the current even by a given number of samples. - Event callbacks will be provided the same object as the input. - @param count Number of samples to delay - @returns New event representing a delayed version of the input - */ -- (MBLFilter *)delayOfEventWithCount:(uint8_t)count; - -/** - Create a new event that represents a pulse of the input. A pulse event will be - generated when the input event crosses below threshold after first staying above - threshold for width samples. - If the output type is MBLPulseOutputArea or MBLPulseOutputPeak, then event - callbacks will be provided the same object as the input. MBLPulseOutputWidth - output, however, will be provided MBLNumericData objects. - @param threshold Min value considered to be a pulse - @param width Number of samples input must stay above threshold to be considered a valid pulse - @param output Select the type of data this filter should output - @returns New event representing a pulse of the input - */ -- (MBLFilter *)pulseDetectorOfEventWithThreshold:(double)threshold width:(uint16_t)width output:(MBLPulseOutput)output; - -/** - Create a new event that occurs when the given event changes by a specified delta. - If the output type is MBLDeltaValueOutputAbsolute or MBLDeltaValueOutputDifferential, - then event callbacks will be provided the same object as the input. MBLDeltaValueOutputBinary - output, however, will be provided MBLNumericData objects. - @param delta Magnitude of change that must occur for event to take place - @param output Select the type of data this filter should output - @returns New event representing a changed of the input - */ -- (MBLFilter *)changeOfEventByDelta:(double)delta output:(MBLDeltaValueOutput)output; - -/** - Create a new event that occurs when the given event crosses a specified threshold. - Event callbacks will be provided the same object as the input. - @param threshold Value the event must cross for event to take place - @param hysteresis Hysteresis on crossing to eliminate oscillation - @param output Select the type of data this filter should output - @returns New event representing a changed of the input - */ -- (MBLFilter *)changeOfEventAcrossThreshold:(double)threshold hysteresis:(double)hysteresis output:(MBLThresholdValueOutput)output; - -/** - Create a new event that occurs at the same time of this event, but whose value is - read from the data object passed in. - @param data Object to be read when this event occurs - @returns New event representing the data read - */ -- (MBLEvent *)readDataOnEvent:(MBLData *)data; - -///---------------------------------- -/// @name Deprecated -///---------------------------------- -// @deprecated -- (MBLFilter *)compareEventUsingOperation:(MBLComparisonOperation)op withData:(double)data DEPRECATED_MSG_ATTRIBUTE("Use compareEventUsingOperation:data:output instead"); -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEvent.m deleted file mode 100644 index 15c32cf..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLEvent.m +++ /dev/null @@ -1,812 +0,0 @@ -/** - * MBLEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 10/8/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLTriggeredRead.h" -#import "MBLFilter+Private.h" -#import "MBLDataSwitch.h" -#import "MBLConversion.h" -#import "MBLConstants+Private.h" -#import "BFTask+Private.h" - - -@interface MBLEvent () -@property (nonatomic) NSMutableArray *loggingIds; -@property (nonatomic) NSMutableArray *commandIds; -@property (nonatomic) NSMutableArray *commandActivatedRegisters; -@end - -@implementation MBLEvent - -- (instancetype)initWithModule:(MBLModule *)module registerId:(uint8_t)registerId index:(uint8_t)index format:(MBLFormat *)format -{ - self = [super initWithModule:module registerId:registerId index:index format:format]; - if (self) { - self.loggingIds = [NSMutableArray array]; - self.commandIds = [NSMutableArray array]; - self.commandActivatedRegisters = [NSMutableArray array]; - } - return self; -} - -- (instancetype)initWithModule:(MBLModule *)module registerId:(uint8_t)registerId format:(MBLFormat *)format -{ - return [self initWithModule:module registerId:registerId index:0xFF format:format]; -} - -- (nonnull BFTask *)startNotificationsWithHandlerAsync:(nullable MBLObjectHandler)handler -{ - return [super startNotificationsWithHandlerAsync:handler]; -} - -- (nonnull BFTask *)stopNotificationsAsync -{ - return [super stopNotificationsAsync]; -} - -- (BOOL)isNotifying -{ - BOOL __block result; - assert(![MBLConstants isMetaWearQueue]); - dispatch_sync([MBLConstants metaWearQueue], ^{ - result = self.isNotifyingImpl; - }); - return result; -} - -- (nonnull BFTask *)programCommandsToRunOnEventAsync:(nonnull MBLVoidHandler)block -{ - MBLMetaWear *device = self.module.device; - if (device.state != MBLConnectionStateConnected) { - NSError *error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorNotConnected - userInfo:@{NSLocalizedDescriptionKey : @"MetaWear not connected, can't perform operation. Please connect to MetaWear before streaming data."}]; - return [BFTask taskWithError:error]; - } - - [device incrementCount]; - return [[[[[BFTask taskFromMetaWearWithBlock:^id{ - if (self.hasCommandsImpl) { - NSError *error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorOperationInvalid - userInfo:@{NSLocalizedDescriptionKey : @"Cannot call programCommandsToRunOnEventAsync: if it's already programmed. Please call eraseCommandsToRunOnEventAsync first."}]; - return [BFTask taskWithError:error]; - } - self.hasCommandsImpl = YES; - return nil; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self initializeAsync]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [device.command programCommandsToRunOnEventAsync:self commands:block]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self activateAsync]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - [device decrementCount]; - return task; - }]; -} - -- (nonnull BFTask *)eraseCommandsToRunOnEventAsync -{ - MBLMetaWear *device = self.module.device; - if (device.state != MBLConnectionStateConnected) { - NSError *error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorNotConnected - userInfo:@{NSLocalizedDescriptionKey : @"MetaWear not connected, can't perform operation. Please connect to MetaWear before erasing commands."}]; - return [BFTask taskWithError:error]; - } - - [device incrementCount]; - return [[[[[BFTask taskFromMetaWearWithBlock:^id{ - if (!self.hasCommandsImpl) { - NSError *error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorOperationInvalid - userInfo:@{NSLocalizedDescriptionKey : @"Cannot call eraseCommandsToRunOnEventAsync since it's not already programmed. Please call programCommandsToRunOnEventAsync: first."}]; - return [BFTask taskWithError:error]; - } - self.hasCommandsImpl = NO; - return nil; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self deactivateAsync]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [device.command eraseCommandsToRunOnEventAsync:self]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self deinitializeAsync]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - [device decrementCount]; - return task; - }]; -} - -- (BOOL)hasCommands -{ - BOOL __block result; - assert(![MBLConstants isMetaWearQueue]); - dispatch_sync([MBLConstants metaWearQueue], ^{ - result = self.hasCommandsImpl; - }); - return result; -} - -- (nonnull BFTask *)startLoggingAsync -{ - MBLMetaWear *device = self.module.device; - if (device.state != MBLConnectionStateConnected) { - NSError *error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorNotConnected - userInfo:@{NSLocalizedDescriptionKey : @"MetaWear not connected, can't perform operation. Please connect to MetaWear before starting log."}]; - return [BFTask taskWithError:error]; - } - - [device incrementCount]; - return [[[[[BFTask taskFromMetaWearWithBlock:^id{ - if (self.isLoggingImpl) { - NSError *error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorOperationInvalid - userInfo:@{NSLocalizedDescriptionKey : @"Cannot call startLoggingAsync if it's already logging. Please call downloadLogAndStopLogging:handler:progressHandler: first."}]; - return [BFTask taskWithError:error]; - } - self.isLoggingImpl = YES; - // Clear out the logging id's - [self.loggingIds removeAllObjects]; - return nil; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self initializeAsync]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.module.device.logging startLoggingAsyncEvent:self]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self activateAsync]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - [device decrementCount]; - return task; - }]; -} - -- (BFTask *)downloadLogAndStopLoggingAsync:(BOOL)stopLogging remainingHandler:(MBLLogProgressHandler)progressHandler -{ - MBLMetaWear *device = self.module.device; - if (device.state != MBLConnectionStateConnected) { - NSError *error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorNotConnected - userInfo:@{NSLocalizedDescriptionKey : @"MetaWear not connected, can't perform operation. Please connect to MetaWear before downloading log."}]; - return [BFTask taskWithError:error]; - } - - [device incrementCount]; - return [[[BFTask taskFromMetaWearWithBlock:^id{ - if (stopLogging && self.isLoggingImpl) { - self.isLoggingImpl = NO; - - return [[[[self deactivateAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [device.logging stopLoggingEvent:self]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self deinitializeAsync]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - // Since log downloads take a while, let's save state here - return [device synchronizeAsync]; - }]; - } - return nil; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [device.logging downloadLogEvents:self progressHandler:progressHandler]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - [device decrementCount]; - return task; - }]; -} - -- (BFTask *)downloadLogAndStopLoggingAsync:(BOOL)stopLogging - progressHandler:(MBLFloatHandler)progressHandler -{ - MBLLogProgressHandler remainingHandler = nil; - if (progressHandler) { - remainingHandler = ^(uint32_t totalEntries, uint32_t remainingEntries) { - float progress = (float)(totalEntries - remainingEntries) / (float)(totalEntries); - // Make sure progress is always [0.0,1.0] - progress = MIN(progress, 1.0); - progress = MAX(progress, 0.0); - progressHandler(progress); - }; - } - return [self downloadLogAndStopLoggingAsync:stopLogging remainingHandler:remainingHandler]; -} - -- (BFTask *)downloadLogAndStopLoggingAsync:(BOOL)stopLogging -{ - return [self downloadLogAndStopLoggingAsync:stopLogging progressHandler:nil]; -} - -- (BOOL)isLogging -{ - BOOL __block result; - assert(![MBLConstants isMetaWearQueue]); - dispatch_sync([MBLConstants metaWearQueue], ^{ - result = self.isLoggingImpl; - }); - return result; -} - - -typedef struct __attribute__((packed)) { - uint8_t filter_id; - uint8_t mode:3; - uint8_t :5; - uint16_t initial_en_value; -} df_pass_param_t; - -- (MBLDataSwitch *)conditionalDataSwitch:(BOOL)pass -{ - df_pass_param_t params = {0}; - params.filter_id = 1; - params.mode = 1; - params.initial_en_value = pass; - - // We make a copy of the formatter because we the filter will remove any offset - MBLFormat *formatClone = [self.format copy]; - formatClone.offset = 0; - - MBLDataSwitch *filter = [[MBLDataSwitch alloc] initWithTrigger:self - filterParameters:[NSData dataWithBytes:¶ms length:sizeof(df_pass_param_t)] - format:formatClone]; - return filter; -} - -- (MBLDataSwitch *)countingDataSwitch:(uint16_t)initialCount -{ - df_pass_param_t params = {0}; - params.filter_id = 1; - params.mode = 2; - params.initial_en_value = initialCount; - - // We make a copy of the formatter because we the filter will remove any offset - MBLFormat *formatClone = [self.format copy]; - formatClone.offset = 0; - - MBLDataSwitch *filter = [[MBLDataSwitch alloc] initWithTrigger:self - filterParameters:[NSData dataWithBytes:¶ms length:sizeof(df_pass_param_t)] - format:formatClone]; - return filter; -} - - -typedef struct __attribute__((packed)) { - uint8_t filter_id; - uint8_t countlen:2; - uint8_t inputlen:2; - uint8_t mode:3; -} df_count_param_t; - -- (MBLFilter *)summationOfEvent -{ - const int outputSize = 4; - if (self.format.length > outputSize) { - [NSException raise:@"Invalid Filter" format:@"Can't use summation filter with events of size > 4, %d invalid", self.format.length]; - } - - df_count_param_t params = {0}; - params.filter_id = 2; - params.countlen = outputSize - 1; - params.inputlen = self.format.length - 1; - params.mode = 0; - - // We make a copy of the formatter because we want to force it to 4 byte length, and remove offset - MBLFormat *formatClone = [self.format copy]; - formatClone.length = outputSize; - formatClone.offset = 0; - - MBLFilter *filter = [[MBLFilter alloc] initWithTrigger:self - filterParameters:[NSData dataWithBytes:¶ms length:sizeof(df_count_param_t)] - format:formatClone]; - return filter; -} - -- (MBLFilter *)counterOfEvent -{ - df_count_param_t params = {0}; - params.filter_id = 2; - params.countlen = 4 - 1; - params.inputlen = 0; - params.mode = 1; - - MBLFilter *filter = [[MBLFilter alloc] initWithTrigger:self - filterParameters:[NSData dataWithBytes:¶ms length:sizeof(df_count_param_t)] - format:[[MBLNumericFormatter alloc] initIntWithLength:4 isSigned:NO]]; - return filter; -} - - -typedef struct __attribute__((packed)) { - uint8_t filter_id; - uint8_t output_length:2; - uint8_t input_length:2; - uint8_t average_depth; -} low_mem_average_param_t; - -- (MBLFilter *)averageOfEventWithDepth:(uint8_t)depth -{ - const int outputSize = 4; - if (self.format.length > outputSize) { - [NSException raise:@"Invalid Filter" format:@"Can't use event with size > 4, %d invalid", self.format.length]; - } - - low_mem_average_param_t params = {0}; - params.filter_id = 3; - params.input_length = self.format.length - 1; - params.output_length = outputSize - 1; - params.average_depth = depth; - - // We make a copy of the formatter because we want to force it to 4 byte length and remove offset - MBLFormat *formatClone = [self.format copy]; - formatClone.length = outputSize; - formatClone.offset = 0; - - MBLFilter *filter = [[MBLFilter alloc] initWithTrigger:self - filterParameters:[NSData dataWithBytes:¶ms length:sizeof(low_mem_average_param_t)] - format:formatClone]; - return filter; -} - - -typedef struct __attribute__((packed)) { - uint8_t filter_id; - uint8_t is_signed:1; - uint8_t datalen:2; - uint8_t operation:3; - uint8_t mode:2; - union __attribute__((packed)) { - uint32_t u32value[3]; - int32_t s32value[3]; - uint16_t u16value[6]; - int16_t s16value[6]; - uint8_t u8value[12]; - int8_t s8value[12]; - }; -} mw_comparison_param_t; - -- (MBLFilter *)compareEventUsingOperation:(MBLComparisonOperation)op data:(NSArray *)data output:(MBLComparisonOutput)output -{ - if (data < 0 && !self.format.isSigned) { - [NSException raise:@"Invalid data" format:@"This event isn't signed, so we cannot compare to negative values"]; - } - if ((self.format.length * data.count) > 12) { - [NSException raise:@"Invalid data" format:@"Too many comparison data points, please reduce"]; - } - - mw_comparison_param_t params = {0}; - params.filter_id = 6; - params.is_signed = self.format.isSigned; - params.datalen = self.format.length - 1; - params.operation = op; - params.mode = output; - - if (self.format.isSigned) { - switch (self.format.length) { - case 4: - for (int i = 0; i < data.count; i++) { - if (![MBLConversion number:[self.format numberFromDouble:data[i].doubleValue] toInt32:¶ms.s32value[i]]) { - [NSException raise:@"Invalid data" format:@"data %f cannot fit in int32", data[i].doubleValue]; - } - } - break; - case 2: - for (int i = 0; i < data.count; i++) { - if (![MBLConversion number:[self.format numberFromDouble:data[i].doubleValue] toInt16:¶ms.s16value[i]]) { - [NSException raise:@"Invalid data" format:@"data %f cannot fit in int16", data[i].doubleValue]; - } - } - break; - case 1: - for (int i = 0; i < data.count; i++) { - if (![MBLConversion number:[self.format numberFromDouble:data[i].doubleValue] toInt8:¶ms.s8value[i]]) { - [NSException raise:@"Invalid data" format:@"data %f cannot fit in int8", data[i].doubleValue]; - } - } - break; - default: - [NSException raise:@"Invalid size" format:@"data size %d cannot be processed", self.format.length]; - } - } else { - switch (self.format.length) { - case 4: - for (int i = 0; i < data.count; i++) { - if (![MBLConversion number:[self.format numberFromDouble:data[i].doubleValue] toUint32:¶ms.u32value[i]]) { - [NSException raise:@"Invalid data" format:@"data %f cannot fit in uint32", data[i].doubleValue]; - } - } - break; - case 2: - for (int i = 0; i < data.count; i++) { - if (![MBLConversion number:[self.format numberFromDouble:data[i].doubleValue] toUint16:¶ms.u16value[i]]) { - [NSException raise:@"Invalid data" format:@"data %f cannot fit in uint16", data[i].doubleValue]; - } - } - break; - case 1: - for (int i = 0; i < data.count; i++) { - if (![MBLConversion number:[self.format numberFromDouble:data[i].doubleValue] toUint8:¶ms.u8value[i]]) { - [NSException raise:@"Invalid data" format:@"data %f cannot fit in uint8", data[i].doubleValue]; - } - } - break; - default: - [NSException raise:@"Invalid size" format:@"data size %d cannot be processed", self.format.length]; - } - } - - MBLFormat *format = nil; - if (output == MBLComparisonOutputZone || output == MBLComparisonOutputBinary) { - format = [[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]; - } else { - // We make a copy of the formatter because we the filter will remove any offset - format = [self.format copy]; - format.offset = 0; - } - - MBLFilter *filter = [[MBLFilter alloc] initWithTrigger:self - filterParameters:[NSData dataWithBytes:¶ms length:2 + (self.format.length * data.count)] - format:format]; - return filter; -} - -- (MBLFilter *)compareEventUsingOperation:(MBLComparisonOperation)op withData:(double)data -{ - return [self compareEventUsingOperation:op data:@[[NSNumber numberWithDouble:data]] output:MBLComparisonOutputValue]; -} - - -typedef struct __attribute__((packed)) { - uint8_t filter_id; - uint8_t datalen:3; - uint8_t filter_mode:3; - uint8_t deltat_ms[4]; -} deltat_param_t; - -- (MBLFilter *)periodicSampleOfEvent:(uint32_t)periodInMsec -{ - if (self.format.length > 8) { - [NSException raise:@"Invalid Filter" format:@"Can't use periodic sample filter with events of size > 8, %d invalid", self.format.length]; - } - - deltat_param_t params = {0}; - params.filter_id = 8; - params.datalen = self.format.length - 1; - params.filter_mode = 0; - uint32_t *tmp = (uint32_t *)params.deltat_ms; - *tmp = periodInMsec; - - // We make a copy of the formatter because we the filter will remove any offset - MBLFormat *formatClone = [self.format copy]; - formatClone.offset = 0; - - MBLFilter *filter = [[MBLFilter alloc] initWithTrigger:self - filterParameters:[NSData dataWithBytes:¶ms length:sizeof(deltat_param_t)] - format:formatClone]; - return filter; -} - -- (MBLFilter *)differentialSampleOfEvent:(uint32_t)periodInMsec -{ - if (self.format.length > 8) { - [NSException raise:@"Invalid Filter" format:@"Can't use differential sample filter with events of size > 8, %d invalid", self.format.length]; - } - - deltat_param_t params = {0}; - params.filter_id = 8; - params.datalen = self.format.length - 1; - params.filter_mode = 1; - uint32_t *tmp = (uint32_t *)params.deltat_ms; - *tmp = periodInMsec; - - // We make a copy of the formatter because we the filter will remove any offset - MBLFormat *formatClone = [self.format copy]; - formatClone.offset = 0; - - MBLFilter *filter = [[MBLFilter alloc] initWithTrigger:self - filterParameters:[NSData dataWithBytes:¶ms length:sizeof(deltat_param_t)] - format:formatClone]; - return filter; -} - - -typedef struct __attribute__((packed)) { - uint8_t filter_id; - uint8_t outputlen:2; - uint8_t inputlen:2; - uint8_t issigned:1; - uint8_t operation; - uint8_t paramvalue[4]; - uint8_t channel_count; -} df_simplemath_param_t; - -- (MBLFilter *)modifyEventUsingOperation:(MBLArithmeticOperation)op withData:(double)data -{ - if (self.format.length > 4) { - [NSException raise:@"Invalid Filter" format:@"Can't use event with size > 4, %d invalid", self.format.length]; - } - // TODO: Enable these arithmetic modes - switch (op) { - case MBLArithmeticOperationNoOp: - break; - case MBLArithmeticOperationAdd: - //[NSException raise:@"Invalid Option" format:@"Add not implemented yet"]; - break; - case MBLArithmeticOperationMultiply: - break; - case MBLArithmeticOperationDivide: - break; - case MBLArithmeticOperationModulus: - [NSException raise:@"Invalid Option" format:@"Can't perform modulus on double data"]; - break; - case MBLArithmeticOperationExponent: - [NSException raise:@"Invalid Option" format:@"Exponent not implemented yet"]; - break; - case MBLArithmeticOperationSquareRoot: - [NSException raise:@"Invalid Option" format:@"Square root not implemented yet"]; - break; - case MBLArithmeticOperationLeftShift: - [NSException raise:@"Invalid Option" format:@"Can't perform left shift on double data"]; - break; - case MBLArithmeticOperationRightShift: - [NSException raise:@"Invalid Option" format:@"Can't perform right shift on double data"]; - break; - case MBLArithmeticOperationSubtract: - [NSException raise:@"Invalid Option" format:@"Subtract not implemented yet"]; - break; - case MBLArithmeticOperationAbsoluteValue: - [NSException raise:@"Invalid Option" format:@"Absolute value not implemented yet"]; - break; - case MBLArithmeticOperationConstantOutput: - break; - } - - df_simplemath_param_t params = {0}; - params.filter_id = 9; - params.outputlen = self.format.length - 1; // TODO: Maybe offer up ability to increase this - params.inputlen = self.format.length - 1; - params.issigned = self.format.isSigned; - params.operation = op; - params.channel_count = 1 - 1; // TODO: Enable this for array types - if (![MBLConversion number:[self.format numberFromDouble:data] toInt32:(int32_t *)¶ms.paramvalue]) { - [NSException raise:@"Invalid data" format:@"data %f cannot fit in int32", data]; - } - - // We make a copy of the formatter because we want to force remove offset - MBLFormat *formatClone = [self.format copy]; - formatClone.offset = 0; - - MBLFilter *filter = [[MBLFilter alloc] initWithTrigger:self - filterParameters:[NSData dataWithBytes:¶ms length:sizeof(df_simplemath_param_t)] - format:formatClone]; - return filter; -} - - -typedef struct __attribute__((packed)) { - uint8_t filter_id; - uint8_t datalen:2; - uint8_t delay_count; -} df_delay_param_t; - -- (MBLFilter *)delayOfEventWithCount:(uint8_t)count -{ - if (self.format.length > 4) { - [NSException raise:@"Invalid Filter" format:@"Can't use event with size > 4, %d invalid", self.format.length]; - } - - df_delay_param_t params = {0}; - params.filter_id = 0xA; - params.datalen = self.format.length - 1; - params.delay_count = count; - - // We make a copy of the formatter because we the filter will remove any offset - MBLFormat *formatClone = [self.format copy]; - formatClone.offset = 0; - - MBLFilter *filter = [[MBLFilter alloc] initWithTrigger:self - filterParameters:[NSData dataWithBytes:¶ms length:sizeof(df_delay_param_t)] - format:formatClone]; - return filter; -} - - -typedef struct __attribute__((packed)) { - uint8_t filter_id; - uint8_t datalen; - uint8_t triggermode; - uint8_t outputmode; - int32_t threshold; - uint16_t width; -} df_pulse_detector_param_t; - -- (MBLFilter *)pulseDetectorOfEventWithThreshold:(double)threshold width:(uint16_t)width output:(MBLPulseOutput)output -{ - if (self.format.length > 4) { - [NSException raise:@"Invalid Filter" format:@"Can't use event with size > 4, %d invalid", self.format.length]; - } - - df_pulse_detector_param_t params = {0}; - params.filter_id = 0xB; - params.datalen = self.format.length - 1; - params.triggermode = 0; - params.outputmode = output; - params.width = width; - - if (![MBLConversion number:[self.format numberFromDouble:threshold] toInt32:¶ms.threshold]) { - [NSException raise:@"Invalid data" format:@"threshold %f cannot fit in int32", threshold]; - } - - MBLFormat *format = nil; - // We make a copy of the formatter because we want to force it to 4 byte length - switch (output) { - case MBLPulseOutputArea: - format = [self.format copy]; - format.length = 4; - format.isSigned = YES; - break; - case MBLPulseOutputPeak: - format = [self.format copy]; - format.length = 4; - format.isSigned = YES; - break; - case MBLPulseOutputWidth: - format = [[MBLNumericFormatter alloc] initIntWithLength:4 isSigned:YES]; - break; - case MBLPulseOutputOnDetection: - format = [[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]; - break; - } - format.offset = 0; - - MBLFilter *filter = [[MBLFilter alloc] initWithTrigger:self - filterParameters:[NSData dataWithBytes:¶ms length:sizeof(df_pulse_detector_param_t)] - format:format]; - return filter; -} - - -typedef struct __attribute__((packed)) { - uint8_t filter_id; - uint8_t datalen:2; - uint8_t issigned:1; - uint8_t mode:3; - uint8_t delta[4]; -} df_deltav_param_t; - -- (MBLFilter *)changeOfEventByDelta:(double)delta output:(MBLDeltaValueOutput)output -{ - if (self.format.length > 4) { - [NSException raise:@"Invalid Filter" format:@"Can't use event with size > 4, %d invalid", self.format.length]; - } - if (delta < 0) { - [NSException raise:@"Invalid delta value" format:@"delta cannot be negative"]; - } - - df_deltav_param_t params = {0}; - params.filter_id = 0xC; - params.datalen = self.format.length - 1; - params.issigned = self.format.isSigned; - params.mode = output; - - // TODO: This shouldn't be needed...we only support scaling now - // To get a firmware equivalent unit for delta, we add the requested - // delta to the threshold and convert that to firmware units, then - // subtract off the threshold firmware unit value, giving us a proper delta. - int32_t base; - int32_t basePlusDelta; - if (![MBLConversion number:[self.format numberFromDouble:0] toInt32:&base]) { - [NSException raise:@"Unexpected Error" format:@"Could not encode 0"]; - } - if (![MBLConversion number:[self.format numberFromDouble:delta] toInt32:&basePlusDelta]) { - [NSException raise:@"Invalid delta value" format:@"delta %f cannot fit in uint32", delta]; - } - // Set the difference in the filter params - if (![MBLConversion number:[NSNumber numberWithInt:basePlusDelta - base] toUint32:(uint32_t *)params.delta]) { - [NSException raise:@"Invalid delta value" format:@"delta %f cannot fit in uint32", delta]; - } - - MBLFormat *format = nil; - switch (output) { - case MBLDeltaValueOutputAbsolute: - format = [self.format copy]; - format.isSigned = YES; - break; - case MBLDeltaValueOutputDifferential: - format = [self.format copy]; - format.isSigned = YES; - break; - case MBLDeltaValueOutputBinary: - format = [[MBLNumericFormatter alloc] initIntWithLength:self.format.length isSigned:YES]; - break; - } - format.offset = 0; - - MBLFilter *filter = [[MBLFilter alloc] initWithTrigger:self - filterParameters:[NSData dataWithBytes:¶ms length:sizeof(df_deltav_param_t)] - format:format]; - return filter; -} - - -typedef struct __attribute__((packed)) { - uint8_t filter_id; - uint8_t datalen:2; - uint8_t issigned:1; - uint8_t mode:3; - uint8_t threshold[4]; - uint8_t hysteresis[2]; -} df_thresh_param_t; - -- (MBLFilter *)changeOfEventAcrossThreshold:(double)threshold hysteresis:(double)hysteresis output:(MBLThresholdValueOutput)output -{ - if (hysteresis < 0) { - [NSException raise:@"Invalid hysteresis value" format:@"hysteresis cannot be negative"]; - } - - df_thresh_param_t params = {0}; - params.filter_id = 0xD; - params.datalen = self.format.length - 1; - params.issigned = self.format.isSigned; - params.mode = output; - if (![MBLConversion number:[self.format numberFromDouble:threshold] toInt32:(int32_t *)params.threshold]) { - [NSException raise:@"Invalid threshold value" format:@"threshold %f cannot fit in int32", threshold]; - } - if (![MBLConversion number:[self.format numberFromDouble:hysteresis] toUint16:(uint16_t *)params.hysteresis]) { - [NSException raise:@"Invalid hysteresis value" format:@"hysteresis %f cannot fit in uint16", hysteresis]; - } - - // Binary mode forces the output to +-1, so change formatter to handle that - MBLFormat *format; - if (output == MBLThresholdValueOutputAbsolute) { - format = [self.format copy]; - } else { - format = [[MBLNumericFormatter alloc] initIntWithLength:self.format.length isSigned:YES]; - } - format.offset = 0; - - MBLFilter *filter = [[MBLFilter alloc] initWithTrigger:self - filterParameters:[NSData dataWithBytes:¶ms length:sizeof(df_thresh_param_t)] - format:format]; - return filter; -} - - -- (MBLEvent *)readDataOnEvent:(MBLData *)data -{ - return [[MBLTriggeredRead alloc] initWithData:data trigger:self]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLFilter.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLFilter.h deleted file mode 100644 index e961876..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLFilter.h +++ /dev/null @@ -1,60 +0,0 @@ -/** - * MBLFilter.h - * MetaWear - * - * Created by Stephen Schiffli on 10/9/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -@class MBLData; - -NS_ASSUME_NONNULL_BEGIN - -/** - The MBLFilter takes an MBLEvent as input, then performs some operation and produces an output. - */ -@interface MBLFilter : MBLEntityEvent - -/** - Reset the internal state of the filter - */ -- (BFTask *)resetAsync; - -/** - Create a new event that will periodically read this filter data until canceled. - @param period Period time in mSec - @returns New event that will read this data periodically - */ -- (MBLEvent *)periodicReadWithPeriod:(uint32_t)period; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLFilter.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLFilter.m deleted file mode 100644 index 64ccc1f..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLFilter.m +++ /dev/null @@ -1,185 +0,0 @@ -/** - * MBLFilter.m - * MetaWear - * - * Created by Stephen Schiffli on 10/9/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFilter+Private.h" -#import "MBLEntityEvent+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLMetaWearManager+Private.h" -#import "MBLTriggeredRead.h" -#import "MBLDependentData.h" -#import "BFTask+Private.h" - -typedef struct __attribute__((packed)) { - uint8_t module_id; - uint8_t register_id; - uint8_t index; - uint8_t offset:5; - uint8_t len:3; -} filter_param_t; - -@interface MBLFilter () -@property (nonatomic) MBLEvent *trigger; -@property (nonatomic, weak) MBLData *stateSetResetGet; // The data hold strong reference to us -@property (nonatomic) MBLRegister *parameterModify; -@property (nonatomic) NSData *parameters; -@end - - -@implementation MBLFilter - -- (instancetype)initWithTrigger:(MBLEvent *)trigger - filterParameters:(NSData *)parameters - format:(MBLFormat *)format -{ - // Since all filters get their data through the single processingNotify register in - // the data processing module, we create a dummy register which is optionally notified - // when we see a global notification which matches our filter id - self = [super initWithModule:trigger.module.device.dataProcessor registerId:0x3 addEntityParameters:[NSData data] format:format]; - if (self) { - self.trigger = trigger; - MBLDependentData *stateSetResetGet = [[MBLDependentData alloc] initWithModule:trigger.module.device.dataProcessor registerId:0x4 format:format dependent:self]; - self.stateSetResetGet = stateSetResetGet; - self.parameterModify = [[MBLRegister alloc] initWithModule:trigger.module.device.dataProcessor registerId:0x5 format:[[MBLFormat alloc] initEncodedDataWithLength:18]]; - self.parameters = parameters; - } - return self; -} - -- (NSData *)generateAddFilterParameters -{ - filter_param_t data = {0}; - data.module_id = self.trigger.module.moduleInfo.moduleId; - data.register_id = self.trigger.registerId; - data.index = self.trigger.index; - data.offset = self.trigger.format.offset; - data.len = self.trigger.format.length - 1; - - NSMutableData *addFilterData = [NSMutableData dataWithBytes:&data length:sizeof(filter_param_t)]; - [addFilterData appendData:self.parameters]; - return addFilterData; -} - -- (BFTask *)resetStateWithDataAsync:(NSData *)data -{ - if (self.index == 0xFF) { - NSError *error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorOperationInvalid - userInfo:@{NSLocalizedDescriptionKey : @"Filter must be initialized before being reset."}]; - return [BFTask taskWithError:error]; - } - - uint8_t uid = self.index; - NSMutableData *params = [NSMutableData dataWithBytes:&uid length:1]; - if (data) { - [params appendData:data]; - } - return [self.stateSetResetGet writeDataAsync:params]; -} - -- (BFTask *)resetParametersWithData:(NSData *)data -{ - if (self.index == 0xFF) { - NSError *error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorOperationInvalid - userInfo:@{NSLocalizedDescriptionKey : @"Filter must be initialized before being reset."}]; - return [BFTask taskWithError:error]; - } - - uint8_t uid = self.index; - NSMutableData *params = [NSMutableData dataWithBytes:&uid length:1]; - if (data) { - [params appendData:data]; - } - return [self.parameterModify writeDataAsync:params]; -} - -- (BFTask *)resetAsync -{ - return [self resetStateWithDataAsync:nil]; -} - -typedef struct __attribute__((packed)) { - uint8_t filter_id; - uint8_t datalen:5; -} df_buffer_param_t; - -- (MBLEvent *)periodicReadWithPeriod:(uint32_t)period -{ - df_buffer_param_t params = {0}; - params.filter_id = 0xF; - params.datalen = self.format.length - 1; - - MBLFilter *filter = [[MBLFilter alloc] initWithTrigger:self - filterParameters:[NSData dataWithBytes:¶ms length:sizeof(df_buffer_param_t)] - format:self.format]; - - return [[MBLTriggeredRead alloc] initWithData:filter.stateSetResetGet period:period eventCount:0xFFFF]; -} - -- (BFTask *)performAsyncInitialization -{ - // Setup trigger so that its index is filled in and its module is enabled - return [[[self.trigger initializeAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - // Set the addEntityParams now that trigger is ready - self.addEntityParameters = [self generateAddFilterParameters]; - return [super performAsyncInitialization]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - self.stateSetResetGet.index = self.index; - return nil; - }]; -} - -- (BFTask *)performAsyncDeinitialization -{ - return [[super performAsyncDeinitialization] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - self.stateSetResetGet.index = 0xFF; - // Remove the addEntityParams - self.addEntityParameters = [NSData data]; - // Un-setup trigger - return [self.trigger deinitializeAsync]; - }]; -} - -- (BFTask *)performAsyncActivation -{ - return [self.trigger activateAsync]; -} - -- (BFTask *)performAsyncDeactivation -{ - return [self.trigger deactivateAsync]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLFirmwareUpdateInfo.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLFirmwareUpdateInfo.h deleted file mode 100644 index 2317ded..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLFirmwareUpdateInfo.h +++ /dev/null @@ -1,51 +0,0 @@ -/** - * MBLFirmwareUpdateInfo.h - * MetaWear - * - * Created by Stephen Schiffli on 9/28/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLFirmwareUpdateInfo : NSObject - -- (instancetype)initWithFirmwareUrl:(NSURL *)firmwareUrl - target:(CBPeripheral *)target - centralManager:(CBCentralManager *)centralManager; - -@property (nonatomic, readonly) NSURL *firmwareUrl; -@property (nonatomic, readonly) CBPeripheral *target; -@property (nonatomic, readonly) CBCentralManager *centralManager; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLFirmwareUpdateInfo.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLFirmwareUpdateInfo.m deleted file mode 100644 index a66d085..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLFirmwareUpdateInfo.m +++ /dev/null @@ -1,59 +0,0 @@ -/** - * MBLFirmwareUpdateInfo.m - * MetaWear - * - * Created by Stephen Schiffli on 9/28/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFirmwareUpdateInfo.h" - -@interface MBLFirmwareUpdateInfo () -@property (nonatomic) NSURL *firmwareUrl; -@property (nonatomic) CBPeripheral *target; -@property (nonatomic) CBCentralManager *centralManager; -@end - -@implementation MBLFirmwareUpdateInfo - -- (instancetype)initWithFirmwareUrl:(NSURL *)firmwareUrl - target:(CBPeripheral *)target - centralManager:(CBCentralManager *)centralManager -{ - self = [super init]; - if (self) { - self.firmwareUrl = firmwareUrl; - self.target = target; - self.centralManager = centralManager; - } - return self; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLMetaWear.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLMetaWear.h deleted file mode 100644 index 620c325..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLMetaWear.h +++ /dev/null @@ -1,387 +0,0 @@ -/** - * MBLMetaWear.h - * MetaWear - * - * Created by Stephen Schiffli on 7/29/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import - -@class MBLTemperature; -@class MBLAccelerometer; -@class MBLGyro; -@class MBLLED; -@class MBLMechanicalSwitch; -@class MBLGPIO; -@class MBLHapticBuzzer; -@class MBLiBeacon; -@class MBLNeopixel; -@class MBLEvent; -@class MBLANCS; -@class MBLI2C; -@class MBLSerial; -@class MBLTimer; -@class MBLConductance; -@class MBLBarometer; -@class MBLAmbientLight; -@class MBLMagnetometer; -@class MBLHygrometer; -@class MBLPhotometer; -@class MBLProximity; -@class MBLSettings; -@class MBLMetaWear; -@class MBLFirmwareUpdateInfo; -@protocol MBLBluetoothPeripheralDelegate; - -NS_ASSUME_NONNULL_BEGIN - -/** - Current state of the MetaWear connection - */ -typedef NS_ENUM(NSInteger, MBLConnectionState) { - MBLConnectionStateDisconnected = 0, - MBLConnectionStateConnecting, - MBLConnectionStateConnected, - MBLConnectionStateDisconnecting, - MBLConnectionStateDiscovery, -}; - - -/** - An MBLRestorable object is used to persist state across resets and disconnects. - You create an object that conforms to this protocol and then assign it to an - MBLMetaWear object using the setConfiguration:handler: method - */ -@protocol MBLRestorable -/** - This function is called shortly after you assign this object to a MetaWear device. - Override this function and use it as the main initialization point for setting up - custom events needed for your application. - - Any API calls in this method will be persisted in non-volatile memory on the - MetaWear, and be executed when the MetaWear powers on. For example, if you want - the device to automatically (after reset or power-loss) startLoggingAsync some - event, set the peripheral name, or modifiy a connection parameter, do that in this function. - */ -- (void)runOnDeviceBoot:(MBLMetaWear *)device; -@end - - - -/** - Each MBLMetaWear object corresponds a physical MetaWear board. It contains all the logical - methods you would expect for interacting with the device, such as, connecting, disconnecting, - reading and writing state. - - Sensors and peripherals on the MetaWear are encapsulated within their own objects accessable - here via properties. For example, all accelerometer functionality is contained in the - MBLAccelerometer class and is accessed using the accelerometer property - */ -@interface MBLMetaWear : NSObject - -///---------------------------------- -/// @name Sensor and Peripheral Accessors -///---------------------------------- - -/** - MBLMechanicalSwitch object contains all methods for interacting with the on-board button - */ -@property (nonatomic, readonly, nullable) MBLMechanicalSwitch *mechanicalSwitch; -/** - MBLLED object contains all methods for interacting with the on-board LED - */ -@property (nonatomic, readonly, nullable) MBLLED *led; -/** - MBLTemperature object contains all methods for interacting with the on-chip and external thermistor temperature sensors - */ -@property (nonatomic, readonly, nullable) MBLTemperature *temperature; -/** - MBLAccelerometer object contains all methods for interacting with the on-board accelerometer sensor - */ -@property (nonatomic, readonly, nullable) MBLAccelerometer *accelerometer; -/** - MBLGyro object contains all methods for interacting with the on-board gyroscope sensor - */ -@property (nonatomic, readonly, nullable) MBLGyro *gyro; -/** - MBLGPIO object contains all methods for interacting with the on-board pins - */ -@property (nonatomic, readonly, nullable) MBLGPIO *gpio; -/** - MBLHapticBuzzer object contains all methods for interacting with the external haptic or buzzer - */ -@property (nonatomic, readonly, nullable) MBLHapticBuzzer *hapticBuzzer; -/** - MBLiBeacon object contains all methods for programming the device to advertise as an iBeacon - */ -@property (nonatomic, readonly, nullable) MBLiBeacon *iBeacon; -/** - MBLNeopixel object contains all methods for interacting with an external NeoPixel chain - */ -@property (nonatomic, readonly, nullable) MBLNeopixel *neopixel; -/** - MBLANCS object contains all methods for interacting with ANCS notifications - */ -@property (nonatomic, readonly, nullable) MBLANCS *ancs; -/** - MBLTimer object contains all methods for programming timer based operations - */ -@property (nonatomic, readonly, nullable) MBLTimer *timer; -/** - MBLSerial object contains all methods for performing raw I2C and SPI read/writes - */ -@property (nonatomic, readonly, nullable) MBLSerial *serial; -/** - MBLConductance object contains all methods for perfoming Conductance reads - */ -@property (nonatomic, readonly, nullable) MBLConductance *conductance; -/** - MBLBarometer object contains all methods for interacting with the barometer sensor - */ -@property (nonatomic, readonly, nullable) MBLBarometer *barometer; -/** - MBLAmbientLight object contains all methods for interacting with the ambient light sensor - */ -@property (nonatomic, readonly, nullable) MBLAmbientLight *ambientLight; -/** - MBLMagnetometer object contains all methods for interacting with the magnetometer sensor - */ -@property (nonatomic, readonly, nullable) MBLMagnetometer *magnetometer; -/** - MBLHygrometer object contains all methods for interacting with the humidity sensor - */ -@property (nonatomic, readonly, nullable) MBLHygrometer *hygrometer; -/** - MBLPhotometer object contains all methods for interacting with the photometer (color) sensor - */ -@property (nonatomic, readonly, nullable) MBLPhotometer *photometer; -/** - MBLProximity object contains all methods for interacting with the proximity sensor - */ -@property (nonatomic, readonly, nullable) MBLProximity *proximity; -/** - MBLSettings object contains all methods for interacting with MetaWear device settings - */ -@property (nonatomic, readonly, nullable) MBLSettings *settings; -/** - MBLDeviceInfo object contains version information about the device - */ -@property (nonatomic, readonly, nullable) MBLDeviceInfo *deviceInfo; - - -///---------------------------------- -/// @name Persistent Configuration Settings -///---------------------------------- - -/** - MBLRestorable object containing custom settings and events that are programmed - to the MetaWear and preserved between disconnects and app termination. - */ -@property (nonatomic, readonly, nullable) id configuration; - -/** - Assign a new configuration object to this MetaWear. This only needs to be called once, - likely after you confirm the device from a scanning screen or such. Upon calling it will - erase all non-volatile memory the device (which requires disconnect), then perform reset, - once its comes back online we will connect and invoke the setupEvents method. - Then the runOnDeviceBoot method is invoked and all calls in that method are persisted - device side so after any future reset these settings will be applied automatically. - @param configuration Pointer to object containing programming commands. Writing nil - will reset to factory settings. - */ -- (BFTask *)setConfigurationAsync:(nullable id)configuration; - -///---------------------------------- -/// @name State Accessors -///---------------------------------- - -/** - Current connection state of this MetaWear - */ -@property (nonatomic, readonly) MBLConnectionState state; -/** - If YES, then WARNING, this is not the owning application and you can cause - data loss for the other application that is using the device. - */ -@property (nonatomic, readonly) BOOL isGuestConnection; -/** - iOS generated unique identifier for this MetaWear. This is device specific and - two different iOS devices with generate two different identifiers. - */ -@property (nonatomic, readonly) NSUUID *identifier; -/** - Stored value of signal strength at discovery time - */ -@property (nonatomic, readonly, nullable) NSNumber *discoveryTimeRSSI; -/** - Smoothed out RSSI value, great for use with signal strength icons - */ -@property (nonatomic, readonly, nullable) NSNumber *averageRSSI; -/** - Advertised device name. You can simply assign a new string - if you wish to change the advertised name, max 8 characters! - */ -@property (nonatomic) NSString *name; -/** - Model of device as stated in marketing information. - */ -@property (nonatomic, readonly) MBLModel metaModel; -@property (nonatomic, readonly) NSString *metaModelString; - -///---------------------------------- -/// @name Connect/Disconnect -///---------------------------------- - -/** - Connect/reconnect to the MetaWear board. Once connection is complete, the provided block - will be invoked. If the NSError provided to the block is null then the connection - succeeded, otherwise failure (see provided error for details) - */ -- (BFTask *)connectAsync; -/** - Connect/reconnect to the MetaWear board, but with a timeout if the board can't be - located. Once connection is complete, the provided block will be invoked. If the - NSError provided to the block is null then the connection succeeded, otherwise - failure (see provided error for details) - @param timeout Max time to search for MetaWear before giving up - */ -- (BFTask *)connectWithTimeoutAsync:(NSTimeInterval)timeout; - -/** - Disconnect from the MetaWear board. - */ -- (BFTask *)disconnectAsync; - -///---------------------------------- -/// @name Remember/Forget -///---------------------------------- - -/** - Remember this MetaWear, it will be saved to disk and retrievable - through [MBLMetaWearManager retrieveSavedMetaWears] - */ -- (void)rememberDevice; -/** - Forget this MetaWear, it will no longer be retrievable - through [MBLMetaWearManager retrieveSavedMetaWears] - */ -- (void)forgetDevice; - -/** - The state of all MetaWear modules are persisted to disk for ease of use - across application launches. Most of the time you don't need to explicitly - call this function as it is called automatically after interactions with the - board. Function that count as interacation include start/stopLogging, - start/stopNotificationsAsync, program/eraseCommands. If you make changes to various - module setting but don't call one of these functions, then it may be usefully - to call this function so you don't lose the state of those setting changes. - */ -- (BFTask *)synchronizeAsync; - -///---------------------------------- -/// @name State Reading -///---------------------------------- - -/** - Query the current RSSI - */ -- (BFTask *)readRSSIAsync; -/** - Query the percent remaining battery life, returns int between 0-100 - */ -- (BFTask *)readBatteryLifeAsync; - -///---------------------------------- -/// @name Firmware Update and Reset -///---------------------------------- - -/** - Perform a software reset of the device. Note that all module properties of - this object will be invalidated, so remove any external references to them. - @warning This will cause the device to disconnect - */ -- (void)resetDevice; - -/** - See if this device is running the most up to date firmware - */ -- (BFTask *)checkForFirmwareUpdateAsync; - -/** - Download the latest firmware and put the device in bootloader mode. Note that - you will need to use Nordic's DFU library to actaully perform the update: - https://github.com/NordicSemiconductor/IOS-Pods-DFU-Library - For example, you can see our sample app for how to integrate DFU into your own app: - https://github.com/mbientlab/Metawear-SampleiOSApp - - Please make sure the device is plugged in or charged above 50% to prevent errors. - - This is one API you can call WITHOUT being connected, there are some cases where - you can't connect because the firmware is too old, but you still need to be able - to update it! - */ -- (BFTask *)prepareForFirmwareUpdateAsync; - -///---------------------------------- -/// @name Debug and Testing Utilities -///---------------------------------- - -/* - This causues the device to immediately disconnect with an error. Useful for testing - error handling flows. - */ -- (void)simulateDisconnect; - - -///---------------------------------- -/// @name Deprecated -///---------------------------------- - -@property (nonatomic, readonly, nullable) MBLI2C *i2c DEPRECATED_MSG_ATTRIBUTE("Use serial instead"); - -- (void)updateFirmwareWithHandler:(MBLErrorHandler)handler - progressHandler:(nullable MBLFloatHandler)progressHandler DEPRECATED_MSG_ATTRIBUTE("Use prepareForFirmwareUpdateAsync instead"); - -- (void)setConfiguration:(nullable id)configuration handler:(nullable MBLErrorHandler)handler DEPRECATED_MSG_ATTRIBUTE("use setConfigurationAsync: instead"); -- (void)connectWithHandler:(nullable MBLErrorHandler)handler DEPRECATED_MSG_ATTRIBUTE("use connectAsync instead"); -- (void)connectWithTimeout:(NSTimeInterval)timeout handler:(nullable MBLErrorHandler)handler DEPRECATED_MSG_ATTRIBUTE("use connectWithTimeoutAsync instead"); -- (void)disconnectWithHandler:(nullable MBLErrorHandler)handler DEPRECATED_MSG_ATTRIBUTE("use disconnectAsync instead"); -- (void)readBatteryLifeWithHandler:(MBLNumberHandler)handler DEPRECATED_MSG_ATTRIBUTE("use readBatteryLifeAsync instead"); -- (void)readRSSIWithHandler:(MBLNumberHandler)handler DEPRECATED_MSG_ATTRIBUTE("use readRSSIAsync instead"); -- (void)checkForFirmwareUpdateWithHandler:(MBLBoolHandler)handler DEPRECATED_MSG_ATTRIBUTE("use checkForFirmwareUpdateAsync instead"); -- (void)prepareForFirmwareUpdateWithHandler:(MBLFirmwareUpdateHandler)handler DEPRECATED_MSG_ATTRIBUTE("use prepareForFirmwareUpdateAsync instead"); -- (void)synchronize DEPRECATED_MSG_ATTRIBUTE("use synchronizeAsync instead"); - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLMetaWear.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLMetaWear.m deleted file mode 100644 index 43aac7d..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLMetaWear.m +++ /dev/null @@ -1,1752 +0,0 @@ -/** - * MBLMetaWear.m - * MetaWear - * - * Created by Stephen Schiffli on 7/29/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLMetaWear.h" -#import "MBLMetaWear+Private.h" -#import "MBLMetaWearManager+Private.h" -#import "MBLFirmwareUpdateManager.h" -#import "MBLAnalytics.h" -#import "MBLModuleInfo.h" -#import "MBLFirmwareBuild.h" -#import "MBLFormat.h" -#import "MBLNumericFormatter.h" -#import "MBLNumericData+Private.h" -#import "FastCoder.h" -#import "BFTask+MBLExtensions.h" -#import "BFTask+Private.h" - -#import "MBLMechanicalSwitch.h" -#import "MBLAccelerometer+Private.h" -#import "MBLGyro+Private.h" -#import "MBLTemperature.h" -#import "MBLLED.h" -#import "MBLGPIO.h" -#import "MBLTestDebug.h" -#import "MBLEvent+Private.h" -#import "MBLANCS.h" -#import "MBLTimer+Private.h" -#import "MBLSettings.h" -#import "MBLNeopixel.h" -#import "MBLiBeacon.h" -#import "MBLHapticBuzzer.h" -#import "MBLSerial+Private.h" -#import "MBLDeviceInfo.h" -#import "MBLConductance.h" -#import "MBLBarometer.h" -#import "MBLAmbientLight+Private.h" -#import "MBLMagnetometer.h" -#import "MBLHygrometer.h" -#import "MBLPhotometer+Private.h" -#import "MBLProximity+Private.h" -#import "MBLSettings+Private.h" -#import "MBLDispatchQueue.h" -#import -#import "MBLMovingAverage.h" -#import "MBLConstants+Private.h" -#import "MBLLogger.h" - -static int MAX_PENDING_WRITES = 25; - -typedef void (^MBLModuleInfoErrorHandler)(MBLModuleInfo *moduleInfo, NSError *error); -typedef void (^MBLModuleInfoHandler)(MBLModuleInfo *moduleInfo); - -@interface MBLMetaWear () -// Properties from MBLMetaWear.h -@property (nonatomic, nullable) MBLMechanicalSwitch *mechanicalSwitch; -@property (nonatomic, nullable) MBLLED *led; -@property (nonatomic, nullable) MBLTemperature *temperature; -@property (nonatomic, nullable) MBLAccelerometer *accelerometer; -@property (nonatomic, nullable) MBLGyro *gyro; -@property (nonatomic, nullable) MBLGPIO *gpio; -@property (nonatomic, nullable) MBLHapticBuzzer *hapticBuzzer; -@property (nonatomic, nullable) MBLiBeacon *iBeacon; -@property (nonatomic, nullable) MBLNeopixel *neopixel; -@property (nonatomic, nullable) MBLANCS *ancs; -@property (nonatomic, nullable) MBLTimer *timer; -@property (nonatomic, nullable) MBLSerial *serial; -@property (nonatomic, nullable) MBLConductance *conductance; -@property (nonatomic, nullable) MBLBarometer *barometer; -@property (nonatomic, nullable) MBLAmbientLight *ambientLight; -@property (nonatomic, nullable) MBLMagnetometer *magnetometer; -@property (nonatomic, nullable) MBLHygrometer *hygrometer; -@property (nonatomic, nullable) MBLPhotometer *photometer; -@property (nonatomic, nullable) MBLProximity *proximity; -@property (nonatomic, nullable) MBLSettings *settings; -@property (nonatomic, nullable) MBLDeviceInfo *deviceInfo; - -@property (nonatomic, nullable) id configuration; - -@property (nonatomic) MBLConnectionState state; -@property (nonatomic) BOOL isGuestConnection; -@property (nonatomic, nonnull) NSUUID *identifier; -@property (nonatomic, nullable) NSNumber *discoveryTimeRSSI; -@property (nonatomic) MBLMovingAverage *rssiAverager; -//@property (nonatomic, nonnull) NSString *name; -// Setting the name property causes side effects, so we -// create an internal property for storing the actual value, allowing -// us to safely get/set during serialization of this class -@property (nonatomic) NSString *nameImpl; - - -// Properties from MBLMetaWear+Private.h -@property (nonatomic) BOOL bypassSetup; - -@property (nonatomic) id peripheral; - -@property (nonatomic) MBLDataProcessor *dataProcessor; -@property (nonatomic) MBLLogging *logging; -@property (nonatomic) MBLCommand *command; -@property (nonatomic) MBLTestDebug *testDebug; -@property (nonatomic) MBLMacro *macro; - -@property (nonatomic) MBLNonVolatileState *nonVolatileState; - -@property (nonatomic) MBLDispatchQueue *zeroCountQueue; - -// Properties needed internally requring AutoConding -@property (nonatomic) NSArray *modules; -@end - - -@implementation MBLMetaWear { - // Ivars for internal things that arn't exposed anywhere as properties because they don't need encoded - NSMutableArray *connectionSources; - NSMutableArray *disconnectionSources; - NSMutableArray *RSSISources; - NSMutableArray *batteryLifeSources; - NSMutableArray *deviceInfoSources; - - int characteristicCount; - int serviceCount; - int connectionRetryCount; - - MBLSimulationHandler simulatorHandler; - MBLDataHandler snifferHandler; - NSMutableDictionary *moduleInfoTaskSources; - int commandCount; - - CBCharacteristic *metawearCommandCharacteristic; - CBCharacteristic *metawearNotification6Characteristic; - CBCharacteristic *batteryLifeCharacteristic; - CBCharacteristic *disModelNumberCharacteristic; - CBCharacteristic *disManufacturerNameCharacteristic; - CBCharacteristic *disSerialNumberCharacteristic; - CBCharacteristic *disHardwareRevisionCharacteristic; - CBCharacteristic *disFirmwareRevisionCharacteristic; - - MBLFirmwareUpdateManager *updateManager; - - MBLDispatchQueue *simulatorCountQueue; - NSMutableArray *simulatorFreeTasks; - BOOL simulatorBusy; - NSObject *simulatorHandlerMutex; -} - -// Properties that need custom encode/decode functions -@synthesize state = _noencode_state; -@synthesize isGuestConnection = _noencode_isGuestConnection; - -@synthesize peripheral = _noencode_peripheral; -@synthesize bypassSetup = _noencode_bypassSetup; - -@synthesize zeroCountQueue = _noencode_zeroCountQueue; - -- (NSError *)writeToFile:(NSString *)filename -{ - MBLLog(MBLLogLevelInfo, @"Saving to disk: %@", self); - NSData *data = [FastCoder dataWithRootObject:self]; - NSError *error = nil; - -#if TARGET_OS_IOS || TARGET_OS_TV - [data writeToFile:filename - options:NSDataWritingAtomic | NSDataWritingFileProtectionCompleteUntilFirstUserAuthentication - error:&error]; -#else - [data writeToFile:filename - options:NSDataWritingAtomic - error:&error]; -#endif - - if (error) { MBLLog(MBLLogLevelError, @"%@", error); } - return error; -} - -- (instancetype)initWithPeripheral:(id)peripheral - andAdvertisementData:(NSDictionary *)advertisementData - andRSSI:(NSNumber *)RSSI -{ - self = [super init]; - if (self) { - peripheral.delegate = self; - - self.peripheral = peripheral; - self.identifier = peripheral.identifier; - self.nameImpl = peripheral.name; - self.discoveryTimeRSSI = RSSI; - - self.state = MBLConnectionStateDisconnected; - - connectionSources = [NSMutableArray array]; - disconnectionSources = [NSMutableArray array]; - RSSISources = [NSMutableArray array]; - batteryLifeSources = [NSMutableArray array]; - deviceInfoSources = [NSMutableArray array]; - - moduleInfoTaskSources = [NSMutableDictionary dictionary]; - - self.zeroCountQueue = [[MBLDispatchQueue alloc] initWithName:@"com.mbientlab.metawear.zeroCountQueue"]; - simulatorCountQueue = [[MBLDispatchQueue alloc] initWithName:@"com.mbientlab.metawear.simulatorCountQueue"]; - simulatorFreeTasks = [NSMutableArray array]; - simulatorHandlerMutex = [[NSObject alloc] init]; - - self.nonVolatileState = [[MBLNonVolatileState alloc] init]; - } - return self; -} - -- (id)awakeAfterFastCoding -{ - self.state = MBLConnectionStateDisconnected; - - connectionSources = [NSMutableArray array]; - disconnectionSources = [NSMutableArray array]; - RSSISources = [NSMutableArray array]; - batteryLifeSources = [NSMutableArray array]; - deviceInfoSources = [NSMutableArray array]; - - moduleInfoTaskSources = [NSMutableDictionary dictionary]; - - self.zeroCountQueue = [[MBLDispatchQueue alloc] initWithName:@"com.mbientlab.metawear.zeroCountQueue"]; - simulatorCountQueue = [[MBLDispatchQueue alloc] initWithName:@"com.mbientlab.metawear.simulatorCountQueue"]; - simulatorFreeTasks = [NSMutableArray array]; - simulatorHandlerMutex = [[NSObject alloc] init]; - - return self; -} - -- (void)setDiscoveryTimeRSSI:(NSNumber *)discoveryTimeRSSI -{ - // Reject erroneous values - if (discoveryTimeRSSI.doubleValue > -15.0) { - return; - } - _discoveryTimeRSSI = discoveryTimeRSSI; - if (!self.rssiAverager) { - self.rssiAverager = [[MBLMovingAverage alloc] initWithPeriod:4]; - } - [self.rssiAverager addDatum:discoveryTimeRSSI]; - // We null out the average is 10 seconds pass without a reading - // We do this on main thread because performSelector afterDelay isn't working on other threads - dispatch_async(dispatch_get_main_queue(), ^{ - [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(rssiTimeout) object:nil]; - [self performSelector:@selector(rssiTimeout) withObject:nil afterDelay:10]; - }); -} - -- (NSNumber *)averageRSSI -{ - if (self.rssiAverager) { - return [NSNumber numberWithDouble:self.rssiAverager.movingAverage]; - } - return nil; -} - -- (void)rssiTimeout -{ - self.rssiAverager = nil; -} - -- (BOOL)isGuestConnection -{ - if (self.state != MBLConnectionStateConnected) { - MBLLog(MBLLogLevelWarning, @"isGuestConnection not valid unless a connection is established"); - } - return _noencode_isGuestConnection; -} - -- (BFTask *)initializeModulesIfNeededAsync -{ - if (!self.modules) { - // Start listening to the global notification register since the module init code - // reads data and need callbacks throught this characteristic - [self.peripheral setNotifyValue:YES forCharacteristic:metawearNotification6Characteristic]; - return [self resetModulesAsync]; - } - return [BFTask taskWithResult:nil]; -} - -- (BFTask *)readModuleInfo:(uint8_t)moduleId -{ - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - @synchronized(moduleInfoTaskSources) { - moduleInfoTaskSources[[NSNumber numberWithInt:moduleId]] = source; - } - - // We expect a callback since this is a read - [self incrementCount]; - uint8_t data[] = { moduleId, 0x80 }; - int dataSize = sizeof(data) / sizeof(data[0]); - // Ship the read! - [self writeCommandRegister:[NSData dataWithBytes:data length:dataSize] withResponse:NO]; - return source.task; -} - -- (BFTask *)resetModulesAsync -{ - assert(self.peripheral && self.peripheral.state == MBLConnectionStateConnected); - uint32_t magicKey = self.testDebug.magicKey; - - return [[[BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - self.modules = nil; - self.mechanicalSwitch = nil; - self.led = nil; - self.accelerometer = nil; - self.temperature = nil; - self.gpio = nil; - self.neopixel = nil; - self.iBeacon = nil; - self.hapticBuzzer = nil; - self.dataProcessor = nil; - self.command = nil; - self.logging = nil; - self.timer = nil; - self.serial = nil; - self.ancs = nil; - self.macro = nil; - self.conductance = nil; - self.settings = nil; - self.barometer = nil; - self.gyro = nil; - self.ambientLight = nil; - self.magnetometer = nil; - self.hygrometer = nil; - self.photometer = nil; - self.proximity = nil; - self.testDebug = nil; - - self.configuration = nil; - - // Initialize the madness - // These 3 must go first so that the other modules can access them duing init - NSMutableArray *tasks = [NSMutableArray array]; - [tasks addObject:[[self readModuleInfo:0x9] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.dataProcessor = [MBLDataProcessor objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0xB] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.logging = [MBLLogging objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0xA] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.command = [MBLCommand objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - return [BFTask taskForCompletionOfAllTasks:tasks]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - NSMutableArray *tasks = [NSMutableArray array]; - [tasks addObject:[[self readModuleInfo:0x1] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.mechanicalSwitch = [MBLMechanicalSwitch objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0x2] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.led = [MBLLED objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0x3] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.accelerometer = [MBLAccelerometer objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0x4] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.temperature = [MBLTemperature objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0x5] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.gpio = [MBLGPIO objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0x6] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.neopixel = [MBLNeopixel objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0x7] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.iBeacon = [MBLiBeacon objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0x8] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.hapticBuzzer = [MBLHapticBuzzer objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0xE] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.ancs = [MBLANCS objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0xC] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.timer = [MBLTimer objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0xD] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.serial = [MBLSerial objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0xF] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.macro = [MBLMacro objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0x10] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.conductance = [MBLConductance objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0x11] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.settings = [MBLSettings objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0x12] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.barometer = [MBLBarometer objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0x13] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.gyro = [MBLGyro objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0x14] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.ambientLight = [MBLAmbientLight objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0x15] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.magnetometer = [MBLMagnetometer objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0x16] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.hygrometer = [MBLHygrometer objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0x17] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.photometer = [MBLPhotometer objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0x18] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.proximity = [MBLProximity objectWithDevice:self moduleInfo:moduleInfo]; - } - }]]; - [tasks addObject:[[self readModuleInfo:0xFE] successOnMetaWear:^(MBLModuleInfo *moduleInfo) { - if (moduleInfo) { - self.testDebug = [MBLTestDebug objectWithDevice:self moduleInfo:moduleInfo]; - self.testDebug.magicKey = magicKey; - } - }]]; - return [BFTask taskForCompletionOfAllTasks:tasks]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - // Note this order is very specific, the index must correspond to the module id - self.modules = @[[NSNull null], - self.mechanicalSwitch ? self.mechanicalSwitch : [NSNull null], - self.led ? self.led : [NSNull null], - self.accelerometer ? self.accelerometer : [NSNull null], - self.temperature ? self.temperature : [NSNull null], - self.gpio ? self.gpio : [NSNull null], - self.neopixel ? self.neopixel : [NSNull null], - self.iBeacon ? self.iBeacon : [NSNull null], - self.hapticBuzzer ? self.hapticBuzzer : [NSNull null], - self.dataProcessor ? self.dataProcessor : [NSNull null], - self.command ? self.command : [NSNull null], - self.logging ? self.logging : [NSNull null], - self.timer ? self.timer : [NSNull null], - self.serial ? self.serial : [NSNull null], - self.ancs ? self.ancs : [NSNull null], - self.macro ? self.macro : [NSNull null], - self.conductance ? self.conductance : [NSNull null], - self.settings ? self.settings : [NSNull null], - self.barometer ? self.barometer : [NSNull null], - self.gyro ? self.gyro : [NSNull null], - self.ambientLight ? self.ambientLight : [NSNull null], - self.magnetometer ? self.magnetometer : [NSNull null], - self.hygrometer ? self.hygrometer : [NSNull null], - self.photometer ? self.photometer : [NSNull null], - self.proximity ? self.proximity : [NSNull null]]; - - // Save this as the reset state of the device - // Do this on the bleQueue so that we don't process events while the save state is happening - NSString *filename = [[MBLMetaWearManager sharedManager] logFilename:[self.identifier.UUIDString stringByAppendingString:@"Reset"]]; - return [self writeToFile:filename]; - }]; -} - -- (void)copyModulesFrom:(MBLMetaWear *)other -{ - self.identifier = other.identifier; - self.nameImpl = other.name; - self.deviceInfo = other.deviceInfo; - - self.dataProcessor = other.dataProcessor; - self.logging = other.logging; - self.command = other.command; - - self.mechanicalSwitch = other.mechanicalSwitch; - self.led = other.led; - self.temperature = other.temperature; - self.accelerometer = other.accelerometer; - self.gpio = other.gpio; - self.hapticBuzzer = other.hapticBuzzer; - self.iBeacon = other.iBeacon; - self.neopixel = other.neopixel; - self.ancs = other.ancs; - self.macro = other.macro; - self.conductance = other.conductance; - self.timer = other.timer; - self.serial = other.serial; - self.settings = other.settings; - self.barometer = other.barometer; - self.gyro = other.gyro; - self.ambientLight = other.ambientLight; - self.magnetometer = other.magnetometer; - self.hygrometer = other.hygrometer; - self.photometer = other.photometer; - self.proximity = other.proximity; - - self.testDebug = other.testDebug; - - self.modules = other.modules; - - for (id obj in self.modules) { - if ([obj isKindOfClass:[MBLModule class]]) { - MBLModule *module = obj; - module.device = self; - } - } - self.testDebug.device = self; - - self.configuration = other.configuration; -} - -- (void)showFastCodingWarnings:(id)configuration -{ - if (configuration) { - int unsigned numMethods; - Method *methods = class_copyMethodList([configuration class], &numMethods); - for (int i = 0; i < numMethods; i++) { - NSString *methodName = NSStringFromSelector(method_getName(methods[i])); - if ([methodName isEqualToString:@"encodeWithCoder:"] || [methodName isEqualToString:@"initWithCoder:"]) { - MBLLog(MBLLogLevelWarning, @"[DEPRECATED] We use FastCoding (https://github.com/nicklockwood/FastCoding) so you no longer need to implement NSCoding yourself. By default all properties are saved and restored. Use ivars, or synthesize your properties using non-KVC-compliant names to avoid coding them."); - break; - } - } - free(methods); - } -} - -- (BFTask *)setConfigurationAsync:(id)configuration -{ - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - assert(![MBLConstants isSimulatorQueue] && "Can't set a configuration within a programCommandsToRunOnEventAsync: block"); - dispatch_async([MBLConstants metaWearQueue], ^{ - if (self.state != MBLConnectionStateConnected) { - [source trySetError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorNotConnected - userInfo:@{NSLocalizedDescriptionKey : @"MetaWear not connected, can't perform operation. Please connect to MetaWear before performing setConfiguartion:handler:."}]]; - return; - } - [self showFastCodingWarnings:configuration]; - // The reset file is no longer valid since we are re-programming the device - [self removeResetFile]; - - // When the disconnect occurs we know the device has been cleared and is ready for a fresh programming - [[self waitForDisconnection] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull t) { - // Reconnect if we need to program the beast - if (configuration) { - [[[self connectAsync] success:^(id _Nonnull result) { - self.configuration = configuration; - [self.macro programConfigurationWithHandler:^{ - [self synchronizeResetFileAsync]; - [[self synchronizeAsync] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull t) { - [source trySetResult:self]; - return nil; - }]; - }]; - }] failure:^(NSError * _Nonnull error) { - [source trySetError:error]; - }]; - } else { - self.modules = nil; - [[self synchronizeAsync] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull t) { - [source trySetResult:self]; - return nil; - }]; - } - return nil; - }]; - - // Wipe the device! - [self.macro clearAllMacros]; - [[[self.logging stopAndClearLog] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull t) { - NSString *curVersion = self.accelerometer.device.deviceInfo.firmwareRevision; - // Older versions don't have a reliable reset UID - if ([MBLConstants versionString:curVersion isLessThan:@"1.0.7"]) { - self.modules = nil; - [self synchronizeAsync]; - } - return [self.testDebug resetDeviceAfterGarbageCollect]; - }] failure:^(NSError * _Nonnull error) { - [source trySetError:error]; - }]; - }); - return source.task; -} - -- (NSString *)name -{ - return self.nameImpl; -} - -- (void)setName:(NSString *)name -{ - if (name.length > 8) { - MBLLog(MBLLogLevelWarning, @"MetaWear advertising name truncated to 8 characters"); - self.nameImpl = [name substringToIndex:8]; - } else { - self.nameImpl = name; - } - [self.settings.deviceName writeDataAsync:[self.nameImpl dataUsingEncoding:NSUTF8StringEncoding]]; -} - -- (void)updateName:(NSString *)name -{ - self.nameImpl = name; -} - -- (BFTask *)connectAsync -{ - return [self connectWithTimeoutInternalAsync:nil]; -} - -- (BFTask *)connectWithTimeoutAsync:(NSTimeInterval)timeout -{ - return [self connectWithTimeoutInternalAsync:[NSNumber numberWithDouble:timeout]]; -} - -- (BFTask *)connectWithTimeoutInternalAsync:(NSNumber *)timeout -{ - return [BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - // Our next move depends on what state we are in now - switch (self.state) { - case MBLConnectionStateConnected: - return [BFTask taskWithResult:nil]; - case MBLConnectionStateConnecting: - case MBLConnectionStateDiscovery: - return [self waitForConnectionWithTimeout:timeout]; - case MBLConnectionStateDisconnected: - case MBLConnectionStateDisconnecting: - self.state = MBLConnectionStateConnecting; - BFTask *task = [self waitForConnectionWithTimeout:timeout]; - characteristicCount = 0; - serviceCount = 0; - connectionRetryCount = 2; - [[MBLMetaWearManager sharedManager] connectMetaWear:self]; - return task; - } - }]; -} - -- (BFTask *)waitForConnectionWithTimeout:(NSNumber *)timeout -{ - BFTaskCompletionSource *taskSource = [BFTaskCompletionSource taskCompletionSource]; - @synchronized(connectionSources) { - [connectionSources addObject:taskSource]; - } - if (timeout) { - // We do this on main thread because performSelector afterDelay isn't working on other threads - dispatch_async(dispatch_get_main_queue(), ^{ - [self performSelector:@selector(connectionTimeout:) withObject:taskSource afterDelay:timeout.doubleValue]; - }); - } - return taskSource.task; -} - -- (void)connectionTimeout:(BFTaskCompletionSource *)source -{ - @synchronized(connectionSources) { - // We'll handle this source right now! - [connectionSources removeObject:source]; - // Set a timeout error - [source trySetError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorConnectionTimeout - userInfo:@{NSLocalizedDescriptionKey : @"Timeout during connection. Make sure MetaWear is charged and within range."}]]; - - // If we are the only connection listener then abort the connection entirely - if (connectionSources.count == 0) { - [self disconnectAsync]; - } - } -} - -- (void)invokeConnectionHandlers:(NSError *)error -{ - @synchronized(connectionSources) { - for (BFTaskCompletionSource *source in connectionSources) { - dispatch_async(dispatch_get_main_queue(), ^{ - [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(connectionTimeout:) object:source]; - }); - if (error) { - [source trySetError:error]; - } else { - [source trySetResult:self]; - } - } - [connectionSources removeAllObjects]; - } -} - -- (BFTask *)disconnectAsync -{ - // Our next move depends on what state we are in now - return [BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - switch (self.state) { - case MBLConnectionStateConnected: - { - BFTask *task = [self waitForDisconnection]; - [[self waitForCommandCompletion] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull t) { - self.state = MBLConnectionStateDisconnecting; - [[MBLMetaWearManager sharedManager] disconnectMetaWear:self fromPeripheralSide:YES]; - return nil; - }]; - return task; - } - case MBLConnectionStateConnecting: - case MBLConnectionStateDiscovery: - { - self.state = MBLConnectionStateDisconnecting; - BFTask *task = [self waitForDisconnection]; - [[self waitForCommandCompletion] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull t) { - [[MBLMetaWearManager sharedManager] disconnectMetaWear:self fromPeripheralSide:NO]; - return nil; - }]; - return task; - } - case MBLConnectionStateDisconnecting: - return [self waitForDisconnection]; - case MBLConnectionStateDisconnected: - return [BFTask taskWithResult:nil]; - } - }]; -} - -- (BFTask *)waitForDisconnection -{ - BFTaskCompletionSource *taskSource = [BFTaskCompletionSource taskCompletionSource]; - @synchronized(disconnectionSources) { - [disconnectionSources addObject:taskSource]; - } - return taskSource.task; -} - -- (void)invokeDisconnectionHandlers:(NSError *)error -{ - @synchronized(disconnectionSources) { - for (BFTaskCompletionSource *source in disconnectionSources) { - if (error) { - [source trySetError:error]; - } else { - [source trySetResult:self]; - } - } - [disconnectionSources removeAllObjects]; - } -} - -- (void)rememberDevice -{ - [[MBLMetaWearManager sharedManager] rememberMetaWear:self]; -} - -- (void)forgetDevice -{ - [[MBLMetaWearManager sharedManager] forgetMetaWear:self]; -} - -- (BFTask *)synchronizeAsync -{ - NSString *filename = [[MBLMetaWearManager sharedManager] logFilename:self.identifier.UUIDString]; - // Do this on the metaWearQueue so that we don't modify any data while the save is happening - return [BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - return [self writeToFile:filename]; - }]; -} - -- (BFTask *)synchronizeResetFileAsync -{ - NSString *filename = [[MBLMetaWearManager sharedManager] logFilename:[self.identifier.UUIDString stringByAppendingString:@"Reset"]]; - // Do this on the metaWearQueue so that we don't modify any data while the save is happening - return [BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - return [self writeToFile:filename]; - }]; -} - -- (void)removeResetFile -{ - NSString *filename = [[MBLMetaWearManager sharedManager] logFilename:[self.identifier.UUIDString stringByAppendingString:@"Reset"]]; - // Remove the reset state - dispatch_async([MBLConstants metaWearQueue], ^{ - NSError *error = nil; - BOOL success = [[NSFileManager defaultManager] removeItemAtPath:filename error:&error]; - if (!success) { - if (!([error.domain isEqualToString:NSCocoaErrorDomain] && error.code == 4)) { - MBLLog(MBLLogLevelError, @"%@", error); - } - } - }); -} - -- (void)didConnect -{ - dispatch_async([MBLConstants metaWearQueue], ^{ - // Only access state from the metaWearQueue - self.state = MBLConnectionStateDiscovery; - [self.peripheral discoverServices:@[[MBLConstants serviceUUID], - [MBLConstants batteryServiceUUID], - [MBLConstants DISServiceUUID], - [MBLConstants DFUServiceUUID]]]; - }); -} - -- (void)didDisconnect:(NSError *)error -{ - MBLConnectionState __block prevState; - [[BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - prevState = self.state; - // Clean up everything - self.peripheral = nil; - self.state = MBLConnectionStateDisconnected; - metawearCommandCharacteristic = nil; - metawearNotification6Characteristic = nil; - batteryLifeCharacteristic = nil; - disManufacturerNameCharacteristic = nil; - disSerialNumberCharacteristic = nil; - disHardwareRevisionCharacteristic = nil; - disFirmwareRevisionCharacteristic = nil; - disModelNumberCharacteristic = nil; - - // Inform all the modules of this disconnection - for (id obj in self.modules) { - if ([obj isKindOfClass:[MBLModule class]]) { - MBLModule *module = obj; - [module deviceDisconnected:error]; - } - } - [self.testDebug deviceDisconnected:error]; - - // On disconnect we cant expect to get past reads back right, so clear out everything - [self.zeroCountQueue reset]; - [simulatorCountQueue reset]; - simulatorBusy = NO; - simulatorFreeTasks = [NSMutableArray array]; - - // Persist the current state to disk - return [self synchronizeAsync]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull t) { - // Make sure all the connection handlers are flushed out - NSError *connectionError = error; - switch (prevState) { - case MBLConnectionStateConnecting: - case MBLConnectionStateDiscovery: - if (!connectionError) { - connectionError = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorUnexpectedDisconnect - userInfo:@{NSLocalizedDescriptionKey : @"Unexpected disconnect during connection. Please try connection again."}]; - } - [self connectionCompleteWithError:connectionError]; - break; - case MBLConnectionStateDisconnecting: - if (!connectionError) { - connectionError = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorDisconnectRequested - userInfo:@{NSLocalizedDescriptionKey : @"Disconnect requested while a connection was in progress. Please try connection again."}]; - } - [self invokeConnectionHandlers:connectionError]; - break; - default: - break; - } - - // And flush out all the disconnection handlers - [self invokeDisconnectionHandlers:error]; - return nil; - }]; -} - -- (void)bluetoothPoweredOff -{ - MBLLog(MBLLogLevelInfo, @"bluetoothPoweredOff"); - connectionRetryCount = 0; - [self didDisconnect:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorBluetoothPoweredOff - userInfo:@{NSLocalizedDescriptionKey : @"Core Bluetooth Error. Please ensure bluetooth is enabled."}]]; -} - -- (void)writeCommandRegister:(NSData *)data withResponse:(BOOL)withResponse -{ - if (data.length > 20) { - [NSException raise:@"ERROR" format:@"Trying to write more than 20 bytes to BLE characteristic"]; - } - - if (simulatorHandler && [MBLConstants isSimulatorQueue]) { - MBLLog(MBLLogLevelInfo, @"Simulating: %@", data); - simulatorHandler(*(uint8_t *)data.bytes, *(uint8_t *)(data.bytes + 1), [data subdataWithRange:NSMakeRange(2, data.length - 2)]); - return; - } - if (snifferHandler) { - snifferHandler(data, nil); - } - - CBCharacteristicWriteType type = withResponse ? CBCharacteristicWriteWithResponse : CBCharacteristicWriteWithoutResponse; - // In old firmware we couldn't write without response - if (!(metawearCommandCharacteristic.properties & CBCharacteristicPropertyWriteWithoutResponse)) { - type = CBCharacteristicWriteWithResponse; - } - // Throttle by having every Nth request wait for response - if (++commandCount == MAX_PENDING_WRITES) { - commandCount = 0; - type = CBCharacteristicWriteWithResponse; - } - MBLLog(MBLLogLevelInfo, @"%@Writing: %@ %@", snifferHandler ? @"Sniff " : @"", data, type == CBCharacteristicWriteWithResponse ? @"RSP": @"NO-RSP"); - if (self.peripheral && metawearCommandCharacteristic) { - [self.peripheral writeValue:data - forCharacteristic:metawearCommandCharacteristic - type:type]; - } -} - -- (void)startSimulationWithHandler:(MBLSimulationHandler)handler -{ - @synchronized(simulatorHandlerMutex) { - assert(!simulatorHandler && "Nesting Simulation?"); - simulatorHandler = handler; - } -} - -- (void)stopSimulation -{ - @synchronized(simulatorHandlerMutex) { - simulatorHandler = nil; - BFTaskCompletionSource *souce = [simulatorFreeTasks firstObject]; - if (souce) { - [simulatorFreeTasks removeObjectAtIndex:0]; - [souce trySetResult:nil]; - } else { - simulatorBusy = NO; - } - } -} - -- (void)startSnifferWithHandler:(MBLDataHandler)handler -{ - snifferHandler = handler; -} -- (void)stopSniffer -{ - snifferHandler = nil; -} - -- (void)incrementCount -{ - if ([MBLConstants isSimulatorQueue]) { - MBLLog(MBLLogLevelDebug, @"+1 SimulatorQueue"); - [simulatorCountQueue suspend]; - } else { - MBLLog(MBLLogLevelDebug, @"+1 CountQueue"); - BOOL wasSuspended = [self.zeroCountQueue suspend]; - // If we were not previously suspended that means the link was - // idle, and since we are in this function work is about to happen - // so add a handler here to watch for when all activity is complete. - // At that point we reset the command count and update the cache - if (!wasSuspended) { - [self.zeroCountQueue addOperationWithBlock:^{ - commandCount = 0; - [self synchronizeAsync]; - }]; - } - } -} - -- (void)decrementCount -{ - if ([MBLConstants isSimulatorQueue]) { - MBLLog(MBLLogLevelDebug, @"-1 SimulatorQueue"); - [simulatorCountQueue resume]; - } else { - MBLLog(MBLLogLevelDebug, @"-1 CountQueue"); - [self.zeroCountQueue resume]; - } -} - -- (BFTask *)waitForCommandCompletion -{ - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - [self.zeroCountQueue addOperationWithBlock:^{ - [source trySetResult:nil]; - }]; - return source.task; -} - -- (BFTask *)waitForSimulatorCompletion -{ - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - [simulatorCountQueue addOperationWithBlock:^{ - [source trySetResult:nil]; - }]; - return source.task; -} - -- (BFTask *)waitForSimulatorTurn -{ - @synchronized(simulatorHandlerMutex) { - if (simulatorBusy) { - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - [simulatorFreeTasks addObject:source]; - return source.task; - } else { - simulatorBusy = YES; - return [BFTask taskWithResult:nil]; - } - } -} - -- (BFTask *)readRSSIAsync -{ - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - dispatch_async([MBLConstants metaWearQueue], ^{ - if (self.state != MBLConnectionStateConnected) { - [source trySetError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorNotConnected - userInfo:@{NSLocalizedDescriptionKey : @"MetaWear not connected, can't perform operation. Please connect to MetaWear before reading RSSI."}]]; - } else { - [self.peripheral readRSSI]; - } - }); - @synchronized (RSSISources) { - [RSSISources addObject:source]; - } - return source.task; -} - -- (void)peripheral:(id)peripheral didReadRSSI:(NSNumber *)RSSI error:(nullable NSError *)error -{ - @synchronized(RSSISources) { - for (BFTaskCompletionSource *source in RSSISources) { - if (error) { - [source trySetError:error]; - } else { - [source trySetResult:RSSI]; - } - } - [RSSISources removeAllObjects]; - } -} - - -- (BFTask *)readBatteryLifeAsync -{ - if (!batteryLifeCharacteristic) { - return [BFTask taskWithError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorNotConnected - userInfo:@{NSLocalizedDescriptionKey : @"MetaWear not connected, can't perform operation. Please connect to MetaWear before reading battery life."}]]; - } - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - @synchronized (batteryLifeSources) { - [batteryLifeSources addObject:source]; - } - [self.peripheral readValueForCharacteristic:batteryLifeCharacteristic]; - return source.task; -} - -- (BFTask *)readDeviceInfoAsync; -{ - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - @synchronized (deviceInfoSources) { - [deviceInfoSources addObject:source]; - } - if (self.deviceInfoReady) { - // If we have it deviceInfo cached just check the firmware rev to - // make sure the user didn't update using a different iOS device. - [self.peripheral readValueForCharacteristic:disFirmwareRevisionCharacteristic]; - } else { - self.deviceInfo = [[MBLDeviceInfo alloc] init]; - - [self.peripheral readValueForCharacteristic:disManufacturerNameCharacteristic]; - [self.peripheral readValueForCharacteristic:disSerialNumberCharacteristic]; - [self.peripheral readValueForCharacteristic:disHardwareRevisionCharacteristic]; - [self.peripheral readValueForCharacteristic:disFirmwareRevisionCharacteristic]; - if (disModelNumberCharacteristic) { - [self.peripheral readValueForCharacteristic:disModelNumberCharacteristic]; - } - } - return source.task; -} - -- (BOOL)loadResetState -{ - // Set this object back to the reset state if it exists - NSString *resetFile = [[MBLMetaWearManager sharedManager] logFilename:[self.identifier.UUIDString stringByAppendingString:@"Reset"]]; - //MBLMetaWear *savedState = [MBLMetaWear objectWithContentsOfFile:resetFile]; - //load fast archive - NSData *data = [NSData dataWithContentsOfFile:resetFile]; - //parse fast archive - MBLMetaWear *savedState = [FastCoder objectWithData:data]; - - if (savedState) { - MBLLog(MBLLogLevelInfo, @"Loaded Reset State"); - [self copyModulesFrom:savedState]; - } - return savedState != nil; -} - -- (void)resetDevice -{ - NSString *curVersion = self.accelerometer.device.deviceInfo.firmwareRevision; - if ([MBLConstants versionString:curVersion isLessThan:@"1.0.7"]) { - if (![self loadResetState]) { - // If no reset state, just null the module pointer which triggers a re-discovery - self.modules = nil; - [self synchronizeAsync]; - } - } - // Trigger the reset, this will cause a disconnect - [self.testDebug resetDevice]; -} - -- (BFTask *)checkForFirmwareUpdateAsync -{ - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - [[[MBLFirmwareUpdateManager getLatestFirmwareForDeviceAsync:self.deviceInfo] successOnMetaWear:^(MBLFirmwareBuild * _Nonnull result) { - if ([MBLConstants versionString:self.deviceInfo.firmwareRevision isLessThan:result.firmwareRev]) { - [source trySetResult:@YES]; - } else { - [source trySetResult:@NO]; - } - }] failureOnMetaWear:^(NSError * _Nonnull error) { - [source trySetError:error]; - }]; - return source.task; -} - -- (BFTask *)startUpdate -{ - return [[updateManager startUpdate] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull t) { - updateManager = nil; - if (t.error) { - [[MBLAnalytics sharedManager] postEventForDevice:self.identifier - eventCategory:[@"update " stringByAppendingString:kMBLAPIVersion] - eventAction:@"fail" - eventLabel:t.error.localizedDescription]; - } else { - // Post update success to the analytics engine - [[MBLAnalytics sharedManager] postEventForDevice:self.identifier - eventCategory:[@"update " stringByAppendingString:kMBLAPIVersion] - eventAction:@"success" - eventLabel:@""]; - - // Clean out the old modules so that the connect will trigger a re-discovery - self.modules = nil; - // This is the one time nonVolatileState is cleared - self.nonVolatileState = [[MBLNonVolatileState alloc] init]; - [self synchronizeAsync]; - // TODO: Reprogram device after update if we have a configuration - } - return t; - }]; -} - -- (BFTask *)prepareForFirmwareUpdateToVersionAsync:(MBLFirmwareBuild *)firmware -{ - // Create master class which handles all the details for the firmware upate process - updateManager = [[MBLFirmwareUpdateManager alloc] initWithFirmware:firmware - identifier:self.peripheral.identifier]; - - return [[[[MBLFirmwareUpdateManager isFirmwareReachableAsync] continueOnMetaWearWithSuccessBlock:^id (BFTask *t) { - // We must connect then jump to the bootloader. This special flag - // removes most of the init flow incase we connect to a super old - // unsuported firmware version. - self.bypassSetup = YES; - return [self connectAsync]; - }] continueOnMetaWearWithBlock:^id (BFTask *t) { - // Make sure to always turn off the flag - self.bypassSetup = NO; - // Its possible we are already in DFU, so gracefully handle that condition - BOOL alreadyInDFU = [t.error.domain isEqualToString:kMBLErrorDomain] && t.error.code == kMBLErrorDFUServiceFound; - // Forwared errors we can't handle - if (!alreadyInDFU && t.error) { - return t; - } - // Getting into DFU causes the device to disconnect, so we execute this - // async to make sure our disconnection handler gets registered first. - dispatch_async([MBLConstants metaWearQueue], ^{ - if (alreadyInDFU) { - // See to simulate the disconnect that occurs when we jump to bootloader - [[MBLMetaWearManager sharedManager] disconnectMetaWear:self fromPeripheralSide:NO]; - } else { - [self.testDebug jumpToBootloader]; - } - }); - return [self waitForDisconnection]; - }] continueOnMetaWearWithSuccessBlock:^id (BFTask *t) { - return [self startUpdate]; - }]; -} - -- (BFTask *)prepareForFirmwareUpdateAsync -{ - return [self prepareForFirmwareUpdateToVersionAsync:nil]; -} - -- (void)simulateDisconnect -{ - [[MBLMetaWearManager sharedManager] disconnectMetaWear:self fromPeripheralSide:YES]; -} - - -- (void)peripheral:(id)peripheral didDiscoverServices:(NSError *)error -{ - MBLLog(MBLLogLevelInfo, @"didDiscoverServices"); - if (error) { - [self connectionCompleteWithError:error]; - return; - } - - int services = 0; - for (CBService *service in peripheral.services) { - if ([service.UUID isEqual:[MBLConstants serviceUUID]]) { - services++; - [peripheral discoverCharacteristics:@[[MBLConstants commandUUID], [MBLConstants notificationUUID]] forService:service]; - } else if ([service.UUID isEqual:[MBLConstants batteryServiceUUID]]) { - services++; - [peripheral discoverCharacteristics:@[[MBLConstants batteryLifeUUID]] forService:service]; - } else if ([service.UUID isEqual:[MBLConstants DISServiceUUID]]) { - services++; - [peripheral discoverCharacteristics:@[[MBLConstants DISManufacturerNameUUID], - [MBLConstants DISSerialNumberUUID], - [MBLConstants DISHardwareRevUUID], - [MBLConstants DISFirmwareRevUUID], - [MBLConstants DISModelNumberUUID]] forService:service]; - } else if ([service.UUID isEqual:[MBLConstants DFUServiceUUID]]) { - [self connectionCompleteWithError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorDFUServiceFound - userInfo:@{NSLocalizedDescriptionKey : @"MetaWear device in bootloader mode. Please update the firmware using prepareForFirmwareUpdateWithHandler:."}]]; - return; - } else { - [self connectionCompleteWithError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorUnexpectedServices - userInfo:@{NSLocalizedDescriptionKey : @"MetaWear device contained an unexpected BLE service. Please try connection again."}]]; - return; - } - } - if (services != 3) { - if (peripheral.services.count != 3) { - [self connectionCompleteWithError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorUnexpectedServices - userInfo:@{NSLocalizedDescriptionKey : @"Couldn't find all expected BLE services. Please try connection again."}]]; - } - } -} - -- (void)unexpectedCharacteristic -{ - [self connectionCompleteWithError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorUnexpectedCharacteristics - userInfo:@{NSLocalizedDescriptionKey : @"MetaWear device contained an unexpected BLE characteristic. Please try connection again."}]]; -} - -- (void)peripheral:(id)peripheral didDiscoverCharacteristicsForService:(CBService *)service error:(NSError *)error -{ - MBLLog(MBLLogLevelInfo, @"didDiscoverCharacteristicsForService: %@", service.UUID); - if (error) { - [self connectionCompleteWithError:error]; - return; - } - - characteristicCount += (int)service.characteristics.count; - serviceCount++; - - if ([service.UUID isEqual:[MBLConstants serviceUUID]]) { - for (CBCharacteristic *characteristic in service.characteristics) { - if ([characteristic.UUID isEqual:[MBLConstants commandUUID]]) { - metawearCommandCharacteristic = characteristic; - } else if ([characteristic.UUID isEqual:[MBLConstants notificationUUID]]) { - // Make sure we don't start getting an bunch of random data on connect - // if the last disconnect wasn't so smooth - [peripheral setNotifyValue:NO forCharacteristic:characteristic]; - metawearNotification6Characteristic = characteristic; - } else { - [self unexpectedCharacteristic]; - } - } - } else if ([service.UUID isEqual:[MBLConstants batteryServiceUUID]]) { - for (CBCharacteristic *characteristic in service.characteristics) { - if ([characteristic.UUID isEqual:[MBLConstants batteryLifeUUID]]) { - batteryLifeCharacteristic = characteristic; - } else { - [self unexpectedCharacteristic]; - } - } - } else if ([service.UUID isEqual:[MBLConstants DISServiceUUID]]) { - for (CBCharacteristic *characteristic in service.characteristics) { - if ([characteristic.UUID isEqual:[MBLConstants DISManufacturerNameUUID]]) { - disManufacturerNameCharacteristic = characteristic; - } else if ([characteristic.UUID isEqual:[MBLConstants DISSerialNumberUUID]]) { - disSerialNumberCharacteristic = characteristic; - } else if ([characteristic.UUID isEqual:[MBLConstants DISHardwareRevUUID]]) { - disHardwareRevisionCharacteristic = characteristic; - } else if ([characteristic.UUID isEqual:[MBLConstants DISFirmwareRevUUID]]) { - disFirmwareRevisionCharacteristic = characteristic; - } else if ([characteristic.UUID isEqual:[MBLConstants DISModelNumberUUID]]) { - disModelNumberCharacteristic = characteristic; - } else { - [self unexpectedCharacteristic]; - } - } - } - - if (serviceCount == 3) { - if (!(characteristicCount == 7 || characteristicCount == 8)) { - [self connectionCompleteWithError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorUnexpectedCharacteristics - userInfo:@{NSLocalizedDescriptionKey : @"MetaWear device contained an unexpected number of BLE characteristics. Please try connection again."}]]; - } else { - // Short circut if asked for - if (self.bypassSetup) { - // We need this one module to issue jump to bootloader commands - self.testDebug = [MBLTestDebug objectWithDevice:self moduleInfo:[[MBLModuleInfo alloc] initWithId:0xFE data:nil]]; - [self.peripheral setNotifyValue:YES forCharacteristic:metawearNotification6Characteristic]; - [self connectionCompleteWithError:nil]; - } else { - [self setupMetaWear]; - } - } - } -} - - -- (void)setupMetaWear -{ - [[[[[[[self readDeviceInfoAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull t) { - // Starting firmware 1.1.0 we can flood the beast! - if ([MBLConstants versionString:t.result.firmwareRevision isLessThan:@"1.1.0"]) { - MAX_PENDING_WRITES = 3; - } - // Make sure the firmware isn't too old - NSString *required = MBLFirmwareVersionString([MBLMetaWearManager sharedManager].minimumRequiredVersion); - if ([MBLConstants versionString:t.result.firmwareRevision isLessThan:required]) { - // No sense to retry connection - connectionRetryCount = 0; - return [BFTask taskWithError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorOutdatedFirmware - userInfo:@{NSLocalizedDescriptionKey : @"Firmware update required before MetaWear can be used."}]]; - } - // Setup all the modules if required (that would be if we haven't done a discovery yet) - return [self initializeModulesIfNeededAsync]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull t) { - // Start listening to the global notification register since the following - // checks need to read data (which uses callbacks throught this characteristic) - [self.peripheral setNotifyValue:YES forCharacteristic:metawearNotification6Characteristic]; - // - return [self.testDebug isGuestApplicationAsync]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull t) { - self.isGuestConnection = t.result.boolValue; - if (t.result.boolValue) { - // If we are just a guest finish the connection now, note this will - // jump over all "success" blocks - return [BFTask cancelledTask]; - } else { - // If we are the owning application do extra cleanup and state checking. - // First check if the device happened to reset while we were away and if - // so reload its reset state - return [self.logging checkForResetAsync]; - } - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull t) { - BOOL didReset = t.result.boolValue; - if (didReset) { - if (![self loadResetState]) { - // No saved reset state so dont' even bother sanity checking it - return @NO; - } - } - // Sanity check the state to see if it's valid - return [self sanityCheck]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull t) { - BOOL stateValid = t.result.boolValue; - if (!stateValid) { - MBLLog(MBLLogLevelInfo, @"Unexpected MetaWear state - reseting modules"); - return [self resetModulesAsync]; - } - return nil; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull t) { - [self connectionCompleteWithError:t.error]; - return nil; - }]; -} - -- (BFTask *)sanityCheck -{ - assert(!_noencode_isGuestConnection); - // Perform some sanity checks on all the module state - NSMutableArray *tasks = [NSMutableArray array]; - for (id obj in self.modules) { - if ([obj isKindOfClass:[MBLModule class]]) { - [tasks addObject:[obj isStateValid]]; - } - }; - return [[BFTask taskForCompletionOfAllTasksWithResults:tasks] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - // Check for YES's - BOOL allValid = YES; - for (NSArray *array in task.result) { - for (NSNumber *isValid in array) { - if (!isValid.boolValue) { - allValid = NO; - break; - } - } - } - return [NSNumber numberWithBool:allValid]; - }]; -} - - --(void)peripheral:(id)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error -{ -#ifdef DEBUG - if (error) { MBLLog(MBLLogLevelError, @"didUpdateValueForCharacteristic Error: %@", error); } - if (characteristic == metawearNotification6Characteristic) { - MBLLog(MBLLogLevelInfo, @"Received: %@ ", characteristic.value); - } else { - MBLLog(MBLLogLevelInfo, @"didUpdateValueForCharacteristic = %@ with value %@",characteristic.UUID, characteristic.value); - } -#endif - if (characteristic == metawearCommandCharacteristic || characteristic == metawearNotification6Characteristic) { - assert(characteristic.value.length); - if (!characteristic.value.length) { - return; - } - uint8_t moduleId = *(uint8_t *)characteristic.value.bytes; - @synchronized(moduleInfoTaskSources) { - BFTaskCompletionSource *source = moduleInfoTaskSources[[NSNumber numberWithInt:moduleId]]; - if (source) { - [moduleInfoTaskSources removeObjectForKey:[NSNumber numberWithInt:moduleId]]; - if (error) { - [source trySetError:error]; - } else if (characteristic.value.length >= 4) { - // 4 or more bytes indicates the module is present and active - [source trySetResult:[[MBLModuleInfo alloc] initWithId:moduleId data:characteristic.value]]; - } else { - // Otherwise no module, so don't initialize it - [source trySetResult:nil]; - } - [self decrementCount]; - } else if (moduleId < self.modules.count) { - id module = self.modules[moduleId]; - if ([module respondsToSelector:@selector(recievedData:error:)]) { - [module recievedData:characteristic.value error:error]; - } else { - assert(NO && "No module found"); - } - } else if (moduleId == self.testDebug.moduleInfo.moduleId) { - if ([self.testDebug respondsToSelector:@selector(recievedData:error:)]) { - [self.testDebug recievedData:characteristic.value error:error]; - } else { - assert(NO && "No testDebug module found"); - } - } - } - } else if (characteristic == batteryLifeCharacteristic) { - @synchronized(batteryLifeSources) { - for (BFTaskCompletionSource *source in batteryLifeSources) { - if (error) { - [source trySetError:error]; - } else { - [source trySetResult:[NSNumber numberWithInt:*(uint8_t *)characteristic.value.bytes]]; - } - } - [batteryLifeSources removeAllObjects]; - } - } else if (characteristic == disManufacturerNameCharacteristic) { - self.deviceInfo.manufacturerName = [[NSString alloc] initWithBytes:characteristic.value.bytes - length:characteristic.value.length - encoding:NSASCIIStringEncoding]; - [self sendDeviceInfoIfReadyWithError:error]; - } else if (characteristic == disSerialNumberCharacteristic) { - self.deviceInfo.serialNumber = [[NSString alloc] initWithBytes:characteristic.value.bytes - length:characteristic.value.length - encoding:NSASCIIStringEncoding]; - [self sendDeviceInfoIfReadyWithError:error]; - } else if (characteristic == disHardwareRevisionCharacteristic) { - self.deviceInfo.hardwareRevision = [[NSString alloc] initWithBytes:characteristic.value.bytes - length:characteristic.value.length - encoding:NSASCIIStringEncoding]; - [self sendDeviceInfoIfReadyWithError:error]; - } else if (characteristic == disFirmwareRevisionCharacteristic) { - NSString *firmwareRevision = [[NSString alloc] initWithBytes:characteristic.value.bytes - length:characteristic.value.length - encoding:NSASCIIStringEncoding]; - if (self.deviceInfo.firmwareRevision) { - if (![self.deviceInfo.firmwareRevision isEqualToString:firmwareRevision]) { - [self removeResetFile]; - // The firmware version changed, need to force a re-discovery - self.modules = nil; - [self synchronizeAsync]; - } - } - self.deviceInfo.firmwareRevision = firmwareRevision; - [self sendDeviceInfoIfReadyWithError:error]; - } else if (characteristic == disModelNumberCharacteristic) { - self.deviceInfo.modelNumber = [[NSString alloc] initWithBytes:characteristic.value.bytes - length:characteristic.value.length - encoding:NSASCIIStringEncoding]; - [self sendDeviceInfoIfReadyWithError:error]; - } -} - -- (void)peripheral:(id)peripheral didWriteValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error -{ - if (error) { MBLLog(MBLLogLevelError, @"didWriteValueForCharacteristic Error: %@", error); } -} - -- (BOOL)deviceInfoReady -{ - if (self.deviceInfo.manufacturerName && - self.deviceInfo.serialNumber && - self.deviceInfo.hardwareRevision && - self.deviceInfo.firmwareRevision && - (!disModelNumberCharacteristic || self.deviceInfo.modelNumber)) { - return YES; - } - return NO; -} - -- (void)sendDeviceInfoIfReadyWithError:(NSError *)error -{ - if (error || self.deviceInfoReady) { - @synchronized(deviceInfoSources) { - for (BFTaskCompletionSource *source in deviceInfoSources) { - if (error) { - [source trySetError:error]; - } else { - [source trySetResult:self.deviceInfo]; - } - } - [deviceInfoSources removeAllObjects]; - } - } -} - -- (BOOL)retryConnectionIfAllowed -{ - if (connectionRetryCount) { - [[MBLAnalytics sharedManager] postEventForDevice:self.identifier - eventCategory:[@"connect " stringByAppendingString:kMBLAPIVersion] - eventAction:@"retry" - eventLabel:@""]; - MBLLog(MBLLogLevelInfo, @"Connection Failed -- Retrying"); - connectionRetryCount--; - characteristicCount = 0; - serviceCount = 0; - self.peripheral = nil; - dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0 * NSEC_PER_SEC)), dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{ - [[MBLMetaWearManager sharedManager] connectMetaWear:self]; - }); - return YES; - } - return NO; -} - -- (void)connectionCompleteWithError:(NSError *)error -{ - if (error) { - [[self disconnectAsync] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull t) { - if (![self retryConnectionIfAllowed]) { - [[MBLAnalytics sharedManager] postEventForDevice:self.identifier - eventCategory:[@"connect " stringByAppendingString:kMBLAPIVersion] - eventAction:@"fail" - eventLabel:error.localizedDescription]; - MBLLog(MBLLogLevelInfo, @"Connection Failed"); - - [self invokeConnectionHandlers:error]; - } - return nil; - }]; - return; - } - - // Handle the passing case - [[BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - // We set the state here so the deviceConnected handlers can - // shut off any streams without errors about us not beging connected - self.state = MBLConnectionStateConnected; - // Inform all the modules of this connection - NSMutableArray *tasks = [NSMutableArray arrayWithCapacity:self.modules.count]; - for (id obj in self.modules) { - if ([obj isKindOfClass:[MBLModule class]]) { - MBLModule *module = obj; - [tasks addObject:[module deviceConnected]]; - } - } - [tasks addObject:[self.testDebug deviceConnected]]; - return [BFTask taskForCompletionOfAllTasks:tasks]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull t) { - assert(!t.error); - MBLLog(MBLLogLevelInfo, @"Connection Success %@", self.deviceInfo.firmwareRevision); - [[MBLAnalytics sharedManager] postEventForDevice:self.identifier - eventCategory:[@"connect " stringByAppendingString:kMBLAPIVersion] - eventAction:@"success" - eventLabel:self.deviceInfo.firmwareRevision]; - [self invokeConnectionHandlers:nil]; - return nil; - }]; -} - - -// Deprecated - -- (void)connectWithTimeout:(NSTimeInterval)timeout handler:(MBLErrorHandler)handler -{ - [[self connectWithTimeoutAsync:timeout] continueOnDispatchWithBlock:^id _Nullable(BFTask * _Nonnull t) { - if (handler) { - handler(t.error); - } - return nil; - }]; -} - -- (void)disconnectWithHandler:(MBLErrorHandler)handler -{ - [[self disconnectAsync] continueOnDispatchWithBlock:^id _Nullable(BFTask * _Nonnull t) { - if (handler) { - handler(t.error); - } - return nil; - }]; -} - -- (void)connectWithHandler:(MBLErrorHandler)handler -{ - [[self connectAsync] continueOnDispatchWithBlock:^id _Nullable(BFTask * _Nonnull t) { - if (handler) { - handler(t.error); - } - return nil; - }]; -} - -- (void)readBatteryLifeWithHandler:(MBLNumberHandler)handler -{ - [[self readBatteryLifeAsync] continueOnDispatchWithBlock:^id _Nullable(BFTask * _Nonnull t) { - if (handler) { - handler(t.result, t.error); - } - return nil; - }]; -} - -- (void)readRSSIWithHandler:(MBLNumberHandler)handler -{ - [[self readRSSIAsync] continueOnDispatchWithBlock:^id _Nullable(BFTask * _Nonnull t) { - if (handler) { - handler(t.result, t.error); - } - return nil; - }]; -} - -- (void)checkForFirmwareUpdateWithHandler:(MBLBoolHandler)handler -{ - [[self checkForFirmwareUpdateAsync] continueOnDispatchWithBlock:^id _Nullable(BFTask * _Nonnull t) { - if (handler) { - handler([t.result boolValue], t.error); - } - return nil; - }]; -} - -- (void)setConfiguration:(id)configuration handler:(MBLErrorHandler)handler -{ - [[self setConfigurationAsync:configuration] continueOnDispatchWithBlock:^id _Nullable(BFTask * _Nonnull t) { - if (handler) { - handler(t.error); - } - return nil; - }]; -} - -- (void)prepareForFirmwareUpdateWithHandler:(MBLFirmwareUpdateHandler)handler -{ - [[self prepareForFirmwareUpdateAsync] continueOnDispatchWithBlock:^id _Nullable(BFTask * _Nonnull t) { - if (handler) { - MBLFirmwareUpdateInfo *info = t.result; - handler(info.firmwareUrl, info.target, info.centralManager, t.error); - } - return nil; - }]; -} - -- (void)updateFirmwareWithHandler:(MBLErrorHandler)handler - progressHandler:(MBLFloatHandler)progressHandler -{ - MBLLog(MBLLogLevelError, @"This function no longer works, use prepareForFirmwareUpdateWithHandler: instead"); -} - -- (void)synchronize -{ - [self synchronizeAsync]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLMetaWearManager.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLMetaWearManager.h deleted file mode 100644 index d8dd8ed..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLMetaWearManager.h +++ /dev/null @@ -1,149 +0,0 @@ -/** - * MBLMetaWearManager.h - * MetaWear - * - * Created by Stephen Schiffli on 7/29/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - The MBLMetaWearManager is responsible for the scanning and discovery of MBLMetaWear devices. - */ -@interface MBLMetaWearManager : NSObject - -/** - Set the minimum firmware version required to run your app. If you attempt to connect - to a device with older firmware you will recieve a connection error. - This defaults to oldest firmware supported by this API. - */ -@property (nonatomic) MBLFirmwareVersion minimumRequiredVersion; - -/** - Sets the queue for which all callbacks on both the MBLMetaWearManager and - MBLMetaWear will occur on. Defaults to the main queue. - */ -@property (nonatomic) NSOperationQueue *dispatchQueue; - -/** - Log level that will be displayed, defaults to `MBLLogLevelWarning` - */ -@property (nonatomic) MBLLogLevel logLevel; - - -///---------------------------------- -/// @name Getting the Shared Instance -///---------------------------------- - -/** - Access the shared MBLMetaWearManager object - @returns The shared manager object. - @warning You should not create an MBLMetaWearManager object, only used the sharedManager - */ -+ (instancetype)sharedManager; - -///---------------------------------- -/// @name Bluetooth State Watching -///---------------------------------- - -- (void)startBluetoothStateNotificationsWithHandler:(nonnull MBLCentralManagerStateHandler)handler; - -- (void)stopBluetoothStateNotifications; - -///---------------------------------- -/// @name MetaWear Scanning and Finding -///---------------------------------- - -/** - Begin scanning for MetaWear devices. This will invoke the provided block each time a - new device shows up and passes an array of all discovered devices to the block. - This continues until stopScanForMetaWears is called. - @param handler Callback to handle each time a new device is found - @see startScanForMetaWearsAllowDuplicates:handler: - */ -- (void)startScanForMetaWearsWithHandler:(MBLArrayHandler)handler; -/** - Begin scanning for MetaWear devices with the option to filter duplicate devices or not. - - This will invoke the provided block each time a new device shows up if filter == YES or - each time a new advertising packet is found if filter == NO (may be many times per second). - This can be useful in specific situations, such as making a connection based on a - MetaWear's RSSI, but may have an adverse affect on battery-life and application performance, - so use wisely. This continues until stopScanForMetaWears is called. - @param duplicates YES: only callback when a new device is found, NO: callback each time - @param handler Callback to handle each time a new device is found - a new advertising packet is found - */ -- (void)startScanForMetaWearsAllowDuplicates:(BOOL)duplicates handler:(MBLArrayHandler)handler; - -/** - Stop scanning for MetaWear devices, this will release all handlers given to - startScanForMetaWearsWithHandler: and startScanForMetaWearsAllowDuplicates:handler: - */ -- (void)stopScanForMetaWears; - -/** - Returns a list of saved MetaWear objects, you add to this list by calling [MBLMetaWear rememberDevice] - @returns Task whose result will be an array of remembered MBLMetaWear objects - */ -- (BFTask *> *)retrieveSavedMetaWearsAsync; -- (void)retrieveSavedMetaWearsWithHandler:(MBLArrayHandler)handler DEPRECATED_MSG_ATTRIBUTE("Use retrieveSavedMetaWearsAsync instead"); - -///---------------------------------- -/// @name MetaBoot Recovery Scanning -///---------------------------------- - -/** - This method is intended for recovery mode only. If a firmware update experiences an unexpected error, - the device may get stuck in the bootloader and thus won't show up in startScanForMetaWearsWithHandler:. - This method will start scanning for devices in bootloader mode - @param duplicates YES: only callback when a new device is found, NO: callback each time - a new advertising packet is found - @param handler Callback to handle each time a new device is found - @warning You can only call [MBLMetaWear updateFirmwareWithHandler:progressHandler:] on the `MBLMetaWear` objects - in the array - @warning This will cancel any current MetaWear scans - */ -- (void)startScanForMetaBootsAllowDuplicates:(BOOL)duplicates handler:(MBLArrayHandler)handler; - -/** - Stop scanning for MetaBoot devices, this will release all handlers given to - startScanForMetaBootsAllowDuplicates:handler: - */ -- (void)stopScanForMetaBoots; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLMetaWearManager.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLMetaWearManager.m deleted file mode 100644 index 479c94f..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLMetaWearManager.m +++ /dev/null @@ -1,571 +0,0 @@ -/** - * MBLMetaWearManager.m - * MetaWear - * - * Created by Stephen Schiffli on 7/29/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLMetaWearManager.h" -#import "MBLMetaWearManager+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLCategoryLoader.h" -#import "MBLAnalytics.h" -#import "MBLFirmwareBuild.h" -#import "MBLDeviceInfo.h" -#import "BFTask+MBLExtensions.h" -#import "FastCoder.h" -#import "MBLBluetoothCentralMock.h" -#import "MBLConstants+Private.h" -#import "MBLLogger.h" - -#import - -static NSString * const kMBLRememberedDevicesKey = @"com.mbientlab.metawear.rememberedDevices"; -static NSString * const kMBLApiVersionKey = @"com.mbientlab.metawear.apiversion"; - -#if TARGET_OS_SIMULATOR -static BOOL useMockManager = YES; -#else -static BOOL useMockManager = NO; -#endif -void MBLSetUseMockManager(BOOL useMock) { useMockManager = useMock; } - -@interface MBLMetaWearManager() - -@property (nonatomic) id centralManager; -@property (nonatomic) NSMutableArray *discoveredDevices; -@property (nonatomic) NSMutableArray *scanForMetaWearBlocks; -@property (nonatomic) NSMutableDictionary *peripheralToMetaWear; - -@property BOOL isScanning; -@property BOOL allowDuplicates; -@property BOOL scanForMetaBoot; -@property (nonatomic) NSMutableArray *centralStateUpdateSources; -@property (nonatomic) NSObject *centralStateUpdateSourcesMutex; -@property (nonatomic, copy) MBLCentralManagerStateHandler stateHandler; - -@property (nonatomic) MBLFirmwareBuild *latestFirmware; - -- (instancetype)init; -- (void)startScan; -@end - - -@implementation MBLMetaWearManager - -+ (void)initialize { - if (self == [MBLMetaWearManager class]) { - // Load all private categories, that we have... - // Without this call - private categories - will require `-ObjC` in linker flags. - // By explicitly calling empty method - we can avoid that. - [MBLCategoryLoader loadPrivateCategories]; - } -} - -+ (nonnull instancetype)sharedManager -{ - static MBLMetaWearManager *singleton = nil; - static dispatch_once_t onceToken = 0; - dispatch_once(&onceToken, ^{ - singleton = [[MBLMetaWearManager alloc] init]; - }); - return singleton; -} - -+ (NSOperationQueue *)dispatchQueue -{ - return [MBLMetaWearManager sharedManager].dispatchQueue; -} - -- (void)startBluetoothStateNotificationsWithHandler:(MBLCentralManagerStateHandler)handler -{ - self.stateHandler = handler; - if (handler) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" - handler((CBCentralManagerState)self.centralManager.state); -#pragma clang diagnostic pop - } -} - -- (void)stopBluetoothStateNotifications -{ - self.stateHandler = nil; -} - -- (void)retrieveSavedMetaWearsWithHandler:(MBLArrayHandler)handler -{ - if (handler) { - [[self retrieveSavedMetaWearsAsync] continueOnDispatchWithBlock:^id _Nullable(BFTask *> * _Nonnull task) { - handler(task.result); - return nil; - }]; - } -} - -- (BFTask *> *)retrieveSavedMetaWearsAsync -{ - // If the central isn't ready, save the handler and we will call later on once its ready - BFTask *head = [BFTask taskWithResult:nil]; - switch (self.centralManager.state) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" - case CBCentralManagerStateUnknown: - case CBCentralManagerStateResetting: - // Updates are imminent, so wait - @synchronized(self.centralStateUpdateSourcesMutex) { - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - [self.centralStateUpdateSources addObject:source]; - head = source.task; - } - break; - case CBCentralManagerStateUnsupported: - return [BFTask taskWithError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorBluetoothUnsupported - userInfo:@{NSLocalizedDescriptionKey : @"The platform doesn't support the Bluetooth Low Energy Central/Client role."}]]; - case CBCentralManagerStateUnauthorized: - return [BFTask taskWithError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorBluetoothUnauthorized - userInfo:@{NSLocalizedDescriptionKey : @"The application is not authorized to use the Bluetooth Low Energy Central/Client role."}]]; - case CBCentralManagerStatePoweredOff: - return [BFTask taskWithError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorBluetoothPoweredOff - userInfo:@{NSLocalizedDescriptionKey : @"Core Bluetooth Error. Please ensure bluetooth is enabled."}]]; - case CBCentralManagerStatePoweredOn: - // Nothing to wait on! - break; -#pragma clang diagnostic pop - - } - - return [head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - // We first get the saved CBPeripheral identifiers. - NSArray *rememberedDevices = [[NSUserDefaults standardUserDefaults] arrayForKey:kMBLRememberedDevicesKey]; - NSMutableArray *identifiers = [NSMutableArray arrayWithCapacity:rememberedDevices.count]; - for (NSString *identifier in rememberedDevices) { - [identifiers addObject:[[NSUUID alloc] initWithUUIDString:identifier]]; - } - // Then get usable CBPeripheral objects from the central based on those identifiers - NSArray *peripherals = [self.centralManager retrievePeripheralsWithIdentifiers:identifiers]; - NSMutableArray *metaWears = [NSMutableArray arrayWithCapacity:peripherals.count]; - // And finally convert those CBPeripheral's to MBLMetaWears! - for (id peripheral in peripherals) { - [metaWears addObject:[self metawearFromPeripheral:peripheral andAdvertisementData:nil RSSI:nil]]; - } - return metaWears; - }]; -} - -- (void)startScanForMetaWearsAllowDuplicates:(BOOL)duplicates handler:(MBLArrayHandler)handler; -{ - self.allowDuplicates |= duplicates; - if (handler) { - [self.scanForMetaWearBlocks addObject:[handler copy]]; - if (self.discoveredDevices.count) { - handler(self.discoveredDevices); - } - } - - // Fire up scanning if the central is ready for it, otherwise it will get - // turned on later when its ready - if (!self.isScanning) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" - if (self.centralManager.state == CBCentralManagerStatePoweredOn) { -#pragma clang diagnostic pop - [self startScan]; - } - } -} - -- (void)startScanForMetaWearsWithHandler:(MBLArrayHandler)handler -{ - [self startScanForMetaWearsAllowDuplicates:NO handler:handler]; -} - -- (void)stopScanForMetaWears -{ - [self.scanForMetaWearBlocks removeAllObjects]; - [self.centralManager stopScan]; - self.isScanning = NO; -} - -- (void)startScanForMetaBootsAllowDuplicates:(BOOL)duplicates handler:(MBLArrayHandler)handler -{ - [self stopScanForMetaWears]; - [self clearDiscoveredDevices]; - self.scanForMetaBoot = YES; - [self startScanForMetaWearsAllowDuplicates:duplicates handler:handler]; -} - -- (void)stopScanForMetaBoots -{ - [self stopScanForMetaWears]; - [self clearDiscoveredDevices]; - self.scanForMetaBoot = NO; -} - -- (void)connectMetaWear:(MBLMetaWear *)device -{ - // When a MetaWear disconnects we nil out it's CBPeripheral, if the user wants - // to connect to it again ask the central for a fresh CBPeripheral - if (!device.peripheral) { - id peripheral = [[self.centralManager retrievePeripheralsWithIdentifiers:@[device.identifier]] firstObject]; - if (!peripheral) { - [device didDisconnect:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorInvalidMetaWearObject - userInfo:@{NSLocalizedDescriptionKey : @"Couldn't retrieve peripheral. Please remove and re-install app to clear cache."}]]; - return; - } - device.peripheral = peripheral; - peripheral.delegate = device; - self.peripheralToMetaWear[peripheral] = device; - } - // Short cut if its already connected - if (device.state == MBLConnectionStateConnected) { - [device didConnect]; - } else { - // Otherwise start the connection flow - [self.centralManager connectPeripheral:device.peripheral options:nil]; - } -} - -- (void)disconnectMetaWear:(MBLMetaWear *)device fromPeripheralSide:(BOOL)fromPeripheralSide -{ - // Take the short cut if we're already disconnected! - if (device.state == MBLConnectionStateDisconnected) { - [device didDisconnect:nil]; - } else { - if (fromPeripheralSide) { - [device.testDebug triggerDisconnect]; - } else { - if (device.peripheral) { - [self.centralManager cancelPeripheralConnection:device.peripheral]; - } - } - } -} - -- (void)rememberMetaWear:(MBLMetaWear *)device -{ - // Get or create an array to hold all the remembered device identifiers - NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; - NSArray *devices = [defaults arrayForKey:kMBLRememberedDevicesKey]; - NSArray *newDevices = nil; - // Add the new device identifier if needed - if (devices) { - if (![devices containsObject:device.identifier.UUIDString]) { - NSMutableArray *tmp = [devices mutableCopy]; - [tmp addObject:device.identifier.UUIDString]; - newDevices = tmp; - } else { - newDevices = devices; - } - } else { - newDevices = @[device.identifier.UUIDString]; - } - // Save the array back to disk - [defaults setObject:newDevices forKey:kMBLRememberedDevicesKey]; - [defaults synchronize]; -} - -- (void)forgetMetaWear:(MBLMetaWear *)device -{ - // Remove the identifier from the remembered device array - NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; - NSArray *devices = [defaults arrayForKey:kMBLRememberedDevicesKey]; - if (devices) { - NSMutableArray *tmp = [devices mutableCopy]; - [tmp removeObject:device.identifier.UUIDString]; - [defaults setObject:tmp forKey:kMBLRememberedDevicesKey]; - [defaults synchronize]; - } -} - -- (void)clearDiscoveredDevices -{ - [self.discoveredDevices removeAllObjects]; - [self.peripheralToMetaWear removeAllObjects]; -} - -#pragma mark - Private helpers - -- (instancetype)init -{ - self = [super init]; - if (self) { - dispatch_queue_t bleQueue = dispatch_queue_create("com.mbientlab.metawear.bleQueue", DISPATCH_QUEUE_SERIAL); - //self.centralManager = [[CBCentralManager alloc] initWithDelegate:self queue:dispatch_queue_create("com.mbientlab.metawear.bleQueue", DISPATCH_QUEUE_SERIAL) options:@{ CBCentralManagerOptionRestoreIdentifierKey:@"com.mbientlab.centralManager"}]; - NSString *version = nil; - if (useMockManager) { - self.centralManager = [[MBLBluetoothCentralMock alloc] initWithDelegate:self queue:bleQueue options:nil]; - } else { - self.centralManager = [[CBCentralManager alloc] initWithDelegate:self queue:bleQueue options:nil]; - version = [[NSUserDefaults standardUserDefaults] stringForKey:kMBLApiVersionKey]; - } - self.discoveredDevices = [NSMutableArray array]; - self.scanForMetaWearBlocks = [NSMutableArray array]; - self.peripheralToMetaWear = [NSMutableDictionary dictionary]; - self.dispatchQueue = [NSOperationQueue mainQueue]; - - self.isScanning = NO; - self.minimumRequiredVersion = MBLFirmwareVersion1_0_4; - self.logLevel = MBLLogLevelWarning; - - self.centralStateUpdateSources = [NSMutableArray array]; - self.centralStateUpdateSourcesMutex = [[NSObject alloc] init]; - -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" - // Don't catch expections - BFTaskSetCatchesExceptions(NO); -#pragma clang diagnostic pop - - // If the app changes its API version then we must delete all the cached MBLMetaWear objects, - // since they are no longer valid - if (!version || ![version isEqualToString:kMBLAPIVersion]) { - NSLog(@"Clearing! %@ -> %@", version, kMBLAPIVersion); - [[NSUserDefaults standardUserDefaults] setObject:kMBLAPIVersion forKey:kMBLApiVersionKey]; - // When the api version changes in an app you will need to reprogram devices - [[NSUserDefaults standardUserDefaults] removeObjectForKey:kMBLRememberedDevicesKey]; - [[NSUserDefaults standardUserDefaults] synchronize]; - // Delete the cachce folder - NSError *error; - BOOL success = [[NSFileManager defaultManager] removeItemAtPath:[self logFilename:nil] error:&error]; - if (error) { NSLog(@"%@", error); } - assert(success); - } - } - return self; -} - -- (void)startScan -{ - self.isScanning = YES; - NSNumber *duplicatesValue = self.allowDuplicates ? @YES : @NO; - NSArray *services = self.scanForMetaBoot ? @[[MBLConstants DFUServiceUUID]] : @[[MBLConstants serviceUUID]]; - [self.centralManager scanForPeripheralsWithServices:services - options:@{CBCentralManagerScanOptionAllowDuplicatesKey : duplicatesValue}]; - //CBCentralManagerOptionRestoreIdentifierKey : @"MetaWearCentral"}]; -} - -- (NSString *)logFilename:(NSString *)filename -{ -#if TARGET_OS_TV - NSArray *urls = [[NSFileManager defaultManager] URLsForDirectory:NSCachesDirectory inDomains:NSUserDomainMask]; -#else - NSArray *urls = [[NSFileManager defaultManager] URLsForDirectory:NSApplicationSupportDirectory inDomains:NSUserDomainMask]; -#endif - if (urls.count) { - NSURL *url = urls[0]; - url = [url URLByAppendingPathComponent:@"com.mbientlab.metawear.devices" isDirectory:YES]; - // Make sure we have the folder - BOOL isDirectory; - NSError *error; - if ([[NSFileManager defaultManager] fileExistsAtPath:url.path isDirectory:&isDirectory]) { - if (!isDirectory) { - if (![[NSFileManager defaultManager] removeItemAtURL:url error:&error]) { - NSLog(@"removeItemAtURL error: %@", error); - } - } - } else { - isDirectory = NO; - } - if (!isDirectory) { - if (![[NSFileManager defaultManager] createDirectoryAtURL:url withIntermediateDirectories:YES attributes:nil error:&error]) { - NSLog(@"createDirectoryAtURL error: %@", error); - return nil; - } - } - // Add on the filename - if (filename) { - url = [url URLByAppendingPathComponent:filename]; - } - return url.path; - } - NSLog(@"URLsForDirectory:inDomains: nothing found"); - return nil; -} - -- (MBLMetaWear *)metawearFromPeripheral:(id)peripheral - andAdvertisementData:advertisementData - RSSI:(NSNumber *)RSSI -{ - // Updates things we already know about - for (MBLMetaWear *device in self.discoveredDevices) { - if ([device.identifier isEqual:peripheral.identifier]) { - device.peripheral = peripheral; - peripheral.delegate = device; - [device updateName:peripheral.name]; - device.discoveryTimeRSSI = RSSI; - self.peripheralToMetaWear[peripheral] = device; - return device; - } - } - - // Attempt to load MBLMetaWear from disk - NSData *data = [NSData dataWithContentsOfFile:[self logFilename:peripheral.identifier.UUIDString]]; - MBLMetaWear *device = [FastCoder objectWithData:data]; - if (!device || [device isKindOfClass:[NSData class]]) { - device = [[MBLMetaWear alloc] initWithPeripheral:peripheral - andAdvertisementData:advertisementData - andRSSI:RSSI]; - } else { - device.peripheral = peripheral; - peripheral.delegate = device; - [device updateName:peripheral.name]; - device.discoveryTimeRSSI = RSSI; - } - self.peripheralToMetaWear[peripheral] = device; - [self.discoveredDevices addObject:device]; - return device; -} - -#pragma mark - CBCentralManagerDelegate - -- (void)centralManagerDidUpdateState:(id)central -{ - MBLCentralManagerStateHandler handler = self.stateHandler; - if (handler) { - [self.dispatchQueue addOperationWithBlock:^{ -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" - handler((CBCentralManagerState)central.state); -#pragma clang diagnostic pop - }]; - } - -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" - if (central.state == CBCentralManagerStatePoweredOn) { -#pragma clang diagnostic pop - NSArray *peripherals = [central retrieveConnectedPeripheralsWithServices:@[[MBLConstants serviceUUID]]]; - for (id peripheral in peripherals) { - [self metawearFromPeripheral:peripheral andAdvertisementData:nil RSSI:nil]; - } - if (self.scanForMetaWearBlocks.count && !self.isScanning) { - [self startScan]; - } - } else { - // TODO: This seems like an iOS bug. If bluetooth powers off the peripherials disconnect but we don't - // get a deviceDidDisconnect callback. - for (MBLMetaWear *device in [self.peripheralToMetaWear allValues]) { - if (device.state != MBLConnectionStateDisconnected) { - [device bluetoothPoweredOff]; - } - } - } - - @synchronized(self.centralStateUpdateSourcesMutex) { - for (BFTaskCompletionSource *source in self.centralStateUpdateSources) { - switch (central.state) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" - case CBCentralManagerStateUnknown: - case CBCentralManagerStateResetting: - // Updates are imminent, so wait - break; - case CBCentralManagerStateUnsupported: - [source trySetError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorBluetoothUnsupported - userInfo:@{NSLocalizedDescriptionKey : @"The platform doesn't support the Bluetooth Low Energy Central/Client role."}]]; - case CBCentralManagerStateUnauthorized: - [source trySetError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorBluetoothUnauthorized - userInfo:@{NSLocalizedDescriptionKey : @"The application is not authorized to use the Bluetooth Low Energy Central/Client role."}]]; - case CBCentralManagerStatePoweredOff: - [source trySetError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorBluetoothPoweredOff - userInfo:@{NSLocalizedDescriptionKey : @"Core Bluetooth Error. Please ensure bluetooth is enabled."}]]; - case CBCentralManagerStatePoweredOn: - [source trySetResult:nil]; - break; -#pragma clang diagnostic pop - } - } - [self.centralStateUpdateSources removeAllObjects]; - } -} - -- (void)centralManager:(id)central - didDiscoverPeripheral:(id)peripheral - advertisementData:(NSDictionary *)advertisementData - RSSI:(NSNumber *)RSSI -{ - [self metawearFromPeripheral:peripheral andAdvertisementData:advertisementData RSSI:RSSI]; - // Make copy incase stop scan is called inside which modifies self.scanForMetaWearBlocks - NSArray *copyHandlers = [self.scanForMetaWearBlocks copy]; - NSArray *copyDevices = [self.discoveredDevices copy]; - for (MBLArrayHandler callback in copyHandlers) { - [self.dispatchQueue addOperationWithBlock:^{ - if (self.isScanning) { - callback(copyDevices); - } - }]; - } -} - -- (void)centralManager:(id)central didConnectPeripheral:(id)peripheral -{ - MBLLog(MBLLogLevelInfo, @"Connect: %@", peripheral.description); - MBLMetaWear *device = self.peripheralToMetaWear[peripheral]; - [device didConnect]; -} - -- (void)centralManager:(id)central didFailToConnectPeripheral:(id)peripheral error:(NSError *)error -{ - MBLLog(MBLLogLevelInfo, @"Connect Fail: %@", peripheral.description); - MBLMetaWear *device = self.peripheralToMetaWear[peripheral]; - [device didDisconnect:error]; - -} - -- (void)centralManager:(id)central didDisconnectPeripheral:(id)peripheral error:(NSError *)error -{ - MBLLog(MBLLogLevelInfo, @"Disconnect: %@\nError: %@", peripheral.description, error.localizedDescription); - MBLMetaWear *device = self.peripheralToMetaWear[peripheral]; - if (device.testDebug.triggerDisconnectInProgress && (error.code == CBErrorPeripheralDisconnected || error.code == CBErrorConnectionTimeout)) { - device.testDebug.triggerDisconnectInProgress = NO; - [device didDisconnect:nil]; - } else { - [device didDisconnect:error]; - } -} - -//- (void)centralManager:(id)central willRestoreState:(NSDictionary *)state -//{ -// NSArray *peripherals = state[CBCentralManagerRestoredStatePeripheralsKey]; -// for (id peripheral in peripherals) { -// [self metawearFromPeripheral:peripheral andAdvertisementData:nil RSSI:nil]; -// } -//} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLModule.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLModule.h deleted file mode 100644 index 928de82..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLModule.h +++ /dev/null @@ -1,43 +0,0 @@ -/** - * MBLModule.h - * MetaWear - * - * Created by Stephen Schiffli on 10/22/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -/** - Base class for all sensors and peripherals - */ -@interface MBLModule : NSObject - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLModule.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLModule.m deleted file mode 100644 index 1cfa975..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLModule.m +++ /dev/null @@ -1,248 +0,0 @@ -/** - * MBLModule.m - * MetaWear - * - * Created by Stephen Schiffli on 10/22/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLModule+Private.h" -#import "MBLRegister+Private.h" -#import "MBLEvent+Private.h" -#import "MBLFilter.h" -#import "MBLConstants+Private.h" -#import "BFTask+Private.h" - -@interface MBLModule () -@property (nonatomic, weak) MBLMetaWear *device; -@property (nonatomic) NSMutableArray *registers; -@property (nonatomic) MBLModuleInfo *moduleInfo; - -@property (nonatomic) int initializeCount; -@property (nonatomic) int activateCount; -@property (nonatomic) MBLRegister *globalEnable; -@end - -@implementation MBLModule { - BFTask *initializeTask; - BFTask *deinitializeTask; - BFTask *activateTask; - BFTask *deactivateTask; -} - -+ (instancetype)objectWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - return [[self alloc] initWithDevice:device moduleInfo:moduleInfo]; -} - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super init]; - if (self) { - self.device = device; - self.registers = [NSMutableArray array]; - self.moduleInfo = moduleInfo; - - self.initializeCount = 0; - self.activateCount = 0; - - initializeTask = [BFTask taskWithResult:nil]; - deinitializeTask = [BFTask taskWithResult:nil]; - activateTask = [BFTask taskWithResult:nil]; - deactivateTask = [BFTask taskWithResult:nil]; - } - return self; -} - -- (id)awakeAfterFastCoding -{ - initializeTask = [BFTask taskWithResult:nil]; - deinitializeTask = [BFTask taskWithResult:nil]; - activateTask = [BFTask taskWithResult:nil]; - deactivateTask = [BFTask taskWithResult:nil]; - - return self; -} - -- (BFTask *)isStateValid -{ - return [BFTask taskForCompletionOfAllTasksWithResults:@[[BFTask taskWithResult:@YES]]]; -} - -- (void)addRegister:(MBLRegister *)reg -{ - dispatch_async([MBLConstants metaWearQueue], ^{ - [self.registers addObject:reg]; - }); -} - -- (void)recievedData:(NSData *)data error:(NSError *)error -{ - // Decompose the data coming from the MetaWear firmware, see the firwmare API guide - // for details on the protocol - uint8_t registerId = (*(uint8_t *)(data.bytes + 1)) & 0x7F; // Strip off the "read bit" - uint8_t index = 0xFF; - // If the register contains an index it would be at byte 3, note the index isn't required - if (data.length > 2) { - index = *(uint8_t *)(data.bytes + 2); - } - // sync because a new register is created inside [obj recievedData:error:], which then - // breaks this because the collection would be modified while iterating - dispatch_async([MBLConstants metaWearQueue], ^{ - for (MBLRegister *obj in self.registers) { - // See if we have a register id match - if ((obj.registerId & 0x7F) == registerId) { - // If the register doesn't expect an index then give it the data! However, if it does - // then the indexs must match. - if (obj.index == 0xFF) { - [obj recievedData:[data subdataWithRange:NSMakeRange(2, data.length - 2)] error:error]; - } else if (obj.index == index) { - [obj recievedData:[data subdataWithRange:NSMakeRange(3, data.length - 3)] error:error]; - } - } - } - }); -} - -- (void)deviceDisconnected:(NSError *)error -{ - for (MBLRegister *obj in self.registers) { - [obj deviceDisconnected:error]; - } -} - -- (BFTask *)deviceConnected -{ - NSMutableArray *tasks = [NSMutableArray arrayWithCapacity:self.registers.count]; - for (MBLRegister *obj in self.registers) { - [tasks addObject:[obj deviceConnected]]; - } - return [BFTask taskForCompletionOfAllTasks:tasks]; -} - -- (BFTask *)initializeAsync -{ - return [BFTask taskFromMetaWearWithBlock:^id{ - self.initializeCount++; - if (self.initializeCount == 1) { - initializeTask = [[self performAsyncInitialization] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - if (task.faulted) { - self.initializeCount--; - } - return task; - }]; - } - return initializeTask; - }]; -} - -- (BFTask *)deinitializeAsync -{ - return [BFTask taskFromMetaWearWithBlock:^id{ - self.initializeCount--; - if (self.initializeCount == 0) { - deinitializeTask = [[self performAsyncDeinitialization] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - if (task.faulted) { - self.initializeCount++; - } - return task; - }]; - } -#ifdef DEBUG - assert(self.initializeCount >= 0); -#endif - self.initializeCount = MAX(self.initializeCount, 0); - return deinitializeTask; - }]; -} - -- (BFTask *)activateAsync -{ - return [BFTask taskFromMetaWearWithBlock:^id{ - self.activateCount++; - if (self.activateCount == 1) { - activateTask = [[self performAsyncActivation] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - if (task.faulted) { - self.activateCount--; - } - return task; - }]; - } - return activateTask; - }]; -} - -- (BFTask *)deactivateAsync -{ - return [BFTask taskFromMetaWearWithBlock:^id{ - self.activateCount--; - if (self.activateCount == 0) { - activateTask = [[self performAsyncDeactivation] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - if (task.faulted) { - self.activateCount++; - } - return task; - }]; - } -#ifdef DEBUG - assert(self.activateCount >= 0); -#endif - self.activateCount = MAX(self.activateCount, 0); - return activateTask; - }]; -} - -- (BFTask *)performAsyncInitialization -{ - return [BFTask taskWithResult:nil]; -} - -- (BFTask *)performAsyncDeinitialization -{ - return [BFTask taskWithResult:nil]; -} - -- (BFTask *)performAsyncActivation -{ - if (self.globalEnable) { - return [self.globalEnable writeByteAsync:0x1]; - } - return [BFTask taskWithResult:nil]; -} - -- (BFTask *)performAsyncDeactivation -{ - if (self.globalEnable) { - return [self.globalEnable writeByteAsync:0x0]; - } - return [BFTask taskWithResult:nil]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLNumericData.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLNumericData.h deleted file mode 100644 index 31f2a86..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLNumericData.h +++ /dev/null @@ -1,52 +0,0 @@ -/** - * MBLNumericData.h - * MetaWear - * - * Created by Stephen Schiffli on 10/22/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - All MetaWear data that can be represented as a number - */ -@interface MBLNumericData : MBLDataSample - -/** - Value of the numeric data - */ -@property (nonatomic, readonly) NSNumber *value; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLNumericData.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLNumericData.m deleted file mode 100644 index 69e2ec3..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLNumericData.m +++ /dev/null @@ -1,65 +0,0 @@ -/** - * MBLNumericData.m - * MetaWear - * - * Created by Stephen Schiffli on 10/22/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLNumericData+Private.h" -#import "MBLDataSample+Private.h" - - -@interface MBLNumericData() -@property (nonatomic) NSNumber *value; -@end - -@implementation MBLNumericData - -- (instancetype)initWithNumber:(NSNumber *)number timestamp:(NSDate *)timestamp -{ - self = [super initWithTimestamp:timestamp]; - if (self) { - self.value = number; - } - return self; -} - -- (NSString *)description -{ - return [NSString stringWithFormat:@"%@ %@", [super description], self.value.stringValue]; -} - -- (NSString *)csvRepresentation -{ - return [NSString stringWithFormat:@"%f,%@\n", self.timestamp.timeIntervalSince1970, self.value.stringValue]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLRegister.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLRegister.h deleted file mode 100644 index 141e971..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLRegister.h +++ /dev/null @@ -1,43 +0,0 @@ -/** - * MBLRegister.h - * MetaWear - * - * Created by Stephen Schiffli on 10/8/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -/** - Base class for MetaWear registers - */ -@interface MBLRegister : NSObject - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLRegister.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLRegister.m deleted file mode 100644 index 29aec86..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLRegister.m +++ /dev/null @@ -1,588 +0,0 @@ -/** - * MBLRegister.m - * MetaWear - * - * Created by Stephen Schiffli on 10/8/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLRegister+Private.h" -#import "MBLMetaWearManager+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLModule+Private.h" -#import "BFTask+Private.h" -#import "BFTask+MBLExtensions.h" -#import "MBLConstants+Private.h" -#import "MBLLogger.h" - -typedef NS_OPTIONS(uint8_t, MBLRegisterState) { - MBLRegisterStateNeedsResponse = 1 << 0, - MBLRegisterStateWriteResponds = 1 << 1, - MBLRegisterStateIsNotifying = 1 << 2, - MBLRegisterStateIsLogging = 1 << 3, - MBLRegisterStateHasCommands = 1 << 4 -}; - -@interface MBLRegister () -@property (nonatomic, weak) MBLModule *module; -@property (nonatomic) uint8_t registerId; -@property (nonatomic) uint8_t index; -@property (nonatomic) MBLRegisterState state; -@property (nonatomic) MBLFormat *format; - -@property (nonatomic) int16_t initializeCount; -@property (nonatomic) int16_t activateCount; -@end - -@implementation MBLRegister { - NSMutableArray *taskSources; - NSMutableArray *notifyCallbacks; - - BFTask *initializeTask; - BFTask *deinitializeTask; - BFTask *activateTask; - BFTask *deactivateTask; - BFTask *startNotificationTask; - BFTask *stopNotificationTask; -} - -- (instancetype)initWithModule:(MBLModule *)module registerId:(uint8_t)registerId index:(uint8_t)index format:(MBLFormat *)format -{ - self = [super init]; - if (self) { - self.module = module; - self.registerId = registerId; - self.index = index; - self.needsResponse = NO; - self.format = format; - - self.initializeCount = 0; - self.activateCount = 0; - - taskSources = [NSMutableArray array]; - notifyCallbacks = [NSMutableArray array]; - - initializeTask = [BFTask taskWithResult:nil]; - deinitializeTask = [BFTask taskWithResult:nil]; - activateTask = [BFTask taskWithResult:nil]; - deactivateTask = [BFTask taskWithResult:nil]; - startNotificationTask = [BFTask taskWithResult:nil]; - stopNotificationTask = [BFTask taskWithResult:nil]; - - // This is a special dummy register for testing - if (registerId != 0xFF) { - [module addRegister:self]; - } - } - return self; -} - -- (instancetype)initWithModule:(MBLModule *)module registerId:(uint8_t)registerId format:(MBLFormat *)format -{ - return [self initWithModule:module registerId:registerId index:0xFF format:format]; -} - - -- (id)awakeAfterFastCoding -{ - taskSources = [NSMutableArray array]; - notifyCallbacks = [NSMutableArray array]; - - initializeTask = [BFTask taskWithResult:nil]; - deinitializeTask = [BFTask taskWithResult:nil]; - activateTask = [BFTask taskWithResult:nil]; - deactivateTask = [BFTask taskWithResult:nil]; - startNotificationTask = [BFTask taskWithResult:nil]; - stopNotificationTask = [BFTask taskWithResult:nil]; - - return self; -} - -- (BOOL)needsResponse -{ - assert([MBLConstants isMetaWearQueue]); - return self.state & MBLRegisterStateNeedsResponse; -} - -- (void)setNeedsResponse:(BOOL)needsResponse -{ - if (needsResponse) { - self.state |= MBLRegisterStateNeedsResponse; - } else { - self.state &= ~MBLRegisterStateNeedsResponse; - } -} - -- (BOOL)writeResponds -{ - assert([MBLConstants isMetaWearQueue]); - return self.state & MBLRegisterStateWriteResponds; -} - -- (void)setWriteResponds:(BOOL)writeResponds -{ - if (writeResponds) { - self.state |= MBLRegisterStateWriteResponds; - } else { - self.state &= ~MBLRegisterStateWriteResponds; - } -} - -- (BOOL)isNotifyingImpl -{ - assert([MBLConstants isMetaWearQueue]); - return self.state & MBLRegisterStateIsNotifying; -} - -- (void)setIsNotifyingImpl:(BOOL)isNotifying -{ - assert([MBLConstants isMetaWearQueue]); - if (isNotifying) { - self.state |= MBLRegisterStateIsNotifying; - } else { - self.state &= ~MBLRegisterStateIsNotifying; - } -} - -- (BOOL)isLoggingImpl -{ - assert([MBLConstants isMetaWearQueue]); - return self.state & MBLRegisterStateIsLogging; -} - -- (void)setIsLoggingImpl:(BOOL)isLogging -{ - assert([MBLConstants isMetaWearQueue]); - if (isLogging) { - self.state |= MBLRegisterStateIsLogging; - } else { - self.state &= ~MBLRegisterStateIsLogging; - } -} - -- (BOOL)hasCommandsImpl -{ - assert([MBLConstants isMetaWearQueue]); - return self.state & MBLRegisterStateHasCommands; -} - -- (void)setHasCommandsImpl:(BOOL)hasCommands -{ - assert([MBLConstants isMetaWearQueue]); - if (hasCommands) { - self.state |= MBLRegisterStateHasCommands; - } else { - self.state &= ~MBLRegisterStateHasCommands; - } -} - -- (BFTask *)sendByteToDevice:(uint8_t)byte isRead:(BOOL)isRead -{ - return [self sendDataToDevice:[NSData dataWithBytes:&byte length:1] isRead:isRead isLocal:NO]; -} - -- (BFTask *)sendDataToDevice:(NSData *)parameters isRead:(BOOL)isRead isLocal:(BOOL)isLocal -{ - MBLMetaWear *device = self.module.device; - if (device.state == MBLConnectionStateDisconnected) { - NSError *error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorNotConnected - userInfo:@{NSLocalizedDescriptionKey : @"MetaWear not connected, can't perform operation. Please connect to MetaWear before performing read operations."}]; - return [BFTask taskWithError:error]; - - } - if (!self.module.moduleInfo.moduleId || !self.registerId) { - NSError *error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorNotConnected - userInfo:@{NSLocalizedDescriptionKey : @"Attempted to communicate with invalid module/register."}]; - return [BFTask taskWithError:error]; - } - - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - [device incrementCount]; - [BFTask taskFromMetaWearWithBlock:^id{ - if ([MBLConstants isSimulatorQueue]) { - [source trySetResult:nil]; - } else if (isRead || self.writeResponds) { - [taskSources addObject:source]; - } else { - [source trySetResult:nil]; - } - - uint8_t header[] = { self.module.moduleInfo.moduleId, self.registerId }; - int headerSize = sizeof(header) / sizeof(header[0]); - if (isRead) { - header[1] |= 0x80; - } - if (isLocal) { - header[1] |= 0x40; - } - NSMutableData *data = [NSMutableData dataWithBytes:header length:headerSize]; - [data appendData:parameters]; - [device writeCommandRegister:data withResponse:self.needsResponse]; - return nil; - }]; - // Make sure the decrement is placed on the queue in such a way that it happens after - // all the read callbacks have finished - [source.task continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - [BFTask taskFromMetaWearWithBlock:^id{ - [device decrementCount]; - return nil; - }]; - return nil; - }]; - return source.task; -} - -- (BFTask *)readAsync -{ - return [self sendDataToDevice:[self readParameters] isRead:YES isLocal:NO]; -} - -- (nonnull BFTask *)readForcedIndexAsync:(uint8_t)index -{ - return [self sendDataToDevice:[NSData dataWithBytes:&index length:1] isRead:YES isLocal:NO]; -} - -- (BFTask *)localReadAsync -{ - return [self sendDataToDevice:[self readParameters] isRead:YES isLocal:YES]; -} - -- (NSData *)readParameters -{ - NSData *params = nil; - if (self.index != 0xFF) { - params = [NSData dataWithBytes:&_index length:1]; - } - return params; -} - - -- (BFTask *)writeByteAsync:(uint8_t)byte -{ - return [self writeDataAsync:[NSData dataWithBytes:&byte length:1]]; -} - -- (BFTask *)writeDataAsync:(NSData *)params -{ - return [self sendDataToDevice:params isRead:NO isLocal:NO]; -} - -- (BFTask *)startNotificationsWithHandlerAsync:(MBLObjectHandler)handler -{ - return [self startNotificationsWithExecutorAsync:[BFExecutor dispatchExecutor] withHandler:handler]; -} - -- (BFTask *)startNotificationsWithExecutorAsync:(BFExecutor *)executor withHandler:(nullable MBLObjectHandler)handler -{ - MBLMetaWear *device = self.module.device; - if (device.state != MBLConnectionStateConnected) { - NSError *error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorNotConnected - userInfo:@{NSLocalizedDescriptionKey : @"MetaWear not connected, can't perform operation. Please connect to MetaWear before streaming data."}]; - if (handler) { - [executor execute:^{ - handler(nil, error); - }]; - } - return [BFTask taskWithError:error]; - } - - [device incrementCount]; - return [BFTask taskFromMetaWearWithBlock:^id{ - [self addNotificationWithExecutor:executor handler:handler]; - // Shortcut if we are already all setup - if (!self.isNotifyingImpl) { - self.isNotifyingImpl = YES; - - startNotificationTask = [[[[self initializeAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self performAsyncStartNotifications]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self activateAsync]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - [device decrementCount]; - return task; - }]; - } else { - [device decrementCount]; - } - return startNotificationTask; - }]; -} - -- (BFTask *)performAsyncStartNotifications -{ - // Indexed registers and periodic read registers arn't equiped to take notification bytes - if (self.index == 0xFF && !(self.registerId & 0x80)) { - return [self sendByteToDevice:0x1 isRead:NO]; - } - return [BFTask taskWithResult:nil]; -} - -- (BFTask *)stopNotificationsAsync -{ - MBLMetaWear *device = self.module.device; - if (device.state != MBLConnectionStateConnected) { - NSError *error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorNotConnected - userInfo:@{NSLocalizedDescriptionKey : @"MetaWear not connected, can't perform operation. Notifications will automatically be stopped on next connect."}]; - return [BFTask taskWithError:error]; - } - - [device incrementCount]; - return [BFTask taskFromMetaWearWithBlock:^id{ - // Do nothing if we notifications are not enabled - if (self.isNotifyingImpl) { - self.isNotifyingImpl = NO; - - [self removeNotificationHandlers]; - - stopNotificationTask = [[[[self deactivateAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self performAsyncStopNotificationsAsync]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self deinitializeAsync]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - [device decrementCount]; - return task; - }]; - } else { - [device decrementCount]; - } - return stopNotificationTask; - }]; -} - -- (BFTask *)performAsyncStopNotificationsAsync -{ - // Indexed registers and periodic read registers arn't equiped to take notification bytes - if (self.index == 0xFF && !(self.registerId & 0x80)) { - return [self sendByteToDevice:0x0 isRead:NO]; - } - return [BFTask taskWithResult:nil]; -} - -- (void)addNotificationWithExecutor:(BFExecutor *)executor handler:(MBLObjectHandler)handler -{ - assert([MBLConstants isMetaWearQueue]); - if (handler) { - MBLObjectHandler wrappedHandler = ^(id obj, NSError *error) { - [executor execute:^{ - handler(obj, error); - }]; - }; - [notifyCallbacks addObject:wrappedHandler]; - } -} - -- (void)removeNotificationHandlers -{ - dispatch_async([MBLConstants metaWearQueue], ^{ - [notifyCallbacks removeAllObjects]; - }); -} - -- (void)recievedData:(NSData *)data error:(NSError *)error -{ - assert([MBLConstants isMetaWearQueue]); - id formattedObj = nil; - if (data) { - // Transform the NSData into a register specific object - MBLFormat *format = self.format; - NSData *trimmed = [data subdataWithRange:NSMakeRange(format.offset, MIN(format.length, data.length - format.offset))]; - formattedObj = [format entryFromData:trimmed date:[NSDate date]]; - } - - // Callbacks are used for one time read/write calls, so the block is deleted - // immediately after it's used - if (taskSources.count) { - // We assume the data comes back in the order it was requested - BFTaskCompletionSource *source = taskSources.firstObject; - [taskSources removeObjectAtIndex:0]; - if (error) { - [source trySetError:error]; - } else { - [source trySetResult:formattedObj]; - } - } - - // Notify Callbacks are used when we subscribe to MetaWear registers, so we don't - // delete them until removeNotificationHandlers is called - for (MBLObjectHandler callback in notifyCallbacks) { - // callback are alredy wrapped to execute on the correct queue - if ([formattedObj conformsToProtocol:@protocol(NSFastEnumeration)]) { - for (id obj in formattedObj) { - callback(obj, error); - } - } else { - callback(formattedObj, error); - } - } -} - -- (void)deviceDisconnected:(NSError *)error -{ - assert([MBLConstants isMetaWearQueue]); - BOOL noError = error == nil; - if (!error) { - error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorUnexpectedDisconnect - userInfo:@{NSLocalizedDescriptionKey : @"Unexpected disconnect. Please connect again to perform operation."}]; - } - - // Let anyone who is waiting on a callback know it's not going to happen - for (BFTaskCompletionSource *source in taskSources) { - [source trySetError:error]; - } - [taskSources removeAllObjects]; - - // Special warning letting the SDK user know they forgot to clean up a notifying resource - if (self.isNotifyingImpl && noError) { - MBLLog(MBLLogLevelWarning, @"Forgot to stop all notifications before disconnecting"); - } - for (MBLObjectHandler callback in notifyCallbacks) { - [[MBLMetaWearManager dispatchQueue] addOperationWithBlock:^{ - callback(nil, error); - }]; - } - [notifyCallbacks removeAllObjects]; -} - -- (BFTask *)deviceConnected -{ - if (self.isNotifyingImpl) { - return [self stopNotificationsAsync]; - } - return [BFTask taskWithResult:nil]; -} - -- (BFTask *)initializeAsync -{ - return [BFTask taskFromMetaWearWithBlock:^id{ - self.initializeCount++; - if (self.initializeCount == 1) { - // Initialize the module then initialize us - initializeTask = [[[self.module initializeAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self performAsyncInitialization]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - if (task.faulted) { - self.initializeCount--; - } - return task; - }]; - } - return initializeTask; - }]; -} - -- (BFTask *)deinitializeAsync -{ - return [BFTask taskFromMetaWearWithBlock:^id{ - self.initializeCount--; - if (self.initializeCount == 0) { - // Deinitialize us then deinitialize the module - deinitializeTask = [[[self performAsyncDeinitialization] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.module deinitializeAsync]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - if (task.faulted) { - self.initializeCount++; - } - return task; - }]; - } -#ifdef DEBUG - assert(self.initializeCount >= 0); -#endif - self.initializeCount = MAX(self.initializeCount, 0); - return deinitializeTask; - }]; -} - -- (BFTask *)activateAsync -{ - return [BFTask taskFromMetaWearWithBlock:^id{ - self.activateCount++; - if (self.activateCount == 1) { - activateTask = [[[self performAsyncActivation] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.module activateAsync]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - if (task.faulted) { - self.activateCount--; - } - return task; - }]; - } - return activateTask; - }]; -} - -- (BFTask *)deactivateAsync -{ - return [BFTask taskFromMetaWearWithBlock:^id{ - self.activateCount--; - if (self.activateCount == 0) { - activateTask = [[[self.module deactivateAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self performAsyncDeactivation]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - if (task.faulted) { - self.activateCount++; - } - return task; - }]; - } -#ifdef DEBUG - assert(self.activateCount >= 0); -#endif - self.activateCount = MAX(self.activateCount, 0); - return activateTask; - }]; -} - -- (BFTask *)performAsyncInitialization -{ - return [BFTask taskWithResult:nil]; -} - -- (BFTask *)performAsyncDeinitialization -{ - return [BFTask taskWithResult:nil]; -} - -- (BFTask *)performAsyncActivation -{ - return [BFTask taskWithResult:nil]; -} - -- (BFTask *)performAsyncDeactivation -{ - return [BFTask taskWithResult:nil]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLStringData.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLStringData.h deleted file mode 100644 index 4d3078b..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLStringData.h +++ /dev/null @@ -1,52 +0,0 @@ -/** - * MBLStringData.h - * MetaWear - * - * Created by Stephen Schiffli on 12/16/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - All MetaWear data that can be represented as a string - */ -@interface MBLStringData : MBLDataSample - -/** - Value of the string data - */ -@property (nonatomic, readonly) NSString *value; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLStringData.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLStringData.m deleted file mode 100644 index 43ca8e7..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Core/MBLStringData.m +++ /dev/null @@ -1,64 +0,0 @@ -/** - * MBLStringData.m - * MetaWear - * - * Created by Stephen Schiffli on 12/16/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLStringData+Private.h" -#import "MBLDataSample+Private.h" - -@interface MBLStringData () -@property (nonatomic) NSString *value; -@end - -@implementation MBLStringData - -- (instancetype)initWithString:(NSString *)string timestamp:(NSDate *)timestamp -{ - self = [super initWithTimestamp:timestamp]; - if (self) { - self.value = string; - } - return self; -} - -- (NSString *)description -{ - return [NSString stringWithFormat:@"%@ %@", [super description], self.value]; -} - -- (NSString *)csvRepresentation -{ - return [NSString stringWithFormat:@"%f,%@\n", self.timestamp.timeIntervalSince1970, self.value]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/MetaWear.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/MetaWear.h deleted file mode 100755 index bbb5c65..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/MetaWear.h +++ /dev/null @@ -1,104 +0,0 @@ -/** - * MetaWear.h - * MetaWear - * - * Created by Stephen Schiffli on 7/30/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import - -#import diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/ANCS/MBLANCS.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/ANCS/MBLANCS.h deleted file mode 100644 index 1a8019d..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/ANCS/MBLANCS.h +++ /dev/null @@ -1,132 +0,0 @@ -/** - * MBLANCS.h - * MetaWear - * - * Created by Stephen Schiffli on 11/17/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -@class MBLANCSEventData; -@class MBLANCSEvent; - -NS_ASSUME_NONNULL_BEGIN - -/** - Category in which the iOS notification can be classified - */ -typedef NS_OPTIONS(uint16_t, MBLANCSCategoryID) { - MBLANCSCategoryIDOther = 1 << 0, - MBLANCSCategoryIDIncomingCall = 1 << 1, - MBLANCSCategoryIDMissedCall = 1 << 2, - MBLANCSCategoryIDVoicemail = 1 << 3, - MBLANCSCategoryIDSocial = 1 << 4, - MBLANCSCategoryIDSchedule = 1 << 5, - MBLANCSCategoryIDEmail = 1 << 6, - MBLANCSCategoryIDNews = 1 << 7, - MBLANCSCategoryIDHealthAndFitness = 1 << 8, - MBLANCSCategoryIDBusinessAndFinance = 1 << 9, - MBLANCSCategoryIDLocation = 1 << 10, - MBLANCSCategoryIDEntertainment = 1 << 11, - MBLANCSCategoryIDAny = 0xFFFF -}; - -/** - This field informs whether the given iOS notification was added, modified, or removed - */ -typedef NS_OPTIONS(uint8_t, MBLANCSEventID) { - MBLANCSEventIDNotificationAdded = 1 << 0, - MBLANCSEventIDNotificationModified = 1 << 1, - MBLANCSEventIDNotificationRemoved = 1 << 2, - MBLANCSEventIDAny = 0xFF -}; - -/** - A bitmask whose set bits inform the specificities of the iOS notification - */ -typedef NS_OPTIONS(uint8_t, MBLANCSEventFlag) { - MBLANCSEventFlagSilent = 1 << 0, - MBLANCSEventFlagImportant = 1 << 1, - MBLANCSEventFlagPreExisting = 1 << 2, - MBLANCSEventFlagPositiveAction = 1 << 3, - MBLANCSEventFlagNegativeAction = 1 << 4, - MBLANCSEventFlagAny = 0 -}; - -/** - Types of notification attribute data whos data can be filtered on - */ -typedef NS_ENUM(uint8_t, MBLANCSNotificationAttributeID) { - MBLANCSNotificationAttributeIDAppIdentifier = 0, - MBLANCSNotificationAttributeIDTitle = 1, - MBLANCSNotificationAttributeIDSubtitle = 2, - MBLANCSNotificationAttributeIDMessage = 3, - MBLANCSNotificationAttributeIDMessageSize = 4, - MBLANCSNotificationAttributeIDDate = 5, - MBLANCSNotificationAttributeIDPositiveActionLabel = 6, - MBLANCSNotificationAttributeIDNegativeActionLabel = 7, - MBLANCSNotificationAttributeIDNone = 0xFF -}; - -/** - Interface to Apple Notification Center Service (ANCS). - For more details on ANCS see https://developer.apple.com/library/ios/documentation/CoreBluetooth/Reference/AppleNotificationCenterServiceSpecification/AppleNotificationCenterServiceSpecification.pdf - */ -@interface MBLANCS : MBLEntityModule - -/** - Event representing an ANCS event of one or more CategoryID's. Event callbacks will - be provided an MBLANCSEventData object. - */ -- (MBLEvent *)eventWithCategoryIds:(MBLANCSCategoryID)categoryIds; - -/** - Event representing an ANCS event of a specific CategoryID, EventID, and EventFlags. - Event callbacks will be provided an MBLANCSEventData object. - */ -- (MBLEvent *)eventWithCategoryIds:(MBLANCSCategoryID)categoryIds - eventIds:(MBLANCSEventID)eventIds - eventFlags:(MBLANCSEventFlag)eventFlags; - -/** - Event representing an ANCS event of a specific CategoryID, EventID, EventFlags, and Notification Attribute. - Event callbacks will be provided an MBLANCSEventData object. - */ -- (MBLEvent *)eventWithCategoryIds:(MBLANCSCategoryID)categoryIds - eventIds:(MBLANCSEventID)eventIds - eventFlags:(MBLANCSEventFlag)eventFlags - attributeId:(MBLANCSNotificationAttributeID)attributeId - attributeData:(NSString *)attributeData; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/ANCS/MBLANCS.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/ANCS/MBLANCS.m deleted file mode 100644 index d928cb3..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/ANCS/MBLANCS.m +++ /dev/null @@ -1,155 +0,0 @@ -/** - * MBLANCS.m - * MetaWear - * - * Created by Stephen Schiffli on 11/17/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLANCS.h" -#import "MBLRegister+Private.h" -#import "MBLEvent+Private.h" -#import "MBLEntityEvent+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLANCSEventData+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLDataSample.h" -#import "MBLMetaWearManager+Private.h" -#import "BFTask+Private.h" - -static const uint8_t MW_ANCS_ATTRIBUTE_MATCH_SIZE = 14; - -typedef struct __attribute__((packed)) { - uint16_t category_id_mask; - uint8_t event_id_mask:3; - uint8_t event_flags_mask:5; - uint8_t attribute_id; - uint8_t attribute_data[MW_ANCS_ATTRIBUTE_MATCH_SIZE]; -} mw_ancs_param_t; - -@interface MBLANCS () -@property (nonatomic) MBLRegister *initialize; -@end - -@implementation MBLANCS - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - MBLRegister *initialize = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - MBLRegister *globalEnable = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - MBLRegister *addFilter = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[[MBLFormat alloc] initEncodedDataWithLength:18]]; - MBLRegister *removeFilter = [[MBLRegister alloc] initWithModule:self registerId:0x4 format:[MBLFormat writeOnly]]; - MBLRegister *notification = [[MBLRegister alloc] initWithModule:self registerId:0x5 format:[[MBLFormat alloc] initEncodedDataWithLength:4]]; - MBLRegister *notificationEnable = [[MBLRegister alloc] initWithModule:self registerId:0x6 format:[MBLFormat writeOnly]]; - - int maxFilters = 4; // This was the old default - if (moduleInfo.moduleData.length) { - maxFilters = *(uint8_t *)moduleInfo.moduleData.bytes; - } - - addFilter.writeResponds = YES; - - self.initialize = initialize; - - self.globalEnable = globalEnable; - - self.addEntity = addFilter; - self.removeEntity = removeFilter; - - self.globalNotifications = notification; - self.notificationEnable = notificationEnable; - - self.maxEntities = maxFilters; - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - return [self.initialize writeDataAsync:nil]; -} - -- (MBLEvent *)eventWithCategoryIds:(MBLANCSCategoryID)categoryIds -{ - return [self createEventWithCategoryIds:categoryIds - eventIds:MBLANCSEventIDAny - eventFlags:MBLANCSEventFlagAny - attributeId:MBLANCSNotificationAttributeIDNone - attributeData:nil]; -} - -- (MBLEvent *)eventWithCategoryIds:(MBLANCSCategoryID)categoryIds - eventIds:(MBLANCSEventID)eventIds - eventFlags:(MBLANCSEventFlag)eventFlags -{ - return [self createEventWithCategoryIds:categoryIds - eventIds:eventIds - eventFlags:eventFlags - attributeId:MBLANCSNotificationAttributeIDNone - attributeData:nil]; -} - -- (MBLEvent *)eventWithCategoryIds:(MBLANCSCategoryID)categoryIds - eventIds:(MBLANCSEventID)eventIds - eventFlags:(MBLANCSEventFlag)eventFlags - attributeId:(MBLANCSNotificationAttributeID)attributeId - attributeData:(NSString *)attributeData -{ - return [self createEventWithCategoryIds:categoryIds - eventIds:eventIds - eventFlags:eventFlags - attributeId:attributeId - attributeData:attributeData]; -} - -- (MBLEvent *)createEventWithCategoryIds:(MBLANCSCategoryID)categoryIds - eventIds:(MBLANCSEventID)eventIds - eventFlags:(MBLANCSEventFlag)eventFlags - attributeId:(MBLANCSNotificationAttributeID)attributeId - attributeData:(NSString *)attributeData -{ - mw_ancs_param_t params = {0}; - params.category_id_mask = categoryIds; - params.event_id_mask = eventIds; - params.event_flags_mask = eventFlags; - params.attribute_id = attributeId; - if (attributeData) { - NSData *src = [attributeData dataUsingEncoding:NSUTF8StringEncoding]; - memcpy(params.attribute_data, src.bytes, MIN(src.length, MW_ANCS_ATTRIBUTE_MATCH_SIZE)); - } - return [[MBLEntityEvent alloc] initWithModule:self - registerId:self.globalNotifications.registerId - addEntityParameters:[NSData dataWithBytes:¶ms length:sizeof(mw_ancs_param_t)] - format:[MBLANCSEventData formatter]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/ANCS/MBLANCSEventData.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/ANCS/MBLANCSEventData.h deleted file mode 100644 index 36f58fb..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/ANCS/MBLANCSEventData.h +++ /dev/null @@ -1,65 +0,0 @@ -/** - * MBLANCSEventData.h - * MetaWear - * - * Created by Stephen Schiffli on 11/20/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Data encapsulation for an ANCS event. - */ -@interface MBLANCSEventData : MBLDataSample - -/** - This field informs whether the given iOS notification was added, modified, or removed - */ -@property (nonatomic, readonly) MBLANCSEventID eventId; -/** - A bitmask whose set bits inform the specificities with the iOS notification - */ -@property (nonatomic, readonly) MBLANCSEventFlag eventFlags; -/** - A value providing a category in which the iOS notification can be classified - */ -@property (nonatomic, readonly) MBLANCSCategoryID categoryId; -/** - The current number of active iOS notifications in the given category - */ -@property (nonatomic, readonly) uint8_t categoryCount; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/ANCS/MBLANCSEventData.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/ANCS/MBLANCSEventData.m deleted file mode 100644 index 0a6cc77..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/ANCS/MBLANCSEventData.m +++ /dev/null @@ -1,196 +0,0 @@ -/** - * MBLANCSEventData.m - * MetaWear - * - * Created by Stephen Schiffli on 10/15/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLANCSEventData+Private.h" -#import "MBLDataSample+Private.h" - -typedef struct __attribute__((packed)) { - uint8_t event_id:3; - uint8_t event_flags:5; - uint8_t category_id; - uint8_t category_count; -} mw_ancs_notification_t; - - -@interface MBLANCSEventFormatter : MBLFormat -@end - -@implementation MBLANCSEventFormatter -- (id)entryFromData:(NSData *)data date:(NSDate *)date -{ - return [[MBLANCSEventData alloc] initWithData:data timestamp:date]; -} - -- (NSNumber *)numberFromDouble:(double)value -{ - [NSException raise:@"Cannout use ANCS events with filters" format:@""]; - return nil; -} -@end - - -@interface MBLANCSEventData () -@property (nonatomic) MBLANCSEventID eventId; -@property (nonatomic) MBLANCSEventFlag eventFlags; -@property (nonatomic) MBLANCSCategoryID categoryId; -@property (nonatomic) uint8_t categoryCount; -@end - -@implementation MBLANCSEventData - -+ (MBLFormat *)formatter -{ - return [[MBLANCSEventFormatter alloc] initEncodedDataWithLength:4]; -} - -- (instancetype)initWithData:(NSData *)data timestamp:(NSDate *)timestamp -{ - self = [super initWithTimestamp:timestamp]; - if (self) { - mw_ancs_notification_t status = *(mw_ancs_notification_t *)data.bytes; - self.eventId = (1 << status.event_id); - self.eventFlags = status.event_flags; - self.categoryId = (1 << status.category_id); - self.categoryCount = status.category_count; - } - return self; -} - - -- (NSString *)eventIdString -{ - NSString *eventId; - switch (self.eventId) { - case MBLANCSEventIDNotificationAdded: - eventId = @"EventID: Notification Added"; - break; - case MBLANCSEventIDNotificationModified: - eventId = @"EventID: Notification Modified"; - break; - case MBLANCSEventIDNotificationRemoved: - eventId = @"EventID: Notification Removed"; - break; - case MBLANCSEventIDAny: - eventId = @""; - break; - } - return eventId; -} - -- (NSString *)eventFlagsString -{ - NSString *eventFlags = @"EventFlags:"; - if (self.eventFlags & MBLANCSEventFlagSilent) { - eventFlags = [eventFlags stringByAppendingString:@" Silent"]; - } - if (self.eventFlags & MBLANCSEventFlagImportant) { - eventFlags = [eventFlags stringByAppendingString:@" Important"]; - } - if (self.eventFlags & MBLANCSEventFlagPreExisting) { - eventFlags = [eventFlags stringByAppendingString:@" PreExisting"]; - } - if (self.eventFlags & MBLANCSEventFlagPositiveAction) { - eventFlags = [eventFlags stringByAppendingString:@" PositiveAction"]; - } - if (self.eventFlags & MBLANCSEventFlagNegativeAction) { - eventFlags = [eventFlags stringByAppendingString:@" NegativeAction"]; - } - return eventFlags; -} - -- (NSString *)categoryString -{ - NSString *categoryId; - switch (self.categoryId) { - case MBLANCSCategoryIDOther: - categoryId = @"CategoryID: Other"; - break; - case MBLANCSCategoryIDIncomingCall: - categoryId = @"CategoryID: Incoming Call"; - break; - case MBLANCSCategoryIDMissedCall: - categoryId = @"CategoryID: Missed Call"; - break; - case MBLANCSCategoryIDVoicemail: - categoryId = @"CategoryID: Voicemail"; - break; - case MBLANCSCategoryIDSocial: - categoryId = @"CategoryID: Social"; - break; - case MBLANCSCategoryIDSchedule: - categoryId = @"CategoryID: Schedule"; - break; - case MBLANCSCategoryIDEmail: - categoryId = @"CategoryID: Email"; - break; - case MBLANCSCategoryIDNews: - categoryId = @"CategoryID: News"; - break; - case MBLANCSCategoryIDHealthAndFitness: - categoryId = @"CategoryID: Health And Fitness"; - break; - case MBLANCSCategoryIDBusinessAndFinance: - categoryId = @"CategoryID: Business And Finance"; - break; - case MBLANCSCategoryIDLocation: - categoryId = @"CategoryID: Location"; - break; - case MBLANCSCategoryIDEntertainment: - categoryId = @"CategoryID: Entertainment"; - break; - case MBLANCSCategoryIDAny: - categoryId = @""; - break; - } - return categoryId; -} - -- (NSString *)description -{ - NSString *eventId = [self eventIdString]; - NSString *eventFlags = [self eventFlagsString]; - NSString *categoryId = [self categoryString]; - return [NSString stringWithFormat:@"%@\n%@\n%@\n%@\nCategoryCount: %d", [super description], eventId, eventFlags, categoryId, self.categoryCount]; -} - -- (NSString *)csvRepresentation -{ - NSString *eventId = [self eventIdString]; - NSString *eventFlags = [self eventFlagsString]; - NSString *categoryId = [self categoryString]; - return [NSString stringWithFormat:@"%f,\"%@ %@ %@ CategoryCount: %d\"\n", self.timestamp.timeIntervalSince1970, eventId, eventFlags, categoryId, self.categoryCount]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255.h deleted file mode 100644 index 12dbeb8..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255.h +++ /dev/null @@ -1,54 +0,0 @@ -/** - * MBLAccelerometerBMA255.h - * MetaWear - * - * Created by Stephen Schiffli on 2/29/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -@class MBLAccelerometerBMA255MotionEvent; - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface to a BMA25 accelerometer - */ -@interface MBLAccelerometerBMA255 : MBLAccelerometerBosch - -/** - Event representing a motion (change of acceleration) event. - Event callbacks will be provided an empty MBLDataSample object - */ -@property (nonatomic, readonly) MBLAccelerometerBMA255MotionEvent *motionEvent; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255.m deleted file mode 100644 index cf357e5..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255.m +++ /dev/null @@ -1,90 +0,0 @@ -/** - * MBLAccelerometerBMA255.m - * MetaWear - * - * Created by Stephen Schiffli on 2/29/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBMA255+Private.h" -#import "MBLAccelerometerBosch+Private.h" -#import "MBLModule+Private.h" -#import "MBLAccelerometerBMA255MotionEvent+Private.h" -#import "MBLAccelerometerBoschLowOrHighGEvent+Private.h" -#import "MBLRegister+Private.h" - -@interface MBLAccelerometerBMA255 () -@property (nonatomic) MBLAccelerometerBMA255MotionEvent *motionEvent; -@end - -@implementation MBLAccelerometerBMA255 - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.motionEvent = [[MBLAccelerometerBMA255MotionEvent alloc] initWithAccelerometer:self]; - - self.lowOrHighGEvent.lowOrHighGDurationMultiplier = 2.0; - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - // Write the disable bits for motion interrupts - uint8_t data[] = { self.scaleSampleFrequency, self.fullScaleRange }; - int dataSize = sizeof(data) / sizeof(data[0]); - - return [self.accelDataConfig writeDataAsync:[NSData dataWithBytes:data length:dataSize]]; -} - -- (uint8_t)scaleSampleFrequency -{ - if (self.sampleFrequency > 1000.0) { - return 0xF; - } else if (self.sampleFrequency > 500.0) { - return 0xE; - } else if (self.sampleFrequency > 250.0) { - return 0xD; - } else if (self.sampleFrequency > 125.0) { - return 0xC; - } else if (self.sampleFrequency > 62.5) { - return 0xB; - } else if (self.sampleFrequency > 31.26) { - return 0xA; - } else if (self.sampleFrequency > 15.62) { - return 0x9; - } else { - return 0x8; - } -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255MotionEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255MotionEvent.h deleted file mode 100644 index 6834993..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255MotionEvent.h +++ /dev/null @@ -1,88 +0,0 @@ -/** - * MBLAccelerometerBMA255MotionEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 3/1/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -@class MBLDataSample; - -NS_ASSUME_NONNULL_BEGIN - - -@interface MBLAccelerometerBMA255MotionEvent : MBLEvent - -#pragma mark - Beta API (Subject to change) - -/** - The BMI160 combines Slow/No-Motion and Any-Motion detection, so below - we expose the raw registers as a first enabling step. Over time this will become - better encapsulated. - */ - -#pragma mark - Slow-Motion/No-Motion -/** - Set to YES if you want slow/no-motion events - */ -@property (nonatomic) BOOL slowNoMotionEnabled; -/** - Set to YES if you want slow-motion, set to NO if you want no-motion - */ -@property (nonatomic) BOOL useSlowMotion; -/** - No-Motion: Time in ms for which no slope data point must exceeed slow/no-mothion threshold - Slow-Motion: Time in ms for which slope data points must be above the slow/no-motion threshold - */ -@property (nonatomic) double slowNoMotionDuration; -/** - Threshold in G's for detecting slow/no-motion events - */ -@property (nonatomic) double slowNoMotionThreshold; - - -#pragma mark - Any-Motion -/** - Set to YES if you want any-motion events - */ -@property (nonatomic) BOOL anyMotionEnabled; -/** - Time in ms for which slope data points must be above the anyMotionThreshold threshold - */ -@property (nonatomic) double anyMotionDuration; -/** - Threshold in G's for detecting any-motion events - */ -@property (nonatomic) double anyMotionThreshold; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255MotionEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255MotionEvent.m deleted file mode 100644 index c849591..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255MotionEvent.m +++ /dev/null @@ -1,180 +0,0 @@ -/** - * MBLAccelerometerBMA255MotionEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 3/1/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBMA255MotionEvent+Private.h" -#import "MBLEvent+Private.h" -#import "MBLAccelerometerBMA255+Private.h" -#import "MBLFormat.h" -#import "MBLMetaWear+Private.h" -#import "MBLConstants+Private.h" - -@interface MBLAccelerometerBMA255MotionEvent () -@property (nonatomic) MBLRegister *motionInterruptEn; -@property (nonatomic) MBLRegister *motionConfig; -@end - -@implementation MBLAccelerometerBMA255MotionEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBMA255 *)accelerometer -{ - self = [super initWithModule:accelerometer registerId:0x0B format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - if (self) { - // Default Settings - self.slowNoMotionEnabled = NO; - self.useSlowMotion = NO; - self.slowNoMotionDuration = 0.0; - self.slowNoMotionThreshold = 0.2; - - self.anyMotionEnabled = NO; - self.anyMotionDuration = 0; - self.anyMotionThreshold = 0.2; - - // Registers - self.motionInterruptEn = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x09 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - self.motionConfig = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x0A format:[[MBLFormat alloc] initEncodedDataWithLength:3]]; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - NSMutableArray *tasks = [NSMutableArray array]; - MBLAccelerometerBMA255 *accelerometer = (MBLAccelerometerBMA255 *)self.module; - bmi160_reg_int_motion_t regs = { 0 }; - - const double msPerSample = 1000.0 / accelerometer.sampleFrequency; - - // slope interrupt trigger if int_anym_dur + 1 consecutive slope data points are above - // the slope interrupt threshold (int_anymo_th) (Clamp to 3 only 2-bit field) - int int_anym_dur = round((msPerSample / self.anyMotionDuration)) - 1; - regs.int_motion_0.int_anym_dur = [MBLConstants clampInt:int_anym_dur low:0 high:0x3]; - - int int_slo_nomo_dur = 0; - if (self.useSlowMotion) { - // if slow-motion (int_no_mot_sel = 0) then int_slo_nomo_dur + 1 consecutive slope data - // points must be above the slow/no-motion threshold (int_slo_no_mot_th) for the - // slow-/no-motion interrupt to trigger. - int_slo_nomo_dur = round((msPerSample / self.slowNoMotionDuration)) - 1; - int_slo_nomo_dur = [MBLConstants clampInt:int_slo_nomo_dur low:0 high:0x3]; - } else { - // If no-motion (int_no_mot_sel = 1) then int_slo_nomo_dur defines time for which no slope - // data point must exceed the slow/no-motion threshold (int_slow_no_mot_th) for slow/no-motion - // interrupt to trigger: - // switch (int_slo_no_mot_dur<5:4>) - // case 0: - // return (int_slo_no_mot_dur<3:0> + 1) - // case 1: - // return (int_slo_no_mot_dur<3:0> * 4) + 20 - // case 2: - // return (int_slo_no_mot_dur<4:0> * 8) + 88 - double slo_nomo_second = self.slowNoMotionDuration / 1000.0; - if (slo_nomo_second >= 88.0 ) { - int_slo_nomo_dur = round((slo_nomo_second - 88.0) / 8.0); - int_slo_nomo_dur = [MBLConstants clampInt:int_slo_nomo_dur low:0 high:0x1F]; - int_slo_nomo_dur |= 0x20; - } else if (slo_nomo_second >= 20.0) { - int_slo_nomo_dur = round((slo_nomo_second - 20) / 4.0); - int_slo_nomo_dur = [MBLConstants clampInt:int_slo_nomo_dur low:0 high:0xF]; - int_slo_nomo_dur |= 0x10; - } else { - int_slo_nomo_dur = round(slo_nomo_second - 1); - int_slo_nomo_dur = [MBLConstants clampInt:int_slo_nomo_dur low:0 high:0xF]; - int_slo_nomo_dur |= 0x00; - } - } - regs.int_motion_0.int_slo_nomo_dur = int_slo_nomo_dur; - - // Threshold of the any-motion interrupt (int_anymo_th * 1.955 * maxG) - // switch (fullScaleRange): - // case 2g: - // return int_anymo_th * 3.91 mg - // case 4g: - // return int_anymo_th * 7.81 mg - // case 8g: - // return int_anymo_th * 15.63 mg - // case 16g: - // return int_anymo_th * 31.25 mg - // if int_anymo_th == 0, then value is half the scale factor - double scale; - switch (accelerometer.fullScaleRange) { - case MBLAccelerometerBoschRange2G: - scale = 3.91; - break; - case MBLAccelerometerBoschRange4G: - scale = 7.81; - break; - case MBLAccelerometerBoschRange8G: - scale = 15.63; - break; - case MBLAccelerometerBoschRange16G: - scale = 31.25; - break; - } - regs.int_motion_1.int_anymo_th = round((self.anyMotionThreshold * 1000.0) / scale); - - - // Threshold for slow/no-motion interrupt, functions same as int_anymo_th - regs.int_motion_2.int_slo_nomo_th = round((self.slowNoMotionThreshold * 1000.0) / scale); - - // - 1 on the size because the BMA255 doesn't have significant motion registers - [tasks addObject:[self.motionConfig writeDataAsync:[NSData dataWithBytes:®s length:sizeof(bmi160_reg_int_motion_t) - 1]]]; - - // Write the enable bits for motion interrupts - uint8_t enableBitmask = 0; - if (self.anyMotionEnabled) { - enableBitmask |= (0x7 << 0); - } - if (self.slowNoMotionEnabled) { - enableBitmask |= (0x7 << 3); - } - if (!self.useSlowMotion) { - enableBitmask |= (0x1 << 6); - } - uint8_t data[] = { enableBitmask, 0 }; - int dataSize = sizeof(data) / sizeof(data[0]); - [tasks addObject:[self.motionInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]]; - - return [BFTask taskForCompletionOfAllTasks:tasks]; -} - -- (BFTask *)performAsyncDeactivation -{ - // Write the disable bits for motion interrupts - uint8_t data[] = { 0, 0x3F }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.motionInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160.h deleted file mode 100644 index 4dd302c..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160.h +++ /dev/null @@ -1,73 +0,0 @@ -/** - * MBLAccelerometerBMI160.h - * MetaWear - * - * Created by Stephen Schiffli on 5/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -@class MBLNumericData; -@class MBLAccelerometerBMI160MotionEvent; - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface to a BMI160 accelerometer - */ -@interface MBLAccelerometerBMI160 : MBLAccelerometerBosch - -/** - Event representing a motion (change of acceleration) event. - Event callbacks will be provided an empty MBLDataSample object - */ -@property (nonatomic, readonly) MBLAccelerometerBMI160MotionEvent *motionEvent; - - -/** - This event will fire when a step pattern is detected. Event callbacks will be provided - an MBLNumericData object, whose int value is always 1. - */ -@property (nonatomic, readonly) MBLEvent *stepEvent; -/** - This data endpoint keeps a running counter in hardware of the number of steps taken. - Event callbacks will be provided an MBLNumericData object, whose unsigened value is - the number steps taken. Note this only counts up when stepEvent is active. - */ -@property (nonatomic, readonly) MBLData *stepCounter; -/** - Use this to reset stepCounter to 0 - */ -- (BFTask *)resetStepCount; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160.m deleted file mode 100644 index d4eea03..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160.m +++ /dev/null @@ -1,119 +0,0 @@ -/** - * MBLAccelerometerBMI160.m - * MetaWear - * - * Created by Stephen Schiffli on 5/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBMI160+Private.h" -#import "MBLAccelerometerBosch+Private.h" -#import "MBLAccelerometer+Private.h" -#import "MBLAccelerometerBoschDataReadyEvent.h" -#import "MBLAccelerometerBoschAxisReadyEvent.h" -#import "MBLAccelerometerBoschLowOrHighGEvent+Private.h" -#import "MBLAccelerometerBoschOrientationEvent.h" -#import "MBLAccelerometerBoschTapEvent.h" -#import "MBLAccelerometerBoschFlatEvent.h" -#import "MBLAccelerometerBMI160StepEvent.h" -#import "MBLAccelerometerBMI160MotionEvent+Private.h" -#import "MBLRMSAccelerometerDataFilter.h" -#import "MBLFormat.h" -#import "MBLNumericFormatter.h" -#import "MBLData+Private.h" -#import "bmi160.h" - -@interface MBLAccelerometerBMI160 () -@property (nonatomic) MBLRegister *stepCounterReset; - -@property (nonatomic) MBLEvent *stepEvent; -@property (nonatomic) MBLData *stepCounter; -@property (nonatomic) MBLAccelerometerBMI160MotionEvent *motionEvent; -@end - -@implementation MBLAccelerometerBMI160 - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.stepEvent = [[MBLAccelerometerBMI160StepEvent alloc] initWithAccelerometer:self]; - self.stepCounter = [[MBLData alloc] initWithModule:self registerId:0x1A format:[[MBLNumericFormatter alloc] initIntWithLength:2 isSigned:NO]]; - self.motionEvent = [[MBLAccelerometerBMI160MotionEvent alloc] initWithAccelerometer:self]; - - self.stepCounterReset = [[MBLRegister alloc] initWithModule:self registerId:0x1B format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - - self.lowOrHighGEvent.lowOrHighGDurationMultiplier = 2.5; - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - // Setup the accelerometer config - bmi160_regs_acc_t regs = { 0 }; - regs.acc_conf.acc_odr = self.scaleSampleFrequency; - regs.acc_conf.acc_bwp = 2; // No oversampling - regs.acc_conf.acc_us = 0; // Hardcode to not use undersampling mode - - regs.acc_range.acc_range = self.fullScaleRange; - - return [self.accelDataConfig writeDataAsync:[NSData dataWithBytes:®s length:sizeof(bmi160_regs_gyr_t)]]; -} - -- (uint8_t)scaleSampleFrequency -{ - if (self.sampleFrequency > 800) { - return BMI160_ACCEL_OUTPUT_DATA_RATE_1600HZ; - } else if (self.sampleFrequency > 400) { - return BMI160_ACCEL_OUTPUT_DATA_RATE_800HZ; - } else if (self.sampleFrequency > 200) { - return BMI160_ACCEL_OUTPUT_DATA_RATE_400HZ; - } else if (self.sampleFrequency > 100) { - return BMI160_ACCEL_OUTPUT_DATA_RATE_200HZ; - } else if (self.sampleFrequency > 50) { - return BMI160_ACCEL_OUTPUT_DATA_RATE_100HZ; - } else if (self.sampleFrequency > 25) { - return BMI160_ACCEL_OUTPUT_DATA_RATE_50HZ; - } else if (self.sampleFrequency > 12.5) { - return BMI160_ACCEL_OUTPUT_DATA_RATE_25HZ; - } else { - return BMI160_ACCEL_OUTPUT_DATA_RATE_12_5HZ; - } - // TODO: There are values lower than 12.5, but only - // when undersampling is enabled -} - -- (nonnull BFTask *)resetStepCount -{ - return [self.stepCounterReset writeByteAsync:0]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160MotionEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160MotionEvent.h deleted file mode 100644 index c9f7b4f..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160MotionEvent.h +++ /dev/null @@ -1,100 +0,0 @@ -/** - * MBLAccelerometerBMI160MotionEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 7/20/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -@class MBLDataSample; - -NS_ASSUME_NONNULL_BEGIN - - -@interface MBLAccelerometerBMI160MotionEvent : MBLEvent - -#pragma mark - Beta API (Subject to change) - -/** - The BMI160 combines Slow/No-Motion and Any/Signification-Motion detection, so below - we expose the raw registers as a first enabling step. Over time this will become - better encapsulated. - */ - -#pragma mark - Slow-Motion/No-Motion -/** - Set to YES if you want slow/no-motion events - */ -@property (nonatomic) BOOL slowNoMotionEnabled; -/** - Set to YES if you want slow-motion, set to NO if you want no-motion - */ -@property (nonatomic) BOOL useSlowMotion; -/** - No-Motion: Time in ms for which no slope data point must exceeed slow/no-mothion threshold - Slow-Motion: Time in ms for which slope data points must be above the slow/no-motion threshold - */ -@property (nonatomic) double slowNoMotionDuration; -/** - Threshold in G's for detecting slow/no-motion events - */ -@property (nonatomic) double slowNoMotionThreshold; - - -#pragma mark - Significant-Motion/Any-Motion -/** - Set to YES if you want significant/any-motion events - */ -@property (nonatomic) BOOL significantAnyMotionEnabled; -/** - Set to YES if you want significant-motion, set to NO if you want any-motion - */ -@property (nonatomic) BOOL useSignificantMotion; -/** - Time in ms for which slope data points must be above the anyMotionThreshold threshold - */ -@property (nonatomic) double anyMotionDuration; -/** - Threshold in G's for detecting any-motion events - */ -@property (nonatomic) double anyMotionThreshold; -/** - Significant-Motion is a combination of any-motion events. It's a state machine that works as - follows, 1) Any-Motion Detected. 2) Sleep for significantMotionSkipTime. 3) Look for Any-Motion - again within significantMotionProofTime, and if found trigger a significant-motion event. - Units are in seconds -*/ -@property (nonatomic) double significantMotionSkipTime; -@property (nonatomic) double significantMotionProofTime; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160MotionEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160MotionEvent.m deleted file mode 100644 index f708739..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160MotionEvent.m +++ /dev/null @@ -1,207 +0,0 @@ -/** - * MBLAccelerometerBMI160MotionEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 7/20/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBMI160MotionEvent+Private.h" -#import "MBLEvent+Private.h" -#import "MBLAccelerometerBMI160+Private.h" -#import "MBLFormat.h" -#import "MBLMetaWear+Private.h" -#import "MBLConstants+Private.h" - -@interface MBLAccelerometerBMI160MotionEvent () -@property (nonatomic) MBLRegister *motionInterruptEn; -@property (nonatomic) MBLRegister *motionConfig; -@end - -@implementation MBLAccelerometerBMI160MotionEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBMI160 *)accelerometer -{ - self = [super initWithModule:accelerometer registerId:0x0B format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - if (self) { - // Default Settings - self.slowNoMotionEnabled = NO; - self.useSlowMotion = NO; - self.slowNoMotionDuration = 0.0; - self.slowNoMotionThreshold = 0.2; - - self.significantAnyMotionEnabled = NO; - self.useSignificantMotion = NO; - self.anyMotionDuration = 0; - self.anyMotionThreshold = 0.2; - self.significantMotionSkipTime = 3.0; - self.significantMotionProofTime = 0.5; - - // Registers - self.motionInterruptEn = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x09 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - self.motionConfig = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x0A format:[[MBLFormat alloc] initEncodedDataWithLength:4]]; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - NSMutableArray *tasks = [NSMutableArray array]; - MBLAccelerometerBMI160 *accelerometer = (MBLAccelerometerBMI160 *)self.module; - bmi160_reg_int_motion_t regs = { 0 }; - - const double msPerSample = 1000.0 / accelerometer.sampleFrequency; - - // slope interrupt trigger if int_anym_dur + 1 consecutive slope data points are above - // the slope interrupt threshold (int_anymo_th) (Clamp to 3 only 2-bit field) - int int_anym_dur = round(self.anyMotionDuration / msPerSample) - 1; - regs.int_motion_0.int_anym_dur = [MBLConstants clampInt:int_anym_dur low:0 high:0x3]; - - int int_slo_nomo_dur = 0; - if (self.useSlowMotion) { - // if slow-motion (int_no_mot_sel = 0) then int_slo_nomo_dur + 1 consecutive slope data - // points must be above the slow/no-motion threshold (int_slo_no_mot_th) for the - // slow-/no-motion interrupt to trigger. - int_slo_nomo_dur = round((msPerSample / self.slowNoMotionDuration)) - 1; - int_slo_nomo_dur = [MBLConstants clampInt:int_slo_nomo_dur low:0 high:0x3]; - } else { - // If no-motion (int_no_mot_sel = 1) then int_slo_nomo_dur defines time for which no slope - // data point must exceed the slow/no-motion threshold (int_slow_no_mot_th) for slow/no-motion - // interrupt to trigger: - // switch (int_slo_no_mot_dur<5:4>) - // case 0: - // return (int_slo_no_mot_dur<3:0> + 1) * 1.28s - // case 1: - // return (int_slo_no_mot_dur<3:0> + 5) * 5.12s - // case 2: - // return (int_slo_no_mot_dur<4:0> + 11) * 10.24s - double slo_nomo_second = self.slowNoMotionDuration / 1000.0; - if (slo_nomo_second > 102.4 ) { - int_slo_nomo_dur = (round(slo_nomo_second / 10.24) - 11); - int_slo_nomo_dur = [MBLConstants clampInt:int_slo_nomo_dur low:0 high:0x1F]; - int_slo_nomo_dur |= 0x20; - } else if (slo_nomo_second > 20.48) { - int_slo_nomo_dur = (round(slo_nomo_second / 5.12) - 5); - int_slo_nomo_dur = [MBLConstants clampInt:int_slo_nomo_dur low:0 high:0xF]; - int_slo_nomo_dur |= 0x10; - } else { - int_slo_nomo_dur = (round(slo_nomo_second / 1.28) - 1); - int_slo_nomo_dur = [MBLConstants clampInt:int_slo_nomo_dur low:0 high:0xF]; - int_slo_nomo_dur |= 0x00; - } - } - regs.int_motion_0.int_slo_nomo_dur = int_slo_nomo_dur; - - // Threshold of the any-motion interrupt (int_anymo_th * 1.955 * maxG) - // switch (fullScaleRange): - // case 2g: - // return int_anymo_th * 3.91 mg - // case 4g: - // return int_anymo_th * 7.81 mg - // case 8g: - // return int_anymo_th * 15.63 mg - // case 16g: - // return int_anymo_th * 31.25 mg - // if int_anymo_th == 0, then value is half the scale factor - double scale; - switch (accelerometer.fullScaleRange) { - case MBLAccelerometerBoschRange2G: - scale = 3.91; - break; - case MBLAccelerometerBoschRange4G: - scale = 7.81; - break; - case MBLAccelerometerBoschRange8G: - scale = 15.63; - break; - case MBLAccelerometerBoschRange16G: - scale = 31.25; - break; - } - regs.int_motion_1.int_anymo_th = round((self.anyMotionThreshold * 1000.0) / scale); - - - // Threshold for slow/no-motion interrupt, functions same as int_anymo_th - regs.int_motion_2.int_slo_nomo_th = round((self.slowNoMotionThreshold * 1000.0) / scale); - - // Proof time of the signification motion interrupt: 0=0.25s, 1=0.5s, 2=1s, 3=2s - int int_sig_mot_proof = 0; - if (self.significantMotionProofTime > 1.0) { - int_sig_mot_proof = 3; - } else if (self.significantMotionProofTime > 0.5) { - int_sig_mot_proof = 2; - } else if (self.significantMotionProofTime > 0.25) { - int_sig_mot_proof = 1; - } - regs.int_motion_3.int_sig_mot_proof = int_sig_mot_proof; - - // '1' ('0') Selects the signification (anymotion) interrupt function - regs.int_motion_3.int_sig_mot_sel = self.useSignificantMotion ? 1 : 0; - - // Skip time of the signification motion interrupt: 0=1.5s, 1=3s, 2=6s, 3=12s - int int_sig_mot_skip = 0; - if (self.significantMotionSkipTime > 6.0) { - int_sig_mot_skip = 3; - } else if (self.significantMotionProofTime > 3.0) { - int_sig_mot_skip = 2; - } else if (self.significantMotionProofTime > 1.5) { - int_sig_mot_skip = 1; - } - regs.int_motion_3.int_sig_mot_skip = int_sig_mot_skip; - - // '1' ('0') Selects no-motion (slow-motion) interrupt function - regs.int_motion_3.int_slo_nomo_sel = self.useSlowMotion ? 0 : 1; - - [tasks addObject:[self.motionConfig writeDataAsync:[NSData dataWithBytes:®s length:sizeof(bmi160_reg_int_motion_t)]]]; - - // Write the enable bits for motion interrupts - uint8_t enableBitmask = 0; - if (self.significantAnyMotionEnabled) { - enableBitmask |= (0x7 << 0); - } - if (self.slowNoMotionEnabled) { - enableBitmask |= (0x7 << 3); - } - uint8_t data[] = { enableBitmask, 0 }; - int dataSize = sizeof(data) / sizeof(data[0]); - [tasks addObject:[self.motionInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]]; - - return [BFTask taskForCompletionOfAllTasks:tasks]; -} - -- (BFTask *)performAsyncDeactivation -{ - // Write the disable bits for motion interrupts - uint8_t data[] = { 0, 0x3F }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.motionInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBosch.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBosch.h deleted file mode 100644 index 77a1186..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBosch.h +++ /dev/null @@ -1,98 +0,0 @@ -/** - * MBLAccelerometerBosch.h - * MetaWear - * - * Created by Stephen Schiffli on 2/29/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -@class MBLNumericData; -@class MBLAccelerometerBoschLowOrHighGEvent; - -NS_ASSUME_NONNULL_BEGIN - -/** - Accelerometer sensitiviy ranges - */ -typedef NS_ENUM(uint8_t, MBLAccelerometerBoschRange) { - MBLAccelerometerBoschRange2G = BMI160_ACCEL_RANGE_2G, - MBLAccelerometerBoschRange4G = BMI160_ACCEL_RANGE_4G, - MBLAccelerometerBoschRange8G = BMI160_ACCEL_RANGE_8G, - MBLAccelerometerBoschRange16G = BMI160_ACCEL_RANGE_16G, -}; - -/** - Interface to a Bosch accelerometer - */ -@interface MBLAccelerometerBosch : MBLAccelerometer -/** - Maximum acceleration the accelerometer can report - */ -@property (nonatomic) MBLAccelerometerBoschRange fullScaleRange; - - -/** - Event representing a low-g (free fall) or high-g (impact) event. - Event callbacks will be provided an empty MBLDataSample object - */ -@property (nonatomic, readonly) MBLAccelerometerBoschLowOrHighGEvent *lowOrHighGEvent; - - -/** - Select the type of taps to be registered. When MBLAccelerometerTapModeBoth is used, - you will get two events on a double tap, one for the single and one for the double. - */ -@property (nonatomic) MBLAccelerometerTapType tapType; -/** - Event representing a tap (single, double, or both based on tapType) on the tapDetectionAxis. - Event callbacks will be provided an empty MBLDataSample object - */ -@property (nonatomic, readonly) MBLEvent *tapEvent; - - -/** - Event representing an orientation change. - Event callbacks will be provided an MBLOrientationData object - */ -@property (nonatomic, readonly) MBLEvent *orientationEvent; - - -/** - Event representing the device being laid down flat (or removed from a flat posistion). - Event callbacks will be provided an MBLNumericData object, where a bool value of - YES means flat, and NO means not-flat. - */ -@property (nonatomic, readonly) MBLEvent *flatEvent; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBosch.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBosch.m deleted file mode 100644 index af515ff..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBosch.m +++ /dev/null @@ -1,92 +0,0 @@ -/** - * MBLAccelerometerBosch.m - * MetaWear - * - * Created by Stephen Schiffli on 2/29/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBosch+Private.h" -#import "MBLAccelerometer+Private.h" -#import "MBLAccelerometerBoschDataReadyEvent.h" -#import "MBLAccelerometerBoschAxisReadyEvent.h" -#import "MBLAccelerometerBoschLowOrHighGEvent+Private.h" -#import "MBLAccelerometerBoschOrientationEvent.h" -#import "MBLAccelerometerBoschTapEvent.h" -#import "MBLAccelerometerBoschFlatEvent.h" -#import "MBLAccelerometerBMI160StepEvent.h" -#import "MBLRMSAccelerometerDataFilter.h" -#import "MBLFormat.h" -#import "MBLNumericFormatter.h" -#import "MBLData+Private.h" -#import "bmi160.h" - -@interface MBLAccelerometerBosch () -@property (nonatomic) MBLRegister *accelDataConfig; - -@property (nonatomic) MBLAccelerometerBoschLowOrHighGEvent *lowOrHighGEvent; -@property (nonatomic) MBLEvent *tapEvent; -@property (nonatomic) MBLEvent *orientationEvent; -@property (nonatomic) MBLEvent *flatEvent; -@property (nonatomic) MBLEvent *stepEvent; -@end - -@implementation MBLAccelerometerBosch - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - // MBLAccelerometer properties - self.dataReadyEvent = [[MBLAccelerometerBoschDataReadyEvent alloc] initWithAccelerometer:self]; - self.xAxisReadyEvent = [[MBLAccelerometerBoschAxisReadyEvent alloc] initWithAccelerometer:self axis:MBLAccelerometerAxisX]; - self.yAxisReadyEvent = [[MBLAccelerometerBoschAxisReadyEvent alloc] initWithAccelerometer:self axis:MBLAccelerometerAxisY]; - self.zAxisReadyEvent = [[MBLAccelerometerBoschAxisReadyEvent alloc] initWithAccelerometer:self axis:MBLAccelerometerAxisZ]; - self.rmsDataReadyEvent = [[MBLRMSAccelerometerDataFilter alloc] initWithAccelerometerBosch:self]; - - // Default settings - self.fullScaleRange = MBLAccelerometerBoschRange16G; - self.tapType = MBLAccelerometerTapTypeSingle; - // Registers - MBLRegister *accelPowerMode = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.accelDataConfig = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - - // Events - self.lowOrHighGEvent = [[MBLAccelerometerBoschLowOrHighGEvent alloc] initWithAccelerometer:self]; - self.tapEvent = [[MBLAccelerometerBoschTapEvent alloc] initWithAccelerometer:self]; - self.orientationEvent = [[MBLAccelerometerBoschOrientationEvent alloc] initWithAccelerometer:self]; - self.flatEvent = [[MBLAccelerometerBoschFlatEvent alloc] initWithAccelerometer:self]; - - self.globalEnable = accelPowerMode; - } - return self; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschLowOrHighGEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschLowOrHighGEvent.h deleted file mode 100644 index 3cef41b..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschLowOrHighGEvent.h +++ /dev/null @@ -1,94 +0,0 @@ -/** - * MBLAccelerometerBoschLowOrHighGEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 11/4/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerBoschLowOrHighGEvent : MBLEvent - - -#pragma mark - Beta API (Subject to change) - -/** - The BMI160 combines low-g and high-g detection, so below we expose the - raw registers as a first enabling step. Over time this will become - better encapsulated. - */ - -/** - Set to YES if you want low-g events - */ -@property (nonatomic) BOOL lowGEnabled; -/** - Time in ms that acceleration must stay below lowGThreshold before an event is triggered. - */ -@property (nonatomic) double lowGDuration; -/** - Acceleration in G's that acceleration must stay below to be consided a low-g event. - */ -@property (nonatomic) double lowGThreshold; -/** - Hysteresis for the low-g threshold. - */ -@property (nonatomic) double lowGHysteresis; -/** - Set to YES for axis-summing mode (summed absolute value of all axis must be below lowGThreshold). - Set to NO for single-axis mode (absolute value of each axis is compared to lowGThreshold). - */ -@property (nonatomic) BOOL lowGMode; - - -/** - Bitmask for axis enabled for high-g detection. - */ -@property (nonatomic) MBLAccelerometerAxis highGEnabledAxis; -/** - Time in ms that acceleration must stay above highGThreshold before an event is triggered. - */ -@property (nonatomic) double highGDuration; -/** - Acceleration in G's that acceleration must stay above to be consided a high-g event. - */ -@property (nonatomic) double highGThreshold; -/** - Hysteresis for the high-g threshold. - */ -@property (nonatomic) double highGHysteresis; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschLowOrHighGEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschLowOrHighGEvent.m deleted file mode 100644 index b566ad2..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschLowOrHighGEvent.m +++ /dev/null @@ -1,162 +0,0 @@ -/** - * MBLAccelerometerBoschLowOrHighGEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 11/4/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBoschLowOrHighGEvent+Private.h" -#import "MBLEvent+Private.h" -#import "MBLAccelerometerBosch+Private.h" -#import "MBLFormat.h" -#import "bmi160.h" - -@interface MBLAccelerometerBoschLowOrHighGEvent () -@property (nonatomic) MBLRegister *lowGHighGInterruptEn; -@property (nonatomic) MBLRegister *lowGHighGConfig; - -@property (nonatomic) double lowOrHighGDurationMultiplier; -@end - -@implementation MBLAccelerometerBoschLowOrHighGEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer -{ - self = [super initWithModule:accelerometer registerId:0x8 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - if (self) { - // Default settings - self.lowGDuration = 100.0; - self.lowGHysteresis = 0.125; - self.lowGThreshold = 0.2; - self.lowGMode = NO; - - self.highGDuration = 30.0; - self.highGHysteresis = 0.125; - self.highGThreshold = 2.0; - - // Registers - self.lowGHighGInterruptEn = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x6 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - self.lowGHighGConfig = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x7 format:[[MBLFormat alloc] initEncodedDataWithLength:5]]; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - NSMutableArray *tasks = [NSMutableArray array]; - MBLAccelerometerBosch *accelerometer = (MBLAccelerometerBosch *)self.module; - bmi160_reg_int_lowhigh_t regs = { 0 }; - - // delay in ms = (int_low_dur + 1) * 2.5 - regs.int_lowhigh_0.int_low_dur = MAX((self.lowGDuration / self.lowOrHighGDurationMultiplier) - 1, 0); - - // threshold in g = int_low_th * 0.00781 - regs.int_lowhigh_1.int_low_th = self.lowGThreshold / 0.00781; - - // int_high_hy * 125mg (2g-range), int_high_hy * 250mg (4g-range), int_high_hy * 500mg (8g-range), int_high_hy * 1000mg (16g-range) - // if th = 0, then value is 1/2 the constant - double scale; - switch (accelerometer.fullScaleRange) { - case MBLAccelerometerBoschRange2G: - scale = 0.125; - break; - case MBLAccelerometerBoschRange4G: - scale = 0.250; - break; - case MBLAccelerometerBoschRange8G: - scale = 0.500; - break; - case MBLAccelerometerBoschRange16G: - scale = 1.000; - break; - } - regs.int_lowhigh_2.int_high_hy = self.highGHysteresis / scale; - - // Set low-g mode - regs.int_lowhigh_2.int_low_mode = self.lowGMode; - - // hystersis in g = int_low_hy * 0.125 - regs.int_lowhigh_2.int_low_hy = self.lowGHysteresis / 0.125; - - // delay in ms = (int_high_dur + 1) * 2.5 - regs.int_lowhigh_3.int_high_dur = MAX((self.highGDuration / self.lowOrHighGDurationMultiplier) - 1, 0); - - // int_high_th * 7.81mg (2g-range), int_high_th * 15.63mg (4g-range), int_high_th * 31.25mg (8g-range), int_high_th * 62.5mg (16g-range) - // if th = 0, then value is 1/2 the constant - switch (accelerometer.fullScaleRange) { - case MBLAccelerometerBoschRange2G: - scale = 0.00781; - break; - case MBLAccelerometerBoschRange4G: - scale = 0.01563; - break; - case MBLAccelerometerBoschRange8G: - scale = 0.03125; - break; - case MBLAccelerometerBoschRange16G: - scale = 0.0625; - break; - } - regs.int_lowhigh_4.int_high_th = self.highGThreshold / scale; - - [tasks addObject:[self.lowGHighGConfig writeDataAsync:[NSData dataWithBytes:®s length:sizeof(bmi160_reg_int_lowhigh_t)]]]; - - // Write the enable bits - uint8_t enableMask = 0; - if (self.highGEnabledAxis & MBLAccelerometerAxisX) { - enableMask |= (1 << 0); - } - if (self.highGEnabledAxis & MBLAccelerometerAxisY) { - enableMask |= (1 << 1); - } - if (self.highGEnabledAxis & MBLAccelerometerAxisZ) { - enableMask |= (1 << 2); - } - if (self.lowGEnabled) { - enableMask |= (1 << 3); - } - uint8_t data[] = { enableMask, 0 }; - int dataSize = sizeof(data) / sizeof(data[0]); - [tasks addObject:[self.lowGHighGInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]]; - - return [BFTask taskForCompletionOfAllTasks:tasks]; -} - -- (BFTask *)performAsyncDeactivation -{ - // Write the disable bit for everything - uint8_t data[] = { 0, 0xF }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.lowGHighGConfig writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]; -} - -@end - diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLAccelerometer.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLAccelerometer.h deleted file mode 100644 index 2b2f524..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLAccelerometer.h +++ /dev/null @@ -1,115 +0,0 @@ -/** - * MBLAccelerometer.h - * MetaWear - * - * Created by Stephen Schiffli on 7/29/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -#import -#import -@class MBLNumericData; -@class MBLRMSAccelerometerData; - -NS_ASSUME_NONNULL_BEGIN - -/** - Accelerometer axis - */ -typedef NS_OPTIONS(uint8_t, MBLAccelerometerAxis) { - MBLAccelerometerAxisX = 1 << 0, - MBLAccelerometerAxisY = 1 << 1, - MBLAccelerometerAxisZ = 1 << 2 -}; - -/** - Accelerometer tap types - */ -typedef NS_ENUM(uint8_t, MBLAccelerometerTapType) { - MBLAccelerometerTapTypeSingle = 0, - MBLAccelerometerTapTypeDouble = 1, - MBLAccelerometerTapTypeBoth = 2 -}; - -/** - Interface to an abstract on-board accelerometer. If you need more advanced - features then upcast to the specific accelerometer on your board, either - MBLAccelerometerMMA8452Q or MBLAccelerometerBMI160. - @see MBLAccelerometerMMA8452Q - @see MBLAccelerometerBMI160 - */ -@interface MBLAccelerometer : MBLModule -/** - The frequency, in hertz, for providing accelerometer samples to the event handlers. - - @discussion The value of this property is capped to minimum and maximum values; - the maximum value is determined by the maximum frequency supported by the hardware. - If your app is sensitive to the intervals of acceleration data, it should always - check the timestamps of the delivered MBLAccelerometerData instances to determine - the true update interval. - */ -@property (nonatomic) double sampleFrequency; - -/** - Event representing a new accelerometer data sample complete with x, y, - and z axis data. This event will occur at the neareast hardware value - to sampleFrequency. Event callbacks will be provided an MBLAccelerometerData object. - */ -@property (nonatomic, readonly) MBLEvent *dataReadyEvent; -/** - Event representing a new accelerometer X axis sample. This event - will occur at sampleFrequency. Event callbacks will be provided an - MBLNumericData object whose double value will be acceleration in G's. - */ -@property (nonatomic, readonly) MBLEvent *xAxisReadyEvent; -/** - Event representing a new accelerometer Y axis sample. This event - will occur at sampleFrequency. Event callbacks will be provided an - MBLNumericData object whose double value will be acceleration in G's. - */ -@property (nonatomic, readonly) MBLEvent *yAxisReadyEvent; -/** - Event representing a new accelerometer Z axis sample. This event - will occur at sampleFrequency. Event callbacks will be provided an - MBLNumericData object whose double value will be acceleration in G's. - */ -@property (nonatomic, readonly) MBLEvent *zAxisReadyEvent; -/** - Event representing a new accelerometer data sample, but filtered down to - just an RMS value. Event callbacks will be provided an MBLRMSAccelerometerData object - */ -@property (nonatomic, readonly) MBLEvent *rmsDataReadyEvent; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLAccelerometer.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLAccelerometer.m deleted file mode 100644 index f0cb29d..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLAccelerometer.m +++ /dev/null @@ -1,83 +0,0 @@ -/** - * MBLAccelerometer.m - * MetaWear - * - * Created by Stephen Schiffli on 7/29/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometer+Private.h" -#import "MBLAccelerometerMMA8452Q+Private.h" -#import "MBLAccelerometerBMI160+Private.h" -#import "MBLAccelerometerBMA255+Private.h" -#import "MBLMetaWear+Private.h" -#import "mma8452q.h" -#import "MBLRegister+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLAccelerometerDataReadyEvent.h" -#import "MBLAccelerometerFreeFallEvent.h" -#import "MBLAccelerometerOrientationEvent.h" -#import "MBLAccelerometerTapEvent.h" -#import "MBLAccelerometerShakeEvent.h" -#import "MBLRMSAccelerometerDataFilter.h" -#import "MBLAccelerometerData+Private.h" -#import "MBLAccelerometerAxisReadyEvent.h" - -@interface MBLAccelerometer() -@property (nonatomic) MBLEvent *dataReadyEvent; -@property (nonatomic) MBLEvent *xAxisReadyEvent; -@property (nonatomic) MBLEvent *yAxisReadyEvent; -@property (nonatomic) MBLEvent *zAxisReadyEvent; -@property (nonatomic) MBLEvent *rmsDataReadyEvent; -@end - -@implementation MBLAccelerometer - -+ (instancetype)objectWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - if (moduleInfo.moduleImplementation == 1) { - return [[MBLAccelerometerBMI160 alloc] initWithDevice:device moduleInfo:moduleInfo]; - } else if (moduleInfo.moduleImplementation == 3) { - return [[MBLAccelerometerBMA255 alloc] initWithDevice:device moduleInfo:moduleInfo]; - } else { - return [[MBLAccelerometerMMA8452Q alloc] initWithDevice:device moduleInfo:moduleInfo]; - } -} - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.sampleFrequency = 100; - } - return self; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLAccelerometerData.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLAccelerometerData.h deleted file mode 100644 index 979855b..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLAccelerometerData.h +++ /dev/null @@ -1,65 +0,0 @@ -/** - * MBLAccelerometerData.h - * MetaWear - * - * Created by Stephen Schiffli on 7/29/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Container for a single accelerometer sensor reading - */ -@interface MBLAccelerometerData : MBLDataSample - -/** - Acceleration along X axis in G's - */ -@property (nonatomic, readonly) double x; -/** - Acceleration along Y axis in G's - */ -@property (nonatomic, readonly) double y; -/** - Acceleration along Z axis in G's - */ -@property (nonatomic, readonly) double z; - -/** - RMS value of x, y, and z in G's - */ -@property (nonatomic, readonly) double RMS; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLAccelerometerData.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLAccelerometerData.m deleted file mode 100644 index a8b5edc..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLAccelerometerData.m +++ /dev/null @@ -1,68 +0,0 @@ -/** - * MBLAccelerometerData.m - * MetaWear - * - * Created by Stephen Schiffli on 7/29/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerData+Private.h" -#import "MBLDataSample+Private.h" - -@interface MBLAccelerometerData() -@property (nonatomic) double x, y, z; -@property (nonatomic) double RMS; -@end - -@implementation MBLAccelerometerData - -- (instancetype)initWithX:(double)x y:(double)y z:(double)z timestamp:(NSDate *)timestamp; -{ - self = [super initWithTimestamp:timestamp]; - if (self) { - self.x = x; - self.y = y; - self.z = z; - self.RMS = sqrt(((self.x * self.x) + (self.y * self.y) + (self.z * self.z)) / 3); - } - return self; -} - -- (NSString *)description -{ - return [NSString stringWithFormat:@"%f,%f,%f,%f", self.x, self.y, self.z, self.RMS]; -} - -- (NSString *)csvRepresentation -{ - return [NSString stringWithFormat:@"%f,%f,%f,%f\n", self.timestamp.timeIntervalSince1970, self.x, self.y, self.z]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLOrientationData.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLOrientationData.h deleted file mode 100644 index 18265a8..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLOrientationData.h +++ /dev/null @@ -1,56 +0,0 @@ -/** - * MBLOrientationData.h - * MetaWear - * - * Created by Stephen Schiffli on 10/15/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -typedef NS_ENUM(uint8_t, MBLAccelerometerOrientation) { - MBLAccelerometerOrientationPortrait = 0, - MBLAccelerometerOrientationPortraitUpsideDown = 1, - MBLAccelerometerOrientationLandscapeRight = 2, - MBLAccelerometerOrientationLandscapeLeft = 3 -}; - -/** - Container for orientation data - */ -@interface MBLOrientationData : MBLDataSample - -@property (nonatomic) MBLAccelerometerOrientation orientation; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLOrientationData.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLOrientationData.m deleted file mode 100644 index 0ec05ca..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLOrientationData.m +++ /dev/null @@ -1,82 +0,0 @@ -/** - * MBLOrientationData.m - * MetaWear - * - * Created by Stephen Schiffli on 10/15/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLOrientationData+Private.h" -#import "MBLDataSample+Private.h" - -@implementation MBLOrientationData - -- (instancetype)initWithOrientation:(MBLAccelerometerOrientation)orientation timestamp:(NSDate *)timestamp -{ - self = [super initWithTimestamp:timestamp]; - if (self) { - self.orientation = orientation; - } - return self; -} - -- (NSString *)orientationString -{ - NSString *direction; - switch (self.orientation) { - case MBLAccelerometerOrientationPortrait: - direction = @"Portrait"; - break; - case MBLAccelerometerOrientationPortraitUpsideDown: - direction = @"PortraitUpsideDown"; - break; - case MBLAccelerometerOrientationLandscapeLeft: - direction = @"LandscapeLeft"; - break; - case MBLAccelerometerOrientationLandscapeRight: - direction = @"LandscapeRight"; - break; - } - return direction; -} - -- (NSString *)description -{ - NSString *direction = [self orientationString]; - return [NSString stringWithFormat:@"%@ %@", [super description], direction]; -} - -- (NSString *)csvRepresentation -{ - NSString *direction = [self orientationString]; - return [NSString stringWithFormat:@"%f,%@\n", self.timestamp.timeIntervalSince1970, direction]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLRMSAccelerometerData.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLRMSAccelerometerData.h deleted file mode 100644 index 2cbebee..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLRMSAccelerometerData.h +++ /dev/null @@ -1,50 +0,0 @@ -/** - * MBLRMSAccelerometerData.h - * MetaWear - * - * Created by Stephen Schiffli on 10/21/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Container for accelerometer RMS data - */ -@interface MBLRMSAccelerometerData : MBLDataSample -/** - RMS value of x, y, and z in G's - */ -@property (nonatomic, readonly) double rms; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLRMSAccelerometerData.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLRMSAccelerometerData.m deleted file mode 100644 index 41b5d21..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MBLRMSAccelerometerData.m +++ /dev/null @@ -1,64 +0,0 @@ -/** - * MBLRMSAccelerometerData.m - * MetaWear - * - * Created by Stephen Schiffli on 10/21/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLRMSAccelerometerData+Private.h" -#import "MBLDataSample+Private.h" - -@interface MBLRMSAccelerometerData () -@property (nonatomic) double rms; -@end - -@implementation MBLRMSAccelerometerData - -- (instancetype)initWithRMS:(double)rms timestamp:(NSDate *)timestamp -{ - self = [super initWithTimestamp:timestamp]; - if (self) { - self.rms = rms; - } - return self; -} - -- (NSString *)description -{ - return [NSString stringWithFormat:@"%@ %f", [super description], self.rms]; -} - -- (NSString *)csvRepresentation -{ - return [NSString stringWithFormat:@"%f,%f\n", self.timestamp.timeIntervalSince1970, self.rms]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452Q.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452Q.h deleted file mode 100644 index 5e93482..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452Q.h +++ /dev/null @@ -1,193 +0,0 @@ -/** - * MBLAccelerometerMMA8452Q.h - * MetaWear - * - * Created by Stephen Schiffli on 5/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Accelerometer sensitiviy ranges - */ -typedef NS_ENUM(uint8_t, MBLAccelerometerRange) { - MBLAccelerometerRange2G = 0, - MBLAccelerometerRange4G = 1, - MBLAccelerometerRange8G = 2 -}; - -/** - Accelerometer sleep sample frequencies - */ -typedef NS_ENUM(uint8_t, MBLAccelerometerSleepSampleFrequency) { - MBLAccelerometerSleepSampleFrequency50Hz = 0, - MBLAccelerometerSleepSampleFrequency12_5Hz = 1, - MBLAccelerometerSleepSampleFrequency6_25Hz = 2, - MBLAccelerometerSleepSampleFrequency1_56Hz = 3 -}; - -/** - Accelerometer power modes - */ -typedef NS_ENUM(uint8_t, MBLAccelerometerPowerScheme) { - MBLAccelerometerPowerSchemeNormal = 0, - MBLAccelerometerPowerSchemeLowNoiseLowPower = 1, - MBLAccelerometerPowerSchemeHighResolution = 2, - MBLAccelerometerPowerSchemeLowerPower = 3, -}; - -/** - Accelerometer high-pass filter cutoff frequency types - */ -typedef NS_ENUM(uint8_t, MBLAccelerometerCutoffFreq) { - MBLAccelerometerCutoffFreqHigheset = 0, - MBLAccelerometerCutoffFreqHigh = 1, - MBLAccelerometerCutoffFreqMedium = 2, - MBLAccelerometerCutoffFreqLow = 3 -}; - -/** - Interface to an MMA8452Q accelerometer - */ -@interface MBLAccelerometerMMA8452Q : MBLAccelerometer -/** - Maximum acceleration the accelerometer can report - */ -@property (nonatomic) MBLAccelerometerRange fullScaleRange; -/** - High-pass filter enable; YES: Output data high-pass filtered, NO: No filter. - With a high-pass filter, the frequencies below the cutoff (see highPassCutoffFreq), - are removed. Only the high frequencies pass through. This means that when - enabled, you will only see changes in acceleration and not constant forces, like - gravity. - */ -@property (nonatomic) BOOL highPassFilter; -/** - High-pass filter cutoff frequency selection. The higher the frequency the - less you will see of slow acceleration changes. - */ -@property (nonatomic) MBLAccelerometerCutoffFreq highPassCutoffFreq; -/** - Reduced noise reduced mode; NO: Normal Mode, YES: Reduced noise - in low noise mode, the maximum signal that can be measured is ±4g. Note: Any - thresholds set above 4g will not be reached. - */ -@property (nonatomic) BOOL lowNoise; -/** - Fast Read mode; NO: Normal Mode, YES: Fast Read Mode F_READ bit selects between - Normal and Fast Read mode. When selected, the auto-increment counter - will skip over the LSB data bytes. - */ -@property (nonatomic) BOOL fastReadMode; - -/** - ACTIVE mode power scheme selection - */ -@property (nonatomic) MBLAccelerometerPowerScheme activePowerScheme; - -/** Configures the Auto-WAKE sample frequency when the device is in - SLEEP Mode - */ -@property (nonatomic) MBLAccelerometerSleepSampleFrequency sleepSampleFrequency; -/** - SLEEP mode power scheme selection - */ -@property (nonatomic) MBLAccelerometerPowerScheme sleepPowerScheme; -/** - Auto-SLEEP; NO: Disabled, YES: Enabled - */ -@property (nonatomic) BOOL autoSleep; - - -/** - Select one or more axis used for tap detection - */ -@property (nonatomic) MBLAccelerometerAxis tapDetectionAxis; -/** - Select the type of taps to be registered. When MBLAccelerometerTapModeBoth is used, - you will get two events on a double tap, one for the single and one for the double. - */ -@property (nonatomic) MBLAccelerometerTapType tapType; -/** - Event representing a tap (single, double, or both based on tapType) on the tapDetectionAxis. - Event callbacks will be provided an empty MBLDataSample object - */ -@property (nonatomic, readonly, nonnull) MBLEvent *tapEvent; - - -/** - Select threshold (in G's [0.0, 8.0]) for the shakeEvent. This is used in conjuction - with shakeWidth to determine when a shakeEvent will be generated. Default value 0.5 - */ -@property (nonatomic) double shakeThreshold; -/** - Select time (in mSec) required for acceleration to be above shakeThreshold - before a shakeEvent will be generated. Default value 200.0 - */ -@property (nonatomic) double shakeWidth; -/** - Event representing a shake. The sensitvity can be tuned using - shakeThreshold and shakeWidth properties. - Event callbacks will be provided an empty MBLDataSample object. - */ -@property (nonatomic, readonly) MBLEvent *shakeEvent; - - -/** - Select threshold (in G's [0.0, 8.0]) for the freeFallEvent. This is used in conjuction - with freeFallWidth to determine when a freeFallEvent will be generated. All accelerometer - axis' must stay below freeFallThreshold for freeFallWidth mili-seconds. Default value 0.2 - */ -@property (nonatomic) double freeFallThreshold; -/** - Select time (in mSec) required for all accelerometer axis' to be above freeFallThreshold - before a freeFallEvent will be generated. Default value 100.0 - */ -@property (nonatomic) double freeFallWidth; -/** - Event representing free fall, event occurs every freeFallWidth ms while the device - is in free fall. - Event callbacks will be provided an empty MBLDataSample object - */ -@property (nonatomic, readonly) MBLEvent *freeFallEvent; - - -/** - Event representing an orientation change. - Event callbacks will be provided an MBLOrientationData object - */ -@property (nonatomic, readonly) MBLEvent *orientationEvent; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452Q.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452Q.m deleted file mode 100644 index 509fdd3..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452Q.m +++ /dev/null @@ -1,248 +0,0 @@ -/** - * MBLAccelerometerMMA8452Q.m - * MetaWear - * - * Created by Stephen Schiffli on 5/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerMMA8452Q+Private.h" -#import "MBLAccelerometer+Private.h" -#import "mma8452q.h" -#import "MBLRegister+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLAccelerometerDataReadyEvent.h" -#import "MBLAccelerometerFreeFallEvent.h" -#import "MBLAccelerometerOrientationEvent.h" -#import "MBLAccelerometerTapEvent.h" -#import "MBLAccelerometerShakeEvent.h" -#import "MBLRMSAccelerometerDataFilter.h" -#import "MBLAccelerometerData+Private.h" -#import "MBLAccelerometerAxisReadyEvent.h" -#import "MBLLogger.h" - - -@interface MBLAccelerometerMMA8452Q() -@property (nonatomic) MBLRegister *dataSettings; -@property (nonatomic) MBLEvent *freeFallEvent; -@property (nonatomic) MBLEvent *orientationEvent; -@property (nonatomic) MBLEvent *tapEvent; -@property (nonatomic) MBLEvent *shakeEvent; -@end - -@implementation MBLAccelerometerMMA8452Q - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.fullScaleRange = MBLAccelerometerRange8G; - self.activePowerScheme = MBLAccelerometerPowerSchemeNormal; - self.tapDetectionAxis = MBLAccelerometerAxisX; - self.tapType = MBLAccelerometerTapTypeSingle; - self.shakeThreshold = 0.5; - self.shakeWidth = 200.0; - self.freeFallThreshold = 0.2; - self.freeFallWidth = 100.0; - - MBLRegister *globalEnable = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.dataSettings = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[[MBLFormat alloc] initEncodedDataWithLength:4]]; - self.dataReadyEvent = [[MBLAccelerometerDataReadyEvent alloc] initWithAccelerometer:self]; - self.xAxisReadyEvent = [[MBLAccelerometerAxisReadyEvent alloc] initWithAccelerometer:self axis:MBLAccelerometerAxisX]; - self.yAxisReadyEvent = [[MBLAccelerometerAxisReadyEvent alloc] initWithAccelerometer:self axis:MBLAccelerometerAxisY]; - self.zAxisReadyEvent = [[MBLAccelerometerAxisReadyEvent alloc] initWithAccelerometer:self axis:MBLAccelerometerAxisZ]; - self.freeFallEvent = [[MBLAccelerometerFreeFallEvent alloc] initWithAccelerometer:self]; - self.orientationEvent = [[MBLAccelerometerOrientationEvent alloc] initWithAccelerometer:self]; - self.tapEvent = [[MBLAccelerometerTapEvent alloc] initWithAccelerometer:self]; - self.shakeEvent = [[MBLAccelerometerShakeEvent alloc] initWithAccelerometer:self]; - - self.rmsDataReadyEvent = [[MBLRMSAccelerometerDataFilter alloc] initWithAccelerometer:self]; - - self.globalEnable = globalEnable; - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - mma8452q_data_regs_t regs = { 0 }; - - regs.xyz_data_cfg.fs = self.fullScaleRange; - regs.xyz_data_cfg.hpf_out = self.highPassFilter; - - // TODO: setup the High-Pass Filter Cutoff Register - //regs.hp_filter_cutoff.pulsehpfen - //regs.hp_filter_cutoff.pulselpfen - regs.hp_filter_cutoff.sel = self.highPassCutoffFreq; - - regs.ctrl_reg1.f_read = self.fastReadMode; - regs.ctrl_reg1.lnoise = self.lowNoise; - regs.ctrl_reg1.dr = self.scaleSampleFrequency; - regs.ctrl_reg1.aslp_rate = self.sleepSampleFrequency; - - regs.ctrl_reg2.smods = self.sleepPowerScheme; - regs.ctrl_reg2.slpe = self.autoSleep; - regs.ctrl_reg2.mods = self.activePowerScheme; - - // TODO: setup the aslp_count, minimum time period of inactivity required before sleeping - //regs.aslp_count.aslp_count - return [self.dataSettings writeDataAsync:[NSData dataWithBytes:®s length:sizeof(mma8452q_data_regs_t)]]; -} - -#pragma mark - Private helpers - -double timeStepForPulseLimeLimit_LPF_EN_1[8][4] = { - //Normal LPLN HighRes LP - { 1.25, 1.25, 1.25, 1.25 }, // 800Hz - { 2.50, 2.50, 2.50, 2.50 }, // 400Hz - { 5.00, 5.00, 2.50, 5.00 }, // 200Hz - { 10.0, 10.0, 2.50, 10.0 }, // 100Hz - { 20.0, 20.0, 2.50, 20.0 }, // 50Hz - { 20.0, 80.0, 2.50, 80.0 }, // 12.5Hz - { 20.0, 80.0, 2.50, 160 }, // 6.25Hz - { 20.0, 80.0, 2.50, 160 }, // 1.56Hz -}; - -double timeStepForPulseLimeLimit_LPF_EN_0[8][4] = { - //Normal LPLN HighRes LP - { 0.625, 0.625, 0.625, 0.625 }, // 800Hz - { 0.625, 0.625, 0.625, 1.250 }, // 400Hz - { 1.250, 1.250, 0.625, 2.500 }, // 200Hz - { 2.500, 2.500, 0.625, 5.000 }, // 100Hz - { 5.000, 5.000, 0.625, 10.00 }, // 50Hz - { 5.000, 20.00, 0.625, 40.00 }, // 12.5Hz - { 5.000, 20.00, 0.625, 40.00 }, // 6.25Hz - { 5.000, 20.00, 0.625, 40.00 }, // 1.56Hz -}; - -// Time Step for PULSE Latency is exactly double the tables above -// Time Step for PULSE Detection Window is exactly double the tables above -// Portrait/Landscape Debounce Counter is equal to timeStepForPulseLimeLimit_LPF_EN_1 -// FreeFall/Motion Debounce Counter is equal to timeStepForPulseLimeLimit_LPF_EN_1 -// Transient Debounce Counter is equal to timeStepForPulseLimeLimit_LPF_EN_1 - -- (uint8_t)scalePulseThreshold:(double)accelerationInGs -{ - if (accelerationInGs < 0.0) { - MBLLog(MBLLogLevelWarning, @"[Accelerometer] no negative pulse thresholds"); - accelerationInGs = accelerationInGs * -1; - } - if (accelerationInGs > 8.0) { - MBLLog(MBLLogLevelWarning, @"[Accelerometer] pulse threshold must be <= 8.0 G's"); - return 0xff; - } - // scale it to 0 - 127 - return (uint8_t)(accelerationInGs / 0.063); -} - -- (uint8_t)scalePulseTimeLimit:(double)timeInMsec -{ - if (timeInMsec < 0.0) { - MBLLog(MBLLogLevelWarning, @"[Accelerometer] no negative pulse time limit please"); - timeInMsec = 0.0; - } else if (timeInMsec > timeStepForPulseLimeLimit_LPF_EN_0[self.scaleSampleFrequency][self.activePowerScheme] * 255.0) { - MBLLog(MBLLogLevelWarning, @"[Accelerometer] pulse time limit requested is greater than max allowed"); - return 0xff; - } - // The ticks are scaled based on the current mode of the accelerometer - return (uint8_t)(timeInMsec / timeStepForPulseLimeLimit_LPF_EN_0[self.scaleSampleFrequency][self.activePowerScheme]); -} - -- (uint8_t)scalePulseLatency:(double)timeInMsec -{ - if (timeInMsec < 0.0) { - MBLLog(MBLLogLevelWarning, @"[Accelerometer] no negative puse latency please"); - timeInMsec = 0.0; - } else if (timeInMsec > timeStepForPulseLimeLimit_LPF_EN_0[self.scaleSampleFrequency][self.activePowerScheme] * 255.0) { - MBLLog(MBLLogLevelWarning, @"[Accelerometer] pulse latency requested is greater than max allowed"); - return 0xff; - } - // The ticks are scaled based on the current mode of the accelerometer - return (uint8_t)(timeInMsec / (timeStepForPulseLimeLimit_LPF_EN_0[self.scaleSampleFrequency][self.activePowerScheme] * 2)); -} - -- (uint8_t)scaleSecondPulseTimeWindow:(double)timeInMsec -{ - if (timeInMsec < 0.0) { - MBLLog(MBLLogLevelWarning, @"[Accelerometer] no negative pulse time windows please"); - timeInMsec = 0.0; - } else if (timeInMsec > timeStepForPulseLimeLimit_LPF_EN_0[self.scaleSampleFrequency][self.activePowerScheme] * 255.0) { - MBLLog(MBLLogLevelWarning, @"[Accelerometer] pulse time windown requested is greater than max allowed"); - return 0xff; - } - // The ticks are scaled based on the current mode of the accelerometer - return (uint8_t)(timeInMsec / (timeStepForPulseLimeLimit_LPF_EN_0[self.scaleSampleFrequency][self.activePowerScheme] * 2)); -} - -- (uint8_t)scalePortraitLandscapeDebounceCounter:(double)timeInMsec -{ - if (timeInMsec < 0.0) { - MBLLog(MBLLogLevelWarning, @"[Accelerometer] cannot have negative debounce counter value"); - timeInMsec = 0.0; - } else if (timeInMsec > timeStepForPulseLimeLimit_LPF_EN_0[self.scaleSampleFrequency][self.activePowerScheme] * 255.0) { - MBLLog(MBLLogLevelWarning, @"[Accelerometer] debounce counter value requested is greater than max allowed"); - return 0xff; - } - // The ticks are scaled based on the current mode of the accelerometer - return (uint8_t)(timeInMsec / timeStepForPulseLimeLimit_LPF_EN_1[self.scaleSampleFrequency][self.activePowerScheme]); -} - -- (uint8_t)scaleFreeFallMotionDebounceCounter:(double)timeInMsec -{ - return [self scalePortraitLandscapeDebounceCounter:timeInMsec]; -} - -- (uint8_t)scaleTransientDebounceCounter:(double)timeInMsec -{ - return [self scalePortraitLandscapeDebounceCounter:timeInMsec]; -} - -- (uint8_t)scaleSampleFrequency -{ - if (self.sampleFrequency > 400) { - return 0; - } else if (self.sampleFrequency > 200) { - return 1; - } else if (self.sampleFrequency > 100) { - return 2; - } else if (self.sampleFrequency > 50) { - return 3; - } else if (self.sampleFrequency > 12.5) { - return 4; - } else if (self.sampleFrequency > 6.25) { - return 5; - } else if (self.sampleFrequency > 1.56) { - return 6; - } else { - return 7; - } -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/AmbientLight/AmbientLightLTR329/MBLAmbientLightLTR329.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/AmbientLight/AmbientLightLTR329/MBLAmbientLightLTR329.h deleted file mode 100644 index 42a1ed8..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/AmbientLight/AmbientLightLTR329/MBLAmbientLightLTR329.h +++ /dev/null @@ -1,108 +0,0 @@ -/** - * MBLAmbientLightLTR329.h - * MetaWear - * - * Created by Stephen Schiffli on 7/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Gain applied to the ambient light sensor signal, changes the dynamic range - */ -typedef NS_ENUM(uint8_t, MBLAmbientLightLTR329Gain) { - MBLAmbientLightLTR329Gain1X = 0, // 1 lux to 64k lux (default) - MBLAmbientLightLTR329Gain2X = 1, // 0.5 lux to 32k lux - MBLAmbientLightLTR329Gain4X = 2, // 0.25 lux to 16k lux - MBLAmbientLightLTR329Gain8X = 3, // 0.125 lux to 8k lux - MBLAmbientLightLTR329Gain48X = 6,// 0.02 lux to 1.3k lux - MBLAmbientLightLTR329Gain96X = 7 // 0.01 lux to 600 lux -}; - -/** - Integration Time is the measurement time for each ambient light sensor cycle - */ -typedef NS_ENUM(uint8_t, MBLAmbientLightLTR329Integration) { - MBLAmbientLightLTR329Integration50ms = 1, - MBLAmbientLightLTR329Integration100ms = 0, - MBLAmbientLightLTR329Integration150ms = 4, - MBLAmbientLightLTR329Integration200ms = 2, - MBLAmbientLightLTR329Integration250ms = 5, - MBLAmbientLightLTR329Integration300ms = 6, - MBLAmbientLightLTR329Integration350ms = 7, - MBLAmbientLightLTR329Integration400ms = 3 -}; - -/** - Measurement Repeat Rate, defines the the period of the XXX and YYY event. - NOTE: must be set to be equal or larger than the Integration Time. - */ -typedef NS_ENUM(uint8_t, MBLAmbientLightLTR329Rate) { - MBLAmbientLightLTR329Rate50ms = 0, - MBLAmbientLightLTR329Rate100ms = 1, - MBLAmbientLightLTR329Rate200ms = 2, - MBLAmbientLightLTR329Rate500ms = 3, - MBLAmbientLightLTR329Rate1000ms = 4, - MBLAmbientLightLTR329Rate2000ms = 5 -}; - -/** - Interface to a LTR329 ambient light sensor - */ -@interface MBLAmbientLightLTR329 : MBLAmbientLight - -/** - Gain applied to the ambient light sensor signal, changes the dynamic range - */ -@property (nonatomic) MBLAmbientLightLTR329Gain gain; -/** - The measurement time for each ambient light sensor cycle - */ -@property (nonatomic) MBLAmbientLightLTR329Integration integrationTime; -/** - Measurement Repeat Rate, defines the the period of the - periodicIlluminance event. - */ -@property (nonatomic) MBLAmbientLightLTR329Rate measurementRate; - - -/** - Data representing the visible light response measured by the sensor. Period - of event will depend on measurementRate. Event callbacks will be provided - an MBLNumericData object whose double value will be illuminance in lux. - */ -@property (nonatomic, readonly) MBLEvent *periodicIlluminance; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/AmbientLight/AmbientLightLTR329/MBLAmbientLightLTR329.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/AmbientLight/AmbientLightLTR329/MBLAmbientLightLTR329.m deleted file mode 100644 index cb1975e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/AmbientLight/AmbientLightLTR329/MBLAmbientLightLTR329.m +++ /dev/null @@ -1,104 +0,0 @@ -/** - * MBLAmbientLightLTR329.m - * MetaWear - * - * Created by Stephen Schiffli on 7/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAmbientLightLTR329.h" -#import "MBLAmbientLight+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLRegister+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLLogger.h" - -typedef struct __attribute__((packed)) { - uint8_t als_mode:1; - uint8_t sw_reset:1; - uint8_t als_gain:3; - uint8_t :3; -} ltr329_reg_als_contr_t; - -typedef struct __attribute__((packed)) { - uint8_t als_measurement_rate:3; - uint8_t als_integration_time:3; - uint8_t :2; -} ltr329_reg_als_meas_rate_t; - -typedef struct __attribute__((packed)) { - ltr329_reg_als_contr_t ltr329_als_contr; - ltr329_reg_als_meas_rate_t ltr329_als_meas_rate; -} mw_ambientlight_ctrl_regs_t; - - -@interface MBLAmbientLightLTR329 () -@property (nonatomic) MBLRegister *mode; -@property (nonatomic) MBLEvent *periodicIlluminance; -@end - -@implementation MBLAmbientLightLTR329 - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.globalEnable = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - - self.illuminance = nil; - - self.gain = MBLAmbientLightLTR329Gain1X; - self.measurementRate = MBLAmbientLightLTR329Rate500ms; - self.integrationTime = MBLAmbientLightLTR329Integration100ms; - - self.mode = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - self.periodicIlluminance = [[MBLEvent alloc] initWithModule:self registerId:0x3 format:[[MBLNumericFormatter alloc] initDoubleWithLength:4 isSigned:NO scale:0.001]]; - } - return self; -} - -- (MBLData *)illuminance -{ - MBLLog(MBLLogLevelWarning, @"[AmbientLight] illuminance not yet implemented, please use periodicIlluminance instead"); - return nil; -} - -- (BFTask *)performAsyncInitialization -{ - mw_ambientlight_ctrl_regs_t params = { 0 }; - params.ltr329_als_contr.als_gain = self.gain; - - params.ltr329_als_meas_rate.als_integration_time = self.integrationTime; - params.ltr329_als_meas_rate.als_measurement_rate = self.measurementRate; - - return [self.mode writeDataAsync:[NSData dataWithBytes:¶ms length:sizeof(mw_ambientlight_ctrl_regs_t)]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/AmbientLight/MBLAmbientLight.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/AmbientLight/MBLAmbientLight.h deleted file mode 100644 index 7818d1c..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/AmbientLight/MBLAmbientLight.h +++ /dev/null @@ -1,60 +0,0 @@ -/** - * MBLAmbientLight.h - * MetaWear - * - * Created by Stephen Schiffli on 7/23/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -@class MBLNumericData; - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface to an abstract ambient light sensor. If you need more advanced - features then upcast to the specific sensor on your board, MBLAmbientLightLTR329. - @see MBLAmbientLightLTR329 - */ -@interface MBLAmbientLight : MBLModule - -/** - Data representing the intensity of visible light present. - Event callbacks will be provided an MBLNumericData object whose - double value will be illuminance in lux. - NOT YET IMPLEMENTED - */ -@property (nonatomic, readonly, nullable) MBLData *illuminance; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/AmbientLight/MBLAmbientLight.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/AmbientLight/MBLAmbientLight.m deleted file mode 100644 index 4a63af7..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/AmbientLight/MBLAmbientLight.m +++ /dev/null @@ -1,53 +0,0 @@ -/** - * MBLAmbientLight.m - * MetaWear - * - * Created by Stephen Schiffli on 7/23/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAmbientLight+Private.h" -#import "MBLAmbientLightLTR329.h" -#import "MBLMetaWear+Private.h" -#import "MBLRegister+Private.h" - -@interface MBLAmbientLight () -@property (nonatomic) MBLData *illuminance; -@end - -@implementation MBLAmbientLight -@synthesize illuminance = _noencode_illuminance; // TODO: Once we implement illuminace we can remove this - -+ (instancetype)objectWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - return [[MBLAmbientLightLTR329 alloc] initWithDevice:device moduleInfo:moduleInfo]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/BarometerBME280/MBLBarometerBME280.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/BarometerBME280/MBLBarometerBME280.h deleted file mode 100644 index 11e3748..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/BarometerBME280/MBLBarometerBME280.h +++ /dev/null @@ -1,67 +0,0 @@ -/** - * MBLBarometerBME280.h - * MetaWear - * - * Created by Stephen Schiffli on 2/22/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Barometer standby times - */ -typedef NS_ENUM(uint8_t, MBLBarometerBME280Standby) { - MBLBarometerBME280Standby0_5 = 0, - MBLBarometerBME280Standby10 = 6, - MBLBarometerBME280Standby20 = 7, - MBLBarometerBME280Standby62_5 = 1, - MBLBarometerBME280Standby125 = 2, - MBLBarometerBME280Standby250 = 3, - MBLBarometerBME280Standby500 = 4, // default - MBLBarometerBME280Standby1000 = 5 -}; - -/** - Interface to a BME280 pressure sensor - */ -@interface MBLBarometerBME280 : MBLBarometerBosch - -/** - Set the standby time for the periodicAltitidue and periodicPressure events. - That is how long the device sleeps between successive measurements - */ -@property (nonatomic) MBLBarometerBME280Standby standbyTime; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/BarometerBME280/MBLBarometerBME280.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/BarometerBME280/MBLBarometerBME280.m deleted file mode 100644 index 1db92ac..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/BarometerBME280/MBLBarometerBME280.m +++ /dev/null @@ -1,78 +0,0 @@ -/** - * MBLBarometerBME280.m - * MetaWear - * - * Created by Stephen Schiffli on 2/22/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLBarometerBME280.h" -#import "MBLBarometerBosch+Private.h" -#import "MBLRegister+Private.h" - -typedef struct __attribute__((packed)) { - uint8_t mode:2; - MBLBarometerBoschOversample osrs_p:3; - MBLBarometerBoschOversample osrs_t:3; - uint8_t spi3w_en:1; - uint8_t :1; - MBLBarometerBoschFilter filter:3; - MBLBarometerBME280Standby t_sb:3; -} bmp280_ctrl_regs_t; - - -@implementation MBLBarometerBME280 - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.standbyTime = MBLBarometerBME280Standby500; - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - bmp280_ctrl_regs_t params = { 0 }; - params.osrs_p = self.pressureOversampling; - // If pressure at x16 then temp should be x2 otherwise x1 is fine - // http://ae-bst.resource.bosch.com/media/products/dokumente/bmp280/BST-BMP280-DS001-10.pdf - if (self.pressureOversampling == MBLBarometerBoschOversampleUltraHighResolution) { - params.osrs_t = MBLBarometerBoschOversampleLowPower; - } else { - params.osrs_t = MBLBarometerBoschOversampleUltraLowPower; - } - params.filter = self.hardwareAverageFilter; - params.t_sb = self.standbyTime; - return [self.mode writeDataAsync:[NSData dataWithBytes:¶ms length:sizeof(params)]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/BarometerBMP280/MBLBarometerBMP280.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/BarometerBMP280/MBLBarometerBMP280.h deleted file mode 100644 index e6faf35..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/BarometerBMP280/MBLBarometerBMP280.h +++ /dev/null @@ -1,67 +0,0 @@ -/** - * MBLBarometerBMP280.h - * MetaWear - * - * Created by Stephen Schiffli on 7/28/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Barometer standby times - */ -typedef NS_ENUM(uint8_t, MBLBarometerBMP280Standby) { - MBLBarometerBMP280Standby0_5 = 0, - MBLBarometerBMP280Standby62_5 = 1, - MBLBarometerBMP280Standby125 = 2, - MBLBarometerBMP280Standby250 = 3, - MBLBarometerBMP280Standby500 = 4, // default - MBLBarometerBMP280Standby1000 = 5, - MBLBarometerBMP280Standby2000 = 6, - MBLBarometerBMP280Standby4000 = 7 -}; - -/** - Interface to a BMP280 pressure sensor - */ -@interface MBLBarometerBMP280 : MBLBarometerBosch - -/** - Set the standby time for the periodicAltitidue and periodicPressure events. - That is how long the device sleeps between successive measurements - */ -@property (nonatomic) MBLBarometerBMP280Standby standbyTime; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/BarometerBMP280/MBLBarometerBMP280.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/BarometerBMP280/MBLBarometerBMP280.m deleted file mode 100644 index 2f8b577..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/BarometerBMP280/MBLBarometerBMP280.m +++ /dev/null @@ -1,78 +0,0 @@ -/** - * MBLBarometerBMP280.m - * MetaWear - * - * Created by Stephen Schiffli on 7/28/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLBarometerBMP280.h" -#import "MBLBarometerBosch+Private.h" -#import "MBLRegister+Private.h" - -typedef struct __attribute__((packed)) { - uint8_t mode:2; - MBLBarometerBoschOversample osrs_p:3; - MBLBarometerBoschOversample osrs_t:3; - uint8_t spi3w_en:1; - uint8_t :1; - MBLBarometerBoschFilter filter:3; - MBLBarometerBMP280Standby t_sb:3; -} bmp280_ctrl_regs_t; - - -@implementation MBLBarometerBMP280 - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.standbyTime = MBLBarometerBMP280Standby500; - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - bmp280_ctrl_regs_t params = { 0 }; - params.osrs_p = self.pressureOversampling; - // If pressure at x16 then temp should be x2 otherwise x1 is fine - // http://ae-bst.resource.bosch.com/media/products/dokumente/bmp280/BST-BMP280-DS001-10.pdf - if (self.pressureOversampling == MBLBarometerBoschOversampleUltraHighResolution) { - params.osrs_t = MBLBarometerBoschOversampleLowPower; - } else { - params.osrs_t = MBLBarometerBoschOversampleUltraLowPower; - } - params.filter = self.hardwareAverageFilter; - params.t_sb = self.standbyTime; - return [self.mode writeDataAsync:[NSData dataWithBytes:¶ms length:sizeof(params)]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/MBLBarometerBosch.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/MBLBarometerBosch.h deleted file mode 100644 index e36a90a..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/MBLBarometerBosch.h +++ /dev/null @@ -1,95 +0,0 @@ -/** - * MBLBarometerBosch.h - * MetaWear - * - * Created by Stephen Schiffli on 2/25/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Barometer oversampling rates - */ -typedef NS_ENUM(uint8_t, MBLBarometerBoschOversample) { - MBLBarometerBoschOversampleUltraLowPower = 1, - MBLBarometerBoschOversampleLowPower = 2, - MBLBarometerBoschOversampleStandard = 3, // default - MBLBarometerBoschOversampleHighResolution = 4, - MBLBarometerBoschOversampleUltraHighResolution = 5, -}; - -/** - Barometer output filter - */ -typedef NS_ENUM(uint8_t, MBLBarometerBoschFilter) { - MBLBarometerBoschFilterOff = 0, // default - MBLBarometerBoschFilterAverage2 = 1, - MBLBarometerBoschFilterAverage4 = 2, - MBLBarometerBoschFilterAverage8 = 3, - MBLBarometerBoschFilterAverage16 = 4, -}; - -/** - Interface to a Bosch pressure sensor - */ -@interface MBLBarometerBosch : MBLBarometer - -/** - Use this to set pressure sampling mode, higher values produce more accurate - results but will use more power. - */ -@property (nonatomic) MBLBarometerBoschOversample pressureOversampling; -/** - Use this to set hardware average filtering of pressure samples. - */ -@property (nonatomic) MBLBarometerBoschFilter hardwareAverageFilter; - - -/** - Data representing the atmospheric pressure measured by barometer. Period - of event will depend on pressureOversampling and standbyTime. - Event callbacks will be provided an MBLNumericData object whose double - value will be pressure in pascals. - */ -@property (nonatomic, readonly) MBLEvent *periodicPressure; -/** - Event representing the altidue calulated from atmospheric pressure. Period - of event will depend on pressureOversampling and standbyTime. - Event callbacks will be provided an MBLNumericData object whose double - value will be altitude in meters. - */ -@property (nonatomic, readonly) MBLEvent *periodicAltitude; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/MBLBarometerBosch.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/MBLBarometerBosch.m deleted file mode 100644 index f767672..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/BarometerBosch/MBLBarometerBosch.m +++ /dev/null @@ -1,69 +0,0 @@ -/** - * MBLBarometerBosch.m - * MetaWear - * - * Created by Stephen Schiffli on 2/25/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLBarometerBosch+Private.h" -#import "MBLBarometer+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLRegister+Private.h" -#import "MBLData+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLBarometerBoschPeriodicPressureEvent.h" -#import "MBLBarometerBoschPeriodicAltitudeEvent.h" - -@interface MBLBarometerBosch () -@property (nonatomic) MBLEvent *periodicPressure; -@property (nonatomic) MBLEvent *periodicAltitude; -@property (nonatomic) MBLRegister *mode; -@end - -@implementation MBLBarometerBosch - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.pressure = [[MBLData alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initDoubleWithLength:4 isSigned:NO scale:1.0 / 256.0]]; - self.altitude = [[MBLData alloc] initWithModule:self registerId:0x2 format:[[MBLNumericFormatter alloc] initDoubleWithLength:4 isSigned:YES scale:1.0 / 256.0]]; - self.periodicPressure = [[MBLBarometerBoschPeriodicPressureEvent alloc] initWithBarometer:self]; - self.periodicAltitude = [[MBLBarometerBoschPeriodicAltitudeEvent alloc] initWithBarometer:self]; - self.mode = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - - self.pressureOversampling = MBLBarometerBoschOversampleStandard; - self.hardwareAverageFilter = MBLBarometerBoschFilterOff; - } - return self; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/MBLBarometer.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/MBLBarometer.h deleted file mode 100644 index 3d83d3e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/MBLBarometer.h +++ /dev/null @@ -1,66 +0,0 @@ -/** - * MBLBarometer.h - * MetaWear - * - * Created by Stephen Schiffli on 4/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -@class MBLNumericData; - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface to an abstract barometer sensor. If you need more advanced - features then upcast to the specific sensor on your board, MBLBarometerBMP280 or MBLBarometerBME280. - @see MBLBarometerBMP280 - @see MBLBarometerBME280 - */ -@interface MBLBarometer : MBLModule - -/** - Data representing the atmospheric pressure measured by barometer. - Event callbacks will be provided an MBLNumericData object whose double - value will be pressure in pascals. - */ -@property (nonatomic, readonly) MBLData *pressure; -/** - Data representing the altidue calulated from atmospheric pressure. - Event callbacks will be provided an MBLNumericData object whose double - value will be altitude in meters. - */ -@property (nonatomic, readonly) MBLData *altitude; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/MBLBarometer.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/MBLBarometer.m deleted file mode 100644 index f0a18bd..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Barometer/MBLBarometer.m +++ /dev/null @@ -1,64 +0,0 @@ -/** - * MBLBarometer.m - * MetaWear - * - * Created by Stephen Schiffli on 4/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLBarometer+Private.h" -#import "MBLBarometerBMP280.h" -#import "MBLBarometerBME280.h" -#import "MBLModule+Private.h" - -@interface MBLBarometer () -@property (nonatomic) MBLData *pressure; -@property (nonatomic) MBLData *altitude; -@end - -@implementation MBLBarometer - -+ (instancetype)objectWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - if (moduleInfo.moduleImplementation == 1) { - return [[MBLBarometerBME280 alloc] initWithDevice:device moduleInfo:moduleInfo]; - } - return [[MBLBarometerBMP280 alloc] initWithDevice:device moduleInfo:moduleInfo]; -} - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - } - return self; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Conductance/MBLConductance.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Conductance/MBLConductance.h deleted file mode 100644 index 6a80586..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Conductance/MBLConductance.h +++ /dev/null @@ -1,108 +0,0 @@ -/** - * MBLConductance.h - * MetaWear - * - * Created by Stephen Schiffli on 4/16/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import "Bolts/Bolts.h" -@class MBLNumericData; -@class MBLData; - -NS_ASSUME_NONNULL_BEGIN - -/** - Gain applied in the Conductance circuit - */ -typedef NS_ENUM(uint8_t, MBLConductanceGain) { - MBLConductanceGain499K = 0, - MBLConductanceGain1M = 1 -}; - -/** - Constant voltage applied on the Conductance electrodes - */ -typedef NS_ENUM(uint8_t, MBLConductanceVoltage) { - MBLConductanceVoltage500mV = 1, - MBLConductanceVoltage250mV = 0 -}; - -/** - Valid measurment range voltage on the Conductance electrodes - */ -typedef NS_ENUM(uint8_t, MBLConductanceRange) { - MBLConductanceRange50uS = 0, - MBLConductanceRange100uS = 1, - MBLConductanceRange150uS = 2, - MBLConductanceRange200uS = 3 -}; - -/** - Interface to on-board Conductance sensor - */ -@interface MBLConductance : MBLModule - -/** - Gain applied in the Conductance circuit - @note Not avaliable in all implementations - */ -@property (nonatomic) MBLConductanceGain gain; -/** - Constant voltage applied on the Conductance electrodes - @note Not avaliable in all implementations - */ -@property (nonatomic) MBLConductanceVoltage voltage; -/** - Valid measurment range voltage on the Conductance electrodes - @note Not avaliable in all implementations - */ -@property (nonatomic) MBLConductanceRange range; - - -/** - Array of MBLData objects. The index corresponds to the Conductance channel - number, for example, channels[0] returns an MBLData corresponding - to channel 0, which can be used for perfoming single channel reads. - Callbacks will be provided an MBLNumericData object whose uint32_t value - will be conductance in nS. - */ -@property (nonatomic, readonly) NSArray *> *channels; - -/** - Perform automatic Conductance calibration. This should be called when - temperature changes, or it can just be called periodically as it's low overhead. - */ -- (BFTask *)calibrateAsync; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Conductance/MBLConductance.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Conductance/MBLConductance.m deleted file mode 100644 index 0757b06..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Conductance/MBLConductance.m +++ /dev/null @@ -1,110 +0,0 @@ -/** - * MBLConductance.m - * MetaWear - * - * Created by Stephen Schiffli on 4/16/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLConductance.h" -#import "MBLRegister+Private.h" -#import "MBLData+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLConductanceData.h" -#import "MBLMetaWear+Private.h" - -typedef struct __attribute__((packed)) { - uint8_t count; - uint8_t mode_length; - int8_t conductance_scale; -} conductance_module_info; - -@interface MBLConductance() -@property (nonatomic) MBLRegister *conductance; -@property (nonatomic) MBLRegister *calibrateReg; -@property (nonatomic) MBLRegister *mode; - -@property (nonatomic) NSArray *channels; -@end - -@implementation MBLConductance - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.gain = MBLConductanceGain499K; - self.voltage = MBLConductanceVoltage500mV; - self.range = MBLConductanceRange100uS; - - self.conductance = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLFormat alloc] initEncodedDataWithLength:3]]; - self.calibrateReg = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:0]]; - self.mode = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - - if (moduleInfo.moduleImplementation >= 1) { - assert(moduleInfo.moduleData.length == 3); - conductance_module_info *info = (conductance_module_info *)moduleInfo.moduleData.bytes; - - NSMutableArray *channels = [[NSMutableArray alloc] initWithCapacity:info->count]; - for (uint8_t channel = 0; channel < info->count; channel++) { - [channels addObject:[[MBLConductanceData alloc] initWithRegister:self.conductance channel:channel]]; - } - self.channels = channels; - } else { - self.channels = @[[[MBLConductanceData alloc] initWithRegister:self.conductance channel:0], - [[MBLConductanceData alloc] initWithRegister:self.conductance channel:1], - [[MBLConductanceData alloc] initWithRegister:self.conductance channel:2], - [[MBLConductanceData alloc] initWithRegister:self.conductance channel:3]]; - } - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - if (self.moduleInfo.moduleImplementation == 1) { - uint8_t data[] = { self.voltage, self.gain }; - return [self.mode writeDataAsync:[NSData dataWithBytes:&data length:2]]; - } else if (self.moduleInfo.moduleImplementation == 2) { - uint8_t data[] = { self.range }; - return [self.mode writeDataAsync:[NSData dataWithBytes:&data length:1]]; - } else if (self.moduleInfo.moduleImplementation == 3) { - uint8_t data[] = { 1 }; // TODO: FIXME - return [self.mode writeDataAsync:[NSData dataWithBytes:&data length:1]]; - } - return [super performAsyncInitialization]; -} - -- (BFTask *)calibrateAsync -{ - return [self.calibrateReg writeDataAsync:nil]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/GPIO/MBLGPIO.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/GPIO/MBLGPIO.h deleted file mode 100644 index 9964bf8..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/GPIO/MBLGPIO.h +++ /dev/null @@ -1,60 +0,0 @@ -/** - * MBLGPIO.h - * MetaWear - * - * Created by Stephen Schiffli on 8/2/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface to the general purprose input/output pins on the MetaWear. This - allows you to attach your own sensors or drive digitial devices. - */ -@interface MBLGPIO : MBLModule - -/** - Array of MBLGPIOPin objects. The index corresponds to the pin number - on the MetaWear, for example, pins[0] is "DIO0/AIN0" on the MetaWear - hardware spec sheet. - @see MBLGPIOPin - */ -@property (nonatomic, readonly) NSArray *pins; - -@end - - -NS_ASSUME_NONNULL_END \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/GPIO/MBLGPIO.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/GPIO/MBLGPIO.m deleted file mode 100644 index 8d6d6a9..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/GPIO/MBLGPIO.m +++ /dev/null @@ -1,201 +0,0 @@ -/** - * MBLGPIO.m - * MetaWear - * - * Created by Stephen Schiffli on 8/2/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLGPIO+Private.h" -#import "MBLRegister+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLEvent+Private.h" -#import "MBLNumericData+Private.h" -#import "MBLGPIOPin+Private.h" -#import "MBLGPIOData.h" -#import "MBLDeviceInfo.h" -#import "MBLGPIOPinChangeEvent.h" -#import "MBLNumericFormatter.h" -#import "MBLDataSample.h" -#import "BFTask+Private.h" - -@interface MBLGPIO() -@property (nonatomic) MBLRegister *setDigitalOutput; -@property (nonatomic) MBLRegister *clearDigitalOutput; -@property (nonatomic) MBLRegister *setInputPullup; -@property (nonatomic) MBLRegister *setInputPulldown; -@property (nonatomic) MBLRegister *setInputNopull; -@property (nonatomic) MBLRegister *readAnalogAbsolute; -@property (nonatomic) MBLRegister *readAnalogRatio; -@property (nonatomic) MBLRegister *readDigital; -@property (nonatomic) MBLRegister *pinChangeSettings; -@property (nonatomic) MBLRegister *pinChangeNotification; -@property (nonatomic) MBLRegister *pinChangeNotificationEnable; - -@property (nonatomic) NSArray *pins; -@property (nonatomic) int activeNotifications; -@property (nonatomic) NSMutableArray *indexes; -@end - -@implementation MBLGPIO - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.setDigitalOutput = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.clearDigitalOutput = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.setInputPullup = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.setInputPulldown = [[MBLRegister alloc] initWithModule:self registerId:0x4 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.setInputNopull = [[MBLRegister alloc] initWithModule:self registerId:0x5 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.readAnalogAbsolute = [[MBLRegister alloc] initWithModule:self registerId:0x6 format:[[MBLFormat alloc] initEncodedDataWithLength:3]]; - self.readAnalogRatio = [[MBLRegister alloc] initWithModule:self registerId:0x7 format:[[MBLFormat alloc] initEncodedDataWithLength:3]]; - self.readDigital = [[MBLRegister alloc] initWithModule:self registerId:0x8 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - self.pinChangeSettings = [[MBLRegister alloc] initWithModule:self registerId:0x9 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - self.pinChangeNotification = [[MBLRegister alloc] initWithModule:self registerId:0xA format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - self.pinChangeNotificationEnable = [[MBLRegister alloc] initWithModule:self registerId:0xB format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - - if (moduleInfo.moduleRevision >= 1) { - NSMutableArray *pins = [[NSMutableArray alloc] initWithCapacity:moduleInfo.moduleData.length]; - if (moduleInfo.moduleData.length) { - uint8_t *featureByte = (uint8_t *)moduleInfo.moduleData.bytes; - for (uint8_t pin = 0; pin < moduleInfo.moduleData.length; pin++, featureByte++) { - [pins addObject:[[MBLGPIOPin alloc] initWithModule:self pin:pin featureByte:*featureByte]]; - } - } - self.pins = pins; - self.indexes = [NSMutableArray array]; - for (int i = (int)pins.count; i < 32; i++) { - [self.indexes addObject:[NSNumber numberWithInt:i]]; - } - } else { - // These are the old defaults - self.pins = @[[[MBLGPIOPin alloc] initWithModule:self pin:0 featureByte:0x3], - [[MBLGPIOPin alloc] initWithModule:self pin:1 featureByte:0x3], - [[MBLGPIOPin alloc] initWithModule:self pin:2 featureByte:0x3], - [[MBLGPIOPin alloc] initWithModule:self pin:3 featureByte:0x3], - [[MBLGPIOPin alloc] initWithModule:self pin:4 featureByte:0x1], - [[MBLGPIOPin alloc] initWithModule:self pin:5 featureByte:0x1], - [[MBLGPIOPin alloc] initWithModule:self pin:6 featureByte:0x1], - [[MBLGPIOPin alloc] initWithModule:self pin:7 featureByte:0x1]]; - self.indexes = [NSMutableArray array]; - for (int i = 8; i < 32; i++) { - [self.indexes addObject:[NSNumber numberWithInt:i]]; - } - } - } - return self; -} - -- (BFTask *)startNotificationsOnChangeEvent:(MBLGPIOPinChangeEvent *)event -{ - return [[BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - // Turn on notifications for this pin - uint8_t data[] = { event.index, 1 }; - return [self.pinChangeNotificationEnable writeDataAsync:[NSData dataWithBytes:data length:2]]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - self.activeNotifications++; - if (self.activeNotifications == 1) { - // Turn on global notifications - return [self.pinChangeNotification startNotificationsWithHandlerAsync:nil]; - } - return nil; - }]; -} - -- (BFTask *)stopNotificationsAsyncOnChangeEvent:(MBLGPIOPinChangeEvent *)event -{ - return [[BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - self.activeNotifications--; - if (self.activeNotifications == 0) { - // Turn off global notifications - return [self.pinChangeNotification stopNotificationsAsync]; - } - assert(self.activeNotifications >= 0); - self.activeNotifications = MAX(self.activeNotifications, 0); - return nil; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - // Turn off notifications for this pin - uint8_t data[] = { event.index, 0 }; - return [self.pinChangeNotificationEnable writeDataAsync:[NSData dataWithBytes:data length:2]]; - }]; -} - -- (BFTask *)setPin:(uint8_t)pinNumber toDigitalValue:(BOOL)on -{ - MBLRegister *reg = on ? self.setDigitalOutput : self.clearDigitalOutput; - return [reg writeByteAsync:pinNumber]; -} - -- (BFTask *)configurePin:(uint8_t)pinNumber type:(MBLPinConfiguration)type -{ - MBLRegister *reg; - switch (type) { - case MBLPinConfigurationPullup: - reg = self.setInputPullup; - break; - case MBLPinConfigurationPulldown: - reg = self.setInputPulldown; - break; - case MBLPinConfigurationNopull: - reg = self.setInputNopull; - break; - } - return [reg writeByteAsync:pinNumber]; -} - -- (BFTask *)performAsyncInitializationForRegister:(MBLGPIOData *)reg -{ - return [BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - assert(reg.index == 0xFF); - NSNumber *index = [self.indexes lastObject]; - if (!index) { - NSError *error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorInsufficientMemory - userInfo:@{NSLocalizedDescriptionKey : [NSString stringWithFormat:@"MetaWear out of memory, can't perform action. Reset the MetaWear."]}]; - return [BFTask taskWithError:error]; - } - reg.index = index.unsignedCharValue; - [self.indexes removeLastObject]; - return nil; - }]; -} - -- (BFTask *)performAsyncDeinitializationForRegister:(MBLGPIOData *)reg -{ - return [BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - assert(reg.index != 0xFF); - [self.indexes addObject:[NSNumber numberWithInt:reg.index]]; - reg.index = 0xFF; - return nil; - }]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/GPIO/MBLGPIOPin.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/GPIO/MBLGPIOPin.h deleted file mode 100644 index 98c0574..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/GPIO/MBLGPIOPin.h +++ /dev/null @@ -1,178 +0,0 @@ -/** - * MBLGPIOPin.h - * MetaWear - * - * Created by Stephen Schiffli on 10/29/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -@class MBLEvent; -@class MBLData; -@class MBLNumericData; - -NS_ASSUME_NONNULL_BEGIN - -/** - Input pin configuration types - */ -typedef NS_ENUM(uint8_t, MBLPinConfiguration) { - MBLPinConfigurationPullup = 0, - MBLPinConfigurationPulldown = 1, - MBLPinConfigurationNopull = 2 -}; - -/** - Analog read modes - */ -typedef NS_ENUM(uint8_t, MBLAnalogReadMode) { - MBLAnalogReadModeFixed = 0, - MBLAnalogReadModeSupplyRatio = 1 -}; - -/** - Pin change types - */ -typedef NS_ENUM(uint8_t, MBLPinChangeType) { - MBLPinChangeTypeRising = 1, - MBLPinChangeTypeFalling = 2, - MBLPinChangeTypeAny = 3 -}; - -/** - Encapsulation of a single input/output pin - */ -@interface MBLGPIOPin : NSObject - -/** - Set what pin state transitions trigger a changeEvent. - */ -@property (nonatomic) MBLPinChangeType changeType; -/** - Set pull configuration for the pin - */ -- (MBLPinConfiguration)configuration; -- (BFTask *)setConfiguration:(MBLPinConfiguration)configuration; - - -///---------------------------------- -/// @name Reading Values -///---------------------------------- -/** - Event representing a change in the pin's digital value, you can choose - what state transitions trigger this event using the changeType property. - Event callbacks will be provided an MBLNumericData object whose bool - value indicates what state the pin changed to, YES means set, NO means - clear. - */ -@property (nonatomic, readonly) MBLEvent *changeEvent; -/** - Data representing the digital value of the pin. - Event callbacks will be provided an MBLNumericData object whose bool - value indicates what state the pin is in, YES means set, NO means clear. - */ -@property (nonatomic, readonly) MBLData *digitalValue; -/** - Data representing the analog value of the pin. - Event callbacks will be provided an MBLNumericData object whose double - value will be volts. - @warning Not all pins support analog reads - */ -@property (nonatomic, readonly) MBLData *analogAbsolute; -/** - Data representing the analog value of the pin as a ratio of the supply voltage. - Event callbacks will be provided an MBLNumericData object whose double value - will range from 0.0 to 1.0, where 0.0 indicates pin is equal to - ground, and 1.0 indicates pin is equal to supply voltage. - @warning Not all pins support analog reads - */ -@property (nonatomic, readonly) MBLData *analogRatio; - -///---------------------------------- -/// @name Automatic Analog Sensor Enabling -///---------------------------------- - -// To save power, sensors connected to a GPIO pin may optionally have an -// "enable" switch connected to another pin. Pulling up or down these -// enable pins can programmatically turn off the sensor to save power. -// Use the follow functions to create a special MBLData object that will -// automatically set the pullUp/pullDown pins, wait a certain amount of time, -// perform the read, then set the pullUp/pullDown pins back to MBLPinConfigurationNopull. - -/** - Create a new analogRatio data object that automatically sets and clears - pull up/down pins. - @param pullUp Pin to set high just before analog read is started, nil if none - @param pullDown Pin to set low just before analog read is started, nil if none - @param readDelay Time, in uSec, to delay the analog read after the pullUpPin and - pullDownPin have been set. Note there is some delay by default - due to firmware code execution time, so this is in addtion to that. - @returns New analogRatio data - */ -- (MBLData *)analogRatioWithPullUp:(nullable NSNumber *)pullUp - pullDown:(nullable NSNumber *)pullDown - readDelay:(uint16_t)readDelay; - -/** - Create a new analogAbsolute data object that automatically sets and clears - pull up/down pins. - @param pullUp Pin to set high just before analog read is started, nil if none - @param pullDown Pin to set low just before analog read is started, nil if none - @param readDelay Time, in uSec, to delay the analog read after the pullUpPin and - pullDownPin have been set. Note there is some delay by default - due to firmware code execution time, so this is in addtion to that. - @returns New analogAbsolute data - */ -- (MBLData *)analogAbsoluteWithPullUp:(nullable NSNumber *)pullUp - pullDown:(nullable NSNumber *)pullDown - readDelay:(uint16_t)readDelay; - -///---------------------------------- -/// @name Setting Values -///---------------------------------- -/** - Set a digital output GPIO Pin to a 1 or 0. - @param on YES sets pin to 1 (high), NO clears pin to 0 (low) - */ -- (BFTask *)setToDigitalValueAsync:(BOOL)on; - - -///---------------------------------- -/// @name Deprecated -///---------------------------------- -// @deprecated -@property (nonatomic, nullable) NSNumber *enablePin DEPRECATED_MSG_ATTRIBUTE("Use analogRatioWithPullUp:pullDown:readDelay or analogAbsoluteWithPullUp:pullDown:readDelay instead"); -// @deprecated -@property (nonatomic) BOOL enablePinActiveLow DEPRECATED_MSG_ATTRIBUTE("Use analogRatioWithPullUp:pullDown:readDelay or analogAbsoluteWithPullUp:pullDown:readDelay instead"); - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/GPIO/MBLGPIOPin.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/GPIO/MBLGPIOPin.m deleted file mode 100644 index 4e3d980..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/GPIO/MBLGPIOPin.m +++ /dev/null @@ -1,137 +0,0 @@ -/** - * MBLGPIOPin.m - * MetaWear - * - * Created by Stephen Schiffli on 10/29/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLGPIOPin+Private.h" -#import "MBLEvent+Private.h" -#import "MBLGPIO+Private.h" -#import "MBLGPIOPinChangeEvent.h" -#import "MBLGPIOData.h" -#import "MBLMetaWear+Private.h" -#import "MBLDeviceInfo.h" -#import "MBLNumericFormatter.h" - - -@interface MBLGPIOPin () -@property (nonatomic) MBLEvent *changeEvent; -@property (nonatomic) MBLData *digitalValue; -@property (nonatomic) MBLData *analogAbsolute; -@property (nonatomic) MBLData *analogRatio; - -@property (nonatomic, weak) MBLGPIO *gpio; -@property (nonatomic) uint8_t pin; - -// Setting the configuration property causes side effects, so we -// create an internal property for storing the actual value, allowing -// us to safely get/set during serialization of this class -@property (nonatomic) MBLPinConfiguration configurationImpl; -@end - -@implementation MBLGPIOPin - -- (instancetype)initWithModule:(MBLGPIO *)gpio pin:(uint8_t)pin featureByte:(uint8_t)featureByte -{ - self = [super init]; - if (self) { - self.gpio = gpio; - self.pin = pin; - - if (featureByte & 0x1) { - self.changeEvent = [[MBLGPIOPinChangeEvent alloc] initWithModule:gpio pin:pin]; - self.digitalValue = [[MBLGPIOData alloc] initWithRegister:gpio.readDigital pin:self format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - } - if (featureByte & 0x2) { - self.analogAbsolute = [[MBLGPIOData alloc] initWithRegister:gpio.readAnalogAbsolute pin:self format:[[MBLNumericFormatter alloc] initDoubleWithLength:2 isSigned:NO scale:1.0 / 1000.0]]; - self.analogRatio = [[MBLGPIOData alloc] initWithRegister:gpio.readAnalogRatio pin:self format:[[MBLNumericFormatter alloc] initDoubleWithLength:2 isSigned:NO scale:1.0 / 1023.0]]; - } - - self.changeType = MBLPinChangeTypeRising; - self.configurationImpl = MBLPinConfigurationNopull; - } - return self; -} - -- (MBLPinConfiguration)configuration -{ - return self.configurationImpl; -} - -- (BFTask *)setConfiguration:(MBLPinConfiguration)configuration -{ - self.configurationImpl = configuration; - return [self.gpio configurePin:self.pin type:configuration]; -} - -- (void)setChangeType:(MBLPinChangeType)changeType -{ - [(MBLGPIOPinChangeEvent *)self.changeEvent setChangeType:changeType]; - _changeType = changeType; -} - -- (nonnull BFTask *)setToDigitalValueAsync:(BOOL)on -{ - return [self.gpio setPin:self.pin toDigitalValue:on]; -} - -- (MBLData *)analogRatioWithPullUp:(NSNumber *)pullUp - pullDown:(NSNumber *)pullDown - readDelay:(uint16_t)readDelay -{ - if (self.gpio.moduleInfo.moduleRevision < 2) { - [NSException raise:kMBLErrorDomain format:@"GPIO[WARNING] - Please update to latest firmware in order to use analogRatioWithPullUp."]; - } - return [[MBLGPIOData alloc] initWithRegister:self.gpio.readAnalogRatio - pin:self - format:[[MBLNumericFormatter alloc] initDoubleWithLength:2 isSigned:NO scale:1.0 / 1023.0] - pullUp:pullUp - pullDown:pullDown - readDelay:readDelay]; -} - -- (MBLData *)analogAbsoluteWithPullUp:(NSNumber *)pullUp - pullDown:(NSNumber *)pullDown - readDelay:(uint16_t)readDelay -{ - if (self.gpio.moduleInfo.moduleRevision < 2) { - [NSException raise:kMBLErrorDomain format:@"GPIO[WARNING] - Please update to latest firmware in order to use analogAbsoluteWithPullUp."]; - } - return [[MBLGPIOData alloc] initWithRegister:self.gpio.readAnalogAbsolute - pin:self - format:[[MBLNumericFormatter alloc] initDoubleWithLength:2 isSigned:NO scale:1.0 / 1000.0] - pullUp:pullUp - pullDown:pullDown - readDelay:readDelay]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/GyroBMI160/MBLGyroBMI160.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/GyroBMI160/MBLGyroBMI160.h deleted file mode 100644 index 59a1fb5..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/GyroBMI160/MBLGyroBMI160.h +++ /dev/null @@ -1,63 +0,0 @@ -/** - * MBLGyroBMI160.h - * MetaWear - * - * Created by Stephen Schiffli on 5/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Gyro sensitiviy ranges in degrees per second - */ -typedef NS_ENUM(uint8_t, MBLGyroBMI160Range) { - MBLGyroBMI160Range125 = BMI160_GYRO_RANGE_125_DEG_SEC, - MBLGyroBMI160Range250 = BMI160_GYRO_RANGE_250_DEG_SEC, - MBLGyroBMI160Range500 = BMI160_GYRO_RANGE_500_DEG_SEC, - MBLGyroBMI160Range1000 = BMI160_GYRO_RANGE_1000_DEG_SEC, - MBLGyroBMI160Range2000 = BMI160_GYRO_RANGE_2000_DEG_SEC -}; - -/** - Interface to on-board BMI160 gyro - */ -@interface MBLGyroBMI160 : MBLGyro -/** - Maximum rotation the gyro can report - */ -@property (nonatomic) MBLGyroBMI160Range fullScaleRange; - -@end - -NS_ASSUME_NONNULL_END \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/GyroBMI160/MBLGyroBMI160.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/GyroBMI160/MBLGyroBMI160.m deleted file mode 100644 index e0a0cd7..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/GyroBMI160/MBLGyroBMI160.m +++ /dev/null @@ -1,107 +0,0 @@ -/** - * MBLGyroBMI160.m - * MetaWear - * - * Created by Stephen Schiffli on 5/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLGyroBMI160.h" -#import "MBLGyro+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLGyroBMI160DataReadyEvent.h" -#import "MBLGyroBMI160AxisReadyEvent.h" -#import "MBLNumericFormatter.h" - -@interface MBLGyroBMI160 () -@property (nonatomic) MBLRegister *gyroConfig; -@property (nonatomic) MBLRegister *gyroPowerModeTrigger; -@property (nonatomic) MBLRegister *powerModeStatus; -@end - -@implementation MBLGyroBMI160 - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - // MBLGyro properties - self.dataReadyEvent = [[MBLGyroBMI160DataReadyEvent alloc] initWithGyro:self]; - self.xAxisReadyEvent = [[MBLGyroBMI160AxisReadyEvent alloc] initWithGyro:self axis:MBLGyroAxisX]; - self.yAxisReadyEvent = [[MBLGyroBMI160AxisReadyEvent alloc] initWithGyro:self axis:MBLGyroAxisY]; - self.zAxisReadyEvent = [[MBLGyroBMI160AxisReadyEvent alloc] initWithGyro:self axis:MBLGyroAxisZ]; - - // Default settings - self.fullScaleRange = MBLGyroBMI160Range2000; - - // Registers - MBLRegister *gyroPowerMode = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.gyroConfig = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - self.gyroPowerModeTrigger = [[MBLRegister alloc] initWithModule:self registerId:0x4 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - - self.globalEnable = gyroPowerMode; - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - // First setup the gyro config - bmi160_regs_gyr_t regs = { 0 }; - regs.gyr_conf.gyr_odr = self.scaleSampleFrequency; - regs.gyr_conf.gyr_bwp = 2; // TODO: maybe expose this, it's oversampling stuff - - regs.gyr_range.gyr_range = self.fullScaleRange; - - return [self.gyroConfig writeDataAsync:[NSData dataWithBytes:®s length:sizeof(bmi160_regs_gyr_t)]]; -} - -- (uint8_t)scaleSampleFrequency -{ - if (self.sampleFrequency > 1600) { - return BMI160_GYRO_OUTPUT_DATA_RATE_3200HZ; - } else if (self.sampleFrequency > 800) { - return BMI160_GYRO_OUTPUT_DATA_RATE_1600HZ; - } else if (self.sampleFrequency > 400) { - return BMI160_GYRO_OUTPUT_DATA_RATE_800HZ; - } else if (self.sampleFrequency > 200) { - return BMI160_GYRO_OUTPUT_DATA_RATE_400HZ; - } else if (self.sampleFrequency > 100) { - return BMI160_GYRO_OUTPUT_DATA_RATE_200HZ; - } else if (self.sampleFrequency > 50) { - return BMI160_GYRO_OUTPUT_DATA_RATE_100HZ; - } else if (self.sampleFrequency > 25) { - return BMI160_GYRO_OUTPUT_DATA_RATE_50HZ; - } else { - return BMI160_GYRO_OUTPUT_DATA_RATE_25HZ; - } -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/GyroBMI160/bmi160.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/GyroBMI160/bmi160.h deleted file mode 100644 index 6db65b6..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/GyroBMI160/bmi160.h +++ /dev/null @@ -1,1302 +0,0 @@ -#ifndef __BMI160_H__ -#define __BMI160_H__ -/** - * bmi160.h - * MetaWear - * - * Created by Stephen Schiffli on 5/19/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#include - -#define BMI160_SPI_RD_MASK 0x80 /* for spi read transactions on SPI the - MSB has to be set */ - -#define BMI160_I2C_ADDR1 0x68 /**< I2C Address needs to be changed */ -#define BMI160_I2C_ADDR2 0x69 /**< I2C Address needs to be changed */ -#define BMI160_BMM150_I2C_ADDRESS 0x10 /**< I2C address of BMM150*/ - -#define BMI160_CHIP_ID 0xD1 - -#define BMI160_MAXIMUM_TIMEOUT ((uint8_t)10) - -#define E_BMI160_NULL_PTR ((int8_t)-127) -#define E_BMI160_COMM_RES ((int8_t)-1) -#define E_BMI160_OUT_OF_RANGE ((int8_t)-2) -#define E_BMI160_BUSY ((int8_t)-3) -#define SUCCESS ((uint8_t)0) -#define ERROR ((int8_t)-1) - -/* Constants */ -#define BMI160_NULL 0 -#define BMI160_DELAY_SETTLING_TIME 5 - -#define BMI160_USER_CHIP_ID_ADDR 0x00 -#define BMI160_USER_ERROR_ADDR 0x02 -#define BMI160_USER_PMU_STAT_ADDR 0x03 - -/*******************/ -/**\name MAG DATA REGISTERS */ -/*******************/ -#define BMI160_USER_DATA_0_ADDR 0x04 -#define BMI160_USER_DATA_1_ADDR 0x05 -#define BMI160_USER_DATA_2_ADDR 0x06 -#define BMI160_USER_DATA_3_ADDR 0x07 -#define BMI160_USER_DATA_4_ADDR 0x08 -#define BMI160_USER_DATA_5_ADDR 0x09 -#define BMI160_USER_DATA_6_ADDR 0x0A -#define BMI160_USER_DATA_7_ADDR 0x0B - -/*******************/ -/**\name GYRO DATA REGISTERS */ -/*******************/ -#define BMI160_USER_DATA_8_ADDR 0x0C -#define BMI160_USER_DATA_9_ADDR 0x0D -#define BMI160_USER_DATA_10_ADDR 0x0E -#define BMI160_USER_DATA_11_ADDR 0x0F -#define BMI160_USER_DATA_12_ADDR 0x10 -#define BMI160_USER_DATA_13_ADDR 0x11 - -/*******************/ -/**\name ACCEL DATA REGISTERS */ -/*******************/ -#define BMI160_USER_DATA_14_ADDR 0x12 -#define BMI160_USER_DATA_15_ADDR 0x13 -#define BMI160_USER_DATA_16_ADDR 0x14 -#define BMI160_USER_DATA_17_ADDR 0x15 -#define BMI160_USER_DATA_18_ADDR 0x16 -#define BMI160_USER_DATA_19_ADDR 0x17 - -/*******************/ -/**\name SENSOR TIME REGISTERS */ -/*******************/ -#define BMI160_USER_SENSORTIME_0_ADDR 0x18 -#define BMI160_USER_SENSORTIME_1_ADDR 0x19 -#define BMI160_USER_SENSORTIME_2_ADDR 0x1A - -/*******************/ -/**\name STATUS REGISTER FOR SENSOR STATUS FLAG */ -/*******************/ -#define BMI160_USER_STAT_ADDR 0x1B - -/*******************/ -/**\name INTERRUPY STATUS REGISTERS */ -/*******************/ -#define BMI160_USER_INTR_STAT_0_ADDR 0x1C -#define BMI160_USER_INTR_STAT_1_ADDR 0x1D -#define BMI160_USER_INTR_STAT_2_ADDR 0x1E -#define BMI160_USER_INTR_STAT_3_ADDR 0x1F - -/*******************/ -/**\name TEMPERATURE REGISTERS */ -/*******************/ -#define BMI160_USER_TEMPERATURE_0_ADDR 0x20 -#define BMI160_USER_TEMPERATURE_1_ADDR 0x21 - -/*******************/ -/**\name FIFO REGISTERS */ -/*******************/ -#define BMI160_USER_FIFO_LENGTH_0_ADDR 0x22 -#define BMI160_USER_FIFO_LENGTH_1_ADDR 0x23 -#define BMI160_USER_FIFO_DATA_ADDR 0x24 - -/***************************************************/ -/**\name ACCEL CONFIG REGISTERS FOR ODR, BANDWIDTH AND UNDERSAMPLING*/ -/******************************************************/ -#define BMI160_USER_ACCEL_CONFIG_ADDR 0x40 - -/*******************/ -/**\name ACCEL RANGE */ -/*******************/ -#define BMI160_USER_ACCEL_RANGE_ADDR 0x41 - -/***************************************************/ -/**\name GYRO CONFIG REGISTERS FOR ODR AND BANDWIDTH */ -/******************************************************/ -#define BMI160_USER_GYRO_CONFIG_ADDR 0x42 - -/*******************/ -/**\name GYRO RANGE */ -/*******************/ -#define BMI160_USER_GYRO_RANGE_ADDR 0x43 - -/***************************************************/ -/**\name MAG CONFIG REGISTERS FOR ODR*/ -/******************************************************/ -#define BMI160_USER_MAG_CONFIG_ADDR 0x44 - -/***************************************************/ -/**\name REGISTER FOR GYRO AND ACCEL DOWNSAMPLING RATES FOR FIFO*/ -/******************************************************/ -#define BMI160_USER_FIFO_DOWN_ADDR 0x45 - -/***************************************************/ -/**\name FIFO CONFIG REGISTERS*/ -/******************************************************/ -#define BMI160_USER_FIFO_CONFIG_0_ADDR 0x46 -#define BMI160_USER_FIFO_CONFIG_1_ADDR 0x47 - -/***************************************************/ -/**\name MAG INTERFACE REGISTERS*/ -/******************************************************/ -#define BMI160_USER_MAG_IF_0_ADDR 0x4B -#define BMI160_USER_MAG_IF_1_ADDR 0x4C -#define BMI160_USER_MAG_IF_2_ADDR 0x4D -#define BMI160_USER_MAG_IF_3_ADDR 0x4E -#define BMI160_USER_MAG_IF_4_ADDR 0x4F - -/***************************************************/ -/**\name INTERRUPT ENABLE REGISTERS*/ -/******************************************************/ -#define BMI160_USER_INTR_ENABLE_0_ADDR 0x50 -#define BMI160_USER_INTR_ENABLE_1_ADDR 0x51 -#define BMI160_USER_INTR_ENABLE_2_ADDR 0x52 -#define BMI160_USER_INTR_OUT_CTRL_ADDR 0x53 - -/***************************************************/ -/**\name LATCH DURATION REGISTERS*/ -/******************************************************/ -#define BMI160_USER_INTR_LATCH_ADDR 0x54 - -/***************************************************/ -/**\name MAP INTERRUPT 1 and 2 REGISTERS*/ -/******************************************************/ -#define BMI160_USER_INTR_MAP_0_ADDR 0x55 -#define BMI160_USER_INTR_MAP_1_ADDR 0x56 -#define BMI160_USER_INTR_MAP_2_ADDR 0x57 - -/***************************************************/ -/**\name DATA SOURCE REGISTERS*/ -/******************************************************/ -#define BMI160_USER_INTR_DATA_0_ADDR 0x58 -#define BMI160_USER_INTR_DATA_1_ADDR 0x59 - -/***************************************************/ -/**\name -INTERRUPT THRESHOLD, HYSTERESIS, DURATION, MODE CONFIGURATION REGISTERS*/ -/******************************************************/ -#define BMI160_USER_INTR_LOWHIGH_0_ADDR 0x5A -#define BMI160_USER_INTR_LOWHIGH_1_ADDR 0x5B -#define BMI160_USER_INTR_LOWHIGH_2_ADDR 0x5C -#define BMI160_USER_INTR_LOWHIGH_3_ADDR 0x5D -#define BMI160_USER_INTR_LOWHIGH_4_ADDR 0x5E -#define BMI160_USER_INTR_MOTION_0_ADDR 0x5F -#define BMI160_USER_INTR_MOTION_1_ADDR 0x60 -#define BMI160_USER_INTR_MOTION_2_ADDR 0x61 -#define BMI160_USER_INTR_MOTION_3_ADDR 0x62 -#define BMI160_USER_INTR_TAP_0_ADDR 0x63 -#define BMI160_USER_INTR_TAP_1_ADDR 0x64 -#define BMI160_USER_INTR_ORIENT_0_ADDR 0x65 -#define BMI160_USER_INTR_ORIENT_1_ADDR 0x66 -#define BMI160_USER_INTR_FLAT_0_ADDR 0x67 -#define BMI160_USER_INTR_FLAT_1_ADDR 0x68 - -/***************************************************/ -/**\name FAST OFFSET CONFIGURATION REGISTER*/ -/******************************************************/ -#define BMI160_USER_FOC_CONFIG_ADDR 0x69 - -/***************************************************/ -/**\name MISCELLANEOUS CONFIGURATION REGISTER*/ -/******************************************************/ -#define BMI160_USER_CONFIG_ADDR 0x6A - -/***************************************************/ -/**\name SERIAL INTERFACE SETTINGS REGISTER*/ -/******************************************************/ -#define BMI160_USER_IF_CONFIG_ADDR 0x6B - -/***************************************************/ -/**\name GYRO POWER MODE TRIGGER REGISTER */ -/******************************************************/ -#define BMI160_USER_PMU_TRIGGER_ADDR 0x6C - -/***************************************************/ -/**\name SELF_TEST REGISTER*/ -/******************************************************/ -#define BMI160_USER_SELF_TEST_ADDR 0x6D - -/***************************************************/ -/**\name SPI,I2C SELECTION REGISTER*/ -/******************************************************/ -#define BMI160_USER_NV_CONFIG_ADDR 0x70 - -/***************************************************/ -/**\name ACCEL AND GYRO OFFSET REGISTERS*/ -/******************************************************/ -#define BMI160_USER_OFFSET_0_ADDR 0x71 -#define BMI160_USER_OFFSET_1_ADDR 0x72 -#define BMI160_USER_OFFSET_2_ADDR 0x73 -#define BMI160_USER_OFFSET_3_ADDR 0x74 -#define BMI160_USER_OFFSET_4_ADDR 0x75 -#define BMI160_USER_OFFSET_5_ADDR 0x76 -#define BMI160_USER_OFFSET_6_ADDR 0x77 - -/***************************************************/ -/**\name STEP COUNTER INTERRUPT REGISTERS*/ -/******************************************************/ -#define BMI160_USER_STEP_COUNT_0_ADDR 0x78 -#define BMI160_USER_STEP_COUNT_1_ADDR 0x79 - -/***************************************************/ -/**\name STEP COUNTER CONFIGURATION REGISTERS*/ -/******************************************************/ -#define BMI160_USER_STEP_CONFIG_0_ADDR 0x7A -#define BMI160_USER_STEP_CONFIG_1_ADDR 0x7B - -/***************************************************/ -/**\name COMMAND REGISTER*/ -/******************************************************/ -#define BMI160_CMD_COMMANDS_ADDR 0x7E - -/***************************************************/ -/**\name PAGE REGISTERS*/ -/******************************************************/ -#define BMI160_CMD_EXT_MODE_ADDR 0x7F -#define BMI160_COM_C_TRIM_FIVE_ADDR 0x85 - -#define BMM150_MAX_RETRY_WAKEUP 5 -#define BMM150_POWER_OFF 0x00 -#define BMM150_POWER_ON 0x01 -#define BMM150_FORCE_MODE 0x02 -#define BMM150_POWER_ON_SUCCESS 0 -#define BMM150_POWER_ON_FAIL ((int8_t)-1) - -#define BMM150_CALIB_HEX_FOUR_THOUSAND 0x4000 -#define BMM150_CALIB_HEX_LACKS 0x100000 -#define BMM150_CALIB_HEX_A_ZERO 0xA0 -#define BMM150_DIG_X1 0 -#define BMM150_DIG_Y1 1 -#define BMM150_DIG_X2 2 -#define BMM150_DIG_Y3 3 -#define BMM150_DIG_XY1 4 -#define BMM150_DIG_XY2 5 -#define BMM150_DIG_Z1_LSB 6 -#define BMM150_DIG_Z1_MSB 7 -#define BMM150_DIG_Z2_LSB 8 -#define BMM150_DIG_Z2_MSB 9 -#define BMM150_DIG_DIG_Z3_LSB 10 -#define BMM150_DIG_DIG_Z3_MSB 11 -#define BMM150_DIG_DIG_Z4_LSB 12 -#define BMM150_DIG_DIG_Z4_MSB 13 -#define BMM150_DIG_DIG_XYZ1_LSB 14 -#define BMM150_DIG_DIG_XYZ1_MSB 15 - -/**************************************************************/ -/**\name STRUCTURE DEFINITIONS */ -/**************************************************************/ -/*! -* @brief bmi160 structure -* This structure holds all relevant information about bmi160 -*/ -typedef struct { - uint8_t chip_id; /**< chip id of BMI160 */ - uint8_t dev_addr; /**< device address of BMI160 */ - uint8_t mag_manual_enable; /**< used for check the mag manual/auto mode status */ -// BMI160_WR_FUNC_PTR;/**< bus write function pointer */ -// BMI160_RD_FUNC_PTR;/**< bus read function pointer */ -// BMI160_BRD_FUNC_PTR;/**< burst write function pointer */ -// void (*delay_msec)(BMI160_MDELAY_DATA_TYPE);/**< delay function pointer */ -} bmi160_t; - -typedef struct { - uint8_t fatal_err:1; - uint8_t err_code:4; - uint8_t i2c_fail_err:1; - uint8_t drop_cmd_err:1; - uint8_t mag_drdy_err:1; -} bmi160_reg_err_reg_t; - -typedef struct { - uint8_t mag_pmu_status:2; - uint8_t gyr_pmu_status:2; - uint8_t acc_pmu_status:2; - uint8_t :2; -} bmi160_reg_pmu_status_t; - -/*! - * @brief Structure containing bmm150 and akm09911 - * magnetometer values for x,y and - * z-axis in int16_t - */ -typedef struct { - int16_t x; /**< BMM150 and AKM09911 X raw data*/ - int16_t y; /**< BMM150 and AKM09911 Y raw data*/ - int16_t z; /**< BMM150 and AKM09911 Z raw data*/ -} bmi160_mag_data_t; - -/*! - * @brief Structure containing bmm150 xyz data and temperature - */ -typedef struct { - int16_t x; /**< BMM150 X raw data*/ - int16_t y; /**< BMM150 Y raw data*/ - int16_t z; /** -#import -@class MBLGyroData; -@class MBLNumericData; - -NS_ASSUME_NONNULL_BEGIN - -/** - Gyro axis - */ -typedef NS_ENUM(uint8_t, MBLGyroAxis) { - MBLGyroAxisX = 0, - MBLGyroAxisY = 1, - MBLGyroAxisZ = 2 -}; - -/** - Interface to an abstract on-board gyroscope. If you need more advanced - features then upcast to the specific gyroscope on your board, MBLGyroBMI160. - @see MBLGyroBMI160 - */ -@interface MBLGyro : MBLModule - -/** - The frequency, in hertz, for providing gyro samples to the event handlers. - - @discussion The value of this property is capped to minimum and maximum values; - the maximum value is determined by the maximum frequency supported by the hardware. - If your app is sensitive to the intervals of acceleration data, it should always - check the timestamps of the delivered MBLGyroData instances to determine the - true update interval. - */ -@property (nonatomic) double sampleFrequency; - -/** - Event representing a new gryo data sample complete with x, y, and z - axis data. This event will occur at the neareast hardware value - to sampleFrequency. Event callbacks will be provided an MBLGyroData object. - */ -@property (nonatomic, readonly) MBLEvent *dataReadyEvent; -/** - Event representing a new gyro X-axis sample. This event will occur - at sampleFrequency. Event callbacks will be provided an MBLNumericData - object whose double value will be rotation rate in degrees per second. - */ -@property (nonatomic, readonly) MBLEvent *xAxisReadyEvent; -/** - Event representing a new gyro Y-axis sample. This event will occur - at sampleFrequency. Event callbacks will be provided an MBLNumericData - object whose double value will be rotation rate in degrees per second. - */ -@property (nonatomic, readonly) MBLEvent *yAxisReadyEvent; -/** - Event representing a new gyro Z-axis sample. This event will occur - at sampleFrequency. Event callbacks will be provided an MBLNumericData - object whose double value will be rotation rate in degrees per second. - */ -@property (nonatomic, readonly) MBLEvent *zAxisReadyEvent; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/MBLGyro.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/MBLGyro.m deleted file mode 100644 index 3d167b1..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/MBLGyro.m +++ /dev/null @@ -1,65 +0,0 @@ -/** - * MBLGyro.m - * MetaWear - * - * Created by Stephen Schiffli on 5/19/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLGyro.h" -#import "MBLGyroBMI160+Private.h" -#import "MBLRegister+Private.h" -#import "MBLModule+Private.h" -#import "MBLNumericFormatter.h" - -@interface MBLGyro () -@property (nonatomic) MBLEvent *dataReadyEvent; -@property (nonatomic) MBLEvent *xAxisReadyEvent; -@property (nonatomic) MBLEvent *yAxisReadyEvent; -@property (nonatomic) MBLEvent *zAxisReadyEvent; -@end - -@implementation MBLGyro - -+ (instancetype)objectWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - return [[MBLGyroBMI160 alloc] initWithDevice:device moduleInfo:moduleInfo]; -} - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.sampleFrequency = 100; - } - return self; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/MBLGyroData.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/MBLGyroData.h deleted file mode 100644 index 80e953c..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/MBLGyroData.h +++ /dev/null @@ -1,69 +0,0 @@ -/** - * MBLGyroData.h - * MetaWear - * - * Created by Stephen Schiffli on 5/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Container for a single accelerometer sensor reading - */ -@interface MBLGyroData : MBLDataSample - -/** - The X-axis rotation rate in degrees per second. The sign follows the right - hand rule: If the right hand is wrapped around the X axis such that the tip - of the thumb points toward positive X, a positive rotation is one toward - the tips of the other four fingers. - */ -@property (nonatomic, readonly) double x; -/** - The Y-axis rotation rate in degrees per second. The sign follows the right - hand rule: If the right hand is wrapped around the Y axis such that the tip - of the thumb points toward positive Y, a positive rotation is one toward - the tips of the other four fingers. - */ -@property (nonatomic, readonly) double y; -/** - The Z-axis rotation rate in degrees per second. The sign follows the right - hand rule: If the right hand is wrapped around the Z axis such that the tip - of the thumb points toward positive Z, a positive rotation is one toward - the tips of the other four fingers. - */ -@property (nonatomic, readonly) double z; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/MBLGyroData.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/MBLGyroData.m deleted file mode 100644 index ca0959b..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Gyro/MBLGyroData.m +++ /dev/null @@ -1,66 +0,0 @@ -/** - * MBLGyroData.m - * MetaWear - * - * Created by Stephen Schiffli on 5/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLGyroData+Private.h" -#import "MBLDataSample+Private.h" - -@interface MBLGyroData() -@property (nonatomic) double x, y, z; -@end - -@implementation MBLGyroData - -- (instancetype)initWithX:(double)x y:(double)y z:(double)z timestamp:(NSDate *)timestamp; -{ - self = [super initWithTimestamp:timestamp]; - if (self) { - self.x = x; - self.y = y; - self.z = z; - } - return self; -} - -- (NSString *)description -{ - return [NSString stringWithFormat:@"%f,%f,%f", self.x, self.y, self.z]; -} - -- (NSString *)csvRepresentation -{ - return [NSString stringWithFormat:@"%f,%f,%f,%f\n", self.timestamp.timeIntervalSince1970, self.x, self.y, self.z]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/HapticBuzzer/MBLHapticBuzzer.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/HapticBuzzer/MBLHapticBuzzer.h deleted file mode 100644 index 91f6702..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/HapticBuzzer/MBLHapticBuzzer.h +++ /dev/null @@ -1,64 +0,0 @@ -/** - * MBLHapticBuzzer.h - * MetaWear - * - * Created by Stephen Schiffli on 8/2/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface to external haptic or buzzers - */ -@interface MBLHapticBuzzer : MBLModule - -/** - Turn on Haptic Driver. - @param dcycle Duty cycle (0-248), relative strength of buzz - @param pwidth Duration of buzz in mSec - @param completion Callback when the buzz is complete - */ -- (BFTask *)startHapticWithDutyCycleAsync:(uint8_t)dcycle pulseWidth:(uint16_t)pwidth completion:(nullable MBLVoidHandler)completion; - -/** - Turn on Buzzer Driver. - @param pwidth Duration of buzz in mSec - @param completion Callback when the buzz is complete - */ -- (BFTask *)startBuzzerWithPulseWidthAsync:(uint16_t)pwidth completion:(nullable MBLVoidHandler)completion; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/HapticBuzzer/MBLHapticBuzzer.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/HapticBuzzer/MBLHapticBuzzer.m deleted file mode 100644 index 37beece..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/HapticBuzzer/MBLHapticBuzzer.m +++ /dev/null @@ -1,88 +0,0 @@ -/** - * MBLHapticBuzzer.m - * MetaWear - * - * Created by Stephen Schiffli on 8/2/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLHapticBuzzer.h" -#import "MBLRegister+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLMetaWearManager+Private.h" - -@interface MBLHapticBuzzer () -@property (nonatomic) MBLRegister *pulse; -@end - -@implementation MBLHapticBuzzer - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.pulse = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLFormat alloc] initEncodedDataWithLength:4]]; - } - return self; -} - -- (BFTask *)startHapticWithDutyCycleAsync:(uint8_t)dcycle pulseWidth:(uint16_t)pwidth completion:(MBLVoidHandler)completion -{ - //Byte 3: 0: 2kHz, 1: 4kHz (4kHz for Buzzer, 2kHz for Motor) - uint8_t data[] = { dcycle, (pwidth & 0xff), (pwidth >> 8), 0x00 }; - int dataSize = sizeof(data) / sizeof(data[0]); - - if (completion) { - dispatch_after(dispatch_time(DISPATCH_TIME_NOW, pwidth * NSEC_PER_MSEC), dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{ - [[MBLMetaWearManager dispatchQueue] addOperationWithBlock:^{ - completion(); - }]; - }); - } - return [self.pulse writeDataAsync:[NSData dataWithBytes:data length:dataSize]]; -} - -- (BFTask *)startBuzzerWithPulseWidthAsync:(uint16_t)pwidth completion:(MBLVoidHandler)completion -{ - uint8_t data[] = { 124, (pwidth & 0xff), (pwidth >> 8), 0x01 }; - int dataSize = sizeof(data) / sizeof(data[0]); - - if (completion) { - dispatch_after(dispatch_time(DISPATCH_TIME_NOW, pwidth * NSEC_PER_MSEC), dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{ - [[MBLMetaWearManager dispatchQueue] addOperationWithBlock:^{ - completion(); - }]; - }); - } - return [self.pulse writeDataAsync:[NSData dataWithBytes:data length:dataSize]]; -} - - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Hygrometer/HygrometerBME280/MBLHygrometerBME280.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Hygrometer/HygrometerBME280/MBLHygrometerBME280.h deleted file mode 100644 index aae4a8f..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Hygrometer/HygrometerBME280/MBLHygrometerBME280.h +++ /dev/null @@ -1,73 +0,0 @@ -/** - * MBLHygrometerBME280.h - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Hygrometer oversampling rates - */ -typedef NS_ENUM(uint8_t, MBLHygrometerBME280Oversample) { - MBLHygrometerBME280Oversample1X = 1, // default - MBLHygrometerBME280Oversample2X = 2, - MBLHygrometerBME280Oversample4X = 3, - MBLHygrometerBME280Oversample8X = 4, - MBLHygrometerBME280Oversample16X = 5, -}; - -/** - Interface to a BME280 humidity sensor - */ -@interface MBLHygrometerBME280 : MBLHygrometer - -/** - Use this to set humidity sampling mode, higher values produce more accurate - results but will use more power. - */ -@property (nonatomic) MBLHygrometerBME280Oversample humidityOversampling; - -/** - Data representing the relative humidity of the environment. - Event callbacks will be provided an MBLNumericData object whose - double value will be percent relative humidity [0.0-100.0]. - - @waring Period of event will depend on standbyTime from the MBLBarometerBMP280. TODO: Remove this coupling - */ -@property (nonatomic, readonly) MBLEvent *periodicHumidity; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Hygrometer/HygrometerBME280/MBLHygrometerBME280.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Hygrometer/HygrometerBME280/MBLHygrometerBME280.m deleted file mode 100644 index 2bae2a7..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Hygrometer/HygrometerBME280/MBLHygrometerBME280.m +++ /dev/null @@ -1,72 +0,0 @@ -/** - * MBLHygrometerBME280.m - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - - -#import "MBLHygrometerBME280.h" -#import "MBLHygrometer+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLRegister+Private.h" -#import "MBLData+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLHygrometerBME280PeriodicHumidityEvent.h" - -@interface MBLHygrometerBME280 () -@property (nonatomic) MBLEvent *periodicHumidity; -@property (nonatomic) MBLRegister *mode; -@end - -@implementation MBLHygrometerBME280 - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.humidity = [[MBLData alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initDoubleWithLength:4 isSigned:NO scale:1.0 / 1024.0]]; - - self.humidityOversampling = MBLHygrometerBME280Oversample1X; - - self.periodicHumidity = [[MBLHygrometerBME280PeriodicHumidityEvent alloc] initWithHygrometer:self]; - self.mode = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - uint8_t params = self.humidityOversampling; - return [self.mode writeDataAsync:[NSData dataWithBytes:¶ms length:sizeof(params)]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Hygrometer/MBLHygrometer.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Hygrometer/MBLHygrometer.h deleted file mode 100644 index 4863057..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Hygrometer/MBLHygrometer.h +++ /dev/null @@ -1,59 +0,0 @@ -/** - * MBLHygrometer.h - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -@class MBLNumericData; - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface to an abstract hygrometer sensor. If you need more advanced - features then upcast to the specific sensor on your board, MBLHygrometerBME280. - @see MBLHygrometerBME280 - */ -@interface MBLHygrometer : MBLModule - -/** - Data representing the relative humidity of the environment. - Event callbacks will be provided an MBLNumericData object whose - double value will be percent relative humidity [0.0-100.0]. - */ -@property (nonatomic, readonly, nullable) MBLData *humidity; - -@end - -NS_ASSUME_NONNULL_END \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Hygrometer/MBLHygrometer.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Hygrometer/MBLHygrometer.m deleted file mode 100644 index c5e03cd..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Hygrometer/MBLHygrometer.m +++ /dev/null @@ -1,53 +0,0 @@ -/** - * MBLHygrometer.m - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLHygrometer+Private.h" -#import "MBLHygrometerBME280.h" -#import "MBLMetaWear+Private.h" -#import "MBLRegister+Private.h" -#import "MBLNumericFormatter.h" - -@interface MBLHygrometer () -@property (nonatomic) MBLData *humidity; -@end - -@implementation MBLHygrometer - -+ (instancetype)objectWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - return [[MBLHygrometerBME280 alloc] initWithDevice:device moduleInfo:moduleInfo]; -} - -@end \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/I2C/MBLI2C.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/I2C/MBLI2C.h deleted file mode 100644 index 01da668..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/I2C/MBLI2C.h +++ /dev/null @@ -1,59 +0,0 @@ -/** - * MBLI2C.h - * MetaWear - * - * Created by Stephen Schiffli on 1/20/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -@class MBLDataSample; - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface for reading/writing externally connected I2C devices. - */ -DEPRECATED_MSG_ATTRIBUTE("Use MBLSerial instead") -@interface MBLI2C : MBLModule - -- (nullable MBLI2CData *)dataAtDeviceAddress:(uint8_t)deviceAddress - registerAddress:(uint8_t)registerAddress - length:(uint8_t)length DEPRECATED_MSG_ATTRIBUTE("Use MBLSerial instead"); - -- (nullable MBLI2CData *)numberAtDeviceAddress:(uint8_t)deviceAddress - registerAddress:(uint8_t)registerAddress - length:(uint8_t)length - isSigned:(BOOL)isSigned DEPRECATED_MSG_ATTRIBUTE("Use MBLSerial instead"); - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/I2C/MBLI2C.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/I2C/MBLI2C.m deleted file mode 100644 index c46982d..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/I2C/MBLI2C.m +++ /dev/null @@ -1,57 +0,0 @@ -/** - * MBLI2C.m - * MetaWear - * - * Created by Stephen Schiffli on 1/20/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLI2C.h" -#import "MBLModule+Private.h" -#import "MBLRegister+Private.h" - -@implementation MBLI2C - -- (MBLI2CData *)dataAtDeviceAddress:(uint8_t)deviceAddress - registerAddress:(uint8_t)registerAddress - length:(uint8_t)length -{ - return nil; -} - -- (MBLI2CData *)numberAtDeviceAddress:(uint8_t)deviceAddress - registerAddress:(uint8_t)registerAddress - length:(uint8_t)length - isSigned:(BOOL)isSigned -{ - return nil; -} - -@end \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/LED/MBLLED.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/LED/MBLLED.h deleted file mode 100644 index b5b4209..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/LED/MBLLED.h +++ /dev/null @@ -1,131 +0,0 @@ -/** - * MBLLED.h - * MetaWear - * - * Created by Stephen Schiffli on 8/1/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Specific color channel for the LED - */ -typedef NS_ENUM(uint8_t, MBLLEDColorChannel) { - MBLLEDColorChannelGreen = 0, - MBLLEDColorChannelRed = 1, - MBLLEDColorChannelBlue = 2 -}; - -/** - Interface to on-board LED - */ -@interface MBLLED : MBLModule - -/** - Display a specific color on the LED - @param color Which color the LED should be - @param intensity Scale from 0-1.0 on how bright the LED should be - */ -- (BFTask *)setLEDColorAsync:(MBLColor *)color withIntensity:(CGFloat)intensity; - -/** - Flash a specific color on the LED - @param color Which color the LED should flash - @param intensity Scale from 0-1.0 on how bright the LED should be - */ -- (BFTask *)flashLEDColorAsync:(MBLColor *)color withIntensity:(CGFloat)intensity; - -/** - Flash a specific color on the LED - @param color Which color the LED should flash - @param intensity Scale from 0-1.0 on how bright the LED should be - @param numberOfFlashes Number of times LED will flash before turning off - */ -- (BFTask *)flashLEDColorAsync:(MBLColor *)color withIntensity:(CGFloat)intensity numberOfFlashes:(uint8_t)numberOfFlashes; - -/** - Flash a specific color on the LED - @param color Which color the LED should flash - @param intensity Scale from 0-1.0 on how bright the LED should be - @param otime Time in mSec LED spends on - @param period Flash period lenght in mSec - */ -- (BFTask *)flashLEDColorAsync:(MBLColor *)color withIntensity:(CGFloat)intensity onTime:(uint16_t)otime andPeriod:(uint16_t)period; - - -#pragma mark - Advanced Settings -// These are typically not needed, see the simpler APIs above - -/** - Program one color channel of the LED, there are 3 total (red, blue, green). - Each one is programmed individually and then the whole LED is enabled by a - called to setLEDOn:withOptions: - @param channel Color channel being configured - @param onint ON Intensity (0-31) - @param ofint OFF Intensity (0-31) - @param rtime Time Rise (used for Flash mode only) - @param ftime Time Fall (used for Flash mode only) - @param otime Time On - @param period Time Period - @param offset Time Offset - @param repeat Repeat Count (0-254, 255: Forever) - */ -- (BFTask *)setLEDModeWithColorChannelAsync:(MBLLEDColorChannel)channel - onIntensity:(uint8_t)onint - offIntensity:(uint8_t)ofint - riseTime:(uint16_t)rtime - fallTime:(uint16_t)ftime - onTime:(uint16_t)otime - period:(uint16_t)period - offset:(uint16_t)offset - repeatCount:(uint8_t)repeat; - -/** - Change global LED state. - @param on YES turns LED on, NO, turns LED off - @param mode If on == YES then (0: pause, 1: play), - if on == NO then (0: Stop, 1: Stop and reset channels) - */ -- (BFTask *)setLEDOnAsync:(BOOL)on withOptions:(uint8_t)mode; - -/** - Certain hardware has additional modes for advanced features - @param data Bytes to write to the secondary mode register - */ -- (BFTask *)writeSecondaryMode:(NSData *)data; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/LED/MBLLED.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/LED/MBLLED.m deleted file mode 100644 index efd3175..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/LED/MBLLED.m +++ /dev/null @@ -1,265 +0,0 @@ -/** - * MBLLED.m - * MetaWear - * - * Created by Stephen Schiffli on 8/1/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLLED+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLRegister+Private.h" -#import "MBLNumericFormatter.h" - -@interface MBLLED() -@property (nonatomic) MBLRegister *play; -@property (nonatomic) MBLRegister *stop; -@property (nonatomic) MBLRegister *mode; -@property (nonatomic) MBLRegister *secondaryMode; -@end - -typedef struct __attribute__((packed)) { - uint8_t channelCount; - uint8_t secondaryModeLength; -} mw_led_module_info; - -@implementation MBLLED - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.play = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.stop = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.mode = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[[MBLFormat alloc] initEncodedDataWithLength:18]]; - if (moduleInfo.moduleRevision >= 1) { - mw_led_module_info *info = (mw_led_module_info *)moduleInfo.moduleData.bytes; - self.secondaryMode = [[MBLRegister alloc] initWithModule:self registerId:0x4 format:[[MBLFormat alloc] initEncodedDataWithLength:info->secondaryModeLength]]; - } - } - return self; -} - -- (BFTask *)setLEDColorAsync:(MBLColor *)color withIntensity:(CGFloat)intensity -{ - if (intensity < 0.0 || intensity > 1.0) { - [NSException raise:@"Invalid intensity value" - format:@"intensity of %f is invalid, valid range is [0, 1.0]", intensity]; - } - int scaledIntensity = (intensity * 31.0); - CGFloat red, blue, green; - static const uint16_t rtime = 0; - static const uint16_t ftime = 0; - static const uint16_t otime = 0x0800; - static const uint16_t period = 0x0800; - static const uint16_t offset = 0; - static const uint8_t repeat = 0xFF; - - MBLMetaWear *device = self.device; - [device incrementCount]; - BFTask *head = [BFTask taskWithResult:nil]; -#if TARGET_OS_IOS || TARGET_OS_TV - [color getRed:&red green:&green blue:&blue alpha:nil]; -#else - NSColor *rgbColor = [color colorUsingColorSpace:[NSColorSpace sRGBColorSpace]]; - red = rgbColor.redComponent; - green = rgbColor.greenComponent; - blue = rgbColor.blueComponent; -#endif - - BOOL isOn = NO; - int scaledRed = red * scaledIntensity; - int scaledBlue = blue * scaledIntensity; - int scaledGreen = green * scaledIntensity; - - head = [head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self setLEDOnAsync:NO withOptions:1]; - }]; - - if (scaledRed) { - isOn = YES; - head = [head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self setLEDModeWithColorChannelAsync:MBLLEDColorChannelRed - onIntensity:scaledRed - offIntensity:scaledRed - 1 - riseTime:rtime fallTime:ftime onTime:otime period:period offset:offset repeatCount:repeat]; - }]; - } - if (scaledGreen) { - isOn = YES; - head = [head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self setLEDModeWithColorChannelAsync:MBLLEDColorChannelGreen - onIntensity:scaledGreen - offIntensity:scaledGreen - 1 - riseTime:rtime fallTime:ftime onTime:otime period:period offset:offset repeatCount:repeat]; - }]; - } - if (scaledBlue) { - isOn = YES; - head = [head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self setLEDModeWithColorChannelAsync:MBLLEDColorChannelBlue - onIntensity:scaledBlue - offIntensity:scaledBlue - 1 - riseTime:rtime fallTime:ftime onTime:otime period:period offset:offset repeatCount:repeat]; - }]; - } - head = [head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self setLEDOnAsync:isOn withOptions:1]; - }]; - - head = [head continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - [device decrementCount]; - return task; - }]; - return head; -} - -- (BFTask *)flashLEDColorAsync:(MBLColor *)color withIntensity:(CGFloat)intensity -{ - return [self flashLEDColorAsync:color withIntensity:intensity onTime:200 andPeriod:800]; -} - -- (BFTask *)flashLEDColorAsync:(MBLColor *)color withIntensity:(CGFloat)intensity numberOfFlashes:(uint8_t)numberOfFlashes -{ - return [self flashLEDColorAsync:color withIntensity:intensity onTime:200 period:800 repeat:numberOfFlashes offIsZero:YES]; -} - -- (BFTask *)flashLEDColorAsync:(MBLColor *)color withIntensity:(CGFloat)intensity onTime:(uint16_t)otime andPeriod:(uint16_t)period -{ - return [self flashLEDColorAsync:color withIntensity:intensity onTime:otime period:period repeat:0xff offIsZero:NO]; -} - -- (BFTask *)flashLEDColorAsync:(MBLColor *)color withIntensity:(CGFloat)intensity onTime:(uint16_t)otime period:(uint16_t)period repeat:(uint8_t)repeat offIsZero:(BOOL)offIsZero -{ - if (intensity < 0.0 || intensity > 1.0) { - [NSException raise:@"Invalid intensity value" - format:@"intensity of %f is invalid, valid range is [0, 1.0]", intensity]; - } - - int scaledIntensity = (intensity * 31.0); - CGFloat red, blue, green; - const uint16_t rtime = otime / 2; - const uint16_t ftime = otime / 2; - static const uint16_t offset = 0; - - MBLMetaWear *device = self.device; - [device incrementCount]; - BFTask *head = [BFTask taskWithResult:nil]; -#if TARGET_OS_IOS || TARGET_OS_TV - [color getRed:&red green:&green blue:&blue alpha:nil]; -#else - NSColor *rgbColor = [color colorUsingColorSpace:[NSColorSpace sRGBColorSpace]]; - red = rgbColor.redComponent; - green = rgbColor.greenComponent; - blue = rgbColor.blueComponent; -#endif - BOOL isOn = NO; - int scaledRed = red * scaledIntensity; - int scaledBlue = blue * scaledIntensity; - int scaledGreen = green * scaledIntensity; - - head = [head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self setLEDOnAsync:NO withOptions:1]; - }]; - - if (scaledRed) { - isOn = YES; - head = [head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self setLEDModeWithColorChannelAsync:MBLLEDColorChannelRed - onIntensity:scaledRed - offIntensity:offIsZero ? 0 : scaledRed == 1 ? 0 : 1 - riseTime:rtime fallTime:ftime onTime:otime period:period offset:offset repeatCount:repeat]; - }]; - } - if (scaledGreen) { - isOn = YES; - head = [head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self setLEDModeWithColorChannelAsync:MBLLEDColorChannelGreen - onIntensity:scaledGreen - offIntensity:offIsZero ? 0 : scaledGreen == 1 ? 0 : 1 - riseTime:rtime fallTime:ftime onTime:otime period:period offset:offset repeatCount:repeat]; - }]; - } - if (scaledBlue) { - isOn = YES; - head = [head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self setLEDModeWithColorChannelAsync:MBLLEDColorChannelBlue - onIntensity:scaledBlue - offIntensity:offIsZero ? 0 : scaledBlue == 1 ? 0 : 1 - riseTime:rtime fallTime:ftime onTime:otime period:period offset:offset repeatCount:repeat]; - }]; - } - head = [head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self setLEDOnAsync:isOn withOptions:1]; - }]; - - head = [head continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - [device decrementCount]; - return task; - }]; - return head; -} - -- (BFTask *)setLEDModeWithColorChannelAsync:(MBLLEDColorChannel)channel - onIntensity:(uint8_t)onint - offIntensity:(uint8_t)ofint - riseTime:(uint16_t)rtime - fallTime:(uint16_t)ftime - onTime:(uint16_t)otime - period:(uint16_t)period - offset:(uint16_t)offset - repeatCount:(uint8_t)repeat -{ - mw_led_flash_params_t params = { 0 }; - params.channel = channel; - params.mode = 2; - params.on_intensity = onint; - params.off_intensity = ofint; - params.time_rise = rtime; - params.time_on = otime; - params.time_fall = ftime; - params.time_period = period; - params.time_offset = offset; - params.repeat_count = repeat; - return [self.mode writeDataAsync:[NSData dataWithBytes:¶ms length:sizeof(mw_led_flash_params_t)]]; -} - -- (BFTask *)setLEDOnAsync:(BOOL)on withOptions:(uint8_t)mode -{ - MBLRegister *reg = on ? self.play : self.stop; - return [reg writeByteAsync:mode]; -} - -- (BFTask *)writeSecondaryMode:(NSData *)data -{ - return self.secondaryMode ? [self.secondaryMode writeDataAsync:data] : [BFTask taskWithError:[NSError errorWithDomain:kMBLErrorDomain code:kMBLErrorOperationInvalid userInfo:@{NSLocalizedDescriptionKey : @"LED doesn't have secondaryMode."}]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MBLMagnetometer.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MBLMagnetometer.h deleted file mode 100644 index 35f1839..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MBLMagnetometer.h +++ /dev/null @@ -1,59 +0,0 @@ -/** - * MBLMagnetometer.h - * MetaWear - * - * Created by Stephen Schiffli on 1/5/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -@class MBLMagnetometerData; - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface to an abstract magnetometer. If you need more advanced - features then upcast to the specific sensor on your board, MBLMagnetometerBMM150. - @see MBLMagnetometerBMM150 - */ -@interface MBLMagnetometer : MBLModule - -/** - Data representing the magnetic field measured by magnetometer. - Event callbacks will be provided an MBLMagnetometerData object. - NOT YET IMPLEMENTED - */ -@property (nonatomic, readonly, nullable) MBLData *magneticField; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MBLMagnetometer.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MBLMagnetometer.m deleted file mode 100644 index d88d98f..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MBLMagnetometer.m +++ /dev/null @@ -1,59 +0,0 @@ -/** - * MBLMagnetometer.m - * MetaWear - * - * Created by Stephen Schiffli on 1/5/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLMagnetometer+Private.h" -#import "MBLMagnetometerBMM150.h" -#import "MBLMetaWear+Private.h" -#import "MBLRegister+Private.h" - -@interface MBLMagnetometer () -@property (nonatomic) MBLData *magneticField; -@end - -@implementation MBLMagnetometer -@synthesize magneticField = _noencode_magneticField; // TODO: Once we implement magneticField we can remove this - -+ (instancetype)objectWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - return [[MBLMagnetometerBMM150 alloc] initWithDevice:device moduleInfo:moduleInfo]; -} - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - return self; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MBLMagnetometerData.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MBLMagnetometerData.h deleted file mode 100644 index b5628b4..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MBLMagnetometerData.h +++ /dev/null @@ -1,60 +0,0 @@ -/** - * MBLMagnetometerData.h - * MetaWear - * - * Created by Stephen Schiffli on 1/5/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Container for a single magnetometer sensor reading - */ -@interface MBLMagnetometerData : MBLDataSample - -/** - Magnetic field along X axis in Tesla's - */ -@property (nonatomic, readonly) double x; -/** - Magnetic field along Y axis in Tesla's - */ -@property (nonatomic, readonly) double y; -/** - Magnetic field along Z axis in Tesla's - */ -@property (nonatomic, readonly) double z; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MBLMagnetometerData.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MBLMagnetometerData.m deleted file mode 100644 index 1f7abfc..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MBLMagnetometerData.m +++ /dev/null @@ -1,66 +0,0 @@ -/** - * MBLMagnetometerData.m - * MetaWear - * - * Created by Stephen Schiffli on 1/5/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLMagnetometerData+Private.h" -#import "MBLDataSample+Private.h" - -@interface MBLMagnetometerData() -@property (nonatomic) double x, y, z; -@end - -@implementation MBLMagnetometerData - -- (instancetype)initWithX:(double)x y:(double)y z:(double)z timestamp:(NSDate *)timestamp; -{ - self = [super initWithTimestamp:timestamp]; - if (self) { - self.x = x; - self.y = y; - self.z = z; - } - return self; -} - -- (NSString *)description -{ - return [NSString stringWithFormat:@"%f,%f,%f", self.x, self.y, self.z]; -} - -- (NSString *)csvRepresentation -{ - return [NSString stringWithFormat:@"%f,%f,%f,%f\n", self.timestamp.timeIntervalSince1970, self.x, self.y, self.z]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150.h deleted file mode 100644 index 73503db..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150.h +++ /dev/null @@ -1,69 +0,0 @@ -/** - * MBLMagnetometerBMM150.h - * MetaWear - * - * Created by Stephen Schiffli on 1/6/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Magnetometer power presets - */ -typedef NS_ENUM(uint8_t, MBLMagnetometerBMM150Preset) { - MBLMagnetometerBMM150PresetLowPower = 0, - MBLMagnetometerBMM150PresetRegular = 1, - MBLMagnetometerBMM150PresetEnhancedRegular = 2, - MBLMagnetometerBMM150PresetHighAccuracy = 3 -}; - -/** - Interface to a BMM150 magnetometer sensor - */ -@interface MBLMagnetometerBMM150 : MBLMagnetometer - -/** - This affects the power, accuracy, and frequency of periodicMagneticField event - */ -@property (nonatomic) MBLMagnetometerBMM150Preset powerPreset; - - -/** - Data representing the periodic magnetic field measured by magnetometer. - Event callbacks will be provided an MBLMagnetometerData object. - */ -@property (nonatomic, readonly) MBLEvent *periodicMagneticField; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150.m deleted file mode 100644 index 1d22022..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150.m +++ /dev/null @@ -1,146 +0,0 @@ -/** - * MBLMagnetometerBMM150.m - * MetaWear - * - * Created by Stephen Schiffli on 1/6/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLMagnetometerBMM150.h" -#import "MBLMagnetometer+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLRegister+Private.h" -#import "MBLData+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLMagnetometerBMM150PeriodicMagneticFieldEvent.h" -#import "MBLMagnetometerBMM150Format.h" -#import "MBLLogger.h" - -/** - Magnetometer sample frequencies - */ -typedef NS_ENUM(uint8_t, MBLMagnetometerBMM150SampleFrequency) { - MBLMagnetometerBMM150SampleFrequency2Hz = 1, - MBLMagnetometerBMM150SampleFrequency6Hz = 2, - MBLMagnetometerBMM150SampleFrequency8Hz = 3, - MBLMagnetometerBMM150SampleFrequency10Hz = 0, - MBLMagnetometerBMM150SampleFrequency15Hz = 4, - MBLMagnetometerBMM150SampleFrequency20Hz = 5, - MBLMagnetometerBMM150SampleFrequency25Hz = 6, - MBLMagnetometerBMM150SampleFrequency30Hz = 7 -}; - -@interface MBLMagnetometerBMM150 () -@property (nonatomic) MBLRegister *magPowerMode; -@property (nonatomic) MBLRegister *dataRate; -@property (nonatomic) MBLRegister *dataRepetitions; -@property (nonatomic) MBLEvent *periodicMagneticField; -@end - -@implementation MBLMagnetometerBMM150 - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.magneticField = nil; - - self.magPowerMode = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.dataRate = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[[MBLNumericFormatter alloc] initEncodedDataWithLength:1]]; - self.dataRepetitions = [[MBLRegister alloc] initWithModule:self registerId:0x4 format:[[MBLNumericFormatter alloc] initEncodedDataWithLength:2]]; - self.periodicMagneticField = [[MBLMagnetometerBMM150PeriodicMagneticFieldEvent alloc] initWithMagnetometer:self]; - - // From Matt: The "Low power preset" should be the MetaWear default in the apps. - self.powerPreset = MBLMagnetometerBMM150PresetLowPower; - } - return self; -} - -- (MBLData *)magneticField -{ - MBLLog(MBLLogLevelWarning, @"magneticField not yet implemented, please use periodicMagneticField instead"); - return nil; -} - -- (BFTask *)performAsyncInitialization -{ - // Table 3: Recommended Presets - // | Preset | Rep X/Y | Rep Z | ODR | - // -------------------------------------------------- - // | Low Power | 3 | 3 | 10 | - // | Regular | 9 | 15 | 10 | - // | Enhanced | 15 | 27 | 10 | - // | High Accur | 47 | 83 | 20 | - MBLMagnetometerBMM150SampleFrequency sampleFrequency; - uint8_t repXY; - uint8_t repZ; - switch (self.powerPreset) { - case MBLMagnetometerBMM150PresetLowPower: - sampleFrequency = MBLMagnetometerBMM150SampleFrequency10Hz; - repXY = 3; - repZ = 3; - break; - case MBLMagnetometerBMM150PresetRegular: - sampleFrequency = MBLMagnetometerBMM150SampleFrequency10Hz; - repXY = 9; - repZ = 15; - break; - case MBLMagnetometerBMM150PresetEnhancedRegular: - sampleFrequency = MBLMagnetometerBMM150SampleFrequency10Hz; - repXY = 15; - repZ = 27; - break; - case MBLMagnetometerBMM150PresetHighAccuracy: - sampleFrequency = MBLMagnetometerBMM150SampleFrequency20Hz; - repXY = 47; - repZ = 83; - break; - } - - uint8_t data[] = { (repXY - 1) / 2 , (repZ - 1) }; - int dataSize = sizeof(data) / sizeof(data[0]); - uint8_t dataRate = sampleFrequency; - - return [[self.dataRepetitions writeDataAsync:[NSData dataWithBytes:&data length:dataSize]] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.dataRate writeByteAsync:dataRate]; - }]; -} - -- (BFTask *)performAsyncActivation -{ - return [self.magPowerMode writeByteAsync:1]; -} - -- (BFTask *)performAsyncDeactivation -{ - return [self.magPowerMode writeByteAsync:0]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/MechanicalSwitch/MBLMechanicalSwitch.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/MechanicalSwitch/MBLMechanicalSwitch.h deleted file mode 100644 index d178792..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/MechanicalSwitch/MBLMechanicalSwitch.h +++ /dev/null @@ -1,64 +0,0 @@ -/** - * MBLMechanicalSwitch.h - * MetaWear - * - * Created by Stephen Schiffli on 8/1/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -@class MBLNumericData; - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface to on-board switch (pushbutton) - */ -@interface MBLMechanicalSwitch : MBLModule - -/** - Data representing the current state of the switch. - Event callbacks will be provided an MBLNumericData object, where a bool value of - YES means pressed, and NO means released. - */ -@property (nonatomic, readonly) MBLData *switchValue; - -/** - Event representing a change in the push button state (pressed/depressed). - Event callbacks will be provided an MBLNumericData object, where a bool value of - YES means pressed, and NO means released. - */ -@property (nonatomic, readonly) MBLEvent *switchUpdateEvent; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/MechanicalSwitch/MBLMechanicalSwitch.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/MechanicalSwitch/MBLMechanicalSwitch.m deleted file mode 100644 index ec9f1f8..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/MechanicalSwitch/MBLMechanicalSwitch.m +++ /dev/null @@ -1,62 +0,0 @@ -/** - * MBLMechanicalSwitch.m - * MetaWear - * - * Created by Stephen Schiffli on 8/1/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLMechanicalSwitch.h" -#import "MBLRegister+Private.h" -#import "MBLEvent+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLDataSample+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLNumericData.h" -#import "MBLData+Private.h" - -@interface MBLMechanicalSwitch () -@property (nonatomic) MBLData *switchValue; -@property (nonatomic) MBLEvent *switchUpdateEvent; -@end - -@implementation MBLMechanicalSwitch - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.switchValue = [[MBLData alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.switchUpdateEvent = [[MBLEvent alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - } - return self; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Neopixel/MBLNeopixel.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Neopixel/MBLNeopixel.h deleted file mode 100644 index e985835..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Neopixel/MBLNeopixel.h +++ /dev/null @@ -1,88 +0,0 @@ -/** - * MBLNeopixel.h - * MetaWear - * - * Created by Stephen Schiffli on 8/12/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import - -@class MBLNeopixelStrand; - -NS_ASSUME_NONNULL_BEGIN - -/** - Coloring ordering of the NeoPixel strand (depends on the LED driver chip) - */ -typedef NS_ENUM(uint8_t, MBLColorOrdering) { - MBLColorOrderingRGB = 0, - MBLColorOrderingRBG = 1, - MBLColorOrderingGRB = 2, - MBLColorOrderingGBR = 3 -}; - -/** - Speed of the NeoPixel strand (depends on the LED driver chip) - */ -typedef NS_ENUM(uint8_t, MBLStrandSpeed) { - MBLStrandSpeedSlow = 0, - MBLStrandSpeedFast = 1 -}; - -/** - Direction the pixel colors shift during rotation - */ -typedef NS_ENUM(uint8_t, MBLRotationDirection) { - MBLRotationDirectionTowardsBoard = 0, - MBLRotationDirectionAwayFromBoard = 1 -}; - -/** - Interface to external NeoPixel stands - */ -@interface MBLNeopixel : MBLModule - -/** - Initialize memory on the MetaWear board for a NeoPixel strand - @param color Color ordering format - @param speed Operating speed - @param pin GPIO pin the strand is connected to - @param length Number of pixels to initialize - */ -- (MBLNeopixelStrand *)strandWithColor:(MBLColorOrdering)color - speed:(MBLStrandSpeed)speed - pin:(uint8_t)pin - length:(uint8_t)length; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Neopixel/MBLNeopixel.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Neopixel/MBLNeopixel.m deleted file mode 100644 index ec3b5d7..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Neopixel/MBLNeopixel.m +++ /dev/null @@ -1,177 +0,0 @@ -/** - * MBLNeopixel.m - * MetaWear - * - * Created by Stephen Schiffli on 8/12/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLNeopixel+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLRegister+Private.h" -#import "MBLNeopixelStrand+Private.h" -#import "MBLMetaWearManager+Private.h" - -static const uint8_t MW_NEOPIXEL_MAXSTRANDS = 3; - -@interface MBLNeopixel() -@property (nonatomic) MBLRegister *initialize; -@property (nonatomic) MBLRegister *hold; -@property (nonatomic) MBLRegister *clear; -@property (nonatomic) MBLRegister *pixel; -@property (nonatomic) MBLRegister *rotate; -@property (nonatomic) MBLRegister *deinitialize; - -@property (nonatomic) NSMutableArray *strands; -@end - -@implementation MBLNeopixel - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.initialize = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLFormat alloc] initEncodedDataWithLength:4]]; - self.hold = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - self.clear = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[[MBLFormat alloc] initEncodedDataWithLength:0]]; - self.pixel = [[MBLRegister alloc] initWithModule:self registerId:0x4 format:[[MBLFormat alloc] initEncodedDataWithLength:5]]; - self.rotate = [[MBLRegister alloc] initWithModule:self registerId:0x5 format:[[MBLFormat alloc] initEncodedDataWithLength:5]]; - self.deinitialize = [[MBLRegister alloc] initWithModule:self registerId:0x6 format:[[MBLFormat alloc] initEncodedDataWithLength:0]]; - - self.strands = [NSMutableArray array]; - for (int i = 0; i < MW_NEOPIXEL_MAXSTRANDS; i++) { - [self.strands addObject:[NSNumber numberWithBool:NO]]; - } - } - return self; -} - -- (MBLNeopixelStrand *)strandWithColor:(MBLColorOrdering)color - speed:(MBLStrandSpeed)speed - pin:(uint8_t)pin - length:(uint8_t)length -{ - return [[MBLNeopixelStrand alloc] initWithNeopixel:self color:color speed:speed pin:pin length:length]; -} - -- (BFTask *)initializeStrand:(MBLNeopixelStrand *)strand -{ - return [BFTask taskFromMetaWearWithBlock:^id{ - if (strand.index == 0xFF) { - for (int i = 0; i < MW_NEOPIXEL_MAXSTRANDS; i++) { - if (![self.strands[i] boolValue]) { - strand.index = i; - self.strands[i] = [NSNumber numberWithBool:YES]; - - uint8_t data[] = { strand.index, ((uint8_t)strand.speed << 2) | strand.color, strand.pin, strand.length }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.initialize writeDataAsync:[NSData dataWithBytes:data length:dataSize]]; - } - } - NSError *error = [NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorInsufficientMemory - userInfo:@{NSLocalizedDescriptionKey : @"MetaWear out of memory, can't perform action. Reset the MetaWear and use no more than 255 neopixel stands"}]; - return [BFTask taskWithError:error]; - } - return nil; - }]; -} - -- (BFTask *)deinitializeStrand:(MBLNeopixelStrand *)strand -{ - return [BFTask taskFromMetaWearWithBlock:^id{ - if (strand.index != 0xFF) { - uint8_t data[] = { strand.index }; - int dataSize = sizeof(data) / sizeof(data[0]); - - self.strands[strand.index] = [NSNumber numberWithBool:NO]; - strand.index = 0xFF; - return [self.deinitialize writeDataAsync:[NSData dataWithBytes:data length:dataSize]]; - } - return nil; - }]; -} - -- (BFTask *)deallocDeinitializeStrand:(MBLNeopixelStrand *)strand -{ - // This is special because we know strand is currently being deallocated - // so we must cache it's index value now! Can't wait until we are on the - // MetaWear queue (the only place were you really should access or set state) - uint8_t index = strand.index; - if (index != 0xFF) { - uint8_t data[] = { index }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [[self.deinitialize writeDataAsync:[NSData dataWithBytes:data length:dataSize]] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - // This must go on metawear queue since we are modifying collection - self.strands[index] = [NSNumber numberWithBool:NO]; - return nil; - }]; - } - return [BFTask taskWithResult:nil]; -} - -- (BFTask *)holdStrandAtIndex:(uint8_t)index withEnable:(BOOL)enable -{ - uint8_t data[] = { index, enable }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.hold writeDataAsync:[NSData dataWithBytes:data length:dataSize]]; -} - -- (BFTask *)clearStrandAtIndex:(uint8_t)index startPixel:(uint8_t)start endPixel:(uint8_t)end -{ - uint8_t data[] = { index, start, end }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.clear writeDataAsync:[NSData dataWithBytes:data length:dataSize]]; -} - -- (BFTask *)setPixelAtIndex:(uint8_t)index pixel:(uint8_t)pixel color:(MBLColor *)color; -{ - CGFloat red, blue, green; -#if TARGET_OS_IOS || TARGET_OS_TV - [color getRed:&red green:&green blue:&blue alpha:nil]; -#else - NSColor *rgbColor = [color colorUsingColorSpace:[NSColorSpace sRGBColorSpace]]; - red = rgbColor.redComponent; - green = rgbColor.greenComponent; - blue = rgbColor.blueComponent; -#endif - uint8_t data[] = { index, pixel, red * 0xFF, green * 0xFF, blue * 0xFF }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.pixel writeDataAsync:[NSData dataWithBytes:data length:dataSize]]; -} - -- (BFTask *)rotateStrandAtIndex:(uint8_t)index direction:(MBLRotationDirection)direction repetitions:(uint8_t)repetitions period:(uint16_t)period -{ - uint8_t data[] = { index, direction, repetitions, (period & 0xff), (period >> 8) }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.rotate writeDataAsync:[NSData dataWithBytes:data length:dataSize]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Neopixel/MBLNeopixelStrand.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Neopixel/MBLNeopixelStrand.h deleted file mode 100644 index b221eda..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Neopixel/MBLNeopixelStrand.h +++ /dev/null @@ -1,104 +0,0 @@ -/** - * MBLNeopixelStrand.h - * MetaWear - * - * Created by Stephen Schiffli on 3/2/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import - - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface to a strand of NeoPixels - */ -@interface MBLNeopixelStrand : NSObject - -/** - Initialize the strand, this must be called before invoking any other - commands on the strand. This should only be call once when the strand - is created. - */ -- (BFTask *)initializeAsync; -/** - Deinitialize the strand, this should only be call once right before - you are ready to drop all references to this object. This should - NOT be used to turn if off temporarily, for that use clearAllPixels. - */ -- (BFTask *)deinitializeAsync; - -/** - Set Pixel at strand index. - @param pixel Pixel index to be set - @param color Color the LED will be set to - */ -- (BFTask *)setPixelAsync:(uint8_t)pixel color:(MBLColor *)color; - -/** - This sets each pixel in the strand so that it looks like a rainbow. - Very cool for a quick demo! - @param hold If YES, then we hold the strand duing update so that - it instantly takes the rainbow colors, if NO then you will see each - pixel update individually - */ -- (BFTask *)setRainbowWithHoldAsync:(BOOL)hold; - -/** - Clear Neopixel strand. - @param startPixel Pixel index to start clearing from - @param endPixel Pixel index to clear to, inclusive - */ -- (BFTask *)clearFromStartPixelAsync:(uint8_t)startPixel endPixel:(uint8_t)endPixel; -/** - Clear all neopixel pixels in the strand - */ -- (BFTask *)clearAllPixelsAsync; - -/** - Hold Neopixel strand. - @param enable Hold enable - */ -- (BFTask *)holdStrandWithEnableAsync:(BOOL)enable; - -/** - Rotate strand at index. - @param direction Rotation direction - @param repetitions Number of times to repeat the rotation. Use 0xFF to rotate indefinitely, 0 to terminate - @param period Amount of time, in milliseconds, between rotations - */ -- (BFTask *)rotateStrandWithDirectionAsync:(MBLRotationDirection)direction repetitions:(uint8_t)repetitions period:(uint16_t)period; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Neopixel/MBLNeopixelStrand.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Neopixel/MBLNeopixelStrand.m deleted file mode 100644 index 438fe5a..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Neopixel/MBLNeopixelStrand.m +++ /dev/null @@ -1,169 +0,0 @@ -/** - * MBLNeopixelStrand.m - * MetaWear - * - * Created by Stephen Schiffli on 3/2/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLNeopixelStrand+Private.h" -#import "MBLNeopixel+Private.h" -#import "MBLModule+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLLogger.h" - -@interface MBLNeopixelStrand () -@property (nonatomic, weak) MBLNeopixel *neopixel; -@property (nonatomic) MBLColorOrdering color; -@property (nonatomic) MBLStrandSpeed speed; -@property (nonatomic) uint8_t pin; -@property (nonatomic) uint8_t length; -@property (nonatomic) uint8_t index; -@end - -@implementation MBLNeopixelStrand - -- (instancetype)initWithNeopixel:(MBLNeopixel *)neopixel color:(MBLColorOrdering)color speed:(MBLStrandSpeed)speed pin:(uint8_t)pin length:(uint8_t)length -{ - self = [super init]; - if (self) { - self.neopixel = neopixel; - self.color = color; - self.speed = speed; - self.pin = pin; - self.length = length; - self.index = 0xFF; - } - return self; -} - -- (void)dealloc -{ - if (self.index != 0xFF) { - if (self.neopixel.device.state == MBLConnectionStateConnected) { - MBLLog(MBLLogLevelWarning, @"please call deinitialize before releasing MBLNeopixelStrand objets"); - } else { - MBLLog(MBLLogLevelWarning, @"please call deinitialize before releasing MBLNeopixelStrand objets, please reset MetaWear to properly recover"); - } - [self.neopixel deallocDeinitializeStrand:self]; - } -} - -- (BFTask *)initializeAsync -{ - return [self.neopixel initializeStrand:self]; -} - -- (BFTask *)deinitializeAsync -{ - return [self.neopixel deinitializeStrand:self]; -} - -- (BFTask *)setPixelAsync:(uint8_t)pixel color:(MBLColor *)color -{ - if (self.index == 0xFF) { - [NSException raise:NSGenericException format:@"Please call initialize before using MBLNeopixelStrand objets"]; - } - if (pixel >= self.length) { - [NSException raise:NSRangeException format:@"Pixel index out of range. %d exceeds max %d", pixel, self.length - 1]; - } - - return [self.neopixel setPixelAtIndex:self.index pixel:pixel color:color]; -} - -- (BFTask *)setRainbowWithHoldAsync:(BOOL)hold -{ - if (self.index == 0xFF) { - [NSException raise:NSGenericException format:@"Please call initialize before using MBLNeopixelStrand objets"]; - } - - float delta = 2.0 * M_PI / (float)self.length; - BFTask *head = [BFTask taskWithResult:nil]; - if (hold) { - head = [head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self holdStrandWithEnableAsync:YES]; - }]; - } - for (int i = 0; i < self.length; i++) { - float step = i * delta; - float red = cosf(step); - float green = cosf(step + ((2.0 * M_PI) / 3.0)); - float blue = cosf(step + ((4.0 * M_PI) / 3.0)); - head = [head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self setPixelAsync:i color:[MBLColor colorWithRed:red green:green blue:blue alpha:1.0]]; - }]; - } - if (hold) { - head = [head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self holdStrandWithEnableAsync:NO]; - }]; - } - return head; -} - -- (BFTask *)clearFromStartPixelAsync:(uint8_t)startPixel endPixel:(uint8_t)endPixel -{ - if (self.index == 0xFF) { - [NSException raise:NSGenericException format:@"Please call initialize before using MBLNeopixelStrand objets"]; - } - if (startPixel > endPixel) { - [NSException raise:NSRangeException format:@"startPixel (%d) can't be greater than endPixel (%d)", startPixel, endPixel]; - } - if (endPixel >= self.length) { - [NSException raise:NSRangeException format:@"endPixel (%d) index out of range (%d)", endPixel, self.length - 1]; - } - - return [self.neopixel clearStrandAtIndex:self.index startPixel:startPixel endPixel:endPixel]; -} - -- (BFTask *)clearAllPixelsAsync -{ - return [self clearFromStartPixelAsync:0 endPixel:self.length - 1]; -} - -- (BFTask *)holdStrandWithEnableAsync:(BOOL)enable -{ - if (self.index == 0xFF) { - [NSException raise:NSGenericException format:@"Please call initialize before using MBLNeopixelStrand objets"]; - } - - return [self.neopixel holdStrandAtIndex:self.index withEnable:enable]; -} - -- (BFTask *)rotateStrandWithDirectionAsync:(MBLRotationDirection)direction repetitions:(uint8_t)repetitions period:(uint16_t)period -{ - if (self.index == 0xFF) { - [NSException raise:NSGenericException format:@"Please call initialize before using MBLNeopixelStrand objets"]; - } - - return [self.neopixel rotateStrandAtIndex:self.index direction:direction repetitions:repetitions period:period]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/MBLPhotometer.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/MBLPhotometer.h deleted file mode 100644 index 4a0a7d6..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/MBLPhotometer.h +++ /dev/null @@ -1,80 +0,0 @@ -/** - * MBLPhotometer.h - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -@class MBLRGBData; -@class MBLNumericData; - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface to an abstract photometer sensor. If you need more advanced - features then upcast to the specific sensor on your board, MBLPhotometerTCS3472. - @see MBLPhotometerTCS3472 - */ -@interface MBLPhotometer : MBLModule - -/** - Data representing the intensity of red, green, blue, and clear light exposed - to the sensor. Event callbacks will be provided an MBLRGBData object. - */ -@property (nonatomic, readonly, nullable) MBLData *color; - -/** - Data representing the intensity of red light. Event callbacks will be - provided an MBLNumericData object whose double value is intensity in counts. - */ -@property (nonatomic, readonly, nullable) MBLData *redColor; -/** - Data representing the intensity of green light. Event callbacks will be - provided an MBLNumericData object whose double value is intensity in counts. - */ -@property (nonatomic, readonly, nullable) MBLData *greenColor; -/** - Data representing the intensity of blue light. Event callbacks will be - provided an MBLNumericData object whose double value is intensity in counts. - */ -@property (nonatomic, readonly, nullable) MBLData *blueColor; -/** - Data representing the intensity of clear light. Event callbacks will be - provided an MBLNumericData object whose double value is intensity in counts. - */ -@property (nonatomic, readonly, nullable) MBLData *clearColor; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/MBLPhotometer.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/MBLPhotometer.m deleted file mode 100644 index 99ae7ae..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/MBLPhotometer.m +++ /dev/null @@ -1,56 +0,0 @@ -/** - * MBLPhotometer.m - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLPhotometer.h" -#import "MBLPhotometerTCS3472.h" -#import "MBLMetaWear+Private.h" -#import "MBLRegister+Private.h" - -@interface MBLPhotometer () -@property (nonatomic) MBLData *color; -@property (nonatomic) MBLData *redColor; -@property (nonatomic) MBLData *greenColor; -@property (nonatomic) MBLData *blueColor; -@property (nonatomic) MBLData *clearColor; -@end - -@implementation MBLPhotometer - -+ (instancetype)objectWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - return [[MBLPhotometerTCS3472 alloc] initWithDevice:device moduleInfo:moduleInfo]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/MBLRGBData.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/MBLRGBData.h deleted file mode 100644 index deb5b3c..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/MBLRGBData.h +++ /dev/null @@ -1,65 +0,0 @@ -/** - * MBLRGBData.h - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Container for a single RGB sensor reading - */ -@interface MBLRGBData : MBLDataSample - -/** - Red light intensity in counts - */ -@property (nonatomic, readonly) uint16_t red; -/** - Green light intensity in counts - */ -@property (nonatomic, readonly) uint16_t green; -/** - Blue light intensity in counts - */ -@property (nonatomic, readonly) uint16_t blue; - -/** - Clear light intensity in counts - */ -@property (nonatomic, readonly) uint16_t clear; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/MBLRGBData.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/MBLRGBData.m deleted file mode 100644 index 9b8b65e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/MBLRGBData.m +++ /dev/null @@ -1,70 +0,0 @@ -/** - * MBLRGBData.m - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLRGBData+Private.h" -#import "MBLDataSample+Private.h" - -@interface MBLRGBData() -@property (nonatomic) uint16_t red; -@property (nonatomic) uint16_t green; -@property (nonatomic) uint16_t blue; -@property (nonatomic) uint16_t clear; -@end - -@implementation MBLRGBData - -- (instancetype)initWithRed:(uint16_t)red green:(uint16_t)green blue:(uint16_t)blue clear:(uint16_t)clear timestamp:(NSDate *)timestamp -{ - self = [super initWithTimestamp:timestamp]; - if (self) { - self.red = red; - self.green = green; - self.blue = blue; - self.clear = clear; - } - return self; -} - -- (NSString *)description -{ - return [NSString stringWithFormat:@"R:%d, G:%d, B:%d, C:%d", self.red, self.green, self.blue, self.clear]; -} - -- (NSString *)csvRepresentation -{ - return [NSString stringWithFormat:@"%f,%d,%d,%d,%d\n", self.timestamp.timeIntervalSince1970, self.red, self.green, self.blue, self.clear]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/PhotometerTCS3472/MBLPhotometerTCS3472.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/PhotometerTCS3472/MBLPhotometerTCS3472.h deleted file mode 100644 index 28f0103..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/PhotometerTCS3472/MBLPhotometerTCS3472.h +++ /dev/null @@ -1,71 +0,0 @@ -/** - * MBLPhotometerTCS3472.h - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Gain applied to the photometer sensor signal - */ -typedef NS_ENUM(uint8_t, MBLPhotometerTCS3472Gain) { - MBLPhotometerTCS3472Gain1X = 0, // default - MBLPhotometerTCS3472Gain4X = 1, - MBLPhotometerTCS3472Gain16X = 2, - MBLPhotometerTCS3472Gain60X = 3, -}; - -/** - Interface to a TCS3472 RGB light sensor - */ -@interface MBLPhotometerTCS3472 : MBLPhotometer - -/** - Gain applied to the photometer sensor signal - */ -@property (nonatomic) MBLPhotometerTCS3472Gain gain; -/** - The measurement time in ms for each RBG light sensor cycle. Valid range is [2.4-614.4], default 50.0. - */ -@property (nonatomic) double integrationTime; -/** - Trigger an LED flash during the reading to improve reading in low light scenarios. - YES: Flash during reading, NO: No flash, default NO. - */ -@property (nonatomic) BOOL ledFlash; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/PhotometerTCS3472/MBLPhotometerTCS3472.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/PhotometerTCS3472/MBLPhotometerTCS3472.m deleted file mode 100644 index 4aac0d1..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Photometer/PhotometerTCS3472/MBLPhotometerTCS3472.m +++ /dev/null @@ -1,100 +0,0 @@ -/** - * MBLPhotometerTCS3472.m - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLPhotometerTCS3472.h" -#import "MBLPhotometer+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLRegister+Private.h" -#import "MBLData+Private.h" -#import "MBLPhotometerTCS3472Format.h" -#import "MBLConstants+Private.h" - -typedef struct __attribute__((packed)) { - uint8_t atime; -} tcs3472_reg_atime_t; - -typedef struct __attribute__((packed)) { - uint8_t again:2; - uint8_t :6; -} tcs3472_reg_control_t; - -typedef struct __attribute__((packed)) { - tcs3472_reg_atime_t atime; - tcs3472_reg_control_t control; - uint8_t led_enable; -} mw_rgbcolor_mode_t; - -@interface MBLPhotometerTCS3472() -@property (nonatomic) MBLRegister *mode; -@end - -@implementation MBLPhotometerTCS3472 - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.color = [[MBLData alloc] initWithModule:self registerId:0x1 format:[[MBLPhotometerTCS3472Format alloc] init]]; - self.redColor = [[MBLData alloc] initWithModule:self registerId:0x1 format:[[MBLPhotometerTCS3472Format alloc] initWithOffset:2]]; - self.greenColor = [[MBLData alloc] initWithModule:self registerId:0x1 format:[[MBLPhotometerTCS3472Format alloc] initWithOffset:4]]; - self.blueColor = [[MBLData alloc] initWithModule:self registerId:0x1 format:[[MBLPhotometerTCS3472Format alloc] initWithOffset:6]]; - self.clearColor = [[MBLData alloc] initWithModule:self registerId:0x1 format:[[MBLPhotometerTCS3472Format alloc] initWithOffset:0]]; - - self.mode = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:3]]; - - self.gain = MBLPhotometerTCS3472Gain1X; - self.integrationTime = 50.0; - self.ledFlash = NO; - } - return self; -} - -- (void)setIntegrationTime:(double)integrationTime -{ - _integrationTime = [MBLConstants clampDouble:integrationTime low:2.4 high:614.4]; -} - -- (BFTask *)performAsyncInitialization -{ - mw_rgbcolor_mode_t regs = { 0 }; - - regs.atime.atime = 256 - round(self.integrationTime / 2.4); - regs.control.again = self.gain; - regs.led_enable = self.ledFlash ? 1 : 0; - - return [self.mode writeDataAsync:[NSData dataWithBytes:®s length:sizeof(mw_rgbcolor_mode_t)]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Proximity/MBLProximity.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Proximity/MBLProximity.h deleted file mode 100644 index 850d39a..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Proximity/MBLProximity.h +++ /dev/null @@ -1,58 +0,0 @@ -/** - * MBLProximity.h - * MetaWear - * - * Created by Stephen Schiffli on 2/22/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -@class MBLNumericData; - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface to an abstract proximity sensor. If you need more advanced - features then upcast to the specific sensor on your board, MBLProximityTSL2671. - @see MBLProximityTSL2671 - */ -@interface MBLProximity : MBLModule - -/** - Data representing the closeness of the module to a physical object. Event callbacks - will be provided an MBLNumericData object whose double value is proximity in counts. - */ -@property (nonatomic, readonly, nullable) MBLData *proximity; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Proximity/MBLProximity.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Proximity/MBLProximity.m deleted file mode 100644 index 533e7cb..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Proximity/MBLProximity.m +++ /dev/null @@ -1,52 +0,0 @@ -/** - * MBLProximity.m - * MetaWear - * - * Created by Stephen Schiffli on 2/22/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLProximity+Private.h" -#import "MBLProximityTSL2671.h" -#import "MBLMetaWear+Private.h" -#import "MBLRegister+Private.h" - -@interface MBLProximity () -@property (nonatomic) MBLData *proximity; -@end - -@implementation MBLProximity - -+ (instancetype)objectWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - return [[MBLProximityTSL2671 alloc] initWithDevice:device moduleInfo:moduleInfo]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Proximity/ProximityTSL2671/MBLProximityTSL2671.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Proximity/ProximityTSL2671/MBLProximityTSL2671.h deleted file mode 100644 index 24b35f9..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Proximity/ProximityTSL2671/MBLProximityTSL2671.h +++ /dev/null @@ -1,72 +0,0 @@ -/** - * MBLProximityTSL2671.h - * MetaWear - * - * Created by Stephen Schiffli on 2/22/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Drive current applied to transmitter - */ -typedef NS_ENUM(uint8_t, MBLProximityTSL2671TransmitterDrive) { - MBLProximityTSL2671TransmitterDrive25mA = 2, // Default - MBLProximityTSL2671TransmitterDrive12_5mA = 3 -}; - -/** - Interface to a TCS3472 RGB light sensor. - The following properties affect the range that the proximity sensor outputs. - The defaults provided are good for detecting objects within several inches. You - will need more proximityPulses and integrationTime if you want to detect objects - further away. - */ -@interface MBLProximityTSL2671 : MBLProximity - -/** - The measurement time in ms for each proximity sensor cycle. Valid range is [2.72-696.32], 2.72 default. - */ -@property (nonatomic) double integrationTime; -/** - Number of light pulses to transmit during measurement. <32 recommended, 1 Default. - */ -@property (nonatomic) uint8_t proximityPulses; -/** - Drive current applied to transmitter - */ -@property (nonatomic) MBLProximityTSL2671TransmitterDrive drive; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Proximity/ProximityTSL2671/MBLProximityTSL2671.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Proximity/ProximityTSL2671/MBLProximityTSL2671.m deleted file mode 100644 index b098ccd..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Proximity/ProximityTSL2671/MBLProximityTSL2671.m +++ /dev/null @@ -1,108 +0,0 @@ -/** - * MBLProximityTSL2671.m - * MetaWear - * - * Created by Stephen Schiffli on 2/22/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLProximityTSL2671.h" -#import "MBLProximity+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLRegister+Private.h" -#import "MBLData+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLConstants+Private.h" - -typedef struct __attribute__((packed)) { - uint8_t ptime; -} tsl2671_reg_ptime_t; - -typedef struct __attribute__((packed)) { - uint8_t ppulse; -} tsl2671_reg_ppulse_t; - -typedef struct __attribute__((packed)) { - uint8_t :4; - uint8_t pdiode:2; - uint8_t pdrive:2; -} tsl2671_reg_control_t; - -typedef struct __attribute__((packed)) { - tsl2671_reg_ptime_t ptime; - tsl2671_reg_ppulse_t ppulse; - tsl2671_reg_control_t control; -} mw_proximity_mode_t; - - -@interface MBLProximityTSL2671() -@property (nonatomic) MBLRegister *mode; -@end - -@implementation MBLProximityTSL2671 - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.proximity = [[MBLData alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:2 isSigned:NO]]; - - self.mode = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:3]]; - // Mode defaults - self.integrationTime = 2.72; - self.proximityPulses = 1; - self.drive = MBLProximityTSL2671TransmitterDrive25mA; - } - return self; -} - -- (void)setIntegrationTime:(double)integrationTime -{ - _integrationTime = [MBLConstants clampDouble:integrationTime low:2.72 high:696.32]; -} - -- (void)setProximityPulses:(uint8_t)proximityPulses -{ - _proximityPulses = MIN(proximityPulses, 32); -} - -- (BFTask *)performAsyncInitialization -{ - mw_proximity_mode_t regs = { 0 }; - - regs.ptime.ptime = 256 - round(self.integrationTime / 2.72); - regs.ppulse.ppulse = self.proximityPulses; - regs.control.pdiode = 2; // Receiver Diode Select: (0: None, 1: Chan 0, 2: Chan 1, 3: Both) Chan 1 recommended, wavelength matches transmitter. - regs.control.pdrive = self.drive; - - return [self.mode writeDataAsync:[NSData dataWithBytes:®s length:sizeof(mw_proximity_mode_t)]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLI2CData.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLI2CData.h deleted file mode 100644 index 32cd2c9..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLI2CData.h +++ /dev/null @@ -1,71 +0,0 @@ -/** - * MBLI2CData.h - * MetaWear - * - * Created by Stephen Schiffli on 1/23/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface for reading/writing a specific I2C device register. - */ -@interface MBLI2CData : MBLData - -/** - Write the given value to the I2C register - @param data Data to be written - */ -- (BFTask *)writeDataAsync:(nullable NSData *)data; - -/** - Write the given byte to the I2C register - @param byte Byte to be written - */ -- (BFTask *)writeByteAsync:(uint8_t)byte; - -/** - Write the given word to the I2C register - @param word Word to be written - */ -- (BFTask *)writeWordAsync:(uint16_t)word; - -/** - Write the given dword to the I2C register - @param dword Dword to be written - */ -- (BFTask *)writeDwordAsync:(uint32_t)dword; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLI2CData.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLI2CData.m deleted file mode 100644 index b033825..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLI2CData.m +++ /dev/null @@ -1,151 +0,0 @@ -/** - * MBLI2CData.m - * MetaWear - * - * Created by Stephen Schiffli on 1/23/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLSerial+Private.h" -#import "MBLI2CData+Private.h" -#import "MBLRegister+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLMetaWearManager+Private.h" -#import "MBLDeviceInfo.h" -#import "MBLConstants+Private.h" - -static const uint8_t MW_I2C_DATA_SIZE = 10; - -typedef struct __attribute__((packed)) { - uint8_t address; - uint8_t reg; - uint8_t index; - uint8_t dataLength; - uint8_t data[MW_I2C_DATA_SIZE]; -} mw_i2c_passthru_cmd_t; - - -@interface MBLI2CData () -@property (nonatomic) uint8_t deviceAddress; -@property (nonatomic) uint8_t registerAddress; -@end - -@implementation MBLI2CData - -- (instancetype)initWithRegister:(MBLRegister *)reg - deviceAddress:(uint8_t)deviceAddress - registerAddress:(uint8_t)registerAddress - length:(uint8_t)length -{ - self = [super initWithModule:reg.module registerId:reg.registerId format:[[MBLFormat alloc] initEncodedDataWithLength:length]]; - if (self) { - self.deviceAddress = deviceAddress; - self.registerAddress = registerAddress; - - NSString *curVersion = reg.module.device.deviceInfo.firmwareRevision; - if ([MBLConstants versionString:curVersion isLessThan:@"1.1.0"]) { - self.needsResponse = YES; - } - } - return self; -} - -- (instancetype)initNumberWithRegister:(MBLRegister *)reg - deviceAddress:(uint8_t)deviceAddress - registerAddress:(uint8_t)registerAddress - length:(uint8_t)length - isSigned:(BOOL)isSigned -{ - self = [super initWithModule:reg.module registerId:reg.registerId format:[[MBLNumericFormatter alloc] initIntWithLength:length isSigned:isSigned]]; - if (self) { - self.deviceAddress = deviceAddress; - self.registerAddress = registerAddress; - - NSString *curVersion = reg.module.device.deviceInfo.firmwareRevision; - if ([MBLConstants versionString:curVersion isLessThan:@"1.1.0"]) { - self.needsResponse = YES; - } - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - return [self.module.device.serial performAsyncInitializationForRegister:self]; -} - -- (BFTask *)performAsyncDeinitialization -{ - return [self.module.device.serial performAsyncDeinitializationForRegister:self]; -} - -- (NSData *)readParameters -{ - mw_i2c_passthru_cmd_t params = { 0 }; - params.address = self.deviceAddress; - params.reg = self.registerAddress; - assert(self.index != 0xFF); - params.index = self.index; - params.dataLength = self.format.length; - - return [NSData dataWithBytes:¶ms length:4]; -} - -- (nonnull BFTask *)writeDataAsync:(nullable NSData *)data -{ - mw_i2c_passthru_cmd_t params = { 0 }; - params.address = self.deviceAddress; - params.reg = self.registerAddress; - params.index = 0; - params.dataLength = self.format.length; - - NSInteger size = MIN(data.length, MW_I2C_DATA_SIZE); - memcpy(params.data, data.bytes, size); - - return [super writeDataAsync:[NSData dataWithBytes:¶ms length:size + 4]]; -} - -- (nonnull BFTask *)writeByteAsync:(uint8_t)byte -{ - return [self writeDataAsync:[NSData dataWithBytes:&byte length:1]]; -} - -- (nonnull BFTask *)writeWordAsync:(uint16_t)word -{ - return [self writeDataAsync:[NSData dataWithBytes:&word length:2]]; -} - -- (nonnull BFTask *)writeDwordAsync:(uint32_t)dword -{ - return [self writeDataAsync:[NSData dataWithBytes:&dword length:4]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLSPIData.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLSPIData.h deleted file mode 100644 index b6f6fd0..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLSPIData.h +++ /dev/null @@ -1,77 +0,0 @@ -/** - * MBLSPIData.h - * MetaWear - * - * Created by Stephen Schiffli on 1/23/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface for reading/writing a specific SPI device. - */ -@interface MBLSPIData : MBLData - -/** - Read after writing the given data on the bus (used to write addresses, cmds, etc.) - @param data Data to be written - */ -- (BFTask *)readWithParamtersAsync:(NSData *)data; - -/** - Write the given value to the SPI device - @param data Data to be written - */ -- (BFTask *)writeDataAsync:(nullable NSData *)data; - -/** - Write the given byte to the SPI device - @param byte Byte to be written - */ -- (BFTask *)writeByteAsync:(uint8_t)byte; - -/** - Write the given word to the SPI device - @param word Word to be written - */ -- (BFTask *)writeWordAsync:(uint16_t)word; - -/** - Write the given dword to the SPI device - @param dword Dword to be written - */ -- (BFTask *)writeDwordAsync:(uint32_t)dword; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLSPIData.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLSPIData.m deleted file mode 100644 index 4b72736..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLSPIData.m +++ /dev/null @@ -1,230 +0,0 @@ -/** - * MBLSPIData.m - * MetaWear - * - * Created by Stephen Schiffli on 1/23/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLSerial+Private.h" -#import "MBLSPIData+Private.h" -#import "MBLRegister+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLMetaWearManager+Private.h" -#import "MBLDeviceInfo.h" - -static const uint8_t MW_SPI_WRITE_DATA_SIZE = 13; -static const uint8_t MW_SPI_READ_DATA_SIZE = 12; - -typedef struct __attribute__((packed)) { - uint8_t pin_ss; - uint8_t pin_sck; - uint8_t pin_mosi; - uint8_t pin_miso; - union { - struct __attribute__((packed)) { - uint8_t lsb_first:1; - uint8_t mode:2; - uint8_t freq:3; - uint8_t native_pin_indexing:1; - uint8_t :1; - }; - uint8_t mode_byte; - }; - union { - struct __attribute__((packed)) { - uint8_t readlen:4; - uint8_t index:4; - uint8_t readwritedata[MW_SPI_READ_DATA_SIZE]; - }; - uint8_t writedata[MW_SPI_WRITE_DATA_SIZE]; - }; -} mw_spi_passthru_cmd_t; - - -@interface MBLSPIData () -@property (nonatomic) uint8_t slaveSelectPin; -@property (nonatomic) uint8_t clockPin; -@property (nonatomic) uint8_t mosiPin; -@property (nonatomic) uint8_t misoPin; -@property (nonatomic) uint8_t lsbFirst; -@property (nonatomic) uint8_t spiMode; -@property (nonatomic) uint8_t spiFrequency; -@property (nonatomic) uint8_t nativePinIndexing; -@property (nonatomic) NSData *pendingReadParams; -@end - -@implementation MBLSPIData - -- (instancetype)initWithRegister:(MBLRegister *)reg - slaveSelectPin:(uint8_t)slaveSelectPin - clockPin:(uint8_t)clockPin - mosiPin:(uint8_t)mosiPin - misoPin:(uint8_t)misoPin - lsbFirst:(BOOL)lsbFirst - spiMode:(uint8_t)spiMode - spiFrequency:(uint8_t)spiFrequency - nativePinIndexing:(BOOL)nativePinIndexing - length:(uint8_t)length -{ - self = [super initWithModule:reg.module registerId:reg.registerId format:[[MBLFormat alloc] initEncodedDataWithLength:length]]; - if (self) { - self.slaveSelectPin = slaveSelectPin; - self.clockPin = clockPin; - self.mosiPin = mosiPin; - self.misoPin = misoPin; - self.lsbFirst = lsbFirst; - self.spiMode = spiMode; - self.spiFrequency = spiFrequency; - self.nativePinIndexing = nativePinIndexing; - } - return self; -} - -- (instancetype)initNumberWithRegister:(MBLRegister *)reg - slaveSelectPin:(uint8_t)slaveSelectPin - clockPin:(uint8_t)clockPin - mosiPin:(uint8_t)mosiPin - misoPin:(uint8_t)misoPin - lsbFirst:(BOOL)lsbFirst - spiMode:(uint8_t)spiMode - spiFrequency:(uint8_t)spiFrequency - nativePinIndexing:(BOOL)nativePinIndexing - length:(uint8_t)length - isSigned:(BOOL)isSigned -{ - self = [super initWithModule:reg.module registerId:reg.registerId format:[[MBLNumericFormatter alloc] initIntWithLength:length isSigned:isSigned]]; - if (self) { - self.slaveSelectPin = slaveSelectPin; - self.clockPin = clockPin; - self.mosiPin = mosiPin; - self.misoPin = misoPin; - self.lsbFirst = lsbFirst; - self.spiMode = spiMode; - self.spiFrequency = spiFrequency; - self.nativePinIndexing = nativePinIndexing; - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - return [self.module.device.serial performAsyncInitializationForRegister:self]; -} - -- (BFTask *)performAsyncDeinitialization -{ - return [self.module.device.serial performAsyncDeinitializationForRegister:self]; -} - -- (BFTask *)readAsync -{ - if (!self.module) { - return [BFTask taskWithError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorOperationInvalid - userInfo:@{NSLocalizedDescriptionKey : @"SPI reads not supported, please update firmware."}]]; - } - return [super readAsync]; -} - -- (BFTask *)readWithParamtersAsync:(NSData *)data -{ - if (!self.module) { - return [BFTask taskWithError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorOperationInvalid - userInfo:@{NSLocalizedDescriptionKey : @"SPI reads not supported, please update firmware."}]]; - } - self.pendingReadParams = data; - return [self readAsync]; -} - -- (NSData *)readParameters -{ - mw_spi_passthru_cmd_t params = { 0 }; - params.pin_ss = self.slaveSelectPin; - params.pin_sck = self.clockPin; - params.pin_mosi = self.mosiPin; - params.pin_miso = self.misoPin; - params.lsb_first = self.lsbFirst; - params.mode = self.spiMode; - params.freq = self.spiFrequency; - params.native_pin_indexing = self.nativePinIndexing; - - params.readlen = self.format.length - 1; - assert(self.index != 0xFF); - params.index = self.index; - - NSInteger size = MIN(self.pendingReadParams.length, MW_SPI_READ_DATA_SIZE); - memcpy(params.readwritedata, self.pendingReadParams.bytes, size); - - return [NSData dataWithBytes:¶ms length:size + 6]; -} - -- (BFTask *)writeDataAsync:(nullable NSData *)data -{ - if (!self.module) { - return [BFTask taskWithError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorOperationInvalid - userInfo:@{NSLocalizedDescriptionKey : @"SPI reads not supported, please update firmware."}]]; - } - - mw_spi_passthru_cmd_t params = { 0 }; - params.pin_ss = self.slaveSelectPin; - params.pin_sck = self.clockPin; - params.pin_mosi = self.mosiPin; - params.pin_miso = self.misoPin; - params.lsb_first = self.lsbFirst; - params.mode = self.spiMode; - params.freq = self.spiFrequency; - params.native_pin_indexing = self.nativePinIndexing; - - NSInteger size = MIN(data.length, MW_SPI_WRITE_DATA_SIZE); - memcpy(params.writedata, data.bytes, size); - - return [super writeDataAsync:[NSData dataWithBytes:¶ms length:size + 5]]; -} - -- (BFTask *)writeByteAsync:(uint8_t)byte -{ - return [self writeDataAsync:[NSData dataWithBytes:&byte length:1]]; -} - -- (BFTask *)writeWordAsync:(uint16_t)word -{ - return [self writeDataAsync:[NSData dataWithBytes:&word length:2]]; -} - -- (BFTask *)writeDwordAsync:(uint32_t)dword -{ - return [self writeDataAsync:[NSData dataWithBytes:&dword length:4]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLSerial.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLSerial.h deleted file mode 100644 index 5404b0c..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLSerial.h +++ /dev/null @@ -1,102 +0,0 @@ -/** - * MBLSerial.h - * MetaWear - * - * Created by Stephen Schiffli on 1/20/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -@class MBLDataSample; -@class MBLNumericData; - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface for reading/writing externally connected devices via a serial bus (I2C or SPI). - */ -@interface MBLSerial : MBLModule - -/** - Create an I2C data endpoint. The deivce and register address - will be available in the data sheet of whatever device you connect. - Event callbacks will be provided an MBLDataSample object whose data - property can be used to access the data as bytes. - */ -- (MBLI2CData *)dataAtDeviceAddress:(uint8_t)deviceAddress - registerAddress:(uint8_t)registerAddress - length:(uint8_t)length; - -/** - Create an I2C data endpoint. The deivce and register address - will be available in the data sheet of whatever device you connect. - Event callbacks will be provided an MBLNumericData object whose value - will contain the register value formatted as a number. - */ -- (MBLI2CData *)numberAtDeviceAddress:(uint8_t)deviceAddress - registerAddress:(uint8_t)registerAddress - length:(uint8_t)length - isSigned:(BOOL)isSigned; - - -/** - Create an SPI data endpoint. The deivce and register address - will be available in the data sheet of whatever device you connect. - */ -- (MBLSPIData *)dataWithSlaveSelectPin:(uint8_t)slaveSelectPin - clockPin:(uint8_t)clockPin - mosiPin:(uint8_t)mosiPin - misoPin:(uint8_t)misoPin - lsbFirst:(BOOL)lsbFirst - spiMode:(uint8_t)spiMode - spiFrequency:(uint8_t)spiFrequency - nativePinIndexing:(BOOL)nativePinIndexing - length:(uint8_t)length; - -/** - Create an SPI data endpoint. The deivce and register address - will be available in the data sheet of whatever device you connect. - */ -- (MBLSPIData *)numberWithSlaveSelectPin:(uint8_t)slaveSelectPin - clockPin:(uint8_t)clockPin - mosiPin:(uint8_t)mosiPin - misoPin:(uint8_t)misoPin - lsbFirst:(BOOL)lsbFirst - spiMode:(uint8_t)spiMode - spiFrequency:(uint8_t)spiFrequency - nativePinIndexing:(BOOL)nativePinIndexing - length:(uint8_t)length - isSigned:(BOOL)isSigned; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLSerial.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLSerial.m deleted file mode 100644 index 1a8d1b1..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Serial/MBLSerial.m +++ /dev/null @@ -1,156 +0,0 @@ -/** - * MBLSerial.m - * MetaWear - * - * Created by Stephen Schiffli on 1/20/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLSerial+Private.h" -#import "MBLModule+Private.h" -#import "MBLRegister+Private.h" -#import "MBLI2CData+Private.h" -#import "MBLSPIData+Private.h" -#import "MBLMetaWearManager+Private.h" -#import "BFTask+Private.h" - - -@interface MBLSerial () -@property (nonatomic) MBLRegister *twiReadWrite; -@property (nonatomic) MBLRegister *spiReadWrite; - -@property (nonatomic) NSMutableArray *regs; -@end - -@implementation MBLSerial - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.twiReadWrite = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLFormat alloc] initEncodedDataWithLength:18]]; - if (moduleInfo.moduleRevision >= 1) { - self.spiReadWrite = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:18]]; - } - self.regs = [NSMutableArray array]; - } - return self; -} - -- (BFTask *)performAsyncInitializationForRegister:(MBLRegister *)reg -{ - return [BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - assert(reg.index == 0xFF); - reg.index = self.regs.count; - [self.regs addObject:reg]; - return nil; - }]; -} - -- (BFTask *)performAsyncDeinitializationForRegister:(MBLRegister *)reg -{ - return [BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - assert(reg.index != 0xFF); - [self.regs removeObject:reg]; - reg.index = 0xFF; - return nil; - }]; -} - -- (MBLI2CData *)dataAtDeviceAddress:(uint8_t)deviceAddress - registerAddress:(uint8_t)registerAddress - length:(uint8_t)length -{ - return [[MBLI2CData alloc] initWithRegister:self.twiReadWrite - deviceAddress:deviceAddress - registerAddress:registerAddress - length:length]; -} - -- (MBLI2CData *)numberAtDeviceAddress:(uint8_t)deviceAddress - registerAddress:(uint8_t)registerAddress - length:(uint8_t)length - isSigned:(BOOL)isSigned -{ - return [[MBLI2CData alloc] initNumberWithRegister:self.twiReadWrite - deviceAddress:deviceAddress - registerAddress:registerAddress - length:length - isSigned:isSigned]; -} - - -- (MBLSPIData *)dataWithSlaveSelectPin:(uint8_t)slaveSelectPin - clockPin:(uint8_t)clockPin - mosiPin:(uint8_t)mosiPin - misoPin:(uint8_t)misoPin - lsbFirst:(BOOL)lsbFirst - spiMode:(uint8_t)spiMode - spiFrequency:(uint8_t)spiFrequency - nativePinIndexing:(BOOL)nativePinIndexing - length:(uint8_t)length -{ - return [[MBLSPIData alloc] initWithRegister:self.spiReadWrite - slaveSelectPin:slaveSelectPin - clockPin:clockPin - mosiPin:mosiPin - misoPin:misoPin - lsbFirst:lsbFirst - spiMode:spiMode - spiFrequency:spiFrequency - nativePinIndexing:nativePinIndexing - length:(uint8_t)length]; -} - -- (MBLSPIData *)numberWithSlaveSelectPin:(uint8_t)slaveSelectPin - clockPin:(uint8_t)clockPin - mosiPin:(uint8_t)mosiPin - misoPin:(uint8_t)misoPin - lsbFirst:(BOOL)lsbFirst - spiMode:(uint8_t)spiMode - spiFrequency:(uint8_t)spiFrequency - nativePinIndexing:(BOOL)nativePinIndexing - length:(uint8_t)length - isSigned:(BOOL)isSigned -{ - return [[MBLSPIData alloc] initNumberWithRegister:self.spiReadWrite - slaveSelectPin:slaveSelectPin - clockPin:clockPin - mosiPin:mosiPin - misoPin:misoPin - lsbFirst:lsbFirst - spiMode:spiMode - spiFrequency:spiFrequency - nativePinIndexing:nativePinIndexing - length:length - isSigned:isSigned]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Settings/MBLSettings.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Settings/MBLSettings.h deleted file mode 100644 index 6c16a1b..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Settings/MBLSettings.h +++ /dev/null @@ -1,170 +0,0 @@ -/** - * MBLSettings.h - * MetaWear - * - * Created by Stephen Schiffli on 1/19/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -@class MBLEvent; -@class MBLData; -@class MBLStringData; -@class MBLDataSample; -@class MBLNumericData; - -NS_ASSUME_NONNULL_BEGIN - -/** - BLE transmiter power - */ -typedef NS_ENUM(uint8_t, MBLTransmitPower) { - MBLTransmitPower4dBm = 0, - MBLTransmitPower0dBm = 1, - MBLTransmitPowerMinus4dBm = 2, - MBLTransmitPowerMinus8dBm = 3, - MBLTransmitPowerMinus12dBm = 4, - MBLTransmitPowerMinus16dBm = 5, - MBLTransmitPowerMinus20dBm = 6, - MBLTransmitPowerMinus30dBm = 7 -}; - -@interface MBLSettings : MBLModule - -/** - Advertising interval in ms. Defaults to 417.5 - This should be carefully considered, because it affects the time to discovery - and connect performance, and also battery life. - */ -@property (nonatomic) double advertisingInterval; -/** - Advertising timeout in seconds. Valid range is [0, 180], use 0 for unlimited - advertising (0 is default) - */ -@property (nonatomic) uint8_t advertisingTimeout; - -/** - Bluetooth radio transmit power. Setting a smaller (lower dBm) value will - result in a smaller connection radius, default is MBLTransmitPower0dBm. - */ -@property (nonatomic) MBLTransmitPower transmitPower; - -/** - Set a raw value into the scan response BLE advertising packet. - For example this byte string would turn the MetaWear into a URIBeacon - uint8_t rawuri[] = { 0x03, 0x03, 0xD8, 0xFE, 0x10, 0x16, 0xD8, 0xFE, 0x00, 0x12, 0x00, 0x6D, 0x62, 0x69, 0x65, 0x6E, 0x74, 0x6C, 0x61, 0x62, 0x00 }; - */ -@property (nonatomic, nullable) NSData *scanResponse; - -/** - Choose what happens if the internal log fills up. If circularBufferLog is YES - then the oldest log entries will be deleted to make room for now entries, if - NO then new entries will be discared. Defaults to NO. - */ -@property (nonatomic) BOOL circularBufferLog; - -/** - Event representing a BLE disconnection event. Note this doesn't make sense to - stream, but it's likely that programCommandsToRunOnEventAsync will have utility. - Event callbacks will be provided an MBLDataSample object. - */ -@property (nonatomic, readonly, nullable) MBLEvent *disconnectEvent; - -/** - Get the MAC address of the MetaWear - Event callbacks will be provided an MBLStringData object. - */ -@property (nonatomic, readonly, nullable) MBLData *macAddress; - -/** - Percent remaining battery life, returns int between 0-100 - */ -@property (nonatomic, readonly, nullable) MBLData *batteryRemaining; - - -/** - Start the pairing process which creates a persistent bond between the - MetaWear and iOS device - */ -- (BFTask *)initiatePairingAsync; -/** - Removes all bonding information stored on the MetaWear. The delete will - actually occur on the next disconnect. - - Note, to delete bonding information on the iOS device you must go to - Settings -> Bluetooth choose the device you want to remove and - select "Forget This Device" - */ -- (BFTask *)deleteAllBondsAsync; - -/** - This call will start advertisement. You can hook this call up to any MBLEvent - if you need advanced ways to start advertising. Note a button press it already - hard coded to always trigger advertising, which should cover most cases. - */ -- (BFTask *)startAdvertisementAsync; - - - -///---------------------------------- -/// @name Experimental Connection Parameters -///---------------------------------- - -/** - Minimum Connection Interval (uint16_t in units of 1.25ms) Valid range [6, 3200] - */ -@property (nonatomic) uint16_t minimumConnectionInterval; -/** - Maximum Connection Interval (uint16_t in units of 1.25ms) Valid range [6, 3200] - */ -@property (nonatomic) uint16_t maximumConnectionInterval; -/** - Slave Latency (intervals the device may skip if it has no data) Valid range [0, 1000] - */ -@property (nonatomic) uint16_t slaveLatency; -/** - Supervisory Timeout (uint16_t in units of 10ms) Valid range [10, 3200] - */ -@property (nonatomic) uint16_t supervisoryTimeout; -/** - Write all the above values to the device - */ -- (BFTask *)applyConnectionParametersAsync; - -/** - Raw battery voltage in mV. For enabling only, please use batteryRemaining instead. - */ -@property (nonatomic, readonly, nullable) MBLData *batteryVoltage; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Settings/MBLSettings.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Settings/MBLSettings.m deleted file mode 100644 index 3375ee3..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Settings/MBLSettings.m +++ /dev/null @@ -1,299 +0,0 @@ -/** - * MBLSettings.m - * MetaWear - * - * Created by Stephen Schiffli on 1/19/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLSettings+Private.h" -#import "MBLModule+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLMacAddressFormat.h" -#import "MBLNumericFormatter.h" -#import "MBLNumericData+Private.h" - -typedef struct __attribute__((packed)) { - uint16_t min_conn_interval; - uint16_t max_conn_interval; - uint16_t slave_latency; - uint16_t conn_sup_timeout; -} ble_gap_conn_params_t; - -@interface MBLSettings () -@property (nonatomic) MBLRegister *deviceName; -@property (nonatomic) MBLRegister *advertisingIntervalRegister; -@property (nonatomic) MBLRegister *txPower; -@property (nonatomic) MBLRegister *bondsDelete; -@property (nonatomic) MBLRegister *startAdvertising; -@property (nonatomic) MBLRegister *initiateBonding; -@property (nonatomic) MBLRegister *scanResponsePacket; -@property (nonatomic) MBLRegister *scanResponsePacketPartial; -@property (nonatomic) MBLRegister *connectionParameters; -@property (nonatomic) MBLEvent *disconnectEvent; -@property (nonatomic) MBLData *macAddress; -@property (nonatomic) MBLData *batteryRemaining; -@property (nonatomic) MBLData *batteryVoltage; -@property (nonatomic) MBLRegister *watchdogEnable; -@property (nonatomic) MBLRegister *watchdogConfig; -@property (nonatomic) MBLRegister *watchdogAutoRefresh; -@property (nonatomic) MBLRegister *watchdogUserRefresh; - -// Setting the following properties causes side effects, so we -// create an internal property for storing the actual value, allowing -// us to safely get/set during serialization of this class -@property (nonatomic) double advertisingIntervalImpl; -@property (nonatomic) uint8_t advertisingTimeoutImpl; -@property (nonatomic) MBLTransmitPower transmitPowerImpl; -@property (nonatomic) NSData *scanResponseImpl; -@property (nonatomic) BOOL circularBufferLogImpl; -@end - -@implementation MBLSettings - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.advertisingIntervalImpl = 417.5; - self.advertisingTimeoutImpl = 0; - self.transmitPowerImpl = MBLTransmitPower0dBm; - self.scanResponseImpl = nil; - self.circularBufferLogImpl = NO; - - self.minimumConnectionInterval = 7.5 / 1.25; - self.maximumConnectionInterval = 1000 / 1.25; - self.slaveLatency = 0; - self.supervisoryTimeout = 6000 / 10; - - self.deviceName = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLFormat alloc] initEncodedDataWithLength:8]]; - self.advertisingIntervalRegister = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:3]]; - self.txPower = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - self.bondsDelete = [[MBLRegister alloc] initWithModule:self registerId:0x4 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - self.startAdvertising = [[MBLRegister alloc] initWithModule:self registerId:0x5 format:[[MBLFormat alloc] initEncodedDataWithLength:0]]; - self.initiateBonding = [[MBLRegister alloc] initWithModule:self registerId:0x6 format:[[MBLFormat alloc] initEncodedDataWithLength:0]]; - self.scanResponsePacket = [[MBLRegister alloc] initWithModule:self registerId:0x7 format:[[MBLFormat alloc] initEncodedDataWithLength:18]]; - self.scanResponsePacketPartial = [[MBLRegister alloc] initWithModule:self registerId:0x8 format:[[MBLFormat alloc] initEncodedDataWithLength:13]]; - if (moduleInfo.moduleRevision >= 1) { - self.connectionParameters = [[MBLRegister alloc] initWithModule:self registerId:0x9 format:[[MBLFormat alloc] initEncodedDataWithLength:8]]; - } - if (moduleInfo.moduleRevision >= 2) { - self.disconnectEvent = [[MBLEvent alloc] initWithModule:self registerId:0xA format:[[MBLFormat alloc] initEncodedDataWithLength:0]]; - self.macAddress = [[MBLData alloc] initWithModule:self registerId:0xB format:[[MBLMacAddressFormat alloc] init]]; - } - if (moduleInfo.moduleRevision >= 3) { - self.batteryRemaining = [[MBLData alloc] initWithModule:self registerId:0xC format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.batteryVoltage = [[MBLData alloc] initWithModule:self registerId:0xC format:[[MBLNumericFormatter alloc] initIntWithLength:2 isSigned:NO offset:1]]; - } - if (moduleInfo.moduleRevision >= 4) { - self.watchdogEnable = [[MBLRegister alloc] initWithModule:self registerId:0xD format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.watchdogConfig = [[MBLRegister alloc] initWithModule:self registerId:0xE format:[[MBLFormat alloc] initEncodedDataWithLength:5]]; - self.watchdogAutoRefresh = [[MBLRegister alloc] initWithModule:self registerId:0xF format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - self.watchdogUserRefresh = [[MBLRegister alloc] initWithModule:self registerId:0x10 format:[MBLFormat writeOnly]]; - } - } - return self; -} - -- (double)advertisingInterval -{ - return self.advertisingIntervalImpl; -} - -- (void)setAdvertisingInterval:(double)advertisingInterval -{ - self.advertisingIntervalImpl = advertisingInterval; - [self updateAdvertisingIntervalRegister]; -} - -- (uint8_t)advertisingTimeout -{ - return self.advertisingTimeoutImpl; -} - -- (void)setAdvertisingTimeout:(uint8_t)advertisingTimeout -{ - self.advertisingTimeoutImpl = advertisingTimeout; - [self updateAdvertisingIntervalRegister]; -} - -typedef struct __attribute__((packed)) { - uint16_t interval; - uint8_t timeout; -} advertising_interval_param_t; - -- (void)updateAdvertisingIntervalRegister -{ - uint16_t intValue = self.advertisingIntervalImpl; - if (self.moduleInfo.moduleRevision >= 1) { - intValue = roundf(self.advertisingIntervalImpl / 0.625); - } - - advertising_interval_param_t params = {0}; - params.interval = intValue; - params.timeout = self.advertisingTimeoutImpl; - [self.advertisingIntervalRegister writeDataAsync:[NSData dataWithBytes:¶ms length:sizeof(advertising_interval_param_t)]]; -} - -- (MBLTransmitPower)transmitPower -{ - return self.transmitPowerImpl; -} - -- (void)setTransmitPower:(MBLTransmitPower)transmitPower -{ - self.transmitPowerImpl = transmitPower; - int8_t intPower; - switch (transmitPower) { - case MBLTransmitPower4dBm: - intPower = 4; - break; - case MBLTransmitPower0dBm: - intPower = 0; - break; - case MBLTransmitPowerMinus4dBm: - intPower = -4; - break; - case MBLTransmitPowerMinus8dBm: - intPower = -8; - break; - case MBLTransmitPowerMinus12dBm: - intPower = -12; - break; - case MBLTransmitPowerMinus16dBm: - intPower = -16; - break; - case MBLTransmitPowerMinus20dBm: - intPower = -20; - break; - case MBLTransmitPowerMinus30dBm: - intPower = -30; - break; - } - [self.txPower writeDataAsync:[NSData dataWithBytes:&intPower length:1]]; -} - -- (NSData *)scanResponse -{ - return self.scanResponseImpl; -} - -- (void)setScanResponse:(NSData *)scanResponse -{ - if (scanResponse.length > 31) { - [NSException raise:@"Invalid scanResponse data" - format:@"length of %lu is invalid, valid range is [0, 31]", (unsigned long)scanResponse.length]; - } - if (scanResponse.length > 18) { - [self.scanResponsePacketPartial writeDataAsync:[scanResponse subdataWithRange:NSMakeRange(0, 13)]]; - [self.scanResponsePacket writeDataAsync:[scanResponse subdataWithRange:NSMakeRange(13, scanResponse.length - 13)]]; - } else { - [self.scanResponsePacket writeDataAsync:scanResponse]; - } - self.scanResponseImpl = scanResponse; -} - -- (BOOL)circularBufferLog -{ - return self.circularBufferLogImpl; -} - -- (void)setCircularBufferLog:(BOOL)circularBufferLog -{ - self.circularBufferLogImpl = circularBufferLog; - [self.device.logging.circularBufferMode writeByteAsync:circularBufferLog]; -} - -- (BFTask *)initiatePairingAsync -{ - return [self.initiateBonding writeDataAsync:nil]; -} - -- (BFTask *)deleteAllBondsAsync -{ - return [self.bondsDelete writeByteAsync:1]; -} - -- (BFTask *)startAdvertisementAsync -{ - return [self.startAdvertising writeDataAsync:nil]; -} - -- (BFTask *)applyConnectionParametersAsync -{ - /* - #define MIN_CONN_INTERVAL MSEC_TO_UNITS(7.5, UNIT_1_25_MS) //Minimum acceptable connection interval (0.5 seconds). - #define MAX_CONN_INTERVAL MSEC_TO_UNITS(1000, UNIT_1_25_MS) //Maximum acceptable connection interval (1 second). - #define SLAVE_LATENCY 0 //Slave latency. - #define CONN_SUP_TIMEOUT MSEC_TO_UNITS(6000, UNIT_10_MS) //Connection supervisory timeout (4 seconds). - - Interval Max * (Slave Latency + 1) ≤ 2 seconds - Interval Min ≥ 20 ms - Interval Min + 20 ms ≤ Interval Max Slave Latency ≤ 4 - connSupervisionTimeout ≤ 6 seconds - Interval Max * (Slave Latency + 1) * 3 < connSupervisionTimeout - - 1 * (0 + 1) < 2 pass - 7.5ms > 20 fail - 7.5 + 20 < 1 * (0 + 1) < 4 pass - */ - - ble_gap_conn_params_t params = { 0 }; - params.min_conn_interval = self.minimumConnectionInterval; - params.max_conn_interval = self.maximumConnectionInterval; - params.slave_latency = self.slaveLatency; - params.conn_sup_timeout = self.supervisoryTimeout; - - return [self.connectionParameters writeDataAsync:[NSData dataWithBytes:¶ms length:sizeof(ble_gap_conn_params_t)]]; -} - -- (BFTask *)startWatchdog:(double)seconds runWhileSleeping:(BOOL)runWhileSleeping -{ - uint32_t ticks = (seconds * 32768.0) - 1; - NSMutableData *data = [NSMutableData dataWithBytes:&ticks length:sizeof(ticks)]; - uint8_t tmp = runWhileSleeping ? 1 : 0; - [data appendBytes:&tmp length:sizeof(tmp)]; - - return [[[self.watchdogConfig writeDataAsync:data] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self refreshOnScheduler:NO enteringSleep:YES]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.watchdogEnable writeByteAsync:1]; - }]; -} - -- (BFTask *)refreshOnScheduler:(BOOL)scheduler enteringSleep:(BOOL)enteringSleep -{ - uint8_t data = 0; - data |= scheduler ? (1 << 0) : 0; - data |= enteringSleep ? (1 << 1) : 0; - return [self.watchdogAutoRefresh writeByteAsync:data]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Temperature/MBLExternalThermistor.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Temperature/MBLExternalThermistor.h deleted file mode 100644 index 2bc4ec4..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Temperature/MBLExternalThermistor.h +++ /dev/null @@ -1,63 +0,0 @@ -/** - * MBLExternalThermistor.h - * MetaWear - * - * Created by Stephen Schiffli on 7/9/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface for configuring an external thermistor. For details on connecting, - see our blog post at http://projects.mbientlab.com/metawear-and-thermistor/ - */ -@interface MBLExternalThermistor : MBLData - -/** - Thermistor output pin number - */ -@property (nonatomic) uint8_t readPin; -/** - Thermistor enable pin number - */ -@property (nonatomic) uint8_t enablePin; -/** - YES means when enablePin is low the thermistor will be on, NO means when - enablePin is high the sensor will be on. This will be determined by how - you connect the thermistor to the MetaWear. - */ -@property (nonatomic) BOOL enablePinActiveLow; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Temperature/MBLExternalThermistor.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Temperature/MBLExternalThermistor.m deleted file mode 100644 index 7e2282d..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Temperature/MBLExternalThermistor.m +++ /dev/null @@ -1,40 +0,0 @@ -/** - * MBLExternalThermistor.m - * MetaWear - * - * Created by Stephen Schiffli on 7/9/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLExternalThermistor.h" - -@implementation MBLExternalThermistor - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Temperature/MBLTemperature.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Temperature/MBLTemperature.h deleted file mode 100644 index e23740e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Temperature/MBLTemperature.h +++ /dev/null @@ -1,89 +0,0 @@ -/** - * MBLTemperature.h - * MetaWear - * - * Created by Stephen Schiffli on 8/1/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -#import -@class MBLNumericData; -@class MBLMetaWear; - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface to the on-chip and external thermistor temperature sensors - */ -@interface MBLTemperature : MBLModule - -/** - Array of MBLData (or derived class) objects corresponding to the different - temperature sensors available on this particular MetaWear. Event callbacks - will be provided an MBLNumericData object whose double value will be - degrees Celsius. - */ -@property (nonatomic, readonly) NSArray *> *channels; - -///---------------------------------- -/// @name Convenient Assessors - also available via channels[N] -///---------------------------------- - -/** - Data representing the current temperate of the internal (on-die) sensor. - This is guaranteed to always be available (equal to channels[0]). - Event callbacks will be provided an MBLNumericData object whose double - value will be degrees Celsius. - */ -@property (nonatomic, readonly) MBLData *onDieThermistor; -@property (nonatomic, readonly) MBLData *internal DEPRECATED_MSG_ATTRIBUTE("Use onDieThermistor instead"); - -/** - Data representing the current temperate of the external thermistor, if - equiped. This is a thermistor that you connect manually, so you need - to setup readPin and enablePin on the MBLExternalThermistor object. - Event callbacks will be provided an MBLNumericData object whose double - value will be degrees Celsius. - */ -@property (nonatomic, readonly, nullable) MBLExternalThermistor *externalThermistor; - -/** - Data representing the current temperate of the on-board thermistor, if - equiped. Event callbacks will be provided an MBLNumericData object whose - double value will be degrees Celsius. - */ -@property (nonatomic, readonly, nullable) MBLData *onboardThermistor; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Temperature/MBLTemperature.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Temperature/MBLTemperature.m deleted file mode 100644 index 21a65af..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Temperature/MBLTemperature.m +++ /dev/null @@ -1,68 +0,0 @@ -/** - * MBLTemperature.m - * MetaWear - * - * Created by Stephen Schiffli on 8/1/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLTemperature+Private.h" -#import "MBLTemperatureV0.h" -#import "MBLTemperatureV1.h" -#import "MBLModule+Private.h" -#import "MBLModuleInfo.h" -#import "MBLNumericData+Private.h" - -@interface MBLTemperature () -@property (nonatomic) NSArray *channels; -@property (nonatomic) MBLData *internal; -@property (nonatomic) MBLData *onDieThermistor; -@property (nonatomic) MBLExternalThermistor *externalThermistor; -@property (nonatomic) MBLData *onboardThermistor; - -@property (nonatomic) MBLRegister *thermistorSettings; - -@property (nonatomic) MBLTemperatureSource source; -@property (nonatomic) uint8_t thermistorReadPin; -@property (nonatomic) uint8_t thermistorEnablePin; -@end - -@implementation MBLTemperature - -+ (instancetype)objectWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - if (moduleInfo.moduleImplementation == 1) { - return [[MBLTemperatureV1 alloc] initWithDevice:device moduleInfo:moduleInfo]; - } else { - return [[MBLTemperatureV0 alloc] initWithDevice:device moduleInfo:moduleInfo]; - } -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Timer/MBLTimer.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Timer/MBLTimer.h deleted file mode 100644 index dbdf5bf..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Timer/MBLTimer.h +++ /dev/null @@ -1,89 +0,0 @@ -/** - * MBLTimer.h - * MetaWear - * - * Created by Stephen Schiffli on 1/12/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -@class MBLDataSample; -@class MBLTimerEvent; - -NS_ASSUME_NONNULL_BEGIN - -/** - Interface to timer module - */ -@interface MBLTimer : MBLEntityModule - -/** - Create a new event that will trigger periodically until canceled. - @param period Period time in mSec - @returns New event that will trigger periodically - */ -- (MBLTimerEvent *)eventWithPeriod:(uint32_t)period; - -/** - Create a new event that will trigger periodically a fixed number of times. - @param period Period time in mSec - @param eventCount Number of times event will be triggered, 0xFFFF will repeat forever - @returns New event that will trigger periodically - */ -- (MBLTimerEvent *)eventWithPeriod:(uint32_t)period - eventCount:(uint16_t)eventCount; -/** - Create a new event that will trigger periodically a fixed number of times. - @param period Period time in mSec - @param eventCount Number of times event will be triggered, 0xFFFF will repeat forever - @param autoStart Should the timer automatically be started when it is used - @returns New event that will trigger periodically - */ -- (MBLTimerEvent *)eventWithPeriod:(uint32_t)period - eventCount:(uint16_t)eventCount - autoStart:(BOOL)autoStart; - -/** - Create a new event that will trigger periodically a fixed number of times. - @param period Period time in mSec - @param eventCount Number of times event will be triggered, 0xFFFF will repeat forever - @param autoStart Should the timer automatically be started when it is used - @param triggerOnStart Should the timer's first event occur when it starts or after one period - @returns New event that will trigger periodically - */ -- (MBLTimerEvent *)eventWithPeriod:(uint32_t)period - eventCount:(uint16_t)eventCount - autoStart:(BOOL)autoStart - triggerOnStart:(BOOL)triggerOnStart; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Timer/MBLTimer.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Timer/MBLTimer.m deleted file mode 100644 index 249197b..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Timer/MBLTimer.m +++ /dev/null @@ -1,156 +0,0 @@ -/** - * MBLTimer.m - * MetaWear - * - * Created by Stephen Schiffli on 1/12/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLTimer+Private.h" -#import "MBLTimerEvent+Private.h" -#import "MBLRegister+Private.h" -#import "MBLModule+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLDataSample.h" -#import "MBLMetaWearManager+Private.h" -#import "MBLEntityEvent+Private.h" -#import "MBLDeviceInfo.h" -#import "MBLMetaWear+Private.h" -#import "BFTask+Private.h" -#import "MBLConstants+Private.h" - - -static const uint16_t MW_TIMER_REPEAT_FOREVER = 0xFFFF; - -@interface MBLTimer () - -@end - -@implementation MBLTimer - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - MBLRegister *globalEnable = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - MBLRegister *addTimer = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:7]]; - MBLRegister *startTimer = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[MBLFormat writeOnly]]; - MBLRegister *stopTimer = [[MBLRegister alloc] initWithModule:self registerId:0x4 format:[MBLFormat writeOnly]]; - MBLRegister *removeTimer = [[MBLRegister alloc] initWithModule:self registerId:0x5 format:[MBLFormat writeOnly]]; - MBLRegister *notification = [[MBLRegister alloc] initWithModule:self registerId:0x6 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - MBLRegister *notificationEnable = [[MBLRegister alloc] initWithModule:self registerId:0x7 format:[MBLFormat writeOnly]]; - - int maxTimers = 4; // This was the old default - if (moduleInfo.moduleData.length) { - maxTimers = *(uint8_t *)moduleInfo.moduleData.bytes; - } - - NSString *curVersion = device.deviceInfo.firmwareRevision; - if ([MBLConstants versionString:curVersion isLessThan:@"1.1.0"]) { - startTimer.needsResponse = YES; - } - - addTimer.writeResponds = YES; - - self.globalEnable = globalEnable; - - self.addEntity = addTimer; - self.removeEntity = removeTimer; - - self.activateEntity = startTimer; - self.deactivateEntity = stopTimer; - - self.globalNotifications = notification; - self.notificationEnable = notificationEnable; - - self.maxEntities = maxTimers; - } - return self; -} - -- (BFTask *)startTimer:(MBLTimerEvent *)timer -{ - return [BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - if (timer.index != 0xFF) { - return [self.activateEntity writeByteAsync:timer.index]; - } - return nil; - }]; -} - -- (BFTask *)stopTimer:(MBLTimerEvent *)timer -{ - return [BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - if (timer.index != 0xFF) { - return [self.deactivateEntity writeByteAsync:timer.index]; - } - return nil; - }]; -} - -- (MBLTimerEvent *)eventWithPeriod:(uint32_t)period - eventCount:(uint16_t)eventCount - autoStart:(BOOL)autoStart - triggerOnStart:(BOOL)triggerOnStart -{ - // Since all filters get their data through the single timerNotification register in - // the timer module, we create a dummy register which is optionally notified - // when we see a global notification which matches our filter id - mw_timer_param_t params = {0}; - params.period = period; - params.repeat_count = eventCount; - params.notify_on_start = triggerOnStart ? 1 : 0; - - return [[MBLTimerEvent alloc] initWithModule:self - registerId:self.globalNotifications.registerId - addEntityParameters:[NSData dataWithBytes:¶ms length:sizeof(mw_timer_param_t)] - format:[[MBLFormat alloc] initEncodedDataWithLength:0] - autoStart:autoStart]; -} - -- (MBLTimerEvent *)eventWithPeriod:(uint32_t)period - eventCount:(uint16_t)eventCount - autoStart:(BOOL)autoStart -{ - return [self eventWithPeriod:period eventCount:eventCount autoStart:autoStart triggerOnStart:YES]; -} - -- (MBLTimerEvent *)eventWithPeriod:(uint32_t)period - eventCount:(uint16_t)eventCount -{ - return [self eventWithPeriod:period eventCount:eventCount autoStart:YES]; -} - -- (MBLTimerEvent *)eventWithPeriod:(uint32_t)period -{ - return [self eventWithPeriod:period eventCount:MW_TIMER_REPEAT_FOREVER]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Timer/MBLTimerEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Timer/MBLTimerEvent.h deleted file mode 100644 index abff77f..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Timer/MBLTimerEvent.h +++ /dev/null @@ -1,54 +0,0 @@ -/** - * MBLTimerEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 3/11/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLTimerEvent : MBLEntityEvent - -/** - Start the timer - */ -- (BFTask *)start; - -/** - Stop the timer - */ -- (BFTask *)stop; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Timer/MBLTimerEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Timer/MBLTimerEvent.m deleted file mode 100644 index 9c8ee0d..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/Timer/MBLTimerEvent.m +++ /dev/null @@ -1,78 +0,0 @@ -/** - * MBLTimerEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 3/11/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLTimerEvent+Private.h" -#import "MBLEntityEvent+Private.h" -#import "MBLEvent+Private.h" -#import "BFTask+Private.h" -#import "MBLTimer+Private.h" - -@interface MBLTimerEvent () -@property (nonatomic) BOOL autoStart; -@end - -@implementation MBLTimerEvent - -- (instancetype)initWithModule:(MBLEntityModule *)module - registerId:(uint8_t)registerId - addEntityParameters:(NSData *)addEntityParameters - format:(MBLFormat *)format - autoStart:(BOOL)autoStart -{ - self = [super initWithModule:module registerId:registerId addEntityParameters:addEntityParameters format:format]; - if (self) { - self.autoStart = autoStart; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - return self.autoStart ? [self start] : [BFTask taskWithResult:nil]; -} - -- (BFTask *)start -{ - MBLTimer *timer = (MBLTimer *)self.module; - return [timer startTimer:self]; -} - -- (BFTask *)stop -{ - MBLTimer *timer = (MBLTimer *)self.module; - return [timer stopTimer:self]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/iBeacon/MBLiBeacon.h b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/iBeacon/MBLiBeacon.h deleted file mode 100644 index c04854e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/iBeacon/MBLiBeacon.h +++ /dev/null @@ -1,109 +0,0 @@ -/** - * MBLiBeacon.h - * MetaWear - * - * Created by Stephen Schiffli on 8/3/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import - -NS_ASSUME_NONNULL_BEGIN - -/** - iBeacon transmiter power - */ -typedef NS_ENUM(uint8_t, MBLiBeaconTransmitPower) { - MBLiBeaconTransmitPower4dBm, - MBLiBeaconTransmitPower0dBm, - MBLiBeaconTransmitPowerMinus4dBm, - MBLiBeaconTransmitPowerMinus8dBm, - MBLiBeaconTransmitPowerMinus12dBm, - MBLiBeaconTransmitPowerMinus16dBm, - MBLiBeaconTransmitPowerMinus20dBm, - MBLiBeaconTransmitPowerMinus30dBm, - MBLiBeaconTransmitPowerMinus40dBm -}; - -/** - Interface to program the device to advertise as an iBeacon - */ -@interface MBLiBeacon : MBLModule - -/** - The iBeacon UUID being broadcast, the default is the MetaWear Service UUID - */ -- (CBUUID *)uuid; -- (BFTask *)setUuid:(CBUUID *)uuid; -/** - The iBeacon major value being broadcast, the default is 0x0000 - */ -- (uint16_t)major; -- (BFTask *)setMajor:(uint16_t)major; -/** - The iBeacon minor value being broadcast, the default is 0x0000 - */ -- (uint16_t)minor; -- (BFTask *)setMinor:(uint16_t)minor; - -/** - Calibrated RX power in dBm. This represents the approximate RSSI value seen - by the reciever when 1 meter away from the iBeacon, default is -55 dBm. - Valid range is [-10, -128]. - */ -- (int8_t)calibratedReceiverPower; -- (BFTask *)setCalibratedReceiverPower:(int8_t)calibratedReceiverPower; -/** - iBeacon transmit power. Setting a smaller (lower dBm) value will result in - a smaller beacon discovery radius, default is MBLiBeaconTransmitPower0dBm. - You should adjust calibratedReceiverPower when changing transmitPower. - */ -- (MBLiBeaconTransmitPower)transmitPower; -- (BFTask *)setTransmitPower:(MBLiBeaconTransmitPower)transmitPower; - -/** - Advertisement frequency in ms, default is 100 ms. - Valid range is [20, 10,240] - */ -- (uint16_t)frequency; -- (BFTask *)setFrequency:(uint16_t)frequency; - -/** - Change iBeacon state to on or off. - @warning The beacon will only be visible after you disconnect - @param on YES turns iBeacon on, NO, turns iBeacon off - */ -- (BFTask *)setBeaconOnAsync:(BOOL)on; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/iBeacon/MBLiBeacon.m b/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/iBeacon/MBLiBeacon.m deleted file mode 100644 index 2466a1e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Classes/Modules/iBeacon/MBLiBeacon.m +++ /dev/null @@ -1,198 +0,0 @@ -/** - * MBLiBeacon.m - * MetaWear - * - * Created by Stephen Schiffli on 8/3/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLiBeacon.h" -#import "MBLMetaWear+Private.h" -#import "MBLRegister+Private.h" -#import "MBLFormat.h" -#import "MBLNumericFormatter.h" -#import "MBLConstants+Private.h" - -@interface MBLiBeacon() -@property (nonatomic) MBLRegister *iBeaconEnable; -@property (nonatomic) MBLRegister *uuidRegister; -@property (nonatomic) MBLRegister *majorRegister; -@property (nonatomic) MBLRegister *minorRegister; -@property (nonatomic) MBLRegister *powerRxRegister; -@property (nonatomic) MBLRegister *powerTxRegister; -@property (nonatomic) MBLRegister *frequencyRegister; - - -// Setting the following properties causes side effects, so we -// create an internal property for storing the actual value, allowing -// us to safely get/set during serialization of this class -@property (nonatomic) CBUUID *uuidImpl; -@property (nonatomic) uint16_t majorImpl; -@property (nonatomic) uint16_t minorImpl; -@property (nonatomic) int8_t calibratedReceiverPowerImpl; -@property (nonatomic) MBLiBeaconTransmitPower transmitPowerImpl; -@property (nonatomic) uint16_t frequencyImpl; -@end - -@implementation MBLiBeacon - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.uuidImpl = [MBLConstants serviceUUID]; - self.majorImpl = 0x0; - self.minorImpl = 0x0; - self.calibratedReceiverPowerImpl = -55; - self.transmitPowerImpl = MBLiBeaconTransmitPower0dBm; - self.frequencyImpl = 100; - - self.iBeaconEnable = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.uuidRegister = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:16]]; - self.majorRegister = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - self.minorRegister = [[MBLRegister alloc] initWithModule:self registerId:0x4 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - self.powerRxRegister = [[MBLRegister alloc] initWithModule:self registerId:0x5 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:YES]]; - self.powerTxRegister = [[MBLRegister alloc] initWithModule:self registerId:0x6 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:YES]]; - self.frequencyRegister = [[MBLRegister alloc] initWithModule:self registerId:0x7 format:[[MBLNumericFormatter alloc] initIntWithLength:2 isSigned:NO]]; - } - return self; -} - -- (CBUUID *)uuid -{ - return self.uuidImpl; -} - -- (BFTask *)setUuid:(CBUUID *)uuid -{ - self.uuidImpl = uuid; - - NSData *bigEndianUUID = self.uuid.data; - NSMutableData *littleEndianUUID = [NSMutableData dataWithCapacity:bigEndianUUID.length]; - const uint8_t *ptr = bigEndianUUID.bytes + bigEndianUUID.length - 1; - for (int i = 0; i < bigEndianUUID.length; i++, ptr--) { - [littleEndianUUID appendBytes:ptr length:1]; - } - return [self.uuidRegister writeDataAsync:littleEndianUUID]; -} - -- (uint16_t)major -{ - return self.majorImpl; -} - -- (BFTask *)setMajor:(uint16_t)major -{ - self.majorImpl = major; - return [self.majorRegister writeDataAsync:[NSData dataWithBytes:&major length:2]]; -} - -- (uint16_t)minor -{ - return self.minorImpl; -} - -- (BFTask *)setMinor:(uint16_t)minor -{ - self.minorImpl = minor; - return [self.minorRegister writeDataAsync:[NSData dataWithBytes:&minor length:2]]; -} - -- (int8_t)calibratedReceiverPower -{ - return self.calibratedReceiverPowerImpl; -} - -- (BFTask *)setCalibratedReceiverPower:(int8_t)calibratedReceiverPower -{ - if (calibratedReceiverPower > -10) { - [NSException raise:@"Invalid calibratedReceiverPower value" - format:@"power of %d is invalid, valid range is [-10, -128]", calibratedReceiverPower]; - } - self.calibratedReceiverPowerImpl = calibratedReceiverPower; - return [self.powerRxRegister writeByteAsync:calibratedReceiverPower]; -} - -- (MBLiBeaconTransmitPower)transmitPower -{ - return self.transmitPowerImpl; -} - -- (BFTask *)setTransmitPower:(MBLiBeaconTransmitPower)transmitPower -{ - self.transmitPowerImpl = transmitPower; - return [self.powerTxRegister writeByteAsync:[self integerTransmitPower]]; -} - -- (int8_t)integerTransmitPower -{ - switch (self.transmitPowerImpl) { - case MBLiBeaconTransmitPower4dBm: - return 4; - case MBLiBeaconTransmitPower0dBm: - return 0; - case MBLiBeaconTransmitPowerMinus4dBm: - return -4; - case MBLiBeaconTransmitPowerMinus8dBm: - return -8; - case MBLiBeaconTransmitPowerMinus12dBm: - return -12; - case MBLiBeaconTransmitPowerMinus16dBm: - return -16; - case MBLiBeaconTransmitPowerMinus20dBm: - return -20; - case MBLiBeaconTransmitPowerMinus30dBm: - return -30; - case MBLiBeaconTransmitPowerMinus40dBm: - return -40; - } -} - -- (uint16_t)frequency -{ - return self.frequencyImpl; -} - -- (BFTask *)setFrequency:(uint16_t)frequency -{ - if (frequency > 10240 || frequency < 20) { - [NSException raise:@"Invalid frequency value" - format:@"frequency of %d is invalid, valid range is [20, 10,240]", frequency]; - } - self.frequencyImpl = frequency; - return [self.frequencyRegister writeDataAsync:[NSData dataWithBytes:&frequency length:2]]; -} - -- (BFTask *)setBeaconOnAsync:(BOOL)on -{ - return [self.iBeaconEnable writeByteAsync:on ? 0x1 : 0x0]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Categories/BFTask+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Categories/BFTask+Private.h deleted file mode 100644 index 6452571..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Categories/BFTask+Private.h +++ /dev/null @@ -1,70 +0,0 @@ -/** - * BFTask+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 12/3/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -#import -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface BFExecutor (MBLPrivate) - -+ (instancetype)metaWearExecutor; -+ (instancetype)simulatorExecutor; - -@end - - -@interface BFTask<__covariant ResultType> (MBLPrivate) - -typedef void (^MBLPrivateSuccessBlock)(ResultType result); -typedef void (^MBLPrivateErrorBlock)(NSError *error); - -- (instancetype)successOnMetaWear:(MBLPrivateSuccessBlock)block; -- (instancetype)failureOnMetaWear:(MBLPrivateErrorBlock)block; - -- (instancetype)continueOnMetaWearWithSuccessBlock:(BFContinuationBlock)block; -- (instancetype)continueOnMetaWearWithBlock:(BFContinuationBlock)block; - -+ (instancetype)taskFromMetaWearWithBlock:(id (^)())block; -+ (instancetype)taskFromSimulatorWithBlock:(id (^)())block; - -@end - - -extern void MBLForceLoadCategory_BFTask_Private(); - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Categories/BFTask+Private.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Categories/BFTask+Private.m deleted file mode 100644 index 6d23553..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Categories/BFTask+Private.m +++ /dev/null @@ -1,119 +0,0 @@ -/** - * BFTask+Private.m - * MetaWear - * - * Created by Stephen Schiffli on 12/3/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "BFTask+Private.h" -#import "MBLConstants+Private.h" - -@implementation BFExecutor (MBLPrivate) - -+ (BFExecutor *)metaWearExecutor -{ - static BFExecutor *singleton; - static dispatch_once_t onceToken = 0; - dispatch_once(&onceToken, ^{ - singleton = [BFExecutor executorWithDispatchQueue:[MBLConstants metaWearQueue]]; - }); - return singleton; -} - -+ (BFExecutor *)simulatorExecutor -{ - static BFExecutor *singleton; - static dispatch_once_t onceToken = 0; - dispatch_once(&onceToken, ^{ - // Time simulator queue is like a sub-queue of metaWearQueue - singleton = [BFExecutor executorWithBlock:^void(void(^block)()) { - dispatch_async([MBLConstants metaWearQueue], ^{ - dispatch_sync([MBLConstants simulatorQueue], block); - }); - }]; - }); - return singleton; -} -@end - -@implementation BFTask (Private) - -- (instancetype)successOnMetaWear:(MBLPrivateSuccessBlock)block -{ - return [self continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - block(task.result); - return task; - }]; -} - -- (instancetype)failureOnMetaWear:(MBLPrivateErrorBlock)block -{ - return [self continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - if (task.error) { - block(task.error); - } - return task; - }]; -} - -- (instancetype)continueOnMetaWearWithSuccessBlock:(BFContinuationBlock)block -{ - BFExecutor *executor = [MBLConstants isSimulatorQueue] ? [BFExecutor simulatorExecutor] : [BFExecutor metaWearExecutor]; - return [self continueWithExecutor:executor withSuccessBlock:block]; -} - -- (instancetype)continueOnMetaWearWithBlock:(BFContinuationBlock)block -{ - BFExecutor *executor = [MBLConstants isSimulatorQueue] ? [BFExecutor simulatorExecutor] : [BFExecutor metaWearExecutor]; - return [self continueWithExecutor:executor withBlock:block]; -} - -+ (instancetype)taskFromMetaWearWithBlock:(id (^)())block { - BFExecutor *executor = [MBLConstants isSimulatorQueue] ? [BFExecutor simulatorExecutor] : [BFExecutor metaWearExecutor]; - return [[self taskWithResult:nil] continueWithExecutor:executor withBlock:^id(BFTask *task) { - return block(); - }]; -} - -+ (instancetype)taskFromSimulatorWithBlock:(id (^)())block -{ - return [[self taskWithResult:nil] continueWithExecutor:[BFExecutor simulatorExecutor] withBlock:^id(BFTask *task) { - return block(); - }]; -} - -@end - -void MBLForceLoadCategory_BFTask_Private() -{ - NSString *string = nil; - [string description]; -} diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Categories/MBLCategoryLoader.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Categories/MBLCategoryLoader.h deleted file mode 100644 index 8a1a14c..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Categories/MBLCategoryLoader.h +++ /dev/null @@ -1,42 +0,0 @@ -/** - * MBLCategoryLoader.h - * MetaWear - * - * Created by Stephen Schiffli on 12/3/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -@interface MBLCategoryLoader : NSObject - -+ (void)loadPrivateCategories; - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Categories/MBLCategoryLoader.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Categories/MBLCategoryLoader.m deleted file mode 100644 index ea83c90..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Categories/MBLCategoryLoader.m +++ /dev/null @@ -1,50 +0,0 @@ -/** - * MBLCategoryLoader.m - * MetaWear - * - * Created by Stephen Schiffli on 12/3/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - - -#import "MBLCategoryLoader.h" -#import "BFTask+Private.h" -#import "BFTask+MBLExtensions.h" -#import "FastCoder.h" - -@implementation MBLCategoryLoader - -+ (void)loadPrivateCategories -{ - MBLForceLoadCategory_BFTask_Private(); - MBLForceLoadCategory_BFTask_MBLExtensions(); -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLAnalytics.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLAnalytics.h deleted file mode 100644 index 7018a44..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLAnalytics.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLAnalytics.h - * MetaWear - * - * Created by Stephen Schiffli on 11/27/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - - -@interface MBLAnalytics : NSObject -+ (instancetype)sharedManager; - -- (void)postEventForDevice:(NSUUID *)uuid eventCategory:(NSString *)category eventAction:(NSString *)action eventLabel:(NSString *)label; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLAnalytics.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLAnalytics.m deleted file mode 100644 index 09daa03..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLAnalytics.m +++ /dev/null @@ -1,119 +0,0 @@ -/** - * MBLAnalytics.m - * MetaWear - * - * Created by Stephen Schiffli on 11/27/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAnalytics.h" -#import "MBLLogger.h" - -static const NSString *const VERSION = @"1"; -static const NSString *const GOOGLE_ANALYTICS_ID = @"UA-57166859-3"; -static NSString *const GOOGLE_ANALYTICS_URL = @"https://ssl.google-analytics.com/collect"; - -@interface MBLAnalyticMessage : NSObject -@property (nonatomic) NSString *postPayload; - -- (instancetype)initWithDevice:(NSUUID *)uuid eventCategory:(NSString *)category eventAction:(NSString *)action eventLabel:(NSString *)label; -- (void)post; -@end - - -@interface MBLAnalytics () -@end - -@implementation MBLAnalytics - -+ (instancetype)sharedManager -{ - static MBLAnalytics *singleton = nil; - if (!singleton) { - singleton = [[MBLAnalytics alloc] init]; - } - return singleton; -} - -- (void)postEventForDevice:(NSUUID *)uuid eventCategory:(NSString *)category eventAction:(NSString *)action eventLabel:(NSString *)label -{ - [[[MBLAnalyticMessage alloc] initWithDevice:uuid eventCategory:category eventAction:action eventLabel:label] post]; -} - -@end - -@implementation MBLAnalyticMessage - -- (instancetype)initWithDevice:(NSUUID *)uuid eventCategory:(NSString *)category eventAction:(NSString *)action eventLabel:(NSString *)label -{ - self = [super init]; - if (self) { - self.postPayload = [NSString stringWithFormat:@"%@&t=event&ec=%@&ea=%@&el=%@", - [self basePost:uuid], - [category stringByAddingPercentEncodingWithAllowedCharacters:NSCharacterSet.URLQueryAllowedCharacterSet], - [action stringByAddingPercentEncodingWithAllowedCharacters:NSCharacterSet.URLQueryAllowedCharacterSet], - [label stringByAddingPercentEncodingWithAllowedCharacters:NSCharacterSet.URLQueryAllowedCharacterSet], - nil]; - } - return self; -} - -- (NSString *)basePost:(NSUUID *)uuid -{ - return [NSString stringWithFormat:@"v=%@&tid=%@&cid=%@&an=%@&av=%@&aid=%@&ds=ios", - [VERSION stringByAddingPercentEncodingWithAllowedCharacters:NSCharacterSet.URLQueryAllowedCharacterSet], - [GOOGLE_ANALYTICS_ID stringByAddingPercentEncodingWithAllowedCharacters:NSCharacterSet.URLQueryAllowedCharacterSet], - [uuid.UUIDString stringByAddingPercentEncodingWithAllowedCharacters:NSCharacterSet.URLQueryAllowedCharacterSet], - [[[NSBundle mainBundle] objectForInfoDictionaryKey:(__bridge NSString *)kCFBundleNameKey] stringByAddingPercentEncodingWithAllowedCharacters:NSCharacterSet.URLQueryAllowedCharacterSet], - [[[NSBundle mainBundle] objectForInfoDictionaryKey:(__bridge NSString *)kCFBundleVersionKey] stringByAddingPercentEncodingWithAllowedCharacters:NSCharacterSet.URLQueryAllowedCharacterSet], - [[NSBundle mainBundle].bundleIdentifier stringByAddingPercentEncodingWithAllowedCharacters:NSCharacterSet.URLQueryAllowedCharacterSet], - nil]; -} - -- (void)post -{ - NSData *postData = [self.postPayload dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES]; - NSString *postLength = [NSString stringWithFormat:@"%lu", (unsigned long)postData.length]; - - NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init] ; - [request setURL:[NSURL URLWithString:GOOGLE_ANALYTICS_URL]]; - [request setHTTPMethod:@"POST"]; - [request setValue:postLength forHTTPHeaderField:@"Content-Length"]; - [request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"]; - [request setHTTPBody:postData]; - NSString *tmp = self.postPayload; - [[[NSURLSession sharedSession] dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *connectionError) { - if (connectionError) { - MBLLog(MBLLogLevelDebug, @"[Analytics] issue posting \n%@\%@", tmp, connectionError); - } - }] resume]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLConstants+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLConstants+Private.h deleted file mode 100644 index d3543c9..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLConstants+Private.h +++ /dev/null @@ -1,65 +0,0 @@ -/** - * MBLConstants+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 9/27/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -@interface MBLConstants : NSObject - -+ (dispatch_queue_t)metaWearQueue; -+ (dispatch_queue_t)simulatorQueue; -+ (BOOL)isSimulatorQueue; -+ (BOOL)isMetaWearQueue; - -+ (CBUUID *)serviceUUID; -+ (CBUUID *)commandUUID; -+ (CBUUID *)notificationUUID; - -+ (CBUUID *)DFUServiceUUID; - -+ (CBUUID *)batteryServiceUUID; -+ (CBUUID *)batteryLifeUUID; - -+ (CBUUID *)DISServiceUUID; -+ (CBUUID *)DISModelNumberUUID; -+ (CBUUID *)DISSerialNumberUUID; -+ (CBUUID *)DISFirmwareRevUUID; -+ (CBUUID *)DISHardwareRevUUID; -+ (CBUUID *)DISManufacturerNameUUID; - -+ (BOOL)versionString:(NSString *)a isLessThan:(NSString *)b; -+ (double)clampDouble:(double)x low:(double)low high:(double)high; -+ (double)clampInt:(int)x low:(int)low high:(int)high; - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLConversion.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLConversion.h deleted file mode 100644 index 68c98cb..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLConversion.h +++ /dev/null @@ -1,86 +0,0 @@ -/** - * MBLConversion.h - * MetaWear - * - * Created by Stephen Schiffli on 5/5/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLConversion : NSObject - -/** - @param number Number you want to convert - @param int32Pointer Pointer to int32 where the result will be stored - @returns YES if successful, NO if error - */ -+ (BOOL)number:(NSNumber *)number toInt32:(int32_t *)int32Pointer; - -/** - @param number Number you want to convert - @param uint32Pointer Pointer to uint32 where the result will be stored - @returns YES if successful, NO if error - */ -+ (BOOL)number:(NSNumber *)number toUint32:(uint32_t *)uint32Pointer; - -/** - @param number Number you want to convert - @param int16Pointer Pointer to int16 where the result will be stored - @returns YES if successful, NO if error - */ -+ (BOOL)number:(NSNumber *)number toInt16:(int16_t *)int16Pointer; - -/** - @param number Number you want to convert - @param uint16Pointer Pointer to uint16 where the result will be stored - @returns YES if successful, NO if error - */ -+ (BOOL)number:(NSNumber *)number toUint16:(uint16_t *)uint16Pointer; - -/** - @param number Number you want to convert - @param int8Pointer Pointer to int8 where the result will be stored - @returns YES if successful, NO if error - */ -+ (BOOL)number:(NSNumber *)number toInt8:(int8_t *)int8Pointer; - -/** - @param number Number you want to convert - @param uint8Pointer Pointer to uint8 where the result will be stored - @returns YES if successful, NO if error - */ -+ (BOOL)number:(NSNumber *)number toUint8:(uint8_t *)uint8Pointer; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLConversion.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLConversion.m deleted file mode 100644 index edcac0e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLConversion.m +++ /dev/null @@ -1,107 +0,0 @@ -/** - * MBLConversion.m - * MetaWear - * - * Created by Stephen Schiffli on 5/5/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLConversion.h" - -@implementation MBLConversion - -+ (BOOL)number:(NSNumber *)number toInt32:(int32_t *)int32Pointer -{ - double boundsCheck = number.doubleValue; - if (boundsCheck < INT32_MIN || boundsCheck > INT32_MAX) { - return NO; - } - int32_t value = number.intValue; - memcpy(int32Pointer, &value, sizeof(int32_t)); - return YES; -} - -+ (BOOL)number:(NSNumber *)number toUint32:(uint32_t *)uint32Pointer -{ - double boundsCheck = number.doubleValue; - if (boundsCheck < 0 || boundsCheck > UINT32_MAX) { - return NO; - } - uint32_t value = number.unsignedIntValue; - memcpy(uint32Pointer, &value, sizeof(uint32_t)); - return YES; -} - - -+ (BOOL)number:(NSNumber *)number toInt16:(int16_t *)int16Pointer -{ - double boundsCheck = number.doubleValue; - if (boundsCheck < INT16_MIN || boundsCheck > INT16_MAX) { - return NO; - } - int16_t value = number.shortValue; - memcpy(int16Pointer, &value, sizeof(int16_t)); - return YES; -} - -+ (BOOL)number:(NSNumber *)number toUint16:(uint16_t *)uint16Pointer -{ - double boundsCheck = number.doubleValue; - if (boundsCheck < 0 || boundsCheck > UINT16_MAX) { - return NO; - } - uint16_t value = number.unsignedShortValue; - memcpy(uint16Pointer, &value, sizeof(uint16_t)); - return YES; -} - -+ (BOOL)number:(NSNumber *)number toInt8:(int8_t *)int8Pointer -{ - double boundsCheck = number.doubleValue; - if (boundsCheck < INT8_MIN || boundsCheck > INT8_MAX) { - return NO; - } - int8_t value = number.charValue; - memcpy(int8Pointer, &value, sizeof(int8_t)); - return YES; -} - -+ (BOOL)number:(NSNumber *)number toUint8:(uint8_t *)uint8Pointer -{ - double boundsCheck = number.doubleValue; - if (boundsCheck < 0 || boundsCheck > UINT8_MAX) { - return NO; - } - uint8_t value = number.unsignedCharValue; - memcpy(uint8Pointer, &value, sizeof(uint8_t)); - return YES; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLData+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLData+Private.h deleted file mode 100644 index aedbf22..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLData+Private.h +++ /dev/null @@ -1,54 +0,0 @@ -/** - * MBData+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 1/23/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLData.h" -#import "MBLRegister+Private.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLData (Private) - -- (BFTask *)simulatedReadAsync:(BOOL)isLocal; - -/** - Manually log values when this data is read, note you need to set up something - else that will perform the actual reads. The result of the returned task is - an MBLEvent that is used for downloading the data. - */ -- (BFTask *)addLoggingEntry; - -@end - -NS_ASSUME_NONNULL_END \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDataSample+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDataSample+Private.h deleted file mode 100644 index f16d41e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDataSample+Private.h +++ /dev/null @@ -1,45 +0,0 @@ -/** - * MBLDataSample+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 5/7/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLDataSample.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLDataSample (Private) -- (instancetype)initWithTimestamp:(NSDate *)timestamp; -- (instancetype)initWithTimestamp:(NSDate *)timestamp data:(nullable NSData *)data; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDependentData.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDependentData.h deleted file mode 100644 index 4abc50e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDependentData.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * MBLDependentData.h - * MetaWear - * - * Created by Stephen Schiffli on 12/17/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -@class MBLModule; -@class MBLFormat; - -@interface MBLDependentData : MBLData - -- (instancetype)initWithModule:(MBLModule *)module registerId:(uint8_t)registerId format:(MBLFormat *)format dependent:(MBLRegister *)dependent; - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDependentData.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDependentData.m deleted file mode 100644 index 7933a32..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDependentData.m +++ /dev/null @@ -1,74 +0,0 @@ -/** - * MBLDependentData.m - * MetaWear - * - * Created by Stephen Schiffli on 12/17/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLDependentData.h" -#import "MBLRegister+Private.h" - -@interface MBLDependentData () -@property (nonatomic) MBLRegister *dependent; -@end - -@implementation MBLDependentData - -- (instancetype)initWithModule:(MBLModule *)module registerId:(uint8_t)registerId format:(MBLFormat *)format dependent:(MBLRegister *)dependent -{ - self = [super initWithModule:module registerId:registerId format:format]; - if (self) { - self.dependent = dependent; - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - return [self.dependent initializeAsync]; -} - -- (BFTask *)performAsyncDeinitialization -{ - return [self.dependent deinitializeAsync]; -} - -- (BFTask *)performAsyncActivation -{ - return [self.dependent activateAsync]; -} - -- (BFTask *)performAsyncDeactivation -{ - return [self.dependent deactivateAsync]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDispatchQueue.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDispatchQueue.h deleted file mode 100644 index 877322a..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDispatchQueue.h +++ /dev/null @@ -1,55 +0,0 @@ -/** - * MBLDispatchQueue.h - * MetaWear - * - * Created by Stephen Schiffli on 11/2/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLDispatchQueue : NSObject - -- (instancetype)initWithName:(NSString *)name; - -- (void)addOperationWithBlock:(nullable MBLVoidHandler)block; - -// Returns if is was suspended before call. -- (BOOL)suspend; -- (void)resume; - -- (void)forceResume; -- (void)reset; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDispatchQueue.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDispatchQueue.m deleted file mode 100644 index 1f31830..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDispatchQueue.m +++ /dev/null @@ -1,111 +0,0 @@ -/** - * MBLDispatchQueue.m - * MetaWear - * - * Created by Stephen Schiffli on 11/2/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLDispatchQueue.h" -#import "MBLMetaWearManager+Private.h" - -@interface MBLDispatchQueue () -@property (nonatomic) NSObject *queueMutex; -@property (nonatomic) NSOperationQueue *queue; -@property (nonatomic) int suspendCount; -@end - -@implementation MBLDispatchQueue - -- (instancetype)initWithName:(NSString *)name -{ - self = [super init]; - if (self) { - self.queueMutex = [[NSObject alloc] init]; - self.queue = [[NSOperationQueue alloc] init]; - self.queue.name = name; - self.queue.maxConcurrentOperationCount = 1; - self.suspendCount = 0; - } - return self; -} - -- (void)addOperationWithBlock:(MBLVoidHandler)block -{ - if (block) { - @synchronized(self.queueMutex) { - [self.queue addOperationWithBlock:block]; - } - } -} - -- (BOOL)suspend -{ - BOOL wasSuspended = YES; - @synchronized(self.queueMutex) { - if (self.suspendCount == 0) { - self.queue.suspended = YES; - wasSuspended = NO; - } - self.suspendCount++; - } - return wasSuspended; -} - -- (void)resume -{ - @synchronized(self.queueMutex) { - if (self.suspendCount == 1) { - self.queue.suspended = NO; - } - if (self.suspendCount > 0) { - self.suspendCount--; - } - } -} - -- (void)forceResume -{ - @synchronized(self.queueMutex) { - self.suspendCount = 0; - self.queue.suspended = NO; - } -} - -- (void)reset -{ - @synchronized(self.queueMutex) { - [self.queue cancelAllOperations]; - self.suspendCount = 0; - self.queue.suspended = NO; - } -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDownloadOnlyEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDownloadOnlyEvent.h deleted file mode 100644 index 4f75eeb..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDownloadOnlyEvent.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * MBLDownloadOnlyEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 8/14/16. - * Copyright © 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLDownloadOnlyEvent : MBLEvent - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDownloadOnlyEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDownloadOnlyEvent.m deleted file mode 100644 index c033d9e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLDownloadOnlyEvent.m +++ /dev/null @@ -1,62 +0,0 @@ -/** - * MBLDownloadOnlyEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 8/14/16. - * Copyright © 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLDownloadOnlyEvent.h" -#import "MBLEvent+Private.h" -#import "MBLMetaWear+Private.h" - -@implementation MBLDownloadOnlyEvent - -- (BFTask *)initializeAsync -{ - return [BFTask taskWithResult:nil]; -} - -- (BFTask *)deinitializeAsync -{ - return [BFTask taskWithResult:nil]; -} - -- (BFTask *)activateAsync -{ - return [BFTask taskWithResult:nil]; -} - -- (BFTask *)deactivateAsync -{ - return [BFTask taskWithResult:nil]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLEntityEvent+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLEntityEvent+Private.h deleted file mode 100644 index 82be92e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLEntityEvent+Private.h +++ /dev/null @@ -1,53 +0,0 @@ -/** - * MBLEntityEvent+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 12/4/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEntityEvent.h" -@class MBLEntityModule; -@class MBLFormat; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLEntityEvent (Private) -@property (nonatomic) NSData *addEntityParameters; - -- (instancetype)initWithModule:(MBLEntityModule *)module - registerId:(uint8_t)registerId - addEntityParameters:(NSData *)addEntityParameters - format:(MBLFormat *)format; - -- (BFTask *)isStateValid; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLEntityModule+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLEntityModule+Private.h deleted file mode 100644 index 77af6b6..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLEntityModule+Private.h +++ /dev/null @@ -1,74 +0,0 @@ -/** - * MBLEntityModule+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 12/3/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - - -#import "MBLEntityModule.h" -#import "MBLDataSample+Private.h" -#import "MBLModule+Private.h" -#import "MBLRegister+Private.h" -#import "MBLEntityEvent+Private.h" -#import "BFTask+Private.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLEntityModule (Private) - -@property (nonatomic) int activeNotifications; -@property (nonatomic) NSMutableArray *entities; -@property (nonatomic) int maxEntities; - -@property (nonatomic, nullable) MBLRegister *addEntity; -@property (nonatomic, nullable) MBLRegister *removeEntity; -@property (nonatomic, nullable) MBLRegister *activateEntity; -@property (nonatomic, nullable) MBLRegister *deactivateEntity; - -@property (nonatomic, nullable) MBLRegister *globalNotifications; -@property (nonatomic, nullable) MBLRegister *notificationEnable; - - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo; - -- (BFTask *)performAsyncInitializationForEntity:(MBLEntityEvent *)entity; -- (BFTask *)performAsyncDeinitializationForEntity:(MBLEntityEvent *)entity; - -- (BFTask *)performAsyncActivationForEntity:(MBLEntityEvent *)entity; -- (BFTask *)performAsyncDeactivationForEntity:(MBLEntityEvent *)entity; - -- (BFTask *)startNotificationsForEntity:(MBLEntityEvent *)entity; -- (BFTask *)stopNotificationsAsyncForEntity:(MBLEntityEvent *)entity; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLEvent+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLEvent+Private.h deleted file mode 100644 index 54c92c6..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLEvent+Private.h +++ /dev/null @@ -1,56 +0,0 @@ -/** - * MBLEvent+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 10/13/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent.h" -#import "MBLRegister+Private.h" -#import "MBLModule+Private.h" -#import "MBLFilter.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLEvent (Private) -@property (nonatomic, readonly) NSMutableArray *loggingIds; -@property (nonatomic, readonly) NSMutableArray *commandIds; -@property (nonatomic, readonly) NSMutableArray *commandActivatedRegisters; - -- (instancetype)initWithModule:(MBLModule *)module registerId:(uint8_t)registerId index:(uint8_t)index format:(MBLFormat *)format; -- (instancetype)initWithModule:(MBLModule *)module registerId:(uint8_t)registerId format:(MBLFormat *)format; - -// TODO: Test and enable this filter -- (MBLFilter *)modifyEventUsingOperation:(MBLArithmeticOperation)op withData:(double)data; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFilter+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFilter+Private.h deleted file mode 100644 index 422bff9..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFilter+Private.h +++ /dev/null @@ -1,56 +0,0 @@ -/** - * MBLFilter+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 2/10/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFilter.h" -#import "MBLFormat.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLFilter (Private) - -@property (nonatomic, readonly) MBLEvent *trigger; -@property (nonatomic, readonly) MBLData *stateSetResetGet; - -- (instancetype)initWithTrigger:(MBLEvent *)trigger - filterParameters:(NSData *)parameters - format:(MBLFormat *)format; - -- (BFTask *)resetStateWithDataAsync:(nullable NSData *)data; - -- (BFTask *)resetParametersWithData:(NSData *)data; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFirmwareBuild.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFirmwareBuild.h deleted file mode 100644 index e6f9115..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFirmwareBuild.h +++ /dev/null @@ -1,61 +0,0 @@ -/** - * MBLFirmwareBuild.h - * MetaWear - * - * Created by Stephen Schiffli on 7/22/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLFirmwareBuild : NSObject - -- (instancetype)initWithHardwareRev:(NSString *)hardwareRev - modelNumber:(NSString *)modelNumber - buildFlavor:(NSString *)buildFlavor - firmwareRev:(NSString *)firmwareRev - filename:(NSString *)filename; - -- (instancetype)initWithHardwareRev:(NSString *)hardwareRev - modelNumber:(NSString *)modelNumber - url:(NSURL *)customUrl; - -@property (nonatomic, readonly, nullable) NSString *hardwareRev; -@property (nonatomic, readonly, nullable) NSString *modelNumber; -@property (nonatomic, readonly, nullable) NSString *buildFlavor; -@property (nonatomic, readonly, nullable) NSString *firmwareRev; -@property (nonatomic, readonly, nullable) NSString *filename; - -@property (nonatomic, readonly) NSURL *firmwareURL; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFirmwareBuild.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFirmwareBuild.m deleted file mode 100644 index c9eded2..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFirmwareBuild.m +++ /dev/null @@ -1,88 +0,0 @@ -/** - * MBLFirmwareBuild.m - * MetaWear - * - * Created by Stephen Schiffli on 7/22/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFirmwareBuild.h" - -@interface MBLFirmwareBuild () -@property (nonatomic) NSString *hardwareRev; -@property (nonatomic) NSString *modelNumber; -@property (nonatomic) NSString *buildFlavor; -@property (nonatomic) NSString *firmwareRev; -@property (nonatomic) NSString *filename; - -@property (nonatomic) NSURL *firmwareURL; -@end - -@implementation MBLFirmwareBuild - -- (instancetype)initWithHardwareRev:(NSString *)hardwareRev - modelNumber:(NSString *)modelNumber - buildFlavor:(NSString *)buildFlavor - firmwareRev:(NSString *)firmwareRev - filename:(NSString *)filename -{ - self = [super init]; - if (self) { - self.hardwareRev = hardwareRev; - self.modelNumber = modelNumber; - self.buildFlavor = buildFlavor; - self.firmwareRev = firmwareRev; - self.filename = filename; - - self.firmwareURL = [NSURL URLWithString:[NSString stringWithFormat:@"https://mbientlab.com/releases/metawear/%@/%@/%@/%@/%@", - hardwareRev ? hardwareRev : @"0.1", - modelNumber ? modelNumber : @"0", - buildFlavor ? buildFlavor : @"vanilla", - firmwareRev ? firmwareRev : @"1.1.3", - filename ? filename : @"firmware.bin"]]; - } - return self; -} - -- (instancetype)initWithHardwareRev:(NSString *)hardwareRev - modelNumber:(NSString *)modelNumber - url:(NSURL *)customUrl -{ - self = [super init]; - if (self) { - self.hardwareRev = hardwareRev; - self.modelNumber = modelNumber; - self.filename = customUrl.lastPathComponent; - self.firmwareURL = customUrl; - } - return self; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFormat.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFormat.h deleted file mode 100644 index 020098a..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFormat.h +++ /dev/null @@ -1,76 +0,0 @@ -/** - * MBLFormat.h - * MetaWear - * - * Created by Stephen Schiffli on 5/6/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -typedef NS_ENUM(uint8_t, MBLFormatType) { - MBLFormatTypeNumber, - MBLFormatTypeArray, - MBLFormatTypeEncodedData -}; - -@interface MBLFormat : NSObject -@property (nonatomic) uint8_t length; -@property (nonatomic) MBLFormatType type; -@property (nonatomic) uint8_t offset; -// Used for Array types -@property (nonatomic) uint8_t elements; -// Used for Number types -@property (nonatomic) BOOL isSigned; - -+ (instancetype)writeOnly; - -- (instancetype)initNumberWithLength:(uint8_t)length isSigned:(BOOL)isSigned offset:(uint8_t)offset; -- (instancetype)initNumberWithLength:(uint8_t)length isSigned:(BOOL)isSigned; - -- (instancetype)initArrayWithLength:(uint8_t)length elements:(uint8_t)elements; - -- (instancetype)initEncodedDataWithLength:(uint8_t)length; - -/** - Convert a chunk of data from the wire, that's in - firmware units, to a friendly objective-c object - */ -- (id)entryFromData:(NSData *)data date:(NSDate *)date; - -/** - Convert the given value into firmware units - */ -- (NSNumber *)numberFromDouble:(double)value; -@end - -NS_ASSUME_NONNULL_END \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFormat.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFormat.m deleted file mode 100644 index 31cc70d..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLFormat.m +++ /dev/null @@ -1,106 +0,0 @@ -/** - * MBLFormat.m - * MetaWear - * - * Created by Stephen Schiffli on 5/6/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFormat.h" -#import "MBLDataSample+Private.h" - -@implementation MBLFormat - -+ (instancetype)writeOnly -{ - return [[MBLFormat alloc] initEncodedDataWithLength:0]; -} - -- (instancetype)initNumberWithLength:(uint8_t)length isSigned:(BOOL)isSigned offset:(uint8_t)offset -{ - self = [super init]; - if (self) { - self.length = length; - self.type = MBLFormatTypeNumber; - self.offset = offset; - self.isSigned = isSigned; - } - return self; -} - -- (instancetype)initNumberWithLength:(uint8_t)length isSigned:(BOOL)isSigned -{ - return [self initNumberWithLength:length isSigned:isSigned offset:0]; -} - -- (instancetype)initArrayWithLength:(uint8_t)length elements:(uint8_t)elements -{ - self = [super init]; - if (self) { - self.length = length; - self.type = MBLFormatTypeArray; - self.elements = elements; - } - return self; -} - -- (instancetype)initEncodedDataWithLength:(uint8_t)length -{ - self = [super init]; - if (self) { - self.length = length; - self.type = MBLFormatTypeEncodedData; - } - return self; -} - -- (id)copyWithZone:(NSZone *)zone -{ - MBLFormat *newFormat = [[self class] allocWithZone:zone]; - newFormat.length = self.length; - newFormat.type = self.type; - newFormat.offset = self.offset; - newFormat.elements = self.elements; - newFormat.isSigned = self.isSigned; - return newFormat; -} - -- (id)entryFromData:(NSData *)data date:(NSDate *)date -{ - return [[MBLDataSample alloc] initWithTimestamp:date data:data]; -} - -- (NSNumber *)numberFromDouble:(double)value -{ - [NSException raise:@"Derived class must implement numberFromDouble:" format:@""]; - return nil; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLLogger.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLLogger.h deleted file mode 100644 index bd75af7..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLLogger.h +++ /dev/null @@ -1,38 +0,0 @@ -/** - * MBLLogger.h - * MetaWear - * - * Created by Stephen Schiffli on 10/11/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -void MBLLog(MBLLogLevel level, NSString *format, ...) NS_FORMAT_FUNCTION(2, 3); diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLLogger.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLLogger.m deleted file mode 100644 index 322b9ef..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLLogger.m +++ /dev/null @@ -1,71 +0,0 @@ -/** - * MBLLogger.m - * MetaWear - * - * Created by Stephen Schiffli on 10/11/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - - -#import "MBLLogger.h" -#import "MBLMetaWearManager+Private.h" - -void MBLLog(MBLLogLevel level, NSString *format, ...) -{ - if (level > [MBLMetaWearManager sharedManager].logLevel || level == MBLLogLevelNone || !format) { - return; - } - - va_list args; - va_start(args, format); - - NSMutableString *message = nil; - switch (level) { - case MBLLogLevelError: - message = [NSMutableString stringWithFormat:@"[%@]", @"Error"]; - break; - case MBLLogLevelWarning: - message = [NSMutableString stringWithFormat:@"[%@]", @"Warning"]; - break; - case MBLLogLevelInfo: - message = [NSMutableString stringWithFormat:@"[%@]", @"Info"]; - break; - case MBLLogLevelDebug: - message = [NSMutableString stringWithFormat:@"[%@]", @"Debug"]; - break; - case MBLLogLevelNone: - message = [NSMutableString string]; - break; - } - [message appendFormat:@": %@", format]; - NSLogv(message, args); - - va_end(args); -} diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMacAddressFormat.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMacAddressFormat.h deleted file mode 100644 index 80a712e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMacAddressFormat.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * MBLMacAddressFormat.h - * MetaWear - * - * Created by Stephen Schiffli on 12/16/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFormat.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLMacAddressFormat : MBLFormat - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMacAddressFormat.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMacAddressFormat.m deleted file mode 100644 index 26664b8..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMacAddressFormat.m +++ /dev/null @@ -1,68 +0,0 @@ -/** - * MBLMacAddressFormat.m - * MetaWear - * - * Created by Stephen Schiffli on 12/16/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLMacAddressFormat.h" -#import "MBLFormat.h" -#import "MBLStringData+Private.h" - -@implementation MBLMacAddressFormat - -- (instancetype)init -{ - self = [super initEncodedDataWithLength:6]; - return self; -} - -- (id)copyWithZone:(NSZone *)zone -{ - MBLMacAddressFormat *newFormat = [super copyWithZone:zone]; - return newFormat; -} - -- (id)entryFromData:(NSData *)data date:(NSDate *)date -{ - assert(data.length == 6); - uint8_t const *macBytes = data.bytes; - NSString *macStr = [NSString stringWithFormat:@"%02X:%02X:%02X:%02X:%02X:%02X", macBytes[5], macBytes[4], macBytes[3], macBytes[2], macBytes[1], macBytes[0]]; - return [[MBLStringData alloc] initWithString:macStr timestamp:date]; -} - -- (NSNumber *)numberFromDouble:(double)value -{ - [NSException raise:@"Cannout use MAC Address with filters" format:@""]; - return nil; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMetaWear+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMetaWear+Private.h deleted file mode 100644 index 250507e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMetaWear+Private.h +++ /dev/null @@ -1,120 +0,0 @@ -/** - * MBLMetaWear+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 8/2/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLMetaWear.h" -#import "MBLDataProcessor.h" -#import "MBLLogging.h" -#import "MBLCommand.h" -#import "MBLTestDebug.h" -#import "MBLMacro.h" -#import "MBLDispatchQueue.h" -#import "MBLNonVolatileState.h" -#import "MBLBluetoothPeripheral.h" -#import "MBLFirmwareUpdateInfo.h" - -NS_ASSUME_NONNULL_BEGIN - -typedef void (^MBLSimulationHandler)(uint8_t module, uint8_t opcode, NSData *parameters); - -// Properties that certain privileged people need access too -@interface MBLMetaWear (Private) -@property (nonatomic, nullable) NSNumber *discoveryTimeRSSI; -@property (nonatomic) id peripheral; - -@property (nonatomic) BOOL bypassSetup; - -@property (nonatomic, readonly) MBLDataProcessor *dataProcessor; -@property (nonatomic, readonly) MBLLogging *logging; -@property (nonatomic, readonly) MBLCommand *command; -@property (nonatomic, readonly) MBLTestDebug *testDebug; -@property (nonatomic, readonly) MBLMacro *macro; - -@property (nonatomic, readonly) MBLNonVolatileState *nonVolatileState; - -@property (nonatomic, readonly) MBLDispatchQueue *zeroCountQueue; - - -- (instancetype)initWithPeripheral:(id)peripheral - andAdvertisementData:(NSDictionary *)advertisementData - andRSSI:(NSNumber *)RSSI; - - -- (void)didConnect; -- (void)didDisconnect:(nullable NSError *)error; - -/// Because of iOS oddity we need to manually notify the peripheral -/// if bluetooth is powered off -- (void)bluetoothPoweredOff; - -/// Send raw bytes over BLE to the MetaWear command register -- (void)writeCommandRegister:(NSData *)data withResponse:(BOOL)withResponse; - -/** - The simulation feature allow you to execute API calls but instead - of sending the resulting bytes across the BLE link to the MetaWear, - they will just be passed into handler. - - Note you must wait on waitForSimulatorTurn before calling startSimulationWithHandler: - and must call stopSimulation when finished - */ -- (BFTask *)waitForSimulatorTurn; -- (void)startSimulationWithHandler:(MBLSimulationHandler)handler; -- (void)stopSimulation; - -/** - The sniffer allows you to see what bytes are being sent across the BLE link - */ -- (void)startSnifferWithHandler:(MBLDataHandler)handler; -- (void)stopSniffer; - -/** - The count feature allows us to keep track of the number of outstanding - transactions going to the MetaWear. Use incrementCount to indicate when - a new operation has started and decrementCount when it finishes. - Use the waitForCommandCompletion: to get a callback when all transactions - are complete. - */ -- (void)incrementCount; -- (void)decrementCount; -- (BFTask *)waitForCommandCompletion; -- (BFTask *)waitForSimulatorCompletion; - -- (BFTask *)prepareForFirmwareUpdateToVersionAsync:(nullable MBLFirmwareBuild *)firmware; - -- (void)updateName:(NSString *)name; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMetaWearManager+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMetaWearManager+Private.h deleted file mode 100644 index bd93246..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMetaWearManager+Private.h +++ /dev/null @@ -1,62 +0,0 @@ -/** - * MBLMetaWearManager+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 10/14/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLMetaWearManager.h" -#import "MBLBluetoothCentral.h" - -NS_ASSUME_NONNULL_BEGIN - -void MBLSetUseMockManager(BOOL useMock); - -@interface MBLMetaWearManager (Private) -@property (nonatomic) id centralManager; - -// Shortcut for [MBLMetaWearManager sharedManager].dispatchQueue -+ (NSOperationQueue *)dispatchQueue; - -@property (nonatomic, readonly) NSString *latestFirmware; - -- (void)connectMetaWear:(MBLMetaWear *)device; -- (void)disconnectMetaWear:(MBLMetaWear *)device fromPeripheralSide:(BOOL)fromPeripheralSide; - -- (void)rememberMetaWear:(MBLMetaWear *)device; -- (void)forgetMetaWear:(MBLMetaWear *)device; - -- (void)clearDiscoveredDevices; - -- (nullable NSString *)logFilename:(nullable NSString *)filename; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLModule+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLModule+Private.h deleted file mode 100644 index 1b33607..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLModule+Private.h +++ /dev/null @@ -1,168 +0,0 @@ -/** - * MBLModule+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 10/28/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLModule.h" -#import "MBLConstants.h" -#import "MBLModuleInfo.h" -#import - -@class MBLMetaWear; -@class MBLRegister; -@class MBLEvent; - -NS_ASSUME_NONNULL_BEGIN - -/** - Internal header hiding unnessary functions from API user - */ -@interface MBLModule (Private) -/** - Weak back pointer to the device which this module belongs to - */ -@property (nonatomic, weak, nullable) MBLMetaWear *device; -/** - List of all registers that have been added to the module. - */ -@property (nonatomic) NSMutableArray *registers; -/** - Module info as read from register 0 - */ -@property (nonatomic) MBLModuleInfo *moduleInfo; -/** - How many registers/events/data are currently using this module - */ -@property (nonatomic, readonly) int activateCount; -@property (nonatomic, readonly) int initializeCount; -/** - A common firmware paradigm is to have one register that takes 0x1 to enable - it and 0x0 to disable it. If such register exists, assign it here - */ -@property (nonatomic, nullable) MBLRegister *globalEnable; - - -/** - You should always use this factory function to create modules because - this instatiantes the proper subclass based on moduleInfo version - */ -+ (instancetype)objectWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo; - -/** - Init the device object - */ -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo; - -/** - Make sure the state is valid, this is called on re-connect to make - sure the MetaWear isn't tampered with - */ -- (BFTask *)isStateValid; - -/** - The module needs to know about all the registers it has for data routing - purposes. - */ -- (void)addRegister:(MBLRegister *)reg; -/** - Data from BLE radio first goes to the MBLMetaWear, which routes it - to the appropriate module (by calling this method). This method will - then pass the data along to the appropriate MBLRegister - */ -- (void)recievedData:(NSData *)data error:(nullable NSError *)error; - -/** - Let the module know our BLE link was disconnected for some reason - */ -- (void)deviceDisconnected:(nullable NSError *)error; -/** - Let the module know our BLE link connected - */ -- (BFTask *)deviceConnected; - -/** - A common firmware paradigm is the need to write one or more register to - initialize the module. This should be called before attempting to use - this module. Internally this just increments a counter, and when the count - goes from 0 to 1 (first call) it will invoke performAsyncInitialization. - As such MBLModule derivatives shouldn't override this, but rather - performAsyncInitialization. - */ -- (BFTask *)initializeAsync; -/** - A common firmware paradigm is the need to write one or more register to - deinitialize the module. This should be called after you are finished using - this module. Internally this just decrements a counter, and when the count - goes from 1 to 0 (no more users) it will invoke performAsyncDeinitialization. - As such MBLModule derivatives shouldn't override this, but rather performAsyncDeinitialization. - */ -- (BFTask *)deinitializeAsync; - -/** - A common firmware paradigm is the need to write one or more register to - activate, or enable, the module. This should be called after you have the module - all setup and are ready to recieve data. Internally this just increments a counter, - and when the count goes from 0 to 1 (first call) it will invoke performAsyncActivation. - As such MBLModule derivatives shouldn't override this, but rather - performAsyncActivation - */ -- (BFTask *)activateAsync; -/** - A common firmware paradigm is the need to write one or more register to - deactivate, or disable, the module. This should be called after you are finished - using this module. Internally this just decrements a counter, and when the count - goes from 1 to 0 (no more users) it will invoke performAsyncDeactivation. - As such MBLModule derivatives shouldn't override this, but rather performAsyncDeactivation. - */ -- (BFTask *)deactivateAsync; - -/** - Derieved classes should override this and put in module specific initialization code - */ -- (BFTask *)performAsyncInitialization; -/** - Derieved classes should override this and put in module specific deinitialization code - */ -- (BFTask *)performAsyncDeinitialization; -/** - Derieved classes should override this and put in module specific activation code - */ -- (BFTask *)performAsyncActivation; -/** - Derieved classes should override this and put in module specific deactivation code - */ -- (BFTask *)performAsyncDeactivation; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLModuleInfo.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLModuleInfo.h deleted file mode 100644 index 1e0689d..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLModuleInfo.h +++ /dev/null @@ -1,64 +0,0 @@ -/** - * MBLModuleInfo.h - * MetaWear - * - * Created by Stephen Schiffli on 7/14/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLModuleInfo : NSObject - -- (instancetype)initWithId:(uint8_t)moduleId data:(nullable NSData *)data; - -/** - Module id as listed in the MetaWear firmware docs - */ -@property (nonatomic) uint8_t moduleId; - -/** - Module Implementation - */ -@property (nonatomic) uint8_t moduleImplementation; -/** - Module Revision - */ -@property (nonatomic) uint8_t moduleRevision; -/** - Module Specific Data - */ -@property (nonatomic, nullable) NSData *moduleData; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLModuleInfo.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLModuleInfo.m deleted file mode 100644 index 0fb3652..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLModuleInfo.m +++ /dev/null @@ -1,58 +0,0 @@ -/** - * MBLModuleInfo.m - * MetaWear - * - * Created by Stephen Schiffli on 7/14/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLModuleInfo.h" - -@implementation MBLModuleInfo - -- (instancetype)initWithId:(uint8_t)moduleId data:(NSData *)data -{ - self = [super init]; - if (self) { - self.moduleId = moduleId; - if (data.length >= 4) { - self.moduleImplementation = *((uint8_t *)data.bytes + 2); - self.moduleRevision = *((uint8_t *)data.bytes + 3); - self.moduleData = [data subdataWithRange:NSMakeRange(4, data.length - 4)]; - } else { - self.moduleImplementation = 0xFF; - self.moduleRevision = 0xFF; - self.moduleData = nil; - } - } - return self; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMovingAverage.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMovingAverage.h deleted file mode 100755 index 1ccae80..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMovingAverage.h +++ /dev/null @@ -1,55 +0,0 @@ -/** - * MBLMovingAverage.h - * MetaWear - * - * Created by Stephen Schiffli on 2/24/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ -// -// Created by Alex Manarpies on 12/17/14. -// - -#import - - -/** -* Utility class for maintaining a moving average over a given time period. -* Credits: http://stackoverflow.com/a/14740836/331283 -*/ -@interface MBLMovingAverage : NSObject - -@property(nonatomic, readonly) double movingAverage; -@property(nonatomic, readonly) double cumulativeAverage; - -- (instancetype)initWithPeriod:(NSUInteger)period; - -- (void)addDatum:(NSNumber *)datum; - -@end \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMovingAverage.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMovingAverage.m deleted file mode 100755 index 16a2458..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLMovingAverage.m +++ /dev/null @@ -1,80 +0,0 @@ -/** - * MBLMovingAverage.m - * MetaWear - * - * Created by Stephen Schiffli on 2/24/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ -// -// Created by Alex Manarpies on 12/17/14. -// - -#import "MBLMovingAverage.h" - - -@interface MBLMovingAverage () - -@property(nonatomic, strong) NSMutableArray *queue; -@property(nonatomic) NSUInteger period; -@property(nonatomic) NSUInteger count; - -@property(nonatomic, readwrite) double movingAverage; -@property(nonatomic, readwrite) double cumulativeAverage; - -@end - -@implementation MBLMovingAverage - -- (instancetype)initWithPeriod:(NSUInteger)period { - self = [self init]; - if (self) { - _period = period; - _queue = [[NSMutableArray alloc] initWithCapacity:period]; - } - return self; -} - -- (void)addDatum:(NSNumber *)datum { - [self.queue insertObject:datum atIndex:0]; - - //double removed = 0; - double datumd = [datum doubleValue]; - - if (self.queue.count > self.period) { - //removed = [[self.queue lastObject] doubleValue]; - [self.queue removeLastObject]; - } - - //self.movingAverage = self.movingAverage - (removed / self.period) + (datumd / self.period); - self.movingAverage = [[self.queue valueForKeyPath:@"@avg.self"] doubleValue]; - self.cumulativeAverage = self.cumulativeAverage + (datumd - self.cumulativeAverage) / ++self.count; -} - -@end \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNonVolatileState.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNonVolatileState.h deleted file mode 100644 index e22bc83..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNonVolatileState.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * MBLNonVolatileState.h - * MetaWear - * - * Created by Stephen Schiffli on 11/16/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -static const int LOGGING_RESET_UIDS_MASK = 0x7; // Currently a 3 bit field [0,7] - -@interface MBLNonVolatileState : NSObject - -@property (nonatomic) NSMutableArray *logStartingDates; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNonVolatileState.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNonVolatileState.m deleted file mode 100644 index e593978..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNonVolatileState.m +++ /dev/null @@ -1,53 +0,0 @@ -/** - * MBLNonVolatileState.m - * MetaWear - * - * Created by Stephen Schiffli on 11/16/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLNonVolatileState.h" - - -@implementation MBLNonVolatileState - -- (instancetype)init -{ - self = [super init]; - if (self) { - self.logStartingDates = [NSMutableArray arrayWithCapacity:(LOGGING_RESET_UIDS_MASK + 1)]; - for (int i = 0; i < (LOGGING_RESET_UIDS_MASK + 1); i++) { - [self.logStartingDates addObject:[NSNull null]]; - } - } - return self; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNumericData+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNumericData+Private.h deleted file mode 100644 index 6098d2b..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNumericData+Private.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLNumericData+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 10/22/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLNumericData.h" -#import "MBLFormat.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLNumericData (Private) - -- (instancetype)initWithNumber:(NSNumber *)number timestamp:(NSDate *)timestamp; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNumericFormatter.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNumericFormatter.h deleted file mode 100644 index 5113141..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNumericFormatter.h +++ /dev/null @@ -1,50 +0,0 @@ -/** - * MBLNumericFormatter.h - * MetaWear - * - * Created by Stephen Schiffli on 5/7/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFormat.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLNumericFormatter : MBLFormat - -- (instancetype)initIntWithLength:(uint8_t)length isSigned:(BOOL)isSigned; -- (instancetype)initIntWithLength:(uint8_t)length isSigned:(BOOL)isSigned offset:(uint8_t)offset; - -- (instancetype)initDoubleWithLength:(uint8_t)length isSigned:(BOOL)isSigned scale:(double)scale; -- (instancetype)initDoubleWithLength:(uint8_t)length isSigned:(BOOL)isSigned scale:(double)scale offset:(uint8_t)offset; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNumericFormatter.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNumericFormatter.m deleted file mode 100644 index 589fda9..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLNumericFormatter.m +++ /dev/null @@ -1,134 +0,0 @@ -/** - * MBLNumericFormatter.m - * MetaWear - * - * Created by Stephen Schiffli on 5/7/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLNumericFormatter.h" -#import "MBLNumericData+Private.h" - -@interface MBLNumericFormatter () -@property (nonatomic) BOOL isDouble; -@property (nonatomic) double scale; -@end - -@implementation MBLNumericFormatter - -- (instancetype)initIntWithLength:(uint8_t)length isSigned:(BOOL)isSigned offset:(uint8_t)offset -{ - if (length > 8) { - [NSException raise:@"Invalid size" format:@"Cannot convert over 8 bytes bytes to int"]; - } - self = [super initNumberWithLength:length isSigned:isSigned offset:offset]; - if (self) { - self.isDouble = NO; - } - return self; -} - -- (instancetype)initIntWithLength:(uint8_t)length isSigned:(BOOL)isSigned -{ - return [self initIntWithLength:length isSigned:isSigned offset:0]; -} - -- (instancetype)initDoubleWithLength:(uint8_t)length isSigned:(BOOL)isSigned scale:(double)scale offset:(uint8_t)offset -{ - if (length > 8) { - [NSException raise:@"Invalid size" format:@"Cannot convert over 8 bytes bytes to int"]; - } - self = [super initNumberWithLength:length isSigned:isSigned offset:offset]; - if (self) { - self.isDouble = YES; - self.scale = scale; - } - return self; -} - -- (instancetype)initDoubleWithLength:(uint8_t)length isSigned:(BOOL)isSigned scale:(double)scale -{ - return [self initDoubleWithLength:length isSigned:isSigned scale:scale offset:0]; -} - -- (id)copyWithZone:(NSZone *)zone -{ - MBLNumericFormatter *newFormat = [super copyWithZone:zone]; - newFormat.isDouble = self.isDouble; - newFormat.scale = self.scale; - return newFormat; -} - -// The analyzer doesn't like i64 here, but it fact has been set to a valid value -// this is well tested, so we just silence the analyzer here -#ifndef __clang_analyzer__ -- (id)entryFromData:(NSData *)data date:(NSDate *)date -{ - NSNumber *value = nil; - assert(data.length <= 8); - if (self.isSigned) { - int64_t i64 = 0; - uint8_t *pi64 = (uint8_t *)&i64; - memcpy(pi64, data.bytes, data.length); - - // check if signed and if sign bit is set - const uint8_t *bytes = data.bytes; - if (bytes[data.length - 1] & 0x80) { - for (NSInteger i = data.length; i < sizeof(int64_t); i++) { - pi64[i] = 0xFF; // pad the upper order bytes - } - } - if (self.isDouble) { - value = [NSNumber numberWithDouble:(double)i64 * self.scale]; - } else { - value = [NSNumber numberWithLongLong:i64]; - } - } else { - uint64_t u64 = 0; - memcpy(&u64, data.bytes, data.length); - if (self.isDouble) { - value = [NSNumber numberWithDouble:(double)u64 * self.scale]; - } else { - value = [NSNumber numberWithUnsignedLongLong:u64]; - } - } - return [[MBLNumericData alloc] initWithNumber:value timestamp:date]; -} -#endif - -- (NSNumber *)numberFromDouble:(double)value -{ - if (self.isDouble) { - value = value / self.scale; - } - return [NSNumber numberWithInt:value]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLRegister+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLRegister+Private.h deleted file mode 100644 index b263610..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLRegister+Private.h +++ /dev/null @@ -1,100 +0,0 @@ -/** - * MBLRegister+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 10/28/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLRegister.h" -#import "MBLConstants.h" -#import "MBLFormat.h" -#import - -@class MBLMetaWear; -@class MBLModule; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLRegister (Private) -@property (nonatomic, weak, nullable) MBLModule *module; -@property (nonatomic) uint8_t registerId; -@property (nonatomic) uint8_t index; -@property (nonatomic) MBLFormat *format; - -// State Accessors -@property (nonatomic) BOOL needsResponse; -@property (nonatomic) BOOL writeResponds; -@property (nonatomic) BOOL isNotifyingImpl; -@property (nonatomic) BOOL isLoggingImpl; -@property (nonatomic) BOOL hasCommandsImpl; - - -- (instancetype)initWithModule:(MBLModule *)module registerId:(uint8_t)registerId index:(uint8_t)index format:(MBLFormat *)format; -- (instancetype)initWithModule:(MBLModule *)module registerId:(uint8_t)registerId format:(MBLFormat *)format; - -- (BFTask *)readAsync; -- (BFTask *)readForcedIndexAsync:(uint8_t)index; -- (BFTask *)localReadAsync; -- (nullable NSData *)readParameters; - -- (BFTask *)writeDataAsync:(nullable NSData *)data; -- (nonnull BFTask *)writeByteAsync:(uint8_t)byte; - -- (void)addNotificationWithExecutor:(BFExecutor *)executor handler:(MBLObjectHandler)handler; -- (void)removeNotificationHandlers; - -- (BFTask *)startNotificationsWithHandlerAsync:(nullable MBLObjectHandler)handler; -- (BFTask *)startNotificationsWithExecutorAsync:(BFExecutor *)executor withHandler:(nullable MBLObjectHandler)handler; -- (BFTask *)stopNotificationsAsync; - - -- (void)recievedData:(nullable NSData *)data error:(nullable NSError *)error; -- (void)deviceDisconnected:(nullable NSError *)error; -- (BFTask *)deviceConnected; - - -- (BFTask *)initializeAsync; -- (BFTask *)deinitializeAsync; -- (BFTask *)activateAsync; -- (BFTask *)deactivateAsync; - -- (BFTask *)performAsyncInitialization; -- (BFTask *)performAsyncDeinitialization; - -- (BFTask *)performAsyncActivation; -- (BFTask *)performAsyncDeactivation; - -- (BFTask *)performAsyncStartNotifications; -- (BFTask *)performAsyncStopNotificationsAsync; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLStringData+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLStringData+Private.h deleted file mode 100644 index 27e7824..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLStringData+Private.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * MBLStringData+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 12/16/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLStringData.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLStringData (Private) - -- (instancetype)initWithString:(NSString *)string timestamp:(NSDate *)timestamp; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLTriggeredRead.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLTriggeredRead.h deleted file mode 100644 index cf89999..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLTriggeredRead.h +++ /dev/null @@ -1,51 +0,0 @@ -/** - * MBLTriggeredRead.h - * MetaWear - * - * Created by Stephen Schiffli on 1/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLTriggeredRead : MBLEvent - -- (instancetype)initWithData:(MBLData *)data - trigger:(MBLEvent *)trigger; - -- (instancetype)initWithData:(MBLData *)data - period:(uint32_t)period - eventCount:(uint16_t)eventCount; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLTriggeredRead.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLTriggeredRead.m deleted file mode 100644 index 52f6ce3..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Core/MBLTriggeredRead.m +++ /dev/null @@ -1,117 +0,0 @@ -/** - * MBLTriggeredRead.m - * MetaWear - * - * Created by Stephen Schiffli on 1/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLTriggeredRead.h" -#import "MBLData+Private.h" -#import "MBLEvent+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLTimer+Private.h" -#import "MBLMetaWearManager+Private.h" -#import "BFTask+Private.h" -#import "MBLTimerEvent+Private.h" - -typedef struct __attribute__((packed)) { - uint8_t module_id; - uint8_t register_id; - uint8_t index; - uint8_t offset:5; - uint8_t len:3; -} filter_param_t; - -@interface MBLTriggeredRead () -@property (nonatomic) MBLData *data; -@property (nonatomic) MBLEvent *trigger; -@end - -@implementation MBLTriggeredRead - -- (instancetype)initWithData:(MBLData *)data - trigger:(MBLEvent *)trigger -{ - self = [super initWithModule:data.module registerId:data.registerId | 0x80 format:data.format]; - if (self) { - self.data = data; - self.trigger = trigger; - } - return self; -} - -- (instancetype)initWithData:(MBLData *)data - period:(uint32_t)period - eventCount:(uint16_t)eventCount -{ - return [self initWithData:data trigger:[data.module.device.timer eventWithPeriod:period eventCount:eventCount]]; -} - -- (BFTask *)performAsyncInitialization -{ - return [[self.data initializeAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - BOOL localRead = !self.isNotifyingImpl; - if (localRead) { - self.registerId |= 0x40; // Set the local read bit - } - self.index = self.data.index; - return task; - }]; -} - -- (BFTask *)performAsyncDeinitialization -{ - return [[self.data deinitializeAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - self.registerId &= 0xBF; // Clear the local read bit - self.index = 0xFF; - return task; - }]; -} - -- (BFTask *)performAsyncActivation -{ - return [[self.data activateAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - BOOL localRead = !self.isNotifyingImpl; - return [self.trigger programCommandsToRunOnEventAsync:^{ - [self.data simulatedReadAsync:localRead]; - }]; - }]; -} - -- (BFTask *)performAsyncDeactivation -{ - return [[self.data deactivateAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.trigger eraseCommandsToRunOnEventAsync]; - }]; -} - -@end - diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/DFU/MBLFirmwareUpdateManager.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/DFU/MBLFirmwareUpdateManager.h deleted file mode 100644 index e3573d4..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/DFU/MBLFirmwareUpdateManager.h +++ /dev/null @@ -1,67 +0,0 @@ -/** - * MBLFirmwareUpdateManager.h - * MetaWear - * - * Created by Stephen Schiffli on 10/9/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import "MBLConstants.h" -#import "MBLFirmwareBuild.h" -#import "MBLFirmwareUpdateInfo.h" - -/** - This manager bundles up all communication with the Nordic DFU code. All you do - is create an instance and then call startUpdate - */ -@interface MBLFirmwareUpdateManager : NSObject - -/** - Let the manager know the path the firmware file and what identifier we should update - */ -- (instancetype)initWithFirmware:(MBLFirmwareBuild *)firmware - identifier:(NSUUID *)identifier; - -/** - This starts the search for a device advertising the Nordic DFU service, then when it - finds one that corresponds with the identifier, it will connect and start the update process - */ -- (BFTask *)startUpdate; - - -+ (BFTask *)isFirmwareReachableAsync; - -+ (BFTask *)getLatestFirmwareForDeviceAsync:(MBLDeviceInfo *)device; - -+ (BFTask *)downloadFirmwareVersionAsync:(MBLFirmwareBuild *)firmware; - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/DFU/MBLFirmwareUpdateManager.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/DFU/MBLFirmwareUpdateManager.m deleted file mode 100644 index 0b19bf5..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/DFU/MBLFirmwareUpdateManager.m +++ /dev/null @@ -1,403 +0,0 @@ -/** - * MBLFirmwareUpdateManager.m - * MetaWear - * - * Created by Stephen Schiffli on 10/9/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFirmwareUpdateManager.h" -#import "MBLMetaWear+Private.h" -#import "MBLAnalytics.h" -#import "MBLConstants.h" -#import "MBLDeviceInfo.h" -#import "MBLMetaWearManager+Private.h" -#import "MBLConstants+Private.h" -#import "BFTask+MBLExtensions.h" -#import "MBLLogger.h" - - -@interface MBLFirmwareUpdateManager() -@property (nonatomic) NSUUID *identifier; -@property (nonatomic) MBLFirmwareBuild *firmware; - -@property (nonatomic) NSString *modelNumber; -@property (nonatomic) NSString *hardwareRev; -@property (nonatomic) CBPeripheral *peripheral; - -@property (nonatomic) BFTaskCompletionSource *source; -@property (nonatomic) BOOL updateDone; -@property (nonatomic) int recoveryTries; -@property (nonatomic) NSTimer *connectionWatchdog; -@property (nonatomic) NSError *recievedError; -@property (nonatomic) CBCentralManager *centralManager; -@end - -@implementation MBLFirmwareUpdateManager - -- (instancetype)initWithFirmware:(MBLFirmwareBuild *)firmware - identifier:(NSUUID *)identifier -{ - self = [super init]; - if (self) { - self.identifier = identifier; - self.firmware = firmware; - - self.updateDone = NO; - self.recoveryTries = 2; - } - return self; -} - -- (BFTask *)startUpdate -{ - self.source = [BFTaskCompletionSource taskCompletionSource]; - // We assume that we just call the "jump to bootloader" on the MetaWear so we give it some - // time to reset and get into the bootloader. This wait time is ad-hoc, but experiments - // show it works well - dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(5.0 * NSEC_PER_SEC)), dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{ - self.centralManager = [[CBCentralManager alloc] initWithDelegate:self queue:nil]; - }); - return self.source.task; -} - -+ (BFTask *)isFirmwareReachableAsync -{ - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - NSURL *url = [NSURL URLWithString:@"https://mbientlab.com/releases/metawear/info1.json"]; - - [[NSURLSession.sharedSession dataTaskWithRequest:[[NSURLRequest alloc] initWithURL:url cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:10] completionHandler:^(NSData *data, NSURLResponse * response, NSError *error) { - if (error) { - [source trySetError:error]; - } else { - [source trySetResult:@YES]; - } - }] resume]; - return source.task; -} - -+ (BFTask *)getLatestFirmwareForDeviceAsync:(MBLDeviceInfo *)device -{ - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - // To get the latest firmware version we parse the json from our website, make sure to do - // this on a backgroud thread to avoid hanging the UI. - NSURL *url = [NSURL URLWithString:@"https://mbientlab.com/releases/metawear/info1.json"]; - [[NSURLSession.sharedSession dataTaskWithRequest:[[NSURLRequest alloc] initWithURL:url cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:10] completionHandler:^(NSData *data, NSURLResponse * response, NSError *error) { - if (error) { - [source trySetError:error]; - return; - } - MBLFirmwareBuild *latestFirmware = nil; - NSDictionary *info = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil]; - if (info) { - NSString *buildFlavor = @"vanilla"; - NSString *hardwareRev = device.hardwareRevision ? device.hardwareRevision : @"0.1"; - NSString *modelNumber = device.modelNumber ? device.modelNumber : @"0"; - // The info1.json is a nested dictionary - NSDictionary *potentialVersions = info[hardwareRev][modelNumber][buildFlavor]; - NSSet *validVersions = [potentialVersions keysOfEntriesPassingTest:^BOOL(NSString *key, NSDictionary *obj, BOOL *stop) { - return ![MBLConstants versionString:kMBLAPIVersion isLessThan:obj[@"min-ios-version"]]; - }]; - if (validVersions && validVersions.count) { - NSString *latestVersion = [validVersions valueForKeyPath:@"@max.self"]; - latestFirmware = [[MBLFirmwareBuild alloc] initWithHardwareRev:hardwareRev - modelNumber:modelNumber - buildFlavor:buildFlavor - firmwareRev:latestVersion - filename:potentialVersions[latestVersion][@"filename"]]; - } - } - if (!latestFirmware) { - [source trySetError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorNoAvaliableFirmware - userInfo:@{NSLocalizedDescriptionKey : @"No valid firmware releases found. Please update your application and if problem persists, email developers@mbientlab.com"}]]; - return; - } - [source trySetResult:latestFirmware]; - }] resume]; - return source.task; -} - -+ (BFTask *)downloadFirmwareVersionAsync:(MBLFirmwareBuild *)firmware -{ - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - // First, go grab the file at the required version URL - NSURL *firmwareURL = firmware.firmwareURL; - MBLLog(MBLLogLevelInfo, @"Downloading... %@", firmwareURL); - [[[NSURLSession sharedSession] downloadTaskWithURL:firmwareURL completionHandler:^(NSURL *location, NSURLResponse *response, NSError *error) { - if (error) { - [source trySetError:error]; - return; - } - // If no download error, then copy the file to a permanent place. Note the location - // variable suppiled is invalid once this block returns. - NSString *filepath = [NSTemporaryDirectory() stringByAppendingPathComponent:firmware.filename]; - if (!filepath) { - [source trySetError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorUnexpectedServices - userInfo:@{NSLocalizedDescriptionKey : @"Couldn't find temp directory to store firmware file. Please report issue to developers@mbientlab.com"}]]; - return; - } - NSURL *fileURL = [NSURL fileURLWithPath:filepath]; - NSError *err; - [[NSFileManager defaultManager] removeItemAtPath:filepath error:nil]; - if (![[NSFileManager defaultManager] copyItemAtURL:location toURL:fileURL error:&err]) { - [source trySetError:err]; - return; - } - MBLLog(MBLLogLevelInfo, @"Download Complete"); - [source trySetResult:fileURL]; - }] resume]; - return source.task; -} - - -- (void)attemptRecoveryWithError:(NSError *)error -{ - // Lets cache only the first encountered error - if (!self.recievedError) { - self.recievedError = error; - } - // See if we have any retries remaining - if (self.recoveryTries) { - self.recoveryTries--; - // Clear all the state and wait a few seconds before firing up the scanner again - self.updateDone = NO; - self.centralManager = nil; - [self.connectionWatchdog invalidate]; - dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(4.0 * NSEC_PER_SEC)), dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{ - self.centralManager = [[CBCentralManager alloc] initWithDelegate:self queue:nil]; - }); - } else { - // If out of retries then report the first encountered error - [self.source trySetError:self.recievedError]; - } -} - -- (BOOL)sanityCheck -{ - if (self.firmware) { - // If we were given a firmware model, it damn well better match - if (self.firmware.modelNumber && self.modelNumber) { - // Sanity check the model number - if (![self.modelNumber isEqualToString:self.firmware.modelNumber]) { - self.recoveryTries = 0; - [self attemptRecoveryWithError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorWrongFirmwareModelNumber - userInfo:@{NSLocalizedDescriptionKey : [NSString stringWithFormat:@"Couldn't perform DFU, bad model number given. Given %@, but expected %@", self.firmware.modelNumber, self.modelNumber]}]]; - return NO; - } - } - // If we were given a hardware rev, it damn well better match - if (self.firmware.hardwareRev && self.hardwareRev) { - // Sanity check the model number - if (![self.hardwareRev isEqualToString:self.firmware.hardwareRev]) { - self.recoveryTries = 0; - [self attemptRecoveryWithError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorWrongFirmwareModelNumber - userInfo:@{NSLocalizedDescriptionKey : [NSString stringWithFormat:@"Couldn't perform DFU, bad hardware rev given. Given %@, but expected %@", self.firmware.hardwareRev, self.hardwareRev]}]]; - return NO; - } - } - } - return YES; -} - -- (void)modelNumberReadFinished -{ - // Exit if sanity isn't found - if (![self sanityCheck]) { - return; - } - - // Move forward with firmware download - BFTask *head = nil; - if (self.firmware) { - head = [BFTask taskWithResult:self.firmware]; - } else { - // If not given firmware then just grab the latest - MBLDeviceInfo *info = [[MBLDeviceInfo alloc] init]; - info.modelNumber = self.modelNumber; - info.hardwareRevision = self.hardwareRev; - head = [MBLFirmwareUpdateManager getLatestFirmwareForDeviceAsync:info]; - } - - [[[head continueOnMetaWearWithSuccessBlock:^id (BFTask *t) { - return [MBLFirmwareUpdateManager downloadFirmwareVersionAsync:t.result]; - }] successOnMetaWear:^(NSURL * _Nonnull result) { - // Report the successful result! - self.peripheral.delegate = nil; - self.centralManager.delegate = nil; - [self.source trySetResult:[[MBLFirmwareUpdateInfo alloc] initWithFirmwareUrl:result - target:self.peripheral - centralManager:self.centralManager]]; - }] failureOnMetaWear:^(NSError * _Nonnull error) { - self.recoveryTries = 0; - [self attemptRecoveryWithError:error]; - }]; -} - -- (void)connectionWatchdogTimeout:(NSTimer *)timer -{ - [self.centralManager stopScan]; - [self attemptRecoveryWithError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorNoFirmwareUpdater - userInfo:@{NSLocalizedDescriptionKey : @"MetaWear device didn't enter firmware update mode. Please wait 60 seconds and try update again."}]]; -} - - -#pragma mark - CBCentralManagerDelegate - -- (void)centralManagerDidUpdateState:(CBCentralManager *)central -{ - switch (central.state) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" - case CBCentralManagerStateUnknown: - case CBCentralManagerStateResetting: - // Updates are imminent, so wait - break; - case CBCentralManagerStateUnsupported: - [self.source trySetError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorBluetoothUnsupported - userInfo:@{NSLocalizedDescriptionKey : @"The platform doesn't support the Bluetooth Low Energy Central/Client role."}]]; - case CBCentralManagerStateUnauthorized: - [self.source trySetError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorBluetoothUnauthorized - userInfo:@{NSLocalizedDescriptionKey : @"The application is not authorized to use the Bluetooth Low Energy Central/Client role."}]]; - case CBCentralManagerStatePoweredOff: - [self.source trySetError:[NSError errorWithDomain:kMBLErrorDomain - code:kMBLErrorBluetoothPoweredOff - userInfo:@{NSLocalizedDescriptionKey : @"Core Bluetooth Error. Please ensure bluetooth is enabled."}]]; - case CBCentralManagerStatePoweredOn: - // As soon as the central is ready, start scanning! - [self.centralManager scanForPeripheralsWithServices:@[[MBLConstants DFUServiceUUID]] options:nil]; - MBLLog(MBLLogLevelInfo, @"Scanning for MetaBoot..."); - // For saftey we set up a timer, and will signal error if we fail to find the - // requested MetaBoot device within 10 seconds - self.connectionWatchdog = [NSTimer scheduledTimerWithTimeInterval:10.0 target:self selector:@selector(connectionWatchdogTimeout:) userInfo:nil repeats:NO]; - break; -#pragma clang diagnostic pop - } -} - -- (void)centralManager:(CBCentralManager *)central - didDiscoverPeripheral:(CBPeripheral *)peripheral - advertisementData:(NSDictionary *)advertisementData - RSSI:(NSNumber *)RSSI -{ - if ((self.identifier == nil) || [peripheral.identifier isEqual:self.identifier]) { - MBLLog(MBLLogLevelInfo, @"Found MetaBoot"); - // We found what we were looking for so stop the scan and let the DFU code know what device to update - self.identifier = peripheral.identifier; - [self.connectionWatchdog invalidate]; - [central stopScan]; - self.peripheral = peripheral; - [central connectPeripheral:peripheral options:nil]; - } -} - -- (void)centralManager:(CBCentralManager *)central didConnectPeripheral:(CBPeripheral *)peripheral -{ - peripheral.delegate = self; - [peripheral discoverServices:@[[MBLConstants DISServiceUUID]]]; -} - -- (void)centralManager:(CBCentralManager *)central didFailToConnectPeripheral:(CBPeripheral *)peripheral error:(NSError *)error -{ - [self attemptRecoveryWithError:error]; -} - -- (void)centralManager:(CBCentralManager *)central didDisconnectPeripheral:(CBPeripheral *)peripheral error:(NSError *)error -{ - [self attemptRecoveryWithError:error]; -} - -- (void)peripheral:(CBPeripheral *)peripheral didDiscoverServices:(NSError *)error -{ - if (error) { - [self attemptRecoveryWithError:error]; - return; - } - for (CBService *service in peripheral.services) { - if ([service.UUID isEqual:[MBLConstants DISServiceUUID]]) { - [peripheral discoverCharacteristics:@[[MBLConstants DISModelNumberUUID], [MBLConstants DISHardwareRevUUID]] forService:service]; - return; - } - } - [self modelNumberReadFinished]; -} - -- (void)peripheral:(CBPeripheral *)peripheral didDiscoverCharacteristicsForService:(CBService *)service error:(NSError *)error -{ - if (error) { - [self attemptRecoveryWithError:error]; - return; - } - if ([service.UUID isEqual:[MBLConstants DISServiceUUID]]) { - NSMutableArray *characteristicsToRead = [NSMutableArray array]; - for (CBCharacteristic *characteristic in service.characteristics) { - if ([characteristic.UUID isEqual:[MBLConstants DISModelNumberUUID]] || - [characteristic.UUID isEqual:[MBLConstants DISHardwareRevUUID]]) { - [characteristicsToRead addObject:characteristic]; - } - } - if (characteristicsToRead.count == 2) { - for (CBCharacteristic *characteristic in characteristicsToRead) { - [peripheral readValueForCharacteristic:characteristic]; - } - return; - } - } - [self modelNumberReadFinished]; -} - -- (void)peripheral:(CBPeripheral *)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error -{ - if (error) { - [self attemptRecoveryWithError:error]; - return; - } - if ([characteristic.UUID isEqual:[MBLConstants DISModelNumberUUID]]) { - self.modelNumber = [[NSString alloc] initWithBytes:characteristic.value.bytes - length:characteristic.value.length - encoding:NSASCIIStringEncoding]; - } - if ([characteristic.UUID isEqual:[MBLConstants DISHardwareRevUUID]]) { - self.hardwareRev = [[NSString alloc] initWithBytes:characteristic.value.bytes - length:characteristic.value.length - encoding:NSASCIIStringEncoding]; - } - if (self.modelNumber && self.hardwareRev) { - [self modelNumberReadFinished]; - } -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothCentral.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothCentral.h deleted file mode 100644 index b48b6ce..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothCentral.h +++ /dev/null @@ -1,88 +0,0 @@ -/** - * MBLBluetoothCentral.h - * MetaWear - * - * Created by Stephen Schiffli on 9/23/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import "MBLBluetoothPeripheral.h" - -@protocol MBLBluetoothCentralDelegate; - -NS_ASSUME_NONNULL_BEGIN - -/** - To improve testabilty we need to mock CoreBluetooth objects. To do this we will make our - own protocols that are identical the CoreBluetooth interfaces and then code only to these. - That keeps the bulk of the code CoreBluetooth agnostic and allows us to create mock objects. - */ -@protocol MBLBluetoothCentral -@property id delegate; -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" -@property CBCentralManagerState state; -#pragma clang diagnostic pop - -- (id)initWithDelegate:(id)delegate queue:(dispatch_queue_t)queue options:(nullable NSDictionary *)options; - -- (NSArray> *)retrievePeripheralsWithIdentifiers:(NSArray *)identifiers; -- (NSArray> *)retrieveConnectedPeripheralsWithServices:(NSArray *)serviceUUIDs; -- (void)scanForPeripheralsWithServices:(nullable NSArray *)serviceUUIDs options:(nullable NSDictionary *)options; -- (void)stopScan; -- (void)connectPeripheral:(id)peripheral options:(nullable NSDictionary *)options; -- (void)cancelPeripheralConnection:(id)peripheral; -@end - -// CBPeripheral implements the protocol already! -@interface CBCentralManager (Private) -@end - - -/** - Also mock the delegate - */ -@protocol MBLBluetoothCentralDelegate -@required -- (void)centralManagerDidUpdateState:(id)central; - -@optional -- (void)centralManager:(id)central willRestoreState:(NSDictionary *)dict; -- (void)centralManager:(id)central didRetrievePeripherals:(NSArray> *)peripherals; -- (void)centralManager:(id)central didRetrieveConnectedPeripherals:(NSArray> *)peripherals; -- (void)centralManager:(id)central didDiscoverPeripheral:(id)peripheral advertisementData:(NSDictionary *)advertisementData RSSI:(NSNumber *)RSSI; -- (void)centralManager:(id)central didConnectPeripheral:(id)peripheral; -- (void)centralManager:(id)central didFailToConnectPeripheral:(id)peripheral error:(nullable NSError *)error; -- (void)centralManager:(id)central didDisconnectPeripheral:(id)peripheral error:(nullable NSError *)error; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothCentralMock.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothCentralMock.h deleted file mode 100644 index cc5994d..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothCentralMock.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * MBLBluetoothCentralMock.h - * MetaWear - * - * Created by Stephen Schiffli on 9/23/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLBluetoothCentral.h" - -@interface MBLBluetoothCentralMock : NSObject -@property id delegate; -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" -@property CBCentralManagerState state; -#pragma clang diagnostic pop -@property dispatch_queue_t queue; - -@property (nonatomic) double connectWaitTime; -- (void)resetKnobs; -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothCentralMock.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothCentralMock.m deleted file mode 100644 index 6df00a7..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothCentralMock.m +++ /dev/null @@ -1,139 +0,0 @@ -/** - * MBLBluetoothCentralMock.m - * MetaWear - * - * Created by Stephen Schiffli on 9/23/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLBluetoothCentralMock.h" -#import "MBLBluetoothPeripheralMock.h" -#import "MBLMockPeripheralFactory.h" - -@interface MBLBluetoothCentralMock () -@property (nonatomic) NSDictionary *peripherals; -@property (nonatomic) BOOL isScanning; -@end - -@implementation MBLBluetoothCentralMock - -- (id)initWithDelegate:(id)delegate queue:(dispatch_queue_t)queue options:(NSDictionary *)options -{ - self = [super init]; - if (self) { - self.delegate = delegate; - self.queue = queue; - - [self resetKnobs]; - - MBLBluetoothPeripheralMock *metawearR = [[MBLBluetoothPeripheralMock alloc] initWithVersion:MBLFirmwareVersion1_2_5 - model:MBLModelMetaWearR]; - MBLBluetoothPeripheralMock *metawearC = [[MBLBluetoothPeripheralMock alloc] initWithVersion:MBLFirmwareVersion1_2_5 - model:MBLModelMetaWearC]; - self.peripherals = @{ metawearR.identifier : metawearR, - metawearC.identifier : metawearC}; - - // Simulate the initial state tranistion of a the typical CoreBluetooth beast -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" - self.state = CBCentralManagerStateUnknown; - dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.1 * NSEC_PER_SEC)), queue, ^{ - self.state = CBCentralManagerStatePoweredOn; - [self.delegate centralManagerDidUpdateState:self]; - }); -#pragma clang diagnostic pop - } - return self; -} - -- (void)resetKnobs -{ - self.connectWaitTime = 0.1; -} - -- (NSArray> *)retrievePeripheralsWithIdentifiers:(NSArray *)identifiers -{ - NSMutableArray *array = [NSMutableArray array]; - [self.peripherals enumerateKeysAndObjectsUsingBlock:^(NSUUID *key, MBLBluetoothPeripheralMock *obj, BOOL *stop) { - if ([identifiers containsObject:key]) { - [array addObject:obj]; - } - }]; - return array; -} - -- (NSArray> *)retrieveConnectedPeripheralsWithServices:(NSArray *)serviceUUIDs -{ - return [NSArray array]; -} - -- (void)scanForPeripheralsWithServices:(NSArray *)serviceUUIDs options:(NSDictionary *)options -{ - self.isScanning = YES; - dispatch_async(dispatch_get_main_queue(), ^{ - [self.peripherals enumerateKeysAndObjectsUsingBlock:^(NSUUID *key, MBLBluetoothPeripheralMock *obj, BOOL *stop) { - if (self.isScanning) { - [self.delegate centralManager:self - didDiscoverPeripheral:obj - advertisementData:@{} - RSSI:@-45.0]; - } - }]; - }); -} - -- (void)stopScan -{ - self.isScanning = NO; -} - -- (void)connectPeripheral:(id)peripheral options:(NSDictionary *)options -{ - if (peripheral.state == CBPeripheralStateConnecting) { - return; - } - // Slight delay realism - peripheral.state = CBPeripheralStateConnecting; - dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(self.connectWaitTime * NSEC_PER_SEC)), self.queue, ^{ - peripheral.state = CBPeripheralStateConnected; - [self.delegate centralManager:self didConnectPeripheral:peripheral]; - }); -} - -- (void)cancelPeripheralConnection:(id)peripheral -{ - // Slight delay for realism - dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.1 * NSEC_PER_SEC)), self.queue, ^{ - peripheral.state = CBPeripheralStateDisconnected; - [self.delegate centralManager:self didDisconnectPeripheral:peripheral error:nil]; - }); -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothPeripheral.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothPeripheral.h deleted file mode 100644 index c01689b..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothPeripheral.h +++ /dev/null @@ -1,80 +0,0 @@ -/** - * MBLBluetoothPeripheral.h - * MetaWear - * - * Created by Stephen Schiffli on 9/23/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import - -@protocol MBLBluetoothPeripheralDelegate; - -NS_ASSUME_NONNULL_BEGIN - -/** - To improve testabilty we need to mock CoreBluetooth objects. To do this we will make our - own protocols that are identical the CoreBluetooth interfaces and then code only to these. - That keeps the bulk of the code CoreBluetooth agnostic and allows us to create mock objects. - */ -@protocol MBLBluetoothPeripheral -@property id delegate; -@property NSString *name; -@property CBPeripheralState state; -@property NSArray *services; -@property NSUUID *identifier; - -- (void)readRSSI; -- (void)discoverServices:(nullable NSArray *)serviceUUIDs; -- (void)discoverCharacteristics:(nullable NSArray *)characteristicUUIDs forService:(CBService *)service; -- (void)readValueForCharacteristic:(CBCharacteristic *)characteristic; -- (void)writeValue:(NSData *)data forCharacteristic:(CBCharacteristic *)characteristic type:(CBCharacteristicWriteType)type; -- (void)setNotifyValue:(BOOL)enabled forCharacteristic:(CBCharacteristic *)characteristic; -@end - -// CBPeripheral implements the protocol already! -@interface CBPeripheral (Private) -@end - - -/** - Also mock the delegate - */ -@protocol MBLBluetoothPeripheralDelegate -@optional -- (void)peripheral:(id)peripheral didReadRSSI:(NSNumber *)RSSI error:(nullable NSError *)error; -- (void)peripheral:(id)peripheral didDiscoverServices:(nullable NSError *)error; -- (void)peripheral:(id)peripheral didDiscoverCharacteristicsForService:(CBService *)service error:(nullable NSError *)error; -- (void)peripheral:(id)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(nullable NSError *)error; -- (void)peripheral:(id)peripheral didWriteValueForCharacteristic:(CBCharacteristic *)characteristic error:(nullable NSError *)error; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothPeripheralMock.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothPeripheralMock.h deleted file mode 100644 index fbd1c80..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothPeripheralMock.h +++ /dev/null @@ -1,67 +0,0 @@ -/** - * MBLBluetoothPeripheralMock.h - * MetaWear - * - * Created by Stephen Schiffli on 9/23/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLBluetoothPeripheral.h" -#import - -typedef void (^MBLHapticHandler)(uint8_t dutyCycle, uint16_t pulseWidth); -typedef void (^MBLBuzzerHandler)(uint8_t dutyCycle, uint16_t pulseWidth); - - -@interface MBLBluetoothPeripheralMock : NSObject -// Properties required by the MBLBluetoothPeripheral protocol -@property id delegate; -@property NSString *name; -@property CBPeripheralState state; -@property NSArray *services; -@property NSUUID *identifier; - -// Fun knobs to play with for testing -@property (nonatomic) double discoverServicesWaitTime; -@property (nonatomic) uint32_t keyRegister; -@property (nonatomic) BOOL isMetaBoot; -- (void)resetKnobs; - -// In order to check that the peripherals are working you can watch them -// by attaching a handler to see what sort of outputs they report -@property (nonatomic) MBLHapticHandler hapticHandler; -@property (nonatomic) MBLBuzzerHandler buzzerHandler; - -- (instancetype)initWithVersion:(MBLFirmwareVersion)version model:(MBLModel)model; - -// Used by the mock modules to send firmware responses -- (void)messageSend:(uint8_t)modId regId:(uint8_t)regId notifyen:(uint8_t)notifyen data:(NSData *)data; - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothPeripheralMock.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothPeripheralMock.m deleted file mode 100644 index df5e345..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLBluetoothPeripheralMock.m +++ /dev/null @@ -1,454 +0,0 @@ -/** - * MBLBluetoothPeripheralMock.m - * MetaWear - * - * Created by Stephen Schiffli on 9/23/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLBluetoothPeripheralMock.h" -#import "MBLMockUtils.h" -#import "MBLModuleMock.h" -#import "MBLMetaWear+Private.h" -#import "MBLConstants+Private.h" - -/* - Please forgive this hack - since CBMutableCharacteristic and CBMutableService - arn't allowed on tvOS we create a plain old NSObject with all the properties - of interest and just cast it to the CB types - again sorry for the hack - */ -@interface MBLServiceCharacteristicMock : NSObject -@property(retain, readwrite, nonatomic, nullable) CBUUID *UUID; -@property(assign, readwrite, nonatomic) CBCharacteristicProperties properties; -@property(retain, readwrite, nullable) NSData *value; -@property(retain, readwrite, nullable) NSArray *characteristics; -- (instancetype)initWithUUID:(CBUUID *)uuid; -@end -@implementation MBLServiceCharacteristicMock -- (instancetype)initWithUUID:(CBUUID *)uuid -{ - self = [super init]; - if (self) { - self.UUID = uuid; - self.properties = CBCharacteristicPropertyWriteWithoutResponse | CBCharacteristicWriteWithResponse; - } - return self; -} -@end - - -@interface MBLBluetoothPeripheralMock () -@property (nonatomic) MBLFirmwareVersion version; -@property (nonatomic) MBLModel model; - -@property (nonatomic) NSArray *modules; -@property (nonatomic) MBLModuleMock *testDebug; - -@property (nonatomic) CBMutableCharacteristic *command; -@property (nonatomic) CBMutableCharacteristic *notification; - -@property (nonatomic) CBMutableCharacteristic *batteryLife; - -@property (nonatomic) CBMutableCharacteristic *DISModelNumber; -@property (nonatomic) CBMutableCharacteristic *DISSerialNumber; -@property (nonatomic) CBMutableCharacteristic *DISFirmwareRev; -@property (nonatomic) CBMutableCharacteristic *DISHardwareRev; -@property (nonatomic) CBMutableCharacteristic *DISManufacturerName; -@end - -@implementation MBLBluetoothPeripheralMock - -- (id)copyWithZone:(NSZone *)zone -{ - MBLBluetoothPeripheralMock *newPeripheral = [[self class] allocWithZone:zone]; - newPeripheral.delegate = self.delegate; - newPeripheral.name = self.name; - newPeripheral.state = self.state; - newPeripheral.services = self.services; - newPeripheral.identifier = self.identifier; - - newPeripheral.discoverServicesWaitTime = self.discoverServicesWaitTime; - newPeripheral.keyRegister = self.keyRegister; - newPeripheral.isMetaBoot = self.isMetaBoot; - - newPeripheral.hapticHandler = self.hapticHandler; - newPeripheral.buzzerHandler = self.buzzerHandler; - - newPeripheral.version = self.version; - newPeripheral.model = self.model; - - newPeripheral.modules = self.modules; - newPeripheral.testDebug = self.testDebug; - - newPeripheral.command = self.command; - newPeripheral.notification = self.notification; - - newPeripheral.batteryLife = self.batteryLife; - - newPeripheral.DISModelNumber = self.DISModelNumber; - newPeripheral.DISSerialNumber = self.DISSerialNumber; - newPeripheral.DISFirmwareRev = self.DISFirmwareRev; - newPeripheral.DISHardwareRev = self.DISHardwareRev; - newPeripheral.DISManufacturerName = self.DISManufacturerName; - return newPeripheral; -} - -- (BOOL)isEqual:(id)object -{ - if (self == object) { - return YES; - } - if (![object isKindOfClass:[MBLBluetoothPeripheralMock class]]) { - return NO; - } - return [self.identifier isEqual:((MBLBluetoothPeripheralMock *)object).identifier]; -} - -- (NSUInteger)hash -{ - return self.identifier.hash; -} - -- (instancetype)initWithVersion:(MBLFirmwareVersion)version model:(MBLModel)model -{ - self = [super init]; - if (self) { - self.name = @"MetaWear"; - self.state = CBPeripheralStateDisconnected; - self.identifier = [[NSUUID alloc] initWithUUIDString:[NSString stringWithFormat:@"E621%04X-C36C-495A-93FC-0C247A3E6E5F", model]]; - - [self resetKnobs]; - - self.version = version; - self.model = model; - - self.modules = @[[NSNull null], - [MBLModuleMock mechanicalSwitch:self], - [MBLModuleMock led:self], - [NSNull null], - [MBLModuleMock temperature:self], - [MBLModuleMock gpio:self], - [NSNull null], - [NSNull null], - [MBLModuleMock hapticBuzzer:self], - [NSNull null], - [NSNull null], - [MBLModuleMock logging:self], - [NSNull null], - [MBLModuleMock serial:self], - [NSNull null], - [NSNull null], - [NSNull null], - [NSNull null], - [MBLModuleMock barometer:self], - [NSNull null], - [NSNull null], - [NSNull null], - [NSNull null], - [NSNull null], - [NSNull null]]; - self.testDebug = [MBLModuleMock testDebug:self]; - } - return self; -} - -- (void)resetKnobs -{ - self.discoverServicesWaitTime = 0.1; - self.keyRegister = 0; - self.isMetaBoot = NO; -} - -//- (NSData *)getAddEntityResponse:(NSData *)data -//{ -// NSData *response = nil; -// -// uint8_t const *byte = data.bytes; -// uint8_t moduleId = *byte; -// byte++; -// uint8_t regId = *byte; -// uint8_t responseId = 0xFF; -// if (moduleId == 0x9 && regId == 0x2) { -// responseId = self.dataFilterCount++; -// } else if (moduleId == 0xA && regId == 0x2) { -// responseId = self.eventCount++; -// } else if (moduleId == 0xB && regId == 0x2) { -// responseId = self.logCount++; -// } else if (moduleId == 0xC && regId == 0x2) { -// responseId = self.timerCount++; -// } else if (moduleId == 0xE && regId == 0x3) { -// responseId = self.ancsCount++; -// } else if (moduleId == 0xF && regId == 0x2) { -// responseId = self.macroCount++; -// } -// if (responseId != 0xFF) { -// response = [MBLMockUtils dataFromString:[NSString stringWithFormat:@"%02X-%02X-%02X", moduleId, regId, responseId]]; -// } -// return response; -//} - -- (void)readRSSI -{ - dispatch_async(dispatch_get_main_queue(), ^{ - [self.delegate peripheral:self didReadRSSI:@-45.0 error:nil]; - }); -} - -- (void)discoverServices:(NSArray *)serviceUUIDs -{ - dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(self.discoverServicesWaitTime * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ - NSMutableArray *services = [NSMutableArray array]; - for (CBUUID *uuid in serviceUUIDs) { - // DFU Service IFF MetaBoot mode requested - if (self.isMetaBoot != [uuid isEqual:[MBLConstants DFUServiceUUID]]) { - continue; - } -#if TARGET_OS_TV - [services addObject:[[MBLServiceCharacteristicMock alloc] initWithUUID:uuid]]; -#else - [services addObject:[[CBMutableService alloc] initWithType:uuid primary:YES]]; -#endif - } - self.services = services; - [self.delegate peripheral:self didDiscoverServices:nil]; - }); -} - -+ (CBMutableCharacteristic *)readOnly:(CBUUID *)uuid -{ -#if TARGET_OS_TV - return (CBMutableCharacteristic *)[[MBLServiceCharacteristicMock alloc] initWithUUID:uuid]; -#else - return [[CBMutableCharacteristic alloc] initWithType:uuid - properties:CBCharacteristicPropertyRead - value:nil - permissions:CBAttributePermissionsReadable]; -#endif -} -+ (CBMutableCharacteristic *)readWrite:(CBUUID *)uuid -{ -#if TARGET_OS_TV - return (CBMutableCharacteristic *)[[MBLServiceCharacteristicMock alloc] initWithUUID:uuid]; -#else - return [[CBMutableCharacteristic alloc] initWithType:uuid - properties: - CBCharacteristicPropertyRead | - CBCharacteristicPropertyWriteWithoutResponse | - CBCharacteristicPropertyWrite - value:nil - permissions: - CBAttributePermissionsReadable | - CBAttributePermissionsWriteable]; -#endif -} -+ (CBMutableCharacteristic *)readNotify:(CBUUID *)uuid -{ -#if TARGET_OS_TV - return (CBMutableCharacteristic *)[[MBLServiceCharacteristicMock alloc] initWithUUID:uuid]; -#else - return [[CBMutableCharacteristic alloc] initWithType:uuid - properties: - CBCharacteristicPropertyRead | - CBCharacteristicPropertyNotify - value:nil - permissions: - CBAttributePermissionsReadable]; -#endif -} - - -- (void)discoverCharacteristics:(NSArray *)characteristicUUIDs forService:(CBService *)service -{ - dispatch_async(dispatch_get_main_queue(), ^{ - NSMutableArray *characteristics = [NSMutableArray array]; - if ([service.UUID isEqual:[MBLConstants serviceUUID]]) { - for (CBUUID *uuid in characteristicUUIDs) { - if ([uuid isEqual:[MBLConstants commandUUID]]) { - self.command = [MBLBluetoothPeripheralMock readWrite:uuid]; - [characteristics addObject:self.command]; - } else if ([uuid isEqual:[MBLConstants notificationUUID]]) { - self.notification = [MBLBluetoothPeripheralMock readNotify:uuid]; - [characteristics addObject:self.notification]; - } - } - } else if ([service.UUID isEqual:[MBLConstants batteryServiceUUID]]) { - for (CBUUID *uuid in characteristicUUIDs) { - if ([uuid isEqual:[MBLConstants batteryLifeUUID]]) { - self.batteryLife = [MBLBluetoothPeripheralMock readOnly:uuid]; - [characteristics addObject:self.batteryLife]; - } - } - } else if ([service.UUID isEqual:[MBLConstants DISServiceUUID]]) { - for (CBUUID *uuid in characteristicUUIDs) { - if ([uuid isEqual:[MBLConstants DISManufacturerNameUUID]]) { - self.DISManufacturerName = [MBLBluetoothPeripheralMock readOnly:uuid]; - [characteristics addObject:self.DISManufacturerName]; - } else if ([uuid isEqual:[MBLConstants DISSerialNumberUUID]]) { - self.DISSerialNumber = [MBLBluetoothPeripheralMock readOnly:uuid]; - [characteristics addObject:self.DISSerialNumber]; - } else if ([uuid isEqual:[MBLConstants DISHardwareRevUUID]]) { - self.DISHardwareRev = [MBLBluetoothPeripheralMock readOnly:uuid]; - [characteristics addObject:self.DISHardwareRev]; - } else if ([uuid isEqual:[MBLConstants DISFirmwareRevUUID]]) { - self.DISFirmwareRev = [MBLBluetoothPeripheralMock readOnly:uuid]; - [characteristics addObject:self.DISFirmwareRev]; - } else if ([uuid isEqual:[MBLConstants DISModelNumberUUID]]) { - self.DISModelNumber = [MBLBluetoothPeripheralMock readOnly:uuid]; - [characteristics addObject:self.DISModelNumber]; - } - } - } - ((CBMutableService *)service).characteristics = characteristics; - [self.delegate peripheral:self didDiscoverCharacteristicsForService:service error:nil]; - }); -} - -- (void)readValueForCharacteristic:(CBCharacteristic *)characteristic -{ - NSData *result = nil; - CBUUID *uuid = characteristic.UUID; - if ([uuid isEqual:[MBLConstants DISManufacturerNameUUID]]) { - result = [@"MbientLab Inc" dataUsingEncoding:NSASCIIStringEncoding]; - } else if ([uuid isEqual:[MBLConstants DISSerialNumberUUID]]) { - result = [@"FFFFFFFF" dataUsingEncoding:NSASCIIStringEncoding]; - } else if ([uuid isEqual:[MBLConstants DISHardwareRevUUID]]) { - switch (self.model) { - case MBLModelMetaWearR: - result = [@"0.2" dataUsingEncoding:NSASCIIStringEncoding]; - break; - case MBLModelMetaWearRG: - case MBLModelMetaWearRPro: - case MBLModelMetaWearC: - case MBLModelMetaWearCPro: - case MBLModelMetaWearCEnv: - case MBLModelMetaWearCDet: - result = [@"0.3" dataUsingEncoding:NSASCIIStringEncoding]; - break; - case MBLModelMetaWearHR: - case MBLModelMetaWearPPG: - case MBLModelMetaTracker: - case MBLModelMetaMotionR: - case MBLModelMetaMotionC: - result = [@"0.1" dataUsingEncoding:NSASCIIStringEncoding]; - break; - default: - break; - } - } else if ([uuid isEqual:[MBLConstants DISFirmwareRevUUID]]) { - result = [MBLFirmwareVersionString(self.version) dataUsingEncoding:NSASCIIStringEncoding]; - } else if ([uuid isEqual:[MBLConstants DISModelNumberUUID]]) { - switch (self.model) { - case MBLModelMetaWearR: - result = [@"0" dataUsingEncoding:NSASCIIStringEncoding]; - break; - case MBLModelMetaWearRG: - case MBLModelMetaWearRPro: - result = [@"1" dataUsingEncoding:NSASCIIStringEncoding]; - break; - case MBLModelMetaWearC: - case MBLModelMetaWearCPro: - case MBLModelMetaWearCEnv: - case MBLModelMetaWearCDet: - result = [@"2" dataUsingEncoding:NSASCIIStringEncoding]; - break; - case MBLModelMetaWearHR: - case MBLModelMetaWearPPG: - result = [@"3" dataUsingEncoding:NSASCIIStringEncoding]; - break; - case MBLModelMetaTracker: - result = [@"4" dataUsingEncoding:NSASCIIStringEncoding]; - break; - case MBLModelMetaMotionR: - result = [@"5" dataUsingEncoding:NSASCIIStringEncoding]; - break; - case MBLModelMetaMotionC: - result = [@"6" dataUsingEncoding:NSASCIIStringEncoding]; - break; - default: - break; - } - } else if ([uuid isEqual:[MBLConstants batteryLifeUUID]]) { - uint8_t battery = 99; - result = [NSData dataWithBytes:&battery length:sizeof(battery)]; - } - - if (result) { - ((CBMutableCharacteristic *)characteristic).value = result; - [self.delegate peripheral:self didUpdateValueForCharacteristic:characteristic error:nil]; - } -} - -- (void)writeValue:(NSData *)data forCharacteristic:(CBCharacteristic *)characteristic type:(CBCharacteristicWriteType)type -{ - if (type == CBCharacteristicWriteWithResponse) { - dispatch_async(dispatch_get_main_queue(), ^{ - [self.delegate peripheral:self didWriteValueForCharacteristic:characteristic error:nil]; - }); - } - message_payload_t const *msg = data.bytes; - if (msg->mod_id < self.modules.count) { - id module = self.modules[msg->mod_id]; - if ([module respondsToSelector:@selector(processMessage:)]) { - [module processMessage:msg]; - } else { - if (msg->red_id == 0x80) { - // Response to mod info reads with a null response - [self messageSend:msg->mod_id regId:msg->red_id notifyen:1 data:nil]; - } - } - } else if (msg->mod_id == 0xFE) { - if ([self.testDebug respondsToSelector:@selector(processMessage:)]) { - [self.testDebug processMessage:msg]; - } else if (msg->red_id == 0x80) { - // Response to mod info reads with a null response - [self messageSend:msg->mod_id regId:msg->red_id notifyen:1 data:nil]; - } - } -} - -- (void)setNotifyValue:(BOOL)enabled forCharacteristic:(CBCharacteristic *)characteristic -{ - // We will assume its always notifiying -} - -- (void)messageSend:(uint8_t)modId regId:(uint8_t)regId notifyen:(uint8_t)notifyen data:(NSData *)data -{ - if (notifyen) { - dispatch_async(dispatch_get_main_queue(), ^{ - uint8_t header[] = { modId, regId }; - NSMutableData *msg = [NSMutableData dataWithBytes:header length:sizeof(header)]; - [msg appendData:data]; - self.notification.value = msg; - [self.delegate peripheral:self didUpdateValueForCharacteristic:self.notification error:nil]; - }); - } -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLMockPeripheralFactory.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLMockPeripheralFactory.h deleted file mode 100644 index 445a577..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLMockPeripheralFactory.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * MBLMockPeripheralFactory.h - * MetaWear - * - * Created by Stephen Schiffli on 9/23/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLBluetoothPeripheralMock.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLMockPeripheralFactory : NSObject - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLMockPeripheralFactory.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLMockPeripheralFactory.m deleted file mode 100644 index a4d6177..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLMockPeripheralFactory.m +++ /dev/null @@ -1,39 +0,0 @@ -/** - * MBLMockPeripheralFactory.m - * MetaWear - * - * Created by Stephen Schiffli on 9/23/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ -#import "MBLMockPeripheralFactory.h" - -@implementation MBLMockPeripheralFactory - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLMockUtils.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLMockUtils.h deleted file mode 100644 index ec7165e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLMockUtils.h +++ /dev/null @@ -1,41 +0,0 @@ -/** - * MBLMockUtils.h - * MetaWear - * - * Created by Stephen Schiffli on 9/23/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import - -@interface MBLMockUtils : NSObject -+ (NSMutableData *)dataFromString:(NSString *)data; -+ (NSMutableString *)stringFromData:(NSData *)data; -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLMockUtils.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLMockUtils.m deleted file mode 100644 index 9c2c96a..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLMockUtils.m +++ /dev/null @@ -1,64 +0,0 @@ -/** - * MBLMockUtils.m - * MetaWear - * - * Created by Stephen Schiffli on 9/23/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ -#import "MBLMockUtils.h" - -@implementation MBLMockUtils - -+ (NSMutableData *)dataFromString:(NSString *)data -{ - NSArray *bytes = [data componentsSeparatedByString:@"-"]; - NSMutableData *mutableData = [NSMutableData data]; - for (NSString *byte in bytes) { - unsigned tmp; - [[NSScanner scannerWithString:byte] scanHexInt:&tmp]; - [mutableData appendBytes:&tmp length:1]; - } - return mutableData; -} - -+ (NSMutableString *)stringFromData:(NSData *)data -{ - NSMutableString *string = [NSMutableString string]; - uint8_t const *byte = data.bytes; - for (int i = 0; i < data.length; i++, byte++) { - if (string.length) { - [string appendString:@"-"]; - } - [string appendFormat:@"%02X", *byte]; - } - return string; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLModuleMock.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLModuleMock.h deleted file mode 100644 index b9b8711..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLModuleMock.h +++ /dev/null @@ -1,61 +0,0 @@ -/** - * MBLModuleMock.h - * MetaWear - * - * Created by Stephen Schiffli on 9/26/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -@class MBLBluetoothPeripheralMock; - -typedef struct __attribute__((packed)) { - uint8_t mod_id; - uint8_t red_id; - uint8_t data[18]; -} message_payload_t; - - -@interface MBLModuleMock : NSObject -+ (instancetype)mechanicalSwitch:(MBLBluetoothPeripheralMock *)peripheral; -+ (instancetype)led:(MBLBluetoothPeripheralMock *)peripheral; -+ (instancetype)temperature:(MBLBluetoothPeripheralMock *)peripheral; -+ (instancetype)gpio:(MBLBluetoothPeripheralMock *)peripheral; -+ (instancetype)hapticBuzzer:(MBLBluetoothPeripheralMock *)peripheral; -+ (instancetype)logging:(MBLBluetoothPeripheralMock *)peripheral; -+ (instancetype)timer:(MBLBluetoothPeripheralMock *)peripheral; -+ (instancetype)serial:(MBLBluetoothPeripheralMock *)peripheral; -+ (instancetype)barometer:(MBLBluetoothPeripheralMock *)peripheral; - -+ (instancetype)testDebug:(MBLBluetoothPeripheralMock *)peripheral; - -- (void)processMessage:(message_payload_t const *)msg; - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLModuleMock.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLModuleMock.m deleted file mode 100644 index e9fb9c7..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Mocks/MBLModuleMock.m +++ /dev/null @@ -1,462 +0,0 @@ -/** - * MBLModuleMock.m - * MetaWear - * - * Created by Stephen Schiffli on 9/26/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLModuleMock.h" -#import "MBLMockUtils.h" -#import "MBLBluetoothPeripheralMock.h" -#import "MBLBluetoothCentralMock.h" -#import "MBLMetaWearManager+Private.h" -#import "MBLLogging.h" -#import "MBLLED+Private.h" -#import "MBLTimer+Private.h" - - -static const uint8_t MECHANICAL_SWITCH_ID = 0x1; -static const uint8_t LED_ID = 0x2; -//static const uint8_t ACCELEROMETER_ID = 0x3; -static const uint8_t TEMPERATURE_ID = 0x4; -static const uint8_t GPIO_ID = 0x5; -//static const uint8_t NEOPIXEL_ID = 0x6; -//static const uint8_t IBEACON_ID = 0x7; -static const uint8_t HAPTIC_BUZZER_ID = 0x8; -//static const uint8_t DATA_PROCESSOR_ID = 0x9; -//static const uint8_t COMMAND_ID = 0xA; -static const uint8_t LOGGING_ID = 0xB; -static const uint8_t TIMER_ID = 0xC; -static const uint8_t SERIAL_ID = 0xD; -//static const uint8_t ANCS_ID = 0xE; -//static const uint8_t MACRO_ID = 0xF; -//static const uint8_t CONDUCTANCE_ID = 0x10; -//static const uint8_t SETTINGS_ID = 0x11; -static const uint8_t BAROMETER_ID = 0x12; -//static const uint8_t GYRO_ID = 0x13; -//static const uint8_t AMBIENT_LIGHT_ID = 0x14; -//static const uint8_t MAGNETOMETER_ID = 0x15; -//static const uint8_t HYGROMETER_ID = 0x16; -//static const uint8_t PHOTOMETER_ID = 0x17; -//static const uint8_t PROXIMITY_ID = 0x18; - -static const uint8_t TEST_DEBUG_ID = 0xFE; - - -typedef void (^MBLMessageHandler)(message_payload_t const *msg); -typedef void (^MBLNotificationMessageHandler)(message_payload_t const *msg, BOOL isStarting); - - -@interface MBLGPIOMock : MBLModuleMock -@property (nonatomic) NSArray *pins; -- (instancetype)initWithPeripheral:(MBLBluetoothPeripheralMock *)peripheral; -@end - - -@interface MBLModuleMock () -@property (nonatomic) MBLBluetoothPeripheralMock *peripheral; -@property (nonatomic) uint8_t modId; -@property (nonatomic) NSMutableDictionary *handlers; - -- (void)handleRead:(uint8_t)regId handler:(MBLMessageHandler)handler; -- (void)handleWrite:(uint8_t)regId handler:(MBLMessageHandler)handler; -- (void)handleNotification:(uint8_t)regId handler:(MBLNotificationMessageHandler)handler; - -@end - -@implementation MBLModuleMock - -- (instancetype)initWithPeripheral:(MBLBluetoothPeripheralMock *)peripheral - modId:(uint8_t)modId - modImpl:(uint8_t)modImpl - modRev:(uint8_t)modRev - extra:(NSData *)extra -{ - self = [super init]; - if (self) { - self.peripheral = peripheral; - self.modId = modId; - self.handlers = [NSMutableDictionary dictionary]; - - // Default mod info reg handling - uint8_t header[] = { modImpl, modRev }; - NSMutableData *data = [NSMutableData dataWithBytes:header length:sizeof(header)]; - if (extra) { - [data appendData:extra]; - } - [self handleRead:0 handler:^(message_payload_t const *msg) { - [peripheral messageSend:msg->mod_id regId:msg->red_id notifyen:1 data:data]; - }]; - } - return self; -} - -- (void)processMessage:(message_payload_t const *)msg -{ - MBLMessageHandler handler = self.handlers[[NSNumber numberWithUnsignedChar:msg->red_id]]; - if (handler) { - handler(msg); - } -} - -- (void)handleRead:(uint8_t)regId handler:(MBLMessageHandler)handler -{ - self.handlers[[NSNumber numberWithUnsignedChar:regId | 0x80]] = handler; -} - -- (void)handleWrite:(uint8_t)regId handler:(MBLMessageHandler)handler -{ - self.handlers[[NSNumber numberWithUnsignedChar:regId]] = handler; -} - -- (void)handleNotification:(uint8_t)regId handler:(MBLNotificationMessageHandler)handler -{ - [self handleWrite:regId handler:^(message_payload_t const *msg) { - if (msg->data[0]) { - handler(msg, YES); - } else { - handler(msg, NO); - } - }]; -} - -//[self addHardcodedResponse:@"03-80-01-00" toRequest:@"03-80"]; -//[self addHardcodedResponse:@"05-80-00-02-03-03-03-03-01-01-01-01" toRequest:@"05-80"]; -//[self addHardcodedResponse:@"06-80-00-00" toRequest:@"06-80"]; -//[self addHardcodedResponse:@"07-80-00-00" toRequest:@"07-80"]; -//[self addHardcodedResponse:@"08-80-00-00" toRequest:@"08-80"]; -//[self addHardcodedResponse:@"09-80-00-00-1C" toRequest:@"09-80"]; -//[self addHardcodedResponse:@"0B-80-00-00-08-80-2F" toRequest:@"0B-80"]; -//[self addHardcodedResponse:@"0A-80-00-00-1C" toRequest:@"0A-80"]; -//[self addHardcodedResponse:@"0C-80-00-00-08" toRequest:@"0C-80"]; -//[self addHardcodedResponse:@"0D-80-00-00" toRequest:@"0D-80"]; -//[self addHardcodedResponse:@"0E-80-00-00-04" toRequest:@"0E-80"]; -//[self addHardcodedResponse:@"0F-80-00-00" toRequest:@"0F-80"]; -//[self addHardcodedResponse:@"10-80" toRequest:@"10-80"]; -//[self addHardcodedResponse:@"11-80-00-00" toRequest:@"11-80"]; -//[self addHardcodedResponse:@"12-80-00-00" toRequest:@"12-80"]; -//[self addHardcodedResponse:@"13-80-00-00" toRequest:@"13-80"]; -//[self addHardcodedResponse:@"14-80-00-00" toRequest:@"14-80"]; -//[self addHardcodedResponse:@"15-80-00-00" toRequest:@"15-80"]; -//[self addHardcodedResponse:@"16-80-00-00" toRequest:@"16-80"]; -//[self addHardcodedResponse:@"17-80-00-00" toRequest:@"17-80"]; -//[self addHardcodedResponse:@"18-80-00-00" toRequest:@"18-80"]; -//[self addHardcodedResponse:@"FE-80-00-00" toRequest:@"FE-80"]; - -+ (instancetype)mechanicalSwitch:(MBLBluetoothPeripheralMock *)peripheral -{ - MBLModuleMock *module = [[MBLModuleMock alloc] initWithPeripheral:peripheral modId:MECHANICAL_SWITCH_ID modImpl:0 modRev:0 extra:nil]; - - uint8_t __block switchState = 0; - [module handleRead:1 handler:^(message_payload_t const *msg) { - [peripheral messageSend:msg->mod_id regId:msg->red_id notifyen:1 data:[NSData dataWithBytes:&switchState length:sizeof(switchState)]]; - switchState = switchState ? 0 : 1; - }]; - - dispatch_source_t timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, dispatch_get_main_queue()); - dispatch_source_set_timer(timer, DISPATCH_TIME_NOW, 0.1 * NSEC_PER_SEC, 0.01 * NSEC_PER_SEC); - dispatch_source_set_event_handler(timer, ^{ - [peripheral messageSend:MECHANICAL_SWITCH_ID regId:1 notifyen:1 data:[NSData dataWithBytes:&switchState length:sizeof(switchState)]]; - switchState = switchState ? 0 : 1; - }); - [module handleNotification:1 handler:^(message_payload_t const *msg, BOOL isStarting) { - if (isStarting) { - dispatch_resume(timer); - } else { - dispatch_suspend(timer); - } - }]; - - return module; -} - -+ (instancetype)led:(MBLBluetoothPeripheralMock *)peripheral -{ - MBLModuleMock *module = [[MBLModuleMock alloc] initWithPeripheral:peripheral modId:LED_ID modImpl:0 modRev:0 extra:nil]; - - NSNumber __block *timeToTurnOff = nil; - [module handleWrite:1 handler:^(message_payload_t const *msg) { - NSLog(@"LED ON"); - if (timeToTurnOff) { - dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(timeToTurnOff.doubleValue * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ - NSLog(@"LED OFF"); - }); - } - }]; - [module handleWrite:2 handler:^(message_payload_t const *msg) { - NSLog(@"LED OFF"); - }]; - [module handleWrite:3 handler:^(message_payload_t const *msg) { - mw_led_flash_params_t *params = (mw_led_flash_params_t *)msg->data; - if (params->repeat_count != 0xFF) { - timeToTurnOff = [NSNumber numberWithDouble:(double)(params->repeat_count * params->time_period) / 1000.0]; - } - }]; - - return module; -} - -+ (instancetype)temperature:(MBLBluetoothPeripheralMock *)peripheral -{ - uint8_t extra[] = { 0x00, 0x03, 0x01, 0x02 }; - MBLModuleMock *module = [[MBLModuleMock alloc] initWithPeripheral:peripheral - modId:TEMPERATURE_ID - modImpl:1 - modRev:0 - extra:[NSData dataWithBytes:&extra length:sizeof(extra)]]; - - [module handleRead:1 handler:^(const message_payload_t *msg) { - const int16_t temp = 208; - uint8_t data[] = { msg->data[0], temp & 0xFF, temp >> 8 }; - [peripheral messageSend:msg->mod_id regId:msg->red_id notifyen:1 data:[NSData dataWithBytes:&data length:sizeof(data)]]; - }]; - return module; -} - -+ (instancetype)serial:(MBLBluetoothPeripheralMock *)peripheral -{ - MBLModuleMock *module = [[MBLModuleMock alloc] initWithPeripheral:peripheral modId:SERIAL_ID modImpl:0 modRev:1 extra:nil]; - - NSMutableDictionary *i2cData = [NSMutableDictionary dictionary]; - [module handleWrite:1 handler:^(message_payload_t const *msg) { - NSNumber *key = [NSNumber numberWithInt:*((uint16_t *)&msg->data[0])]; - NSData *value = [NSData dataWithBytes:&msg->data[4] length:msg->data[3]]; - i2cData[key] = value; - }]; - [module handleRead:1 handler:^(message_payload_t const *msg) { - NSData *result = i2cData[[NSNumber numberWithInt:*((uint16_t *)&msg->data[0])]]; - if (!result) { - uint8_t data[17] = { 0 }; - result = [NSData dataWithBytes:&data length:msg->data[3]]; - } - NSMutableData *data = [NSMutableData dataWithBytes:&msg->data[2] length:1]; - [data appendData:result]; - [peripheral messageSend:msg->mod_id regId:msg->red_id notifyen:1 data:data]; - }]; - - return module; -} - -+ (instancetype)gpio:(MBLBluetoothPeripheralMock *)peripheral -{ - return [[MBLGPIOMock alloc] initWithPeripheral:peripheral]; -} - -+ (instancetype)hapticBuzzer:(MBLBluetoothPeripheralMock *)peripheral -{ - MBLModuleMock *module = [[MBLModuleMock alloc] initWithPeripheral:peripheral modId:HAPTIC_BUZZER_ID modImpl:0 modRev:0 extra:nil]; - [module handleWrite:1 handler:^(message_payload_t const *msg) { - BOOL isBuzzer = msg->data[3] == 1; - uint16_t pwidth = *((uint16_t *)&msg->data[1]); - uint8_t dcycle = msg->data[0]; - if (isBuzzer) { - if (peripheral.buzzerHandler) { - peripheral.buzzerHandler(dcycle, pwidth); - } - } else { - if (peripheral.hapticHandler) { - peripheral.hapticHandler(dcycle, pwidth); - } - } - }]; - return module; -} - -+ (instancetype)logging:(MBLBluetoothPeripheralMock *)peripheral -{ - mw_log_module_info extra = { 0 }; - extra.logTriggers = 8; - extra.logCap = 10000; - MBLModuleMock *module = [[MBLModuleMock alloc] initWithPeripheral:peripheral - modId:LOGGING_ID - modImpl:0 - modRev:2 - extra:[NSData dataWithBytes:&extra length:sizeof(extra)]]; - - [module handleRead:4 handler:^(message_payload_t const *msg) { - uint64_t resp = 0; - [peripheral messageSend:msg->mod_id regId:msg->red_id notifyen:1 data:[NSData dataWithBytes:&resp length:5]]; - }]; - return module; -} - -+ (instancetype)timer:(MBLBluetoothPeripheralMock *)peripheral -{ - uint8_t extra[] = { 0x08 }; - NSMutableArray *timers = [NSMutableArray array]; - MBLModuleMock *module = [[MBLModuleMock alloc] initWithPeripheral:peripheral - modId:TIMER_ID - modImpl:0 - modRev:0 - extra:[NSData dataWithBytes:&extra length:sizeof(extra)]]; - - [module handleWrite:2 handler:^(const message_payload_t *msg) { - mw_timer_param_t *timer = (mw_timer_param_t *)msg->data; - [timers addObject:[NSValue valueWithBytes:timer objCType:@encode(mw_timer_param_t)]]; - }]; - [module handleRead:2 handler:^(message_payload_t const *msg) { - mw_timer_param_t timer; - NSValue *value = timers[msg->data[0]]; - [value getValue:&timer]; - [peripheral messageSend:msg->mod_id regId:msg->red_id notifyen:1 data:[NSData dataWithBytes:&timer length:sizeof(mw_timer_param_t)]]; - }]; - return module; -} - -+ (instancetype)barometer:(MBLBluetoothPeripheralMock *)peripheral -{ - MBLModuleMock *module = [[MBLModuleMock alloc] initWithPeripheral:peripheral modId:BAROMETER_ID modImpl:0 modRev:0 extra:nil]; - - BOOL __block pressureState = 0; - [module handleRead:1 handler:^(message_payload_t const *msg) { - uint32_t resp = pressureState ? 0xFFFC1800 : 0x0003E800; - pressureState = pressureState ? 0 : 1; - [peripheral messageSend:msg->mod_id regId:msg->red_id notifyen:1 data:[NSData dataWithBytes:&resp length:sizeof(resp)]]; - }]; - - BOOL __block altitudeState = 0; - [module handleRead:2 handler:^(message_payload_t const *msg) { - uint32_t resp = altitudeState ? 0xFFFC1800 : 0x0003E800; - altitudeState = altitudeState ? 0 : 1; - [peripheral messageSend:msg->mod_id regId:msg->red_id notifyen:1 data:[NSData dataWithBytes:&resp length:sizeof(resp)]]; - }]; - - return module; -} - -+ (instancetype)testDebug:(MBLBluetoothPeripheralMock *)peripheral -{ - MBLModuleMock *module = [[MBLModuleMock alloc] initWithPeripheral:peripheral modId:TEST_DEBUG_ID modImpl:0 modRev:1 extra:nil]; - [module handleRead:4 handler:^(message_payload_t const *msg) { - uint32_t keyValue = peripheral.keyRegister; - [peripheral messageSend:msg->mod_id regId:msg->red_id notifyen:1 data:[NSData dataWithBytes:&keyValue length:sizeof(keyValue)]]; - }]; - - [module handleWrite:6 handler:^(message_payload_t const *msg) { - [((MBLBluetoothCentralMock *)[MBLMetaWearManager sharedManager].centralManager) cancelPeripheralConnection:peripheral]; - }]; - [module handleWrite:2 handler:^(message_payload_t const *msg) { - peripheral.isMetaBoot = YES; - [((MBLBluetoothCentralMock *)[MBLMetaWearManager sharedManager].centralManager) cancelPeripheralConnection:peripheral]; - }]; - return module; -} - - -@end - - -@interface MBLPinMock : NSObject -@property (nonatomic) uint16_t analogRef; -@property (nonatomic) uint16_t analogAbs; -@property (nonatomic) uint8_t digital; - -- (void)setHigh; -- (void)setLow; -@end - -@implementation MBLPinMock -- (instancetype)init -{ - self = [super init]; - [self setDouble]; - return self; -} -- (void)setHigh -{ - self.digital = 1; - self.analogAbs = 3000; - self.analogRef = 1020; -} -- (void)setLow -{ - self.digital = 0; - self.analogAbs = 10; - self.analogRef = 2; -} -- (void)setDouble -{ - self.digital = 0; - self.analogAbs = 600; - self.analogRef = 181; -} -@end - - -@implementation MBLGPIOMock -- (instancetype)initWithPeripheral:(MBLBluetoothPeripheralMock *)peripheral -{ - uint8_t extra[] = { 03, 03, 03, 03, 01, 01, 01, 01 }; - self = [super initWithPeripheral:peripheral - modId:GPIO_ID - modImpl:0 - modRev:2 - extra:[NSData dataWithBytes:&extra length:sizeof(extra)]]; - if (self) { - self.pins = @[[[MBLPinMock alloc] init],[[MBLPinMock alloc] init],[[MBLPinMock alloc] init],[[MBLPinMock alloc] init], - [[MBLPinMock alloc] init],[[MBLPinMock alloc] init],[[MBLPinMock alloc] init],[[MBLPinMock alloc] init]]; - } - return self; -} -- (void)processMessage:(message_payload_t const *)msg -{ - uint8_t pinIdx = msg->data[0]; - uint8_t indexSpoof = msg->data[4]; - MBLPinMock *pin = self.pins[pinIdx]; - - if (indexSpoof != 0xFF) { - pinIdx = indexSpoof; - } - - if (msg->red_id == 0x1) { - [pin setHigh]; - } else if (msg->red_id == 0x2) { - [pin setLow]; - } else if (msg->red_id == 0x3) { - [pin setHigh]; - } else if (msg->red_id == 0x4) { - [pin setLow]; - } else if (msg->red_id == 0x5) { - [pin setDouble]; - } else if (msg->red_id == 0x86) { - uint8_t data[] = { pinIdx, pin.analogAbs & 0xFF, pin.analogAbs >> 8 }; - [self.peripheral messageSend:msg->mod_id regId:msg->red_id notifyen:1 data:[NSData dataWithBytes:&data length:sizeof(data)]]; - } else if (msg->red_id == 0x87) { - uint8_t data[] = { pinIdx, pin.analogRef & 0xFF, pin.analogRef >> 8 }; - [self.peripheral messageSend:msg->mod_id regId:msg->red_id notifyen:1 data:[NSData dataWithBytes:&data length:sizeof(data)]]; - } else if (msg->red_id == 0x88) { - uint8_t data[] = { pinIdx, pin.digital }; - [self.peripheral messageSend:msg->mod_id regId:msg->red_id notifyen:1 data:[NSData dataWithBytes:&data length:sizeof(data)]]; - } else if (msg->red_id == 0x80) { - [super processMessage:msg]; - } -} -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/ANCS/MBLANCSEventData+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/ANCS/MBLANCSEventData+Private.h deleted file mode 100644 index 7bd225a..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/ANCS/MBLANCSEventData+Private.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * MBLANCSEventData+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 11/20/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - - -#import "MBLANCSEventData.h" -#import "MBLFormat.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLANCSEventData (Private) -+ (MBLFormat *)formatter; - -- (instancetype)initWithData:(NSData *)data timestamp:(NSDate *)timestamp; -@end - -NS_ASSUME_NONNULL_END \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255+Private.h deleted file mode 100644 index 13c5eb4..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255+Private.h +++ /dev/null @@ -1,40 +0,0 @@ -/** - * MBLAccelerometerBMA255+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 2/29/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBMA255.h" - -@interface MBLAccelerometerBMA255 (Private) - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255MotionEvent+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255MotionEvent+Private.h deleted file mode 100644 index ecd16d4..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMA255/MBLAccelerometerBMA255MotionEvent+Private.h +++ /dev/null @@ -1,43 +0,0 @@ -/** - * MBLAccelerometerBMA255MotionEvent+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 3/1/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBMA255MotionEvent.h" -@class MBLAccelerometerBMA255; - -@interface MBLAccelerometerBMA255MotionEvent (Private) - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBMA255 *)accelerometer; - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160+Private.h deleted file mode 100644 index 8053024..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160+Private.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * MBLAccelerometerBMI160+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 5/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBMI160.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerBMI160 (Private) -@property (nonatomic) MBLRegister *accelPowerMode; -@property (nonatomic) MBLRegister *accelDataConfig; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160MotionEvent+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160MotionEvent+Private.h deleted file mode 100644 index 2f47c31..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160MotionEvent+Private.h +++ /dev/null @@ -1,45 +0,0 @@ -/** - * MBLAccelerometerBMI160MotionEvent+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 1/28/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBMI160MotionEvent.h" -@class MBLAccelerometerBMI160; - -@interface MBLAccelerometerBMI160MotionEvent (Private) -@property (nonatomic) MBLRegister *motionInterruptEn; -@property (nonatomic) MBLRegister *motionConfig; - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBMI160 *)accelerometer; - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160StepEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160StepEvent.h deleted file mode 100644 index 13bea11..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160StepEvent.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLAccelerometerBMI160StepEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 7/20/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLAccelerometerBMI160; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerBMI160StepEvent : MBLEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBMI160 *)accelerometer; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160StepEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160StepEvent.m deleted file mode 100644 index 377f433..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/AccelerometerBMI160/MBLAccelerometerBMI160StepEvent.m +++ /dev/null @@ -1,87 +0,0 @@ -/** - * MBLAccelerometerBMI160StepEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 7/20/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBMI160StepEvent.h" -#import "MBLAccelerometerBMI160+Private.h" -#import "MBLNumericFormatter.h" - -@interface MBLAccelerometerBMI160StepEvent () -@property (nonatomic) MBLRegister *stepCounterInterruptEn; -@property (nonatomic) MBLRegister *stepCounterConfig; -@end - -@implementation MBLAccelerometerBMI160StepEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBMI160 *)accelerometer -{ - self = [super initWithModule:accelerometer registerId:0x19 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - if (self) { - self.stepCounterInterruptEn = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x17 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - self.stepCounterConfig = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x18 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - NSMutableArray *tasks = [NSMutableArray array]; - bmi160_reg_step_conf_t regs = { 0 }; - - // No real descriptions given, just the defaut values for "Normal Mode" - regs.step_conf_0.alpha = 0; - regs.step_conf_0.min_threshold = 2; - regs.step_conf_0.steptime_min = 5; - regs.step_conf_1.min_step_buf = 3; - regs.step_conf_1.step_cnt_en = 1; - - [tasks addObject:[self.stepCounterConfig writeDataAsync:[NSData dataWithBytes:®s length:sizeof(bmi160_reg_step_conf_t)]]]; - - // Write the enable bit for tap detection interrupts - uint8_t data[] = { (1 << 0) , 0 }; - int dataSize = sizeof(data) / sizeof(data[0]); - [tasks addObject:[self.stepCounterInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]]; - - return [BFTask taskForCompletionOfAllTasks:tasks]; -} - -- (BFTask *)performAsyncDeactivation -{ - // Write the disable bit for tap detection interrupts - uint8_t data[] = { 0, (1 << 0) }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.stepCounterInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBosch+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBosch+Private.h deleted file mode 100644 index 3704893..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBosch+Private.h +++ /dev/null @@ -1,42 +0,0 @@ -/** - * MBLAccelerometerBosch+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 2/29/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBosch.h" - -@interface MBLAccelerometerBosch (Private) - -@property (nonatomic) MBLRegister *accelDataConfig; - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschAxisReadyEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschAxisReadyEvent.h deleted file mode 100644 index 98bfa42..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschAxisReadyEvent.h +++ /dev/null @@ -1,45 +0,0 @@ -/** - * MBLAccelerometerBoschAxisReadyEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 5/28/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLAccelerometerBosch; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerBoschAxisReadyEvent : MBLEvent -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer axis:(uint8_t)axis; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschAxisReadyEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschAxisReadyEvent.m deleted file mode 100644 index fe75bfc..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschAxisReadyEvent.m +++ /dev/null @@ -1,82 +0,0 @@ -/** - * MBLAccelerometerBoschAxisReadyEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 5/28/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBoschAxisReadyEvent.h" -#import "MBLAccelerometerBosch+Private.h" -#import "MBLAccelerometerBoschFormat.h" -#import "MBLLogger.h" - -@implementation MBLAccelerometerBoschAxisReadyEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer axis:(uint8_t)axis -{ - self = [super initWithModule:accelerometer registerId:0x4 format:[[MBLAccelerometerBoschFormat alloc] initWithAccelerometer:accelerometer axis:axis]]; - return self; -} - -- (BFTask *)performAsyncInitialization -{ - MBLAccelerometer *accelerometer = (MBLAccelerometer *)self.module; - return [accelerometer.dataReadyEvent initializeAsync]; -} - -- (BFTask *)performAsyncDeinitialization -{ - MBLAccelerometer *accelerometer = (MBLAccelerometer *)self.module; - return [accelerometer.dataReadyEvent deinitializeAsync]; -} - -- (BFTask *)performAsyncActivation -{ - MBLAccelerometer *accelerometer = (MBLAccelerometer *)self.module; - return [accelerometer.dataReadyEvent activateAsync]; -} - -- (BFTask *)performAsyncDeactivation -{ - MBLAccelerometer *accelerometer = (MBLAccelerometer *)self.module; - return [accelerometer.dataReadyEvent deactivateAsync]; -} - -- (BFTask *)startNotificationsWithHandlerAsync:(MBLObjectHandler)handler -{ - MBLAccelerometerBosch *accelerometer = (MBLAccelerometerBosch *)self.module; - if (accelerometer.sampleFrequency > 200) { - MBLLog(MBLLogLevelWarning, @"[Accelerometer] due to Bluetooth LE bandwidth limitations, notications faster than 200Hz will result in packet loss"); - } - return [super startNotificationsWithHandlerAsync:handler]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschDataReadyEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschDataReadyEvent.h deleted file mode 100644 index ed8711b..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschDataReadyEvent.h +++ /dev/null @@ -1,49 +0,0 @@ -/** - * MBLAccelerometerBoschDataReadyEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 5/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLAccelerometerBosch; -@class MBLAccelerometerBoschPackedDataReadyEvent; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerBoschDataReadyEvent : MBLEvent -@property (nonatomic) MBLRegister *accelDataInterruptEn; -@property (nonatomic) MBLAccelerometerBoschPackedDataReadyEvent *packedData; - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschDataReadyEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschDataReadyEvent.m deleted file mode 100644 index 3cde170..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschDataReadyEvent.m +++ /dev/null @@ -1,118 +0,0 @@ -/** - * MBLAccelerometerBoschDataReadyEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 5/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBoschDataReadyEvent.h" -#import "MBLAccelerometerBoschPackedDataReadyEvent.h" -#import "MBLAccelerometerBMI160+Private.h" -#import "MBLAccelerometerBoschFormat.h" -#import "MBLNumericFormatter.h" - -typedef NS_ENUM(uint8_t, MBLBoschPackedDataMode) { - MBLBoschPackedDataModeOff = 0, - MBLBoschPackedDataModeNormal = 1, - MBLBoschPackedDataModePacked = 2 -}; - -@interface MBLAccelerometerBoschDataReadyEvent () -@property (nonatomic) MBLBoschPackedDataMode packerMode; -@end - - -@implementation MBLAccelerometerBoschDataReadyEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer -{ - self = [super initWithModule:accelerometer registerId:0x4 format:[[MBLAccelerometerBoschFormat alloc] initWithAccelerometer:accelerometer packed:NO]]; - if (self) { - self.accelDataInterruptEn = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - if (accelerometer.moduleInfo.moduleRevision >= 1) { - self.packedData = [[MBLAccelerometerBoschPackedDataReadyEvent alloc] initWithAccelerometer:accelerometer]; - } - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - // Enable interrupts - uint8_t data[] = { 0x1, 0x0 }; - return [self.accelDataInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:2]]; -} - -- (BFTask *)performAsyncDeinitialization -{ - // Disable interrupts - uint8_t data[] = { 0x0, 0x1 }; - return [self.accelDataInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:2]]; -} - -- (BFTask *)startNotificationsWithHandlerAsync:(MBLObjectHandler)handler -{ - if (!self.packedData) { - return [super startNotificationsWithHandlerAsync:handler]; - } - - MBLAccelerometerBosch *accelerometer = (MBLAccelerometerBosch *)self.module; - if (self.packerMode == MBLBoschPackedDataModeOff) { - // Turn on the packer for frequencies over 100 - self.packerMode = accelerometer.sampleFrequency >= 100 ? MBLBoschPackedDataModePacked : MBLBoschPackedDataModeNormal; - } - return self.packerMode == MBLBoschPackedDataModePacked ? [self.packedData startNotificationsWithHandlerAsync:handler] - : [super startNotificationsWithHandlerAsync:handler]; -} - -- (BFTask *)stopNotificationsAsync -{ - if (!self.packedData) { - return [super stopNotificationsAsync]; - } - - MBLBoschPackedDataMode prevMode = self.packerMode; - self.packerMode = MBLBoschPackedDataModeOff; - return prevMode == MBLBoschPackedDataModePacked ? [self.packedData stopNotificationsAsync] - : [super stopNotificationsAsync]; -} - -- (BOOL)isNotifying -{ - if (!self.packedData) { - return [super isNotifying]; - } - - return self.packerMode == MBLBoschPackedDataModePacked ? [self.packedData isNotifying] - : [super isNotifying]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFlatEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFlatEvent.h deleted file mode 100644 index ac02b27..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFlatEvent.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLAccelerometerBoschFlatEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 7/20/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLAccelerometerBosch; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerBoschFlatEvent : MBLEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFlatEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFlatEvent.m deleted file mode 100644 index 01a5ca5..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFlatEvent.m +++ /dev/null @@ -1,88 +0,0 @@ -/** - * MBLAccelerometerBoschFlatEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 7/20/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBoschFlatEvent.h" -#import "MBLAccelerometerBosch+Private.h" -#import "MBLAccelerometerBoschFlatFormat.h" - -@interface MBLAccelerometerBoschFlatEvent () -@property (nonatomic) MBLRegister *flatInterruptEn; -@property (nonatomic) MBLRegister *flatConfig; -@end - -@implementation MBLAccelerometerBoschFlatEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer -{ - self = [super initWithModule:accelerometer registerId:0x14 format:[[MBLAccelerometerBoschFlatFormat alloc] init]]; - if (self) { - self.flatInterruptEn = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x12 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - self.flatConfig = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x13 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - NSMutableArray *tasks = [NSMutableArray array]; - bmi160_reg_int_flat_t regs = { 0 }; - - // defines threshold for detection of flat position in range from 0 to 44.8 - regs.int_flat_0.int_flat_theta = 8; - // defines flat interrupt hystersis, no units given..thanks bosch - regs.int_flat_1.int_flat_hy = 1; - // delay time for which the flat value must remain stable for flat - //. interrupt to be generated: 0 -> 0ms, 1 -> 640 ms, 2-> 1280 ms, 3 -> 2560 ms - regs.int_flat_1.int_flag_hold = 1; - - [tasks addObject:[self.flatConfig writeDataAsync:[NSData dataWithBytes:®s length:sizeof(bmi160_reg_int_flat_t)]]]; - - // Write the enable bit for tap detection interrupts - uint8_t data[] = { (1 << 0) , 0 }; - int dataSize = sizeof(data) / sizeof(data[0]); - [tasks addObject:[self.flatInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]]; - - return [BFTask taskForCompletionOfAllTasks:tasks]; -} - -- (BFTask *)performAsyncDeactivation -{ - // Write the disable bit for tap detection interrupts - uint8_t data[] = { 0, (1 << 0) }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.flatInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFlatFormat.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFlatFormat.h deleted file mode 100644 index aedaf38..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFlatFormat.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * MBLAccelerometerBoschFlatFormat.h - * MetaWear - * - * Created by Stephen Schiffli on 8/11/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFormat.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerBoschFlatFormat : MBLFormat - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFlatFormat.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFlatFormat.m deleted file mode 100644 index 735985a..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFlatFormat.m +++ /dev/null @@ -1,62 +0,0 @@ -/** - * MBLAccelerometerBoschFlatFormat.m - * MetaWear - * - * Created by Stephen Schiffli on 8/11/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBoschFlatFormat.h" -#import "MBLNumericData+Private.h" - -@implementation MBLAccelerometerBoschFlatFormat - -- (instancetype)init -{ - self = [super initEncodedDataWithLength:1]; - return self; -} - -- (id)entryFromData:(NSData *)data date:(NSDate *)date -{ - const uint8_t raw = *(uint8_t *)data.bytes; - return [[MBLNumericData alloc] initWithNumber:[NSNumber numberWithBool:raw == 3] timestamp:date]; -} - -- (NSNumber *)numberFromDouble:(double)value -{ - if (value) { - return [NSNumber numberWithInt:3]; - } else { - return [NSNumber numberWithInt:1]; - } -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFormat.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFormat.h deleted file mode 100644 index dab9c9e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFormat.h +++ /dev/null @@ -1,50 +0,0 @@ -/** - * MBLAccelerometerBoschFormat.h - * MetaWear - * - * Created by Stephen Schiffli on 5/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFormat.h" -#import "MBLAccelerometerBosch+Private.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerBoschFormat : MBLFormat -@property (nonatomic, weak) MBLAccelerometerBosch *accelerometer; -@property (nonatomic) BOOL packed; - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer packed:(BOOL)packed; -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer axis:(uint8_t)axis; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFormat.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFormat.m deleted file mode 100644 index 9bb5920..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschFormat.m +++ /dev/null @@ -1,143 +0,0 @@ -/** - * MBLAccelerometerBoschFormat.m - * MetaWear - * - * Created by Stephen Schiffli on 5/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBoschFormat.h" -#import "MBLAccelerometerData+Private.h" -#import "MBLNumericData+Private.h" - -@implementation MBLAccelerometerBoschFormat - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer packed:(BOOL)packed -{ - self = [super initArrayWithLength:packed ? 18 : 6 elements:3]; - if (self) { - self.accelerometer = accelerometer; - self.packed = packed; - } - return self; -} - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer axis:(uint8_t)axis -{ - assert(__builtin_popcount(axis) == 1); - MBLAccelerometerAxis typedAxis = axis; - switch (typedAxis) { - case MBLAccelerometerAxisX: - self = [super initNumberWithLength:2 isSigned:YES offset:0]; - break; - case MBLAccelerometerAxisY: - self = [super initNumberWithLength:2 isSigned:YES offset:2]; - break; - case MBLAccelerometerAxisZ: - self = [super initNumberWithLength:2 isSigned:YES offset:4]; - break; - } - if (self) { - self.accelerometer = accelerometer; - } - return self; -} - -- (id)copyWithZone:(NSZone *)zone -{ - MBLAccelerometerBoschFormat *newFormat = [super copyWithZone:zone]; - newFormat.accelerometer = self.accelerometer; - return newFormat; -} - -- (id)singleEntryFromData:(NSData *)data date:(NSDate *)date -{ - double x = DBL_MIN, y = DBL_MIN, z = DBL_MIN; - const uint8_t *bytes = data.bytes; - double scale; - switch (self.accelerometer.fullScaleRange) { - case MBLAccelerometerBoschRange16G: - scale = 16.0 / 32768.0; - break; - case MBLAccelerometerBoschRange8G: - scale = 8.0 / 32768.0; - break; - case MBLAccelerometerBoschRange4G: - scale = 4.0 / 32768.0; - break; - case MBLAccelerometerBoschRange2G: - scale = 2.0 / 32768.0; - break; - } - x = (double)(*(int16_t *)&bytes[0]) * scale; - if (self.type == MBLFormatTypeArray) { - y = (double)(*(int16_t *)&bytes[2]) * scale; - z = (double)(*(int16_t *)&bytes[4]) * scale; - } - - if (self.type == MBLFormatTypeArray) { - return [[MBLAccelerometerData alloc] initWithX:x y:y z:z timestamp:date]; - } else { - return [[MBLNumericData alloc] initWithNumber:[NSNumber numberWithDouble:x] timestamp:date]; - } -} - -- (id)entryFromData:(NSData *)data date:(NSDate *)date -{ - if (self.packed) { - return @[[self singleEntryFromData:[data subdataWithRange:NSMakeRange(0, 6)] date:date], - [self singleEntryFromData:[data subdataWithRange:NSMakeRange(6, 6)] date:date], - [self singleEntryFromData:[data subdataWithRange:NSMakeRange(12, 6)] date:date]]; - } else { - return [self singleEntryFromData:data date:date]; - } -} - -- (NSNumber *)numberFromDouble:(double)value -{ - double scale; - switch (self.accelerometer.fullScaleRange) { - case MBLAccelerometerBoschRange16G: - scale = 16.0 / 32768.0; - break; - case MBLAccelerometerBoschRange8G: - scale = 8.0 / 32768.0; - break; - case MBLAccelerometerBoschRange4G: - scale = 4.0 / 32768.0; - break; - case MBLAccelerometerBoschRange2G: - scale = 2.0 / 32768.0; - break; - } - return [NSNumber numberWithInt:value / scale]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschLowOrHighGEvent+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschLowOrHighGEvent+Private.h deleted file mode 100644 index c9a74f4..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschLowOrHighGEvent+Private.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * MBLAccelerometerBoschLowOrHighGEvent+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 1/8/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBoschLowOrHighGEvent.h" -@class MBLAccelerometerBosch; - -@interface MBLAccelerometerBoschLowOrHighGEvent (Private) -@property (nonatomic) double lowOrHighGDurationMultiplier; - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer; - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschOrientationEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschOrientationEvent.h deleted file mode 100644 index 662c8ef..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschOrientationEvent.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLAccelerometerBoschOrientationEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 6/12/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLAccelerometerBosch; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerBoschOrientationEvent : MBLEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer; - -@end - -NS_ASSUME_NONNULL_END \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschOrientationEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschOrientationEvent.m deleted file mode 100644 index 42bf386..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschOrientationEvent.m +++ /dev/null @@ -1,86 +0,0 @@ -/** - * MBLAccelerometerBoschOrientationEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 6/12/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBoschOrientationEvent.h" -#import "MBLAccelerometerBoschOrientationFormat.h" -#import "MBLAccelerometerBosch+Private.h" - -@interface MBLAccelerometerBoschOrientationEvent () -@property (nonatomic) MBLRegister *orientInterruptEn; -@property (nonatomic) MBLRegister *orientConfig; -@end - -@implementation MBLAccelerometerBoschOrientationEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer -{ - self = [super initWithModule:accelerometer registerId:0x11 format:[[MBLAccelerometerBoschOrientationFormat alloc] init]]; - if (self) { - self.orientInterruptEn = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x0F format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - self.orientConfig = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x10 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - /* - TODO: The defaults seem fine, maybe want to explore these in the future - bmi160_reg_int_orient_t regs = { 0 }; - regs.int_orient_0.int_orient_blocking; - regs.int_orient_0.int_orient_hy; - regs.int_orient_0.int_orient_mode; - - regs.int_orient_1.int_orient_axes_ex; - regs.int_orient_1.int_orient_theta; - regs.int_orient_1.int_orient_ud_en; - - [self.orientConfig writeDataAsync:[NSData dataWithBytes:®s length:sizeof(bmi160_reg_int_orient_t)]]; - */ - // Write the enable bit for orientation interrupts - uint8_t data[] = { (1 << 0), 0 }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.orientInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]; -} - -- (BFTask *)performAsyncDeactivation -{ - // Write the disable bit for orientation interrupts - uint8_t data[] = { 0, (1 << 0) }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.orientInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschOrientationFormat.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschOrientationFormat.h deleted file mode 100644 index 17a686e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschOrientationFormat.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * MBLAccelerometerBoschOrientationFormat.h - * MetaWear - * - * Created by Stephen Schiffli on 6/12/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFormat.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerBoschOrientationFormat : MBLFormat - -- (instancetype)init; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschOrientationFormat.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschOrientationFormat.m deleted file mode 100644 index c6e617f..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschOrientationFormat.m +++ /dev/null @@ -1,83 +0,0 @@ -/** - * MBLAccelerometerBoschOrientationFormat.m - * MetaWear - * - * Created by Stephen Schiffli on 6/12/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBoschOrientationFormat.h" -#import "MBLOrientationData+Private.h" - -@implementation MBLAccelerometerBoschOrientationFormat - -- (instancetype)init -{ - self = [super initEncodedDataWithLength:1]; - return self; -} - -- (id)entryFromData:(NSData *)data date:(NSDate *)date -{ - MBLAccelerometerOrientation result; - uint8_t orient = ((*(uint8_t *)data.bytes) >> 1) & 0x3; - switch (orient) { - case 0: - result = MBLAccelerometerOrientationLandscapeRight; - break; - case 1: - result = MBLAccelerometerOrientationLandscapeLeft; - break; - case 2: - result = MBLAccelerometerOrientationPortrait; - break; - case 3: - result = MBLAccelerometerOrientationPortraitUpsideDown; - break; - default: - assert(NO && "Unexpected byte from the orientation"); - } - return [[MBLOrientationData alloc] initWithOrientation:result timestamp:date]; -} - -- (NSNumber *)numberFromDouble:(double)value -{ - uint8_t orientationValue = 3; - if (fabs(value - MBLAccelerometerOrientationLandscapeRight) < DBL_EPSILON) { - orientationValue = 0; - } else if (fabs(value - MBLAccelerometerOrientationLandscapeLeft) < DBL_EPSILON) { - orientationValue = 1; - } else if (fabs(value - MBLAccelerometerOrientationPortrait) < DBL_EPSILON) { - orientationValue = 2; - } - return [NSNumber numberWithUnsignedChar:(orientationValue << 1) | 0x1]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschPackedDataReadyEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschPackedDataReadyEvent.h deleted file mode 100644 index fcb8b02..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschPackedDataReadyEvent.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * MBLAccelerometerBoschPackedDataReadyEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 5/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLAccelerometerBosch; -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerBoschPackedDataReadyEvent : MBLEvent -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschPackedDataReadyEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschPackedDataReadyEvent.m deleted file mode 100644 index 29f00aa..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschPackedDataReadyEvent.m +++ /dev/null @@ -1,75 +0,0 @@ -/** - * MBLAccelerometerBoschPackedDataReadyEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 5/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBoschPackedDataReadyEvent.h" -#import "MBLAccelerometerBMI160+Private.h" -#import "MBLAccelerometerBoschFormat.h" -#import "MBLNumericFormatter.h" - -@implementation MBLAccelerometerBoschPackedDataReadyEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer -{ - self = [super initWithModule:accelerometer registerId:0x1C format:[[MBLAccelerometerBoschFormat alloc] initWithAccelerometer:accelerometer packed:YES]]; - if (self) { - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - MBLAccelerometer *accelerometer = (MBLAccelerometer *)self.module; - return [accelerometer.dataReadyEvent initializeAsync]; -} - -- (BFTask *)performAsyncDeinitialization -{ - MBLAccelerometer *accelerometer = (MBLAccelerometer *)self.module; - return [accelerometer.dataReadyEvent deinitializeAsync]; -} - -- (BFTask *)performAsyncActivation -{ - MBLAccelerometer *accelerometer = (MBLAccelerometer *)self.module; - return [accelerometer.dataReadyEvent activateAsync]; -} - -- (BFTask *)performAsyncDeactivation -{ - MBLAccelerometer *accelerometer = (MBLAccelerometer *)self.module; - return [accelerometer.dataReadyEvent deactivateAsync]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschRMSFormat.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschRMSFormat.h deleted file mode 100644 index 5d2ede5..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschRMSFormat.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * MBLAccelerometerBoschRMSFormat.h - * MetaWear - * - * Created by Stephen Schiffli on 5/28/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFormat.h" -#import "MBLAccelerometerBosch+Private.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerBoschRMSFormat : MBLFormat -@property (nonatomic, weak) MBLAccelerometerBosch *accelerometer; - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschRMSFormat.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschRMSFormat.m deleted file mode 100644 index 614a72d..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschRMSFormat.m +++ /dev/null @@ -1,98 +0,0 @@ -/** - * MBLAccelerometerBoschRMSFormat.m - * MetaWear - * - * Created by Stephen Schiffli on 5/28/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBoschRMSFormat.h" -#import "MBLRMSAccelerometerData+Private.h" - -@implementation MBLAccelerometerBoschRMSFormat - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer -{ - self = [super initNumberWithLength:4 isSigned:NO]; - if (self) { - self.accelerometer = accelerometer; - } - return self; -} - -- (id)copyWithZone:(NSZone *)zone -{ - MBLAccelerometerBoschRMSFormat *newFormat = [super copyWithZone:zone]; - newFormat.accelerometer = self.accelerometer; - return newFormat; -} - -- (id)entryFromData:(NSData *)data date:(NSDate *)date -{ - const uint32_t raw = *(uint32_t *)data.bytes; - double scale; - switch (self.accelerometer.fullScaleRange) { - case MBLAccelerometerBoschRange16G: - scale = 16.0 / 32768.0; - break; - case MBLAccelerometerBoschRange8G: - scale = 8.0 / 32768.0; - break; - case MBLAccelerometerBoschRange4G: - scale = 4.0 / 32768.0; - break; - case MBLAccelerometerBoschRange2G: - scale = 2.0 / 32768.0; - break; - } - return [[MBLRMSAccelerometerData alloc] initWithRMS:(double)raw * scale timestamp:date]; -} - -- (NSNumber *)numberFromDouble:(double)value -{ - double scale; - switch (self.accelerometer.fullScaleRange) { - case MBLAccelerometerBoschRange16G: - scale = 16.0 / 32768.0; - break; - case MBLAccelerometerBoschRange8G: - scale = 8.0 / 32768.0; - break; - case MBLAccelerometerBoschRange4G: - scale = 4.0 / 32768.0; - break; - case MBLAccelerometerBoschRange2G: - scale = 2.0 / 32768.0; - break; - } - return [NSNumber numberWithInt:value / scale]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschTapEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschTapEvent.h deleted file mode 100644 index cfe7bd4..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschTapEvent.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLAccelerometerBoschTapEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 6/13/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLAccelerometerBosch; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerBoschTapEvent : MBLEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer; - -@end - -NS_ASSUME_NONNULL_END \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschTapEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschTapEvent.m deleted file mode 100644 index 8b76cd0..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/AccelerometerBosch/MBLAccelerometerBoschTapEvent.m +++ /dev/null @@ -1,118 +0,0 @@ -/** - * MBLAccelerometerBoschTapEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 6/13/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerBoschTapEvent.h" -#import "MBLAccelerometerBosch+Private.h" - -@interface MBLAccelerometerBoschTapEvent () -@property (nonatomic) MBLRegister *tapInterruptEn; -@property (nonatomic) MBLRegister *tapConfig; -@end - -@implementation MBLAccelerometerBoschTapEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerBosch *)accelerometer -{ - self = [super initWithModule:accelerometer registerId:0xE format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - if (self) { - self.tapInterruptEn = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x0C format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - self.tapConfig = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x0D format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - NSMutableArray *tasks = [NSMutableArray array]; - MBLAccelerometerBosch *accelerometer = (MBLAccelerometerBosch *)self.module; - bmi160_reg_int_tap_t regs = { 0 }; - - // 0 -> 50 ms, 1 -> 100 ms, 2 -> 150 ms, 3 -> 200 ms, 4 -> 250 ms, 5 -> 375 ms, 6 -> 500 ms, 7 -> 700 ms - regs.int_tap_0.int_tap_dur = 4; - // selects a tap quiet duration of 0 -> 30 ms, 1 -> 20 ms - regs.int_tap_0.int_tap_quiet = 0; - // selects a tap shock duration of 0 -> 50 ms, 1 -> 75 ms - regs.int_tap_0.int_tap_shock = 0; - - // th * 62.5mg (2g-range), th * 125mg (4g-range), th * 250mg (8g-range), th * 500mg (16g-range) - // if th = 0, then value is 1/2 the constant - double scale; - switch (accelerometer.fullScaleRange) { - case MBLAccelerometerBoschRange2G: - scale = 62.5; - break; - case MBLAccelerometerBoschRange4G: - scale = 125; - break; - case MBLAccelerometerBoschRange8G: - scale = 250; - break; - case MBLAccelerometerBoschRange16G: - scale = 500; - break; - } - regs.int_tap_1.int_tap_th = 2000 / scale; - [tasks addObject:[self.tapConfig writeDataAsync:[NSData dataWithBytes:®s length:sizeof(bmi160_reg_int_tap_t)]]]; - - uint8_t enableMask; - switch (accelerometer.tapType) { - case MBLAccelerometerTapTypeSingle: - enableMask = (1 << 1); - break; - case MBLAccelerometerTapTypeDouble: - enableMask = (1 << 0); - break; - case MBLAccelerometerTapTypeBoth: - enableMask = (1 << 1) | (1 << 0); - break; - } - - // Write the enable bit for tap detection interrupts - uint8_t data[] = { enableMask , 0 }; - int dataSize = sizeof(data) / sizeof(data[0]); - [tasks addObject:[self.tapInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]]; - - return [BFTask taskForCompletionOfAllTasks:tasks]; -} - -- (BFTask *)performAsyncDeactivation -{ - // Write the disable bit for tap detection interrupts - uint8_t data[] = { 0, (1 << 0) | (1 << 1) }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.tapInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MBLAccelerometer+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MBLAccelerometer+Private.h deleted file mode 100644 index 4ac3158..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MBLAccelerometer+Private.h +++ /dev/null @@ -1,52 +0,0 @@ -/** - * MBLAccelerometer+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 10/15/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometer.h" -#import "MBLRegister+Private.h" -#import "MBLModuleInfo.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometer (Private) -@property (nonatomic) MBLEvent *dataReadyEvent; -@property (nonatomic) MBLEvent *xAxisReadyEvent; -@property (nonatomic) MBLEvent *yAxisReadyEvent; -@property (nonatomic) MBLEvent *zAxisReadyEvent; -@property (nonatomic) MBLEvent *rmsDataReadyEvent; - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MBLAccelerometerData+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MBLAccelerometerData+Private.h deleted file mode 100644 index 596e6fa..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MBLAccelerometerData+Private.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * MBLAccelerometerData+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 8/3/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerData.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerData (Private) - -- (instancetype)initWithX:(double)x y:(double)y z:(double)z timestamp:(NSDate *)timestamp; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MBLOrientationData+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MBLOrientationData+Private.h deleted file mode 100644 index e06836a..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MBLOrientationData+Private.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * MBLOrientationData+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 10/15/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLOrientationData.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLOrientationData (Private) - -- (instancetype)initWithOrientation:(MBLAccelerometerOrientation)orientation timestamp:(NSDate *)timestamp; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MBLRMSAccelerometerData+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MBLRMSAccelerometerData+Private.h deleted file mode 100644 index 4615e4b..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MBLRMSAccelerometerData+Private.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * MBLRMSAccelerometerData+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 10/21/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLRMSAccelerometerData.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLRMSAccelerometerData (Private) - -- (instancetype)initWithRMS:(double)rms timestamp:(NSDate *)timestamp; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerAxisReadyEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerAxisReadyEvent.h deleted file mode 100644 index 5767131..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerAxisReadyEvent.h +++ /dev/null @@ -1,45 +0,0 @@ -/** - * MBLAccelerometerAxisReadyEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 4/29/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLAccelerometerMMA8452Q; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerAxisReadyEvent : MBLEvent -- (instancetype)initWithAccelerometer:(MBLAccelerometerMMA8452Q *)accelerometer axis:(uint8_t)axis; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerAxisReadyEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerAxisReadyEvent.m deleted file mode 100644 index 9e90633..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerAxisReadyEvent.m +++ /dev/null @@ -1,83 +0,0 @@ -/** - * MBLAccelerometerAxisReadyEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 4/29/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerAxisReadyEvent.h" -#import "MBLAccelerometerMMA8452Q+Private.h" -#import "MBLAccelerometerData+Private.h" -#import "MBLAccelerometerMMA8452QFormat.h" -#import "MBLLogger.h" - -@implementation MBLAccelerometerAxisReadyEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerMMA8452Q *)accelerometer axis:(uint8_t)axis -{ - self = [super initWithModule:accelerometer registerId:0x4 format:[[MBLAccelerometerMMA8452QFormat alloc] initWithAxis:axis]]; - return self; -} - -- (BFTask *)performAsyncInitialization -{ - MBLAccelerometer *accelerometer = (MBLAccelerometer *)self.module; - return [accelerometer.dataReadyEvent initializeAsync]; -} - -- (BFTask *)performAsyncDeinitialization -{ - MBLAccelerometer *accelerometer = (MBLAccelerometer *)self.module; - return [accelerometer.dataReadyEvent deinitializeAsync]; -} - -- (BFTask *)performAsyncActivation -{ - MBLAccelerometer *accelerometer = (MBLAccelerometer *)self.module; - return [accelerometer.dataReadyEvent activateAsync]; -} - -- (BFTask *)performAsyncDeactivation -{ - MBLAccelerometer *accelerometer = (MBLAccelerometer *)self.module; - return [accelerometer.dataReadyEvent deactivateAsync]; -} - -- (BFTask *)startNotificationsWithHandlerAsync:(MBLObjectHandler)handler -{ - MBLAccelerometerMMA8452Q *accelerometer = (MBLAccelerometerMMA8452Q *)self.module; - if (accelerometer.sampleFrequency > 200) { - MBLLog(MBLLogLevelWarning, @"[Accelerometer] due to Bluetooth LE bandwidth limitations, notications faster than 200Hz will result in packet loss"); - } - return [super startNotificationsWithHandlerAsync:handler]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerDataReadyEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerDataReadyEvent.h deleted file mode 100644 index 2415558..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerDataReadyEvent.h +++ /dev/null @@ -1,45 +0,0 @@ -/** - * MBLAccelerometerDataReadyEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 10/23/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLAccelerometerMMA8452Q; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerDataReadyEvent : MBLEvent -- (instancetype)initWithAccelerometer:(MBLAccelerometerMMA8452Q *)accelerometer; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerDataReadyEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerDataReadyEvent.m deleted file mode 100644 index c959546..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerDataReadyEvent.m +++ /dev/null @@ -1,130 +0,0 @@ -/** - * MBLAccelerometerDataReadyEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 10/23/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerDataReadyEvent.h" -#import "MBLAccelerometerData+Private.h" -#import "MBLAccelerometerMMA8452Q+Private.h" -#import "MBLAccelerometerMMA8452QFormat.h" -#import "MBLAccelerometerPackedDataReadyEvent.h" -#import "MBLNumericFormatter.h" -#import "mma8452q.h" -#import "BFTask+Private.h" - - -typedef NS_ENUM(uint8_t, MBLAccelerometerPackedDataMode) { - MBLAccelerometerPackedDataModeOff = 0, - MBLAccelerometerPackedDataModeNormal = 1, - MBLAccelerometerPackedDataModePacked = 2 -}; - -@interface MBLAccelerometerDataReadyEvent () -@property (nonatomic) MBLRegister *dataEnable; -@property (nonatomic) MBLAccelerometerPackedDataReadyEvent *packedData; -@property (nonatomic) MBLAccelerometerPackedDataMode packerMode; -@end - -@implementation MBLAccelerometerDataReadyEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerMMA8452Q *)accelerometer -{ - self = [super initWithModule:accelerometer registerId:0x4 format:[[MBLAccelerometerMMA8452QFormat alloc] initWithPacked:NO]]; - if (self) { - self.dataEnable = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x2 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - if (accelerometer.moduleInfo.moduleRevision >= 1) { - self.packedData = [[MBLAccelerometerPackedDataReadyEvent alloc] initWithAccelerometer:accelerometer]; - } - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - NSMutableArray *tasks = [NSMutableArray array]; - BOOL strobeGlobalEnable = self.module.activateCount; - MBLAccelerometerMMA8452Q *accelerometer = (MBLAccelerometerMMA8452Q *)self.module; - - if (strobeGlobalEnable) { - [tasks addObject:[accelerometer.globalEnable writeByteAsync:0x0]]; - } - [tasks addObject:[self.dataEnable writeByteAsync:0x1]]; - if (strobeGlobalEnable) { - [tasks addObject:[accelerometer.globalEnable writeByteAsync:0x1]]; - } - return [BFTask taskForCompletionOfAllTasks:tasks]; -} - -- (BFTask *)performAsyncDeactivation -{ - return [self.dataEnable writeByteAsync:0x0]; -} - -- (BFTask *)startNotificationsWithHandlerAsync:(MBLObjectHandler)handler -{ - if (!self.packedData) { - return [super startNotificationsWithHandlerAsync:handler]; - } - - MBLAccelerometerMMA8452Q *accelerometer = (MBLAccelerometerMMA8452Q *)self.module; - if (self.packerMode == MBLAccelerometerPackedDataModeOff) { - // Turn on the packer for frequencies over 100 - self.packerMode = accelerometer.sampleFrequency >= 100 ? MBLAccelerometerPackedDataModePacked : MBLAccelerometerPackedDataModeNormal; - } - return self.packerMode == MBLAccelerometerPackedDataModePacked ? [self.packedData startNotificationsWithHandlerAsync:handler] - : [super startNotificationsWithHandlerAsync:handler]; -} - -- (BFTask *)stopNotificationsAsync -{ - if (!self.packedData) { - return [super stopNotificationsAsync]; - } - - MBLAccelerometerPackedDataMode prevMode = self.packerMode; - self.packerMode = MBLAccelerometerPackedDataModeOff; - return prevMode == MBLAccelerometerPackedDataModePacked ? [self.packedData stopNotificationsAsync] - : [super stopNotificationsAsync]; -} - -- (BOOL)isNotifying -{ - if (!self.packedData) { - return [super isNotifying]; - } - - return self.packerMode == MBLAccelerometerPackedDataModePacked ? [self.packedData isNotifying] - : [super isNotifying]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerFreeFallEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerFreeFallEvent.h deleted file mode 100644 index 59cf71d..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerFreeFallEvent.h +++ /dev/null @@ -1,45 +0,0 @@ -/** - * MBLAccelerometerFreeFallEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 10/23/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLAccelerometerMMA8452Q; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerFreeFallEvent : MBLEvent -- (instancetype)initWithAccelerometer:(MBLAccelerometerMMA8452Q *)accelerometer; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerFreeFallEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerFreeFallEvent.m deleted file mode 100644 index c2b16fd..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerFreeFallEvent.m +++ /dev/null @@ -1,91 +0,0 @@ -/** - * MBLAccelerometerFreeFallEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 10/23/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerFreeFallEvent.h" -#import "MBLAccelerometerMMA8452Q+Private.h" -#import "MBLNumericFormatter.h" -#import "mma8452q.h" - -@interface MBLAccelerometerFreeFallEvent () -@property (nonatomic) MBLRegister *motionEnable; -@property (nonatomic) MBLRegister *motionSettings; -@end - -@implementation MBLAccelerometerFreeFallEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerMMA8452Q *)accelerometer -{ - self = [super initWithModule:accelerometer registerId:0x7 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - if (self) { - self.motionEnable = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x05 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.motionSettings = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x06 format:[[MBLFormat alloc] initEncodedDataWithLength:4]]; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - NSMutableArray *tasks = [NSMutableArray array]; - BOOL strobeGlobalEnable = self.module.activateCount; - MBLAccelerometerMMA8452Q *accelerometer = (MBLAccelerometerMMA8452Q *)self.module; - mma8452q_ff_mt_regs_t regs = { 0 }; - - regs.ff_mt_cfg.ele = YES; // Event flags are latched into FF_MT_SRC register - - regs.ff_mt_cfg.oae = NO; // Freefall Flag (Logical AND combination) - regs.ff_mt_cfg.zefe = YES; // Make sure all axis are in low G's - regs.ff_mt_cfg.yefe = YES; - regs.ff_mt_cfg.xefe = YES; - - regs.ff_mt_ths.ths = [accelerometer scalePulseThreshold:accelerometer.freeFallThreshold]; - regs.ff_mt_count.count = [accelerometer scaleFreeFallMotionDebounceCounter:accelerometer.freeFallWidth]; - - if (strobeGlobalEnable) { - [tasks addObject:[accelerometer.globalEnable writeByteAsync:0x0]]; - } - [tasks addObject:[self.motionSettings writeDataAsync:[NSData dataWithBytes:®s length:sizeof(mma8452q_ff_mt_regs_t)]]]; - [tasks addObject:[self.motionEnable writeByteAsync:0x1]]; - if (strobeGlobalEnable) { - [tasks addObject:[accelerometer.globalEnable writeByteAsync:0x1]]; - } - return [BFTask taskForCompletionOfAllTasks:tasks]; -} - -- (BFTask *)performAsyncDeactivation -{ - return [self.motionEnable writeByteAsync:0x0]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452Q+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452Q+Private.h deleted file mode 100644 index 2aa8251..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452Q+Private.h +++ /dev/null @@ -1,51 +0,0 @@ -/** - * MBLAccelerometerMMA8452Q+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 5/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerMMA8452Q.h" -#import "MBLRegister+Private.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerMMA8452Q (Private) -- (uint8_t)scalePulseThreshold:(double)accelerationInGs; -- (uint8_t)scalePulseTimeLimit:(double)timeInMsec; -- (uint8_t)scalePulseLatency:(double)timeInMsec; -- (uint8_t)scaleSecondPulseTimeWindow:(double)timeInMsec; -- (uint8_t)scalePortraitLandscapeDebounceCounter:(double)timeInMsec; -- (uint8_t)scaleFreeFallMotionDebounceCounter:(double)timeInMsec; -- (uint8_t)scaleTransientDebounceCounter:(double)timeInMsec; -@end - -NS_ASSUME_NONNULL_END \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QFormat.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QFormat.h deleted file mode 100644 index 589708f..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QFormat.h +++ /dev/null @@ -1,49 +0,0 @@ -/** - * MBLAccelerometerMMA8452QFormat.h - * MetaWear - * - * Created by Stephen Schiffli on 5/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFormat.h" -#import "MBLAccelerometerMMA8452Q+Private.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerMMA8452QFormat : MBLFormat -@property (nonatomic) BOOL packed; - -- (instancetype)initWithPacked:(BOOL)packed; -- (instancetype)initWithAxis:(uint8_t)axis; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QFormat.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QFormat.m deleted file mode 100644 index f077b80..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QFormat.m +++ /dev/null @@ -1,105 +0,0 @@ -/** - * MBLAccelerometerMMA8452QFormat.m - * MetaWear - * - * Created by Stephen Schiffli on 5/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerMMA8452QFormat.h" -#import "MBLModule+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLDeviceInfo.h" -#import "MBLAccelerometerData+Private.h" -#import "MBLNumericData+Private.h" - -@implementation MBLAccelerometerMMA8452QFormat - -- (instancetype)initWithPacked:(BOOL)packed -{ - self = [super initArrayWithLength:packed ? 18 : 6 elements:3]; - if (self) { - self.packed = packed; - } - return self; -} - -- (instancetype)initWithAxis:(uint8_t)axis -{ - assert(__builtin_popcount(axis) == 1); - switch (axis) { - case MBLAccelerometerAxisX: - self = [super initNumberWithLength:2 isSigned:YES offset:0]; - break; - case MBLAccelerometerAxisY: - self = [super initNumberWithLength:2 isSigned:YES offset:2]; - break; - case MBLAccelerometerAxisZ: - self = [super initNumberWithLength:2 isSigned:YES offset:4]; - break; - } - return self; -} - -- (id)singleEntryFromData:(NSData *)data date:(NSDate *)date -{ - double x = DBL_MIN, y = DBL_MIN, z = DBL_MIN; - const uint8_t *bytes = data.bytes; - - x = (double)(*(int16_t *)&bytes[0]) / 1000.0; - if (self.type == MBLFormatTypeArray) { - y = (double)(*(int16_t *)&bytes[2]) / 1000.0; - z = (double)(*(int16_t *)&bytes[4]) / 1000.0; - } - - if (self.type == MBLFormatTypeArray) { - return [[MBLAccelerometerData alloc] initWithX:x y:y z:z timestamp:date]; - } else { - return [[MBLNumericData alloc] initWithNumber:[NSNumber numberWithDouble:x] timestamp:date]; - } -} - -- (id)entryFromData:(NSData *)data date:(NSDate *)date -{ - if (self.packed) { - return @[[self singleEntryFromData:[data subdataWithRange:NSMakeRange(0, 6)] date:date], - [self singleEntryFromData:[data subdataWithRange:NSMakeRange(6, 6)] date:date], - [self singleEntryFromData:[data subdataWithRange:NSMakeRange(12, 6)] date:date]]; - } else { - return [self singleEntryFromData:data date:date]; - } -} - -- (NSNumber *)numberFromDouble:(double)value -{ - return [NSNumber numberWithInt:value * 1000.0]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QOrientationFormat.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QOrientationFormat.h deleted file mode 100644 index a9db8cd..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QOrientationFormat.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * MBLAccelerometerMMA8452QOrientationFormat.h - * MetaWear - * - * Created by Stephen Schiffli on 6/12/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFormat.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerMMA8452QOrientationFormat : MBLFormat - -- (instancetype)init; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QOrientationFormat.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QOrientationFormat.m deleted file mode 100644 index 1ac5ce4..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QOrientationFormat.m +++ /dev/null @@ -1,54 +0,0 @@ -/** - * MBLAccelerometerMMA8452QOrientationFormat.m - * MetaWear - * - * Created by Stephen Schiffli on 6/12/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerMMA8452QOrientationFormat.h" -#import "mma8452q.h" -#import "MBLOrientationData+Private.h" - -@implementation MBLAccelerometerMMA8452QOrientationFormat - -- (instancetype)init -{ - self = [super initEncodedDataWithLength:1]; - return self; -} - -- (id)entryFromData:(NSData *)data date:(NSDate *)date -{ - mma8452q_pl_status_t status = *(mma8452q_pl_status_t *)data.bytes; - return [[MBLOrientationData alloc] initWithOrientation:status.lapo timestamp:date]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QRMSFormat.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QRMSFormat.h deleted file mode 100644 index b1e60a6..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QRMSFormat.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * MBLAccelerometerMMA8452QRMSFormat.h - * MetaWear - * - * Created by Stephen Schiffli on 5/28/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFormat.h" -#import "MBLAccelerometerMMA8452Q+Private.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerMMA8452QRMSFormat : MBLFormat -@property (nonatomic, weak, nullable) MBLAccelerometerMMA8452Q *accelerometer; - -- (instancetype)initWithAccelerometer:(MBLAccelerometerMMA8452Q *)accelerometer; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QRMSFormat.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QRMSFormat.m deleted file mode 100644 index 213fe16..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerMMA8452QRMSFormat.m +++ /dev/null @@ -1,73 +0,0 @@ -/** - * MBLAccelerometerMMA8452QRMSFormat.m - * MetaWear - * - * Created by Stephen Schiffli on 5/28/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerMMA8452QRMSFormat.h" -#import "MBLModule+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLDeviceInfo.h" -#import "MBLRMSAccelerometerData+Private.h" - -@implementation MBLAccelerometerMMA8452QRMSFormat - -- (instancetype)initWithAccelerometer:(MBLAccelerometerMMA8452Q *)accelerometer -{ - self = [super initNumberWithLength:4 isSigned:NO]; - if (self) { - self.accelerometer = accelerometer; - } - return self; -} - -- (id)copyWithZone:(NSZone *)zone -{ - MBLAccelerometerMMA8452QRMSFormat *newFormat = [super copyWithZone:zone]; - newFormat.accelerometer = self.accelerometer; - return newFormat; -} - -- (id)entryFromData:(NSData *)data date:(NSDate *)date -{ - const uint32_t raw = *(uint32_t *)data.bytes; - double rms = (double)raw / 1000.0; - return [[MBLRMSAccelerometerData alloc] initWithRMS:rms timestamp:date]; -} - -- (NSNumber *)numberFromDouble:(double)value -{ - int firmwareUnit = value * 1000.0; - return [NSNumber numberWithInt:firmwareUnit]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerOrientationEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerOrientationEvent.h deleted file mode 100644 index 89f6a1b..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerOrientationEvent.h +++ /dev/null @@ -1,45 +0,0 @@ -/** - * MBLAccelerometerOrientationEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 10/15/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLAccelerometerMMA8452Q; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerOrientationEvent : MBLEvent -- (instancetype)initWithAccelerometer:(MBLAccelerometerMMA8452Q *)accelerometer; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerOrientationEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerOrientationEvent.m deleted file mode 100644 index 55aba8c..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerOrientationEvent.m +++ /dev/null @@ -1,86 +0,0 @@ -/** - * MBLAccelerometerOrientationEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 10/15/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerOrientationEvent.h" -#import "MBLAccelerometerMMA8452Q+Private.h" -#import "MBLAccelerometerMMA8452QOrientationFormat.h" -#import "MBLDataSample+Private.h" -#import "MBLNumericFormatter.h" -#import "mma8452q.h" - -@interface MBLAccelerometerOrientationEvent () -@property (nonatomic) MBLRegister *orientationEnable; -@property (nonatomic) MBLRegister *orientationSettings; -@end - -@implementation MBLAccelerometerOrientationEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerMMA8452Q *)accelerometer -{ - self = [super initWithModule:accelerometer registerId:0xA format:[[MBLAccelerometerMMA8452QOrientationFormat alloc] init]]; - if (self) { - self.orientationEnable = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x08 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.orientationSettings = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x09 format:[[MBLFormat alloc] initEncodedDataWithLength:5]]; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - NSMutableArray *tasks = [NSMutableArray array]; - BOOL strobeGlobalEnable = self.module.activateCount; - MBLAccelerometerMMA8452Q *accelerometer = (MBLAccelerometerMMA8452Q *)self.module; - mma8452q_pl_regs_t regs = { 0 }; - regs.pl_cfg.dbcntm = YES; - regs.pl_cfg.pl_en = YES; - regs.pl_count.dbnce = [accelerometer scalePortraitLandscapeDebounceCounter:50.0]; - - if (strobeGlobalEnable) { - [tasks addObject:[accelerometer.globalEnable writeByteAsync:0x0]]; - } - [tasks addObject:[self.orientationSettings writeDataAsync:[NSData dataWithBytes:®s length:sizeof(mma8452q_pl_regs_t)]]]; - [tasks addObject:[self.orientationEnable writeByteAsync:0x1]]; - if (strobeGlobalEnable) { - [tasks addObject:[accelerometer.globalEnable writeByteAsync:0x1]]; - } - return [BFTask taskForCompletionOfAllTasks:tasks]; -} - -- (BFTask *)performAsyncDeactivation -{ - return [self.orientationEnable writeByteAsync:0x0]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerPackedDataReadyEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerPackedDataReadyEvent.h deleted file mode 100644 index 9cb23ba..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerPackedDataReadyEvent.h +++ /dev/null @@ -1,45 +0,0 @@ -/** - * MBLAccelerometerPackedDataReadyEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 10/23/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLAccelerometerMMA8452Q; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerPackedDataReadyEvent : MBLEvent -- (instancetype)initWithAccelerometer:(MBLAccelerometerMMA8452Q *)accelerometer; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerPackedDataReadyEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerPackedDataReadyEvent.m deleted file mode 100644 index 0045165..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerPackedDataReadyEvent.m +++ /dev/null @@ -1,82 +0,0 @@ -/** - * MBLAccelerometerPackedDataReadyEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 10/23/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerPackedDataReadyEvent.h" -#import "MBLAccelerometerData+Private.h" -#import "MBLAccelerometerMMA8452Q+Private.h" -#import "MBLAccelerometerMMA8452QFormat.h" -#import "MBLNumericFormatter.h" -#import "mma8452q.h" -#import "BFTask+Private.h" - -@interface MBLAccelerometerPackedDataReadyEvent () -@property (nonatomic) MBLRegister *dataEnable; -@end - -@implementation MBLAccelerometerPackedDataReadyEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerMMA8452Q *)accelerometer -{ - self = [super initWithModule:accelerometer registerId:0x12 format:[[MBLAccelerometerMMA8452QFormat alloc] initWithPacked:YES]]; - if (self) { - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - MBLAccelerometer *accelerometer = (MBLAccelerometer *)self.module; - return [accelerometer.dataReadyEvent initializeAsync]; -} - -- (BFTask *)performAsyncDeinitialization -{ - MBLAccelerometer *accelerometer = (MBLAccelerometer *)self.module; - return [accelerometer.dataReadyEvent deinitializeAsync]; -} - -- (BFTask *)performAsyncActivation -{ - MBLAccelerometer *accelerometer = (MBLAccelerometer *)self.module; - return [accelerometer.dataReadyEvent activateAsync]; -} - -- (BFTask *)performAsyncDeactivation -{ - MBLAccelerometer *accelerometer = (MBLAccelerometer *)self.module; - return [accelerometer.dataReadyEvent deactivateAsync]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerShakeEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerShakeEvent.h deleted file mode 100644 index e10a475..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerShakeEvent.h +++ /dev/null @@ -1,45 +0,0 @@ -/** - * MBLAccelerometerShakeEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 10/23/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLAccelerometer; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerShakeEvent : MBLEvent -- (instancetype)initWithAccelerometer:(MBLAccelerometer *)accelerometer; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerShakeEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerShakeEvent.m deleted file mode 100644 index 12f07bc..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerShakeEvent.m +++ /dev/null @@ -1,90 +0,0 @@ -/** - * MBLAccelerometerShakeEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 10/23/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerShakeEvent.h" -#import "MBLAccelerometerMMA8452Q+Private.h" -#import "MBLNumericFormatter.h" -#import "mma8452q.h" - -@interface MBLAccelerometerShakeEvent () -@property (nonatomic) MBLRegister *transientEnable; -@property (nonatomic) MBLRegister *transientSettings; -@end - -@implementation MBLAccelerometerShakeEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerMMA8452Q *)accelerometer -{ - self = [super initWithModule:accelerometer registerId:0x10 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - if (self) { - self.transientEnable = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x0E format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.transientSettings = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x0F format:[[MBLFormat alloc] initEncodedDataWithLength:4]]; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - NSMutableArray *tasks = [NSMutableArray array]; - BOOL strobeGlobalEnable = self.module.activateCount; - MBLAccelerometerMMA8452Q *accelerometer = (MBLAccelerometerMMA8452Q *)self.module; - mma8452q_transient_regs_t regs = { 0 }; - - regs.transient_cfg.ele = YES; - regs.transient_cfg.ztefe = YES; - regs.transient_cfg.ytefe = YES; - regs.transient_cfg.xtefe = YES; - - regs.transient_ths.ths = [accelerometer scalePulseThreshold:accelerometer.shakeThreshold]; - - regs.transient_count.dbnce = [accelerometer scaleTransientDebounceCounter:accelerometer.shakeWidth]; - - if (strobeGlobalEnable) { - [tasks addObject:[accelerometer.globalEnable writeByteAsync:0x0]]; - } - [tasks addObject:[self.transientSettings writeDataAsync:[NSData dataWithBytes:®s length:sizeof(mma8452q_transient_regs_t)]]]; - [tasks addObject:[self.transientEnable writeByteAsync:0x1]]; - if (strobeGlobalEnable) { - [tasks addObject:[accelerometer.globalEnable writeByteAsync:0x1]]; - } - return [BFTask taskForCompletionOfAllTasks:tasks]; -} - -- (BFTask *)performAsyncDeactivation -{ - return [self.transientEnable writeByteAsync:0x0]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerTapEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerTapEvent.h deleted file mode 100644 index dac03e0..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerTapEvent.h +++ /dev/null @@ -1,45 +0,0 @@ -/** - * MBLAccelerometerTapEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 10/23/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLAccelerometer; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAccelerometerTapEvent : MBLEvent -- (instancetype)initWithAccelerometer:(MBLAccelerometer *)accelerometer; -@end - -NS_ASSUME_NONNULL_END \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerTapEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerTapEvent.m deleted file mode 100644 index 1836c33..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLAccelerometerTapEvent.m +++ /dev/null @@ -1,137 +0,0 @@ -/** - * MBLAccelerometerTapEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 10/23/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAccelerometerTapEvent.h" -#import "MBLAccelerometerMMA8452Q+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLNumericFormatter.h" -#import "mma8452q.h" - -@interface MBLAccelerometerTapEvent () -@property (nonatomic) MBLRegister *pulseEnable; -@property (nonatomic) MBLRegister *pulseSettings; -@end - -@implementation MBLAccelerometerTapEvent - -- (instancetype)initWithAccelerometer:(MBLAccelerometerMMA8452Q *)accelerometer -{ - self = [super initWithModule:accelerometer registerId:0xD format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - if (self) { - self.pulseEnable = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x0B format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.pulseSettings = [[MBLRegister alloc] initWithModule:accelerometer registerId:0x0C format:[[MBLFormat alloc] initEncodedDataWithLength:8]]; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - NSMutableArray *tasks = [NSMutableArray array]; - BOOL strobeGlobalEnable = self.module.activateCount; - MBLAccelerometerMMA8452Q *accelerometer = (MBLAccelerometerMMA8452Q *)self.module; - mma8452q_pulse_regs_t regs = { 0 }; - // Latch enabled - regs.pulse_cfg.ele = YES; - if (accelerometer.tapDetectionAxis & MBLAccelerometerAxisX) { - if (accelerometer.tapType == MBLAccelerometerTapTypeSingle || - accelerometer.tapType == MBLAccelerometerTapTypeBoth) { - regs.pulse_cfg.xspefe = YES; - } - if (accelerometer.tapType == MBLAccelerometerTapTypeDouble || - accelerometer.tapType == MBLAccelerometerTapTypeBoth) { - regs.pulse_cfg.xdpefe = YES; - } - } - if (accelerometer.tapDetectionAxis & MBLAccelerometerAxisY) { - if (accelerometer.tapType == MBLAccelerometerTapTypeSingle || - accelerometer.tapType == MBLAccelerometerTapTypeBoth) { - regs.pulse_cfg.yspefe = YES; - } - if (accelerometer.tapType == MBLAccelerometerTapTypeDouble || - accelerometer.tapType == MBLAccelerometerTapTypeBoth) { - regs.pulse_cfg.ydpefe = YES; - } - } - if (accelerometer.tapDetectionAxis & MBLAccelerometerAxisZ) { - if (accelerometer.tapType == MBLAccelerometerTapTypeSingle || - accelerometer.tapType == MBLAccelerometerTapTypeBoth) { - regs.pulse_cfg.zspefe = YES; - } - if (accelerometer.tapType == MBLAccelerometerTapTypeDouble || - accelerometer.tapType == MBLAccelerometerTapTypeBoth) { - regs.pulse_cfg.zdpefe = YES; - } - } - - // pulse_thsx.ths defines the X-axis threshold which is used by the system to - // start the pulse detection procedure. - regs.pulse_thsx.ths = [accelerometer scalePulseThreshold:3.5]; - // pulse_thst.ths defines the Y-axis threshold which is used by the system to - // start the pulse detection procedure. - regs.pulse_thsy.ths = [accelerometer scalePulseThreshold:3.5]; - // pulse_thst.ths defines the Z-axis threshold which is used by the system to - // start the pulse detection procedure. - regs.pulse_thyz.ths = [accelerometer scalePulseThreshold:4.0]; - - // tmlt defines the maximum time interval that can elapse between the start - // of the acceleration on the selected axis exceeding the specified threshold - // and the end when the acceleration on the selected axis must go below the - // specified threshold to be considered a valid pulse. - regs.pulse_tmlt.tmlt = [accelerometer scalePulseTimeLimit:30.0]; - // ltcy defines the time interval that starts after the first pulse detection. - // During this time interval, all pulses are ignored. - regs.pulse_ltcy.ltcy = [accelerometer scalePulseLatency:80.0]; - // define the maximum interval of time that can elapse after the end of the - // latency interval in which the start of the second pulse event must be - // detected provided the device has been configured for double pulse detection - regs.pulse_wind.wind = [accelerometer scaleSecondPulseTimeWindow:300.0]; - - if (strobeGlobalEnable) { - [tasks addObject:[accelerometer.globalEnable writeByteAsync:0x0]]; - } - [tasks addObject:[self.pulseSettings writeDataAsync:[NSData dataWithBytes:®s length:sizeof(mma8452q_pulse_regs_t)]]]; - [tasks addObject:[self.pulseEnable writeByteAsync:0x1]]; - if (strobeGlobalEnable) { - [tasks addObject:[accelerometer.globalEnable writeByteAsync:0x1]]; - } - return [BFTask taskForCompletionOfAllTasks:tasks]; -} - -- (BFTask *)performAsyncDeactivation -{ - return [self.pulseEnable writeByteAsync:0x0]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLRMSAccelerometerDataFilter.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLRMSAccelerometerDataFilter.h deleted file mode 100644 index f6d8fc6..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLRMSAccelerometerDataFilter.h +++ /dev/null @@ -1,49 +0,0 @@ -/** - * MBLRMSAccelerometerDataFilter.h - * MetaWear - * - * Created by Stephen Schiffli on 10/21/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFilter.h" -@class MBLAccelerometerMMA8452Q; -@class MBLAccelerometerBosch; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLRMSAccelerometerDataFilter : MBLFilter - -- (instancetype)initWithAccelerometer:(MBLAccelerometerMMA8452Q *)accelerometer; -- (instancetype)initWithAccelerometerBosch:(MBLAccelerometerBosch *)accelerometer; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLRMSAccelerometerDataFilter.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLRMSAccelerometerDataFilter.m deleted file mode 100644 index 1e0e00b..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/MBLRMSAccelerometerDataFilter.m +++ /dev/null @@ -1,93 +0,0 @@ -/** - * MBLRMSAccelerometerDataFilter.m - * MetaWear - * - * Created by Stephen Schiffli on 10/21/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLRMSAccelerometerDataFilter.h" -#import "MBLAccelerometerMMA8452Q+Private.h" -#import "MBLAccelerometerBosch+Private.h" -#import "MBLRMSAccelerometerData+Private.h" -#import "MBLDataSample+Private.h" -#import "MBLModule+Private.h" -#import "MBLFilter+Private.h" -#import "MBLAccelerometerMMA8452QRMSFormat.h" -#import "MBLAccelerometerBoschRMSFormat.h" - -typedef struct __attribute__((packed)) { - uint8_t filter_id; - uint8_t outputlen:2; - uint8_t inputlen:2; - uint8_t inputcount:3; - uint8_t issigned:1; - uint8_t mode:3; -} df_rms_param_t; - - -static const int RMS_MODE_RMS = 0; -//static const int RMS_MODE_RSS = 1; - -@implementation MBLRMSAccelerometerDataFilter - -- (instancetype)initWithAccelerometer:(MBLAccelerometerMMA8452Q *)accelerometer -{ - df_rms_param_t params = {0}; - params.filter_id = 7; - params.outputlen = 4 - 1; - params.inputlen = 2 - 1; - params.inputcount = 3 - 1; - params.issigned = YES; - params.mode = RMS_MODE_RMS; - - self = [super initWithTrigger:accelerometer.dataReadyEvent - filterParameters:[NSData dataWithBytes:¶ms length:sizeof(df_rms_param_t)] - format:[[MBLAccelerometerMMA8452QRMSFormat alloc] initWithAccelerometer:accelerometer]]; - return self; -} - -- (instancetype)initWithAccelerometerBosch:(MBLAccelerometerBosch *)accelerometer -{ - df_rms_param_t params = {0}; - params.filter_id = 7; - params.outputlen = 4 - 1; - params.inputlen = 2 - 1; - params.inputcount = 3 - 1; - params.issigned = YES; - params.mode = RMS_MODE_RMS; - - self = [super initWithTrigger:accelerometer.dataReadyEvent - filterParameters:[NSData dataWithBytes:¶ms length:sizeof(df_rms_param_t)] - format:[[MBLAccelerometerBoschRMSFormat alloc] initWithAccelerometer:accelerometer]]; - return self; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/mma8452q.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/mma8452q.h deleted file mode 100644 index 7da3351..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Accelerometer/MMA8452Q/mma8452q.h +++ /dev/null @@ -1,424 +0,0 @@ -#ifndef __MMA8452Q_H__ -#define __MMA8452Q_H__ -/** - * mma8452q.h - * MetaWear - * - * Created by Stephen Schiffli on 8/1/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#include -#include - -// Sensor I2C address -#define MMA8452Q_I2C_ADDRESS 0x1C - -#define MMA8452Q_INT_PIN 6 - -// MMA8452Q register addresses -#define MMA8452Q_REG_ADDR_STATUS 0x00 // R -#define MMA8452Q_REG_ADDR_XOUT_H 0x01 // R -#define MMA8452Q_REG_ADDR_XOUT_L 0x02 // R -#define MMA8452Q_REG_ADDR_YOUT_H 0x03 // R -#define MMA8452Q_REG_ADDR_YOUT_L 0x04 // R -#define MMA8452Q_REG_ADDR_ZOUT_H 0x05 // R -#define MMA8452Q_REG_ADDR_ZOUT_L 0x06 // R - -#define MMA8452Q_REG_ADDR_SYSMOD 0x0B // R 00 Standby, 01 Wake, 10 sleep -#define MMA8452Q_REG_ADDR_INT_SRC 0x0C // R -#define MMA8452Q_REG_ADDR_WHO_AM_I 0x0D // R 0x2A - -#define MMA8452Q_REG_ADDR_XYZ_DATA_CFG 0x0E // R/W -#define MMA8452Q_REG_ADDR_HP_FILTER_CUTOFF 0x0F // R/W - -#define MMA8452Q_REG_ADDR_PL_STATUS 0x10 // R -#define MMA8452Q_REG_ADDR_PL_CFG 0x11 // R/W -#define MMA8452Q_REG_ADDR_PL_COUNT 0x12 // R/W -#define MMA8452Q_REG_ADDR_PL_BF_ZCOMP 0x13 // R -#define MMA8452Q_REG_ADDR_P_L_THS_REG 0x14 // R - -#define MMA8452Q_REG_ADDR_FF_MT_CFG 0x15 // R/W -#define MMA8452Q_REG_ADDR_FF_MT_SRC 0x16 // R -#define MMA8452Q_REG_ADDR_FF_MT_THS 0x17 // R/W -#define MMA8452Q_REG_ADDR_FF_MT_COUNT 0x18 // R/W - -#define MMA8452Q_REG_ADDR_TRANSIENT_CFG 0x1D // R/W -#define MMA8452Q_REG_ADDR_TRANSIENT_SRC 0x1E // R -#define MMA8452Q_REG_ADDR_TRANSIENT_THS 0x1F // R/W -#define MMA8452Q_REG_ADDR_TRANSIENT_COUNT 0x20 // R/W - -#define MMA8452Q_REG_ADDR_PULSE_CFG 0x21 // R/W -#define MMA8452Q_REG_ADDR_PULSE_SRC 0x22 // R -#define MMA8452Q_REG_ADDR_PULSE_THSX 0x23 // R/W -#define MMA8452Q_REG_ADDR_PULSE_THSY 0x24 // R/W -#define MMA8452Q_REG_ADDR_PULSE_THSZ 0x25 // R/W -#define MMA8452Q_REG_ADDR_PULSE_TMLT 0x26 // R/W -#define MMA8452Q_REG_ADDR_PULSE_LTCY 0x27 // R/W -#define MMA8452Q_REG_ADDR_PULSE_WIND 0x28 // R/W - -#define MMA8452Q_REG_ADDR_ASLP_COUNT 0x29 // R/W - -#define MMA8452Q_REG_ADDR_OFF_X 0x2F // R/W -#define MMA8452Q_REG_ADDR_OFF_Y 0x30 // R/W -#define MMA8452Q_REG_ADDR_OFF_Z 0x31 // R/W - -#define MMA8452Q_REG_ADDR_CTRL_REG1 0x2A // R/W -#define MMA8452Q_REG_ADDR_CTRL_REG2 0x2B // R/W -#define MMA8452Q_REG_ADDR_CTRL_REG3 0x2C // R/W -#define MMA8452Q_REG_ADDR_CTRL_REG4 0x2D // R/W -#define MMA8452Q_REG_ADDR_CTRL_REG5 0x2E // R/W - -// Select register valies -#define MMA8452Q_REG_VAL_WHO_AM_I 0x2A // R - -typedef enum { - MMA8452Q_ASLP_RATE_50HZ = 0, - MMA8452Q_ASLP_RATE_12_5HZ, - MMA8452Q_ASLP_RATE_6_25HZ, - MMA8452Q_ASLP_RATE_1_56HZ -} mma8452q_aslp_rate_t; - -typedef struct { - uint8_t active:1; - uint8_t f_read:1; - uint8_t lnoise:1; - uint8_t dr:3; - uint8_t aslp_rate:2; -} mma8452q_ctrl_reg1_t; - -typedef struct { - uint8_t mods:2; - uint8_t slpe:1; - uint8_t smods:2; - uint8_t :1; - uint8_t rst:1; - uint8_t st:1; -} mma8452q_ctrl_reg2_t; - -typedef struct { - uint8_t pp_od:1; - uint8_t ipol:1; - uint8_t :1; - uint8_t wake_ff_mt:1; - uint8_t wake_pulse:1; - uint8_t wake_lndprt:1; - uint8_t wake_trans:1; - uint8_t :1; -} mma8452q_ctrl_reg3_t; - -typedef struct { - uint8_t int_en_drdy:1; - uint8_t :1; - uint8_t int_en_ff_mt:1; - uint8_t int_en_pulse:1; - uint8_t int_en_lndprt:1; - uint8_t int_en_trans:1; - uint8_t :1; - uint8_t int_en_aslp:1; -} mma8452q_ctrl_reg4_t; - -typedef struct { - uint8_t int_cfg_drdy:1; - uint8_t :1; - uint8_t int_cfg_ff_mt:1; - uint8_t int_cfg_pulse:1; - uint8_t int_cfg_lndprt:1; - uint8_t int_cfg_trans:1; - uint8_t :1; - uint8_t int_cfg_aslp:1; -} mma8452q_ctrl_reg5_t; - -typedef struct { - mma8452q_ctrl_reg1_t ctrl_reg1; - mma8452q_ctrl_reg2_t ctrl_reg2; - mma8452q_ctrl_reg3_t ctrl_reg3; - mma8452q_ctrl_reg4_t ctrl_reg4; - mma8452q_ctrl_reg5_t ctrl_reg5; -} mma8452q_ctrl_regs_t; - -typedef struct { - uint8_t fs:2; - uint8_t :2; - uint8_t hpf_out:1; - uint8_t :3; -} mma8452q_xyz_data_cfg_t; - -typedef struct { - uint8_t sel:2; - uint8_t :2; - uint8_t pulselpfen:1; - uint8_t pulsehpfen:1; - uint8_t :2; -} mma8452q_hp_filter_cutoff_t; - -typedef struct { - uint8_t aslp_count; -} mma8452q_aslp_count_reg_t; - -typedef struct { - mma8452q_xyz_data_cfg_t xyz_data_cfg; - mma8452q_hp_filter_cutoff_t hp_filter_cutoff; - mma8452q_ctrl_reg1_t ctrl_reg1; - mma8452q_ctrl_reg2_t ctrl_reg2; - mma8452q_aslp_count_reg_t aslp_count; -} mma8452q_data_regs_t; - -typedef struct { - uint8_t :3; - uint8_t xefe:1; - uint8_t yefe:1; - uint8_t zefe:1; - uint8_t oae:1; - uint8_t ele:1; -} mma8452q_ff_mt_cfg_t; - -typedef struct { - uint8_t xhp:1; - uint8_t xhe:1; - uint8_t yhp:1; - uint8_t yhe:1; - uint8_t zhp:1; - uint8_t zhe:1; - uint8_t :1; - uint8_t ea:1; -} mma8452q_ff_mt_src_t; - -typedef struct { - uint8_t ths:7; - uint8_t dbcntm:1; -} mma8452q_ff_mt_ths_t; - -typedef struct { - uint8_t count; -} mma8452q_ff_mt_count_t; - -typedef struct { - mma8452q_ff_mt_cfg_t ff_mt_cfg; - mma8452q_ff_mt_src_t ff_mt_src; - mma8452q_ff_mt_ths_t ff_mt_ths; - mma8452q_ff_mt_count_t ff_mt_count; -} mma8452q_ff_mt_regs_t; - -typedef struct { - uint8_t bafro:1; - uint8_t lapo:2; - uint8_t :3; - uint8_t lo:1; - uint8_t newlp:1; -} mma8452q_pl_status_t; - -typedef struct { - uint8_t :6; - uint8_t pl_en:1; - uint8_t dbcntm:1; -} mma8452q_pl_cfg_t; - -typedef struct { - uint8_t dbnce; -} mma8452q_pl_count_t; - -typedef struct { - uint8_t zlock:3; - uint8_t :3; - uint8_t bkfr:2; -} mma8452q_pl_bf_zcomp_t; - -typedef struct { - uint8_t hys:3; - uint8_t pl_ths:5; -} mma8452q_pl_ths_t; - -typedef struct { - mma8452q_pl_status_t pl_status; - mma8452q_pl_cfg_t pl_cfg; - mma8452q_pl_count_t pl_count; - mma8452q_pl_bf_zcomp_t pl_bf_zcomp; - mma8452q_pl_ths_t pl_ths; -} mma8452q_pl_regs_t; - -typedef struct { - uint8_t xspefe:1; - uint8_t xdpefe:1; - uint8_t yspefe:1; - uint8_t ydpefe:1; - uint8_t zspefe:1; - uint8_t zdpefe:1; - uint8_t ele:1; - uint8_t dpa:1; -} mma8452q_pulse_cfg_t; - -typedef struct { - uint8_t polx:1; - uint8_t poly:1; - uint8_t polz:1; - uint8_t dpe:1; - uint8_t axx:1; - uint8_t axy:1; - uint8_t axz:1; - uint8_t ea:1; -} mma8452q_pulse_src_t; - -typedef struct { - uint8_t ths:7; - uint8_t :1; -} mma8452q_pulse_ths_t; - -typedef struct { - uint8_t tmlt:8; -} mma8452q_pulse_tmlt_t; - -typedef struct { - uint8_t ltcy:8; -} mma8452q_pulse_ltcy_t; - -typedef struct { - uint8_t wind:8; -} mma8452q_pulse_wind_t; - -typedef struct { - mma8452q_pulse_cfg_t pulse_cfg; - mma8452q_pulse_src_t pulse_src; - mma8452q_pulse_ths_t pulse_thsx; - mma8452q_pulse_ths_t pulse_thsy; - mma8452q_pulse_ths_t pulse_thyz; - mma8452q_pulse_tmlt_t pulse_tmlt; - mma8452q_pulse_ltcy_t pulse_ltcy; - mma8452q_pulse_wind_t pulse_wind; -} mma8452q_pulse_regs_t; - -typedef struct { - uint8_t hpf_byp:1; - uint8_t xtefe:1; - uint8_t ytefe:1; - uint8_t ztefe:1; - uint8_t ele:1; - uint8_t :3; -} mma8452q_transient_cfg_t; - -typedef struct { - uint8_t xtranspol:1; - uint8_t xtranse:1; - uint8_t ytranspol:1; - uint8_t ytranse:1; - uint8_t ztranspol:1; - uint8_t ztranse:1; - uint8_t ea:1; - uint8_t :1; -} mma8452q_transient_src_t; - -typedef struct { - uint8_t ths:7; - uint8_t dbcntm:1; -} mma8452q_transient_ths_t; - -typedef struct { - uint8_t dbnce:8; -} mma8452q_transient_count_t; - -typedef struct { - mma8452q_transient_cfg_t transient_cfg; - mma8452q_transient_src_t transient_src; - mma8452q_transient_ths_t transient_ths; - mma8452q_transient_count_t transient_count; -} mma8452q_transient_regs_t; - -typedef struct { - uint8_t off; -} mma8452q_off_t; - -typedef struct { - mma8452q_off_t off_x; - mma8452q_off_t off_y; - mma8452q_off_t off_z; -} mma8452q_off_regs_t; - -typedef struct { - uint8_t src_drdy:1; - uint8_t :1; - uint8_t src_ff_mt:1; - uint8_t src_pulse:1; - uint8_t src_lndprt:1; - uint8_t src_trans:1; - uint8_t :1; - uint8_t src_aslp:1; -} mma8452q_int_source_t; - -typedef void (*mma8542q_evt_handler_t)(uint8_t *data, uint8_t len); - -void mma8452q_init(void); -uint8_t mma8452q_whoami(void); - -void mma8452q_enable(void); -void mma8452q_disable(void); -void mma8452q_getdata(uint8_t *data); - -void mma8452q_data_enable(void); -void mma8452q_data_disable(void); -void mma8452q_data_setmoderegs(mma8452q_data_regs_t *regs); -void mma8452q_data_setmode(uint8_t *param, uint8_t len); -void mma8452q_data_getmoderegs(mma8452q_data_regs_t *regs); -void mma8452q_data_sethandler(mma8542q_evt_handler_t handler); - -void mma8452q_ff_mt_enable(void); -void mma8452q_ff_mt_disable(void); -//void mma8452q_ff_mt_setmode(bool elatch, bool motion, bool x, bool y, bool z, bool dbcntm, uint8_t threshhold, uint8_t dbcnt); -void mma8452q_ff_mt_setmoderegs(mma8452q_ff_mt_regs_t *regs); -void mma8452q_ff_mt_setmode(uint8_t *param, uint8_t len); -void mma8452q_ff_mt_getmoderegs(mma8452q_ff_mt_regs_t *regs); -void mma8452q_ff_mt_sethandler(mma8542q_evt_handler_t handler); - -void mma8452q_pl_enable(void); -void mma8452q_pl_disable(void); -void mma8452q_pl_setmoderegs(mma8452q_pl_regs_t *regs); -void mma8452q_pl_setmode(uint8_t *param, uint8_t len); -void mma8452q_pl_getmoderegs(mma8452q_pl_regs_t *regs); -void mma8452q_pl_sethandler(mma8542q_evt_handler_t handler); - -void mma8452q_pulse_enable(void); -void mma8452q_pulse_disable(void); -void mma8452q_pulse_setmoderegs(mma8452q_pulse_regs_t *regs); -void mma8452q_pulse_setmode(uint8_t *param, uint8_t len); -void mma8452q_pulse_getmoderegs(mma8452q_pulse_regs_t *regs); -void mma8452q_pulse_sethandler(mma8542q_evt_handler_t handler); - -void mma8452q_trans_enable(void); -void mma8452q_trans_disable(void); -void mma8452q_trans_setmoderegs(mma8452q_transient_regs_t *regs); -void mma8452q_trans_setmode(uint8_t *param, uint8_t len); -void mma8452q_trans_getmoderegs(mma8452q_transient_regs_t *regs); -void mma8452q_trans_sethandler(mma8542q_evt_handler_t handler); - -void mma8452q_off_setmoderegs(mma8452q_off_regs_t *regs); -void mma8452q_off_setmode(uint8_t *param, uint8_t len); -void mma8452q_off_getmoderegs(mma8452q_off_regs_t *regs); - -#endif - diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/AmbientLight/MBLAmbientLight+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/AmbientLight/MBLAmbientLight+Private.h deleted file mode 100644 index 414bd0d..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/AmbientLight/MBLAmbientLight+Private.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * MBLAmbientLight+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 7/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLAmbientLight.h" -#import "MBLRegister+Private.h" -#import "MBLModuleInfo.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLAmbientLight (Private) - -@property (nonatomic, nullable) MBLData *illuminance; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBosch+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBosch+Private.h deleted file mode 100644 index fa8f88f..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBosch+Private.h +++ /dev/null @@ -1,45 +0,0 @@ -/** - * MBLBarometerBosch+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 2/25/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLBarometerBosch.h" -#import "MBLMetaWear+Private.h" - -@interface MBLBarometerBosch (Private) - -@property (nonatomic) MBLRegister *mode; - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo; - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBoschPeriodicAltitudeEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBoschPeriodicAltitudeEvent.h deleted file mode 100644 index ad44bee..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBoschPeriodicAltitudeEvent.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLBarometerBoschPeriodicAltitudeEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 7/23/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLBarometerBosch; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLBarometerBoschPeriodicAltitudeEvent : MBLEvent - -- (instancetype)initWithBarometer:(MBLBarometerBosch *)barometer; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBoschPeriodicAltitudeEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBoschPeriodicAltitudeEvent.m deleted file mode 100644 index dd9ba19..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBoschPeriodicAltitudeEvent.m +++ /dev/null @@ -1,72 +0,0 @@ -/** - * MBLBarometerBoschPeriodicAltitudeEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 7/23/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLBarometerBoschPeriodicAltitudeEvent.h" -#import "MBLBarometerBosch.h" -#import "MBLNumericFormatter.h" - -@interface MBLBarometerBoschPeriodicAltitudeEvent () -@property (nonatomic) MBLRegister *cyclicEnable; -@end - -@implementation MBLBarometerBoschPeriodicAltitudeEvent - -- (instancetype)initWithBarometer:(MBLBarometerBosch *)barometer -{ - self = [super initWithModule:barometer registerId:0x02 format:[[MBLNumericFormatter alloc] initDoubleWithLength:4 isSigned:YES scale:1.0 / 256.0]]; - if (self) { - self.cyclicEnable = [[MBLRegister alloc] initWithModule:barometer registerId:0x04 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - // Enable cyclic mode with altitude conversion - uint8_t data[] = { 1, 1 }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.cyclicEnable writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]; -} - - -- (BFTask *)performAsyncDeactivation -{ - // Write the disable bit for orientation interrupts - uint8_t data[] = { 0, 0 }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.cyclicEnable writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBoschPeriodicPressureEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBoschPeriodicPressureEvent.h deleted file mode 100644 index fec9bef..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBoschPeriodicPressureEvent.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLBarometerBoschPeriodicPressureEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 7/24/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLBarometerBosch; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLBarometerBoschPeriodicPressureEvent : MBLEvent - -- (instancetype)initWithBarometer:(MBLBarometerBosch *)barometer; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBoschPeriodicPressureEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBoschPeriodicPressureEvent.m deleted file mode 100644 index c6639f2..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/BarometerBosch/MBLBarometerBoschPeriodicPressureEvent.m +++ /dev/null @@ -1,71 +0,0 @@ -/** - * MBLBarometerBoschPeriodicPressureEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 7/24/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLBarometerBoschPeriodicPressureEvent.h" -#import "MBLBarometerBosch.h" -#import "MBLNumericFormatter.h" - -@interface MBLBarometerBoschPeriodicPressureEvent () -@property (nonatomic) MBLRegister *cyclicEnable; -@end - -@implementation MBLBarometerBoschPeriodicPressureEvent - -- (instancetype)initWithBarometer:(MBLBarometerBosch *)barometer -{ - self = [super initWithModule:barometer registerId:0x01 format:[[MBLNumericFormatter alloc] initDoubleWithLength:4 isSigned:NO scale:1.0 / 256.0]]; - if (self) { - self.cyclicEnable = [[MBLRegister alloc] initWithModule:barometer registerId:0x04 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - // Enable cyclic mode without altitude conversion - uint8_t data[] = { 1, 0 }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.cyclicEnable writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]; -} - -- (BFTask *)performAsyncDeactivation -{ - // Write the disable bit for orientation interrupts - uint8_t data[] = { 0, 0 }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.cyclicEnable writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/MBLBarometer+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/MBLBarometer+Private.h deleted file mode 100644 index 1980951..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Barometer/MBLBarometer+Private.h +++ /dev/null @@ -1,53 +0,0 @@ -/** - * MBLBarometer+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 7/28/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLBarometer.h" -#import "MBLRegister+Private.h" -#import "MBLData+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLModuleInfo.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLBarometer (Private) - -@property (nonatomic) MBLData *pressure; -@property (nonatomic) MBLData *altitude; - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Command/MBLCommand.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Command/MBLCommand.h deleted file mode 100644 index 058533d..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Command/MBLCommand.h +++ /dev/null @@ -1,65 +0,0 @@ -/** - * MBLEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 9/15/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLCommand : MBLModule - -/** - This method is used for programing the Metawear device to perform actions - automatically. Any time this even occurs you can have it trigger other - Metawear API calls even when the phone isn't connected. - When this method is called, the given block executed and checked for - validity. All Metawear API calls inside the block are sent to the device - for execution later. THE BLOCK IS ONLY EXECUTED ONCE DURNING THIS CALL AND - NEVER AGAIN, DON'T ATTEMPT TO USE CALLBACKS INSIDE THIS BLOCK - @param block Block consisting of API calls to make when this event occus - */ -- (BFTask *)programCommandsToRunOnEventAsync:(MBLEvent *)event commands:(MBLVoidHandler)block; -/** - Removes all commands setup when calling programCommandsToRunOnEventAsync: - */ -- (BFTask *)eraseCommandsToRunOnEventAsync:(MBLEvent *)event; - -@property (nonatomic, copy, nullable) MBLObjectHandler activatedRegHandler; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Command/MBLCommand.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Command/MBLCommand.m deleted file mode 100644 index 8eed422..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Command/MBLCommand.m +++ /dev/null @@ -1,192 +0,0 @@ -/** - * MBLEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 9/15/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLCommand.h" -#import "MBLRegister+Private.h" -#import "MBLEvent+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLDeviceInfo.h" -#import "MBLNumericFormatter.h" -#import "MBLDataSample.h" -#import "MBLMetaWearManager+Private.h" -#import "BFTask+Private.h" -#import "MBLLogger.h" - - -typedef struct __attribute__((packed)) { - uint8_t source_modid; - uint8_t source_regid; - uint8_t source_index; - uint8_t target_modid; - uint8_t target_regid; - uint8_t target_command_len; -} mw_event_trigger_t; - -@interface MBLCommand () -@property (nonatomic) MBLRegister *addCommandTrigger; -@property (nonatomic) MBLRegister *commandParameters; -@property (nonatomic) MBLRegister *removeCommandTrigger; - -@property (nonatomic) NSMutableArray *triggers; -@end - - -@implementation MBLCommand - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.globalEnable = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.addCommandTrigger = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:6]]; - self.commandParameters = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[[MBLFormat alloc] initEncodedDataWithLength:18]]; - self.removeCommandTrigger = [[MBLRegister alloc] initWithModule:self registerId:0x4 format:[MBLFormat writeOnly]]; - - uint8_t triggerCount = 8; // This was the old default - if (moduleInfo.moduleData.length) { - triggerCount = *(uint8_t *)moduleInfo.moduleData.bytes; - } - - self.triggers = [NSMutableArray arrayWithCapacity:triggerCount]; - for (int i = 0; i < triggerCount; i++) { - [self.triggers addObject:[NSNull null]]; - } - - self.addCommandTrigger.writeResponds = YES; - } - return self; -} - -- (nonnull BFTask *)programCommandsToRunOnEventAsync:(nonnull MBLEvent *)event commands:(nonnull MBLVoidHandler)block -{ - NSMutableArray *pairs = [NSMutableArray array]; - - return [[[[[[[self initializeAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.device waitForSimulatorTurn]; - }] continueWithExecutor:[BFExecutor simulatorExecutor] withBlock:^id _Nullable(BFTask * _Nonnull task) { - assert(!event.commandIds.count); - mw_event_trigger_t __block params = { 0 }; - params.source_modid = event.module.moduleInfo.moduleId; - params.source_regid = event.registerId; - params.source_index = event.index; - - [event.module.device startSimulationWithHandler:^(uint8_t module, uint8_t opcode, NSData *parameters) { - params.target_modid = module; - params.target_regid = opcode; - params.target_command_len = parameters.length; - [pairs addObject:@[[NSData dataWithBytes:¶ms length:sizeof(mw_event_trigger_t)], parameters]]; - }]; - self.activatedRegHandler = ^(id _Nullable obj, NSError * _Nullable error) { - [event.commandActivatedRegisters addObject:obj]; - }; - block(); - return nil; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [event.module.device waitForSimulatorCompletion]; - }] continueWithExecutor:[BFExecutor metaWearExecutor] withBlock:^id _Nullable(BFTask * _Nonnull task) { - self.activatedRegHandler = nil; - BFTask *head = [BFTask taskWithResult:nil]; - for (NSArray *pair in pairs) { - head = [[head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.addCommandTrigger writeDataAsync:pair[0]]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - MBLDataSample *obj = task.result; - uint8_t eventId = *(uint8_t *)obj.data.bytes; - [event.commandIds addObject:[NSNumber numberWithChar:eventId]]; - self.triggers[eventId] = pair[0]; - return [self.commandParameters writeDataAsync:pair[1]]; - }]; - } - return head; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self activateAsync]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - [event.module.device stopSimulation]; - return task; - }]; -} - -- (nonnull BFTask *)eraseCommandsToRunOnEventAsync:(nonnull MBLEvent *)event -{ - return [[[self deactivateAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - BFTask *head = [BFTask taskWithResult:nil]; - for (NSNumber *curId in event.commandIds) { - head = [head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - self.triggers[curId.charValue] = [NSNull null]; - return [self.removeCommandTrigger writeByteAsync:curId.charValue]; - }]; - } - [event.commandIds removeAllObjects]; - - for (MBLRegister *reg in event.commandActivatedRegisters) { - head = [[head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [reg deactivateAsync]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [reg deinitializeAsync]; - }]; - } - [event.commandActivatedRegisters removeAllObjects]; - return head; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self deinitializeAsync]; - }]; -} - -- (BFTask *)isStateValid -{ - return [BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - NSMutableArray *tasks = [NSMutableArray array]; - [tasks addObject:[BFTask taskWithResult:@YES]]; // Base case - for (int i = 0; i < self.triggers.count; i++) { - if (self.triggers[i] != [NSNull null]) { - [tasks addObject:[[self.addCommandTrigger readForcedIndexAsync:i] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - MBLDataSample *result = task.result; - NSData *actualData = result.data; - NSData *expectedData = self.triggers[i]; - if (actualData.length >= expectedData.length) { - if ([expectedData isEqualToData:[actualData subdataWithRange:NSMakeRange(0, expectedData.length)]]) { - return [BFTask taskWithResult:@YES]; - } - } - MBLLog(MBLLogLevelInfo, @"Command: Entity[%d] expected != actual (%@ != %@)", i, expectedData, actualData); - return [BFTask taskWithResult:@NO]; - }]]; - } - } - return [BFTask taskForCompletionOfAllTasksWithResults:tasks]; - }]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Conductance/MBLConductanceData.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Conductance/MBLConductanceData.h deleted file mode 100644 index 78a5a71..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Conductance/MBLConductanceData.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * MBLConductanceData.h - * MetaWear - * - * Created by Stephen Schiffli on 4/16/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLData+Private.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLConductanceData : MBLData - -- (instancetype)initWithRegister:(MBLRegister *)reg channel:(uint8_t)channel; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Conductance/MBLConductanceData.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Conductance/MBLConductanceData.m deleted file mode 100644 index 646ef61..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Conductance/MBLConductanceData.m +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLConductanceData.m - * MetaWear - * - * Created by Stephen Schiffli on 4/16/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLConductanceData.h" -#import "MBLNumericFormatter.h" - -@implementation MBLConductanceData - -- (instancetype)initWithRegister:(MBLRegister *)reg channel:(uint8_t)channel -{ - self = [super initWithModule:reg.module registerId:reg.registerId index:channel format:[[MBLNumericFormatter alloc] initIntWithLength:4 isSigned:NO]]; - return self; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/DataProcessor/MBLDataProcessor.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/DataProcessor/MBLDataProcessor.h deleted file mode 100644 index 47f559a..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/DataProcessor/MBLDataProcessor.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * MBLDataProcessor.h - * MetaWear - * - * Created by Stephen Schiffli on 9/15/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLConstants.h" -#import "MBLFilter.h" -#import "MBLEntityModule+Private.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLDataProcessor : MBLEntityModule - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/DataProcessor/MBLDataProcessor.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/DataProcessor/MBLDataProcessor.m deleted file mode 100644 index 178e365..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/DataProcessor/MBLDataProcessor.m +++ /dev/null @@ -1,81 +0,0 @@ -/** - * MBLDataProcessor.m - * MetaWear - * - * Created by Stephen Schiffli on 9/15/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLDataProcessor.h" -#import "MBLRegister+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLEvent+Private.h" -#import "MBLFilter+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLDataSample.h" -#import "MBLMetaWearManager+Private.h" -#import "BFTask+Private.h" - -@interface MBLDataProcessor () -@end - -@implementation MBLDataProcessor - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - MBLRegister *globalEnable = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - MBLRegister *addFilter = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:18]]; - MBLRegister *filterNotify = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[[MBLFormat alloc] initEncodedDataWithLength:18]]; - MBLRegister *removeFilter = [[MBLRegister alloc] initWithModule:self registerId:0x6 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - MBLRegister *notificationEnable = [[MBLRegister alloc] initWithModule:self registerId:0x7 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - - int maxFilters = 8; // This was the old default - if (moduleInfo.moduleData.length) { - maxFilters = *(uint8_t *)moduleInfo.moduleData.bytes; - } - - addFilter.writeResponds = YES; - - self.globalEnable = globalEnable; - - self.addEntity = addFilter; - self.removeEntity = removeFilter; - - self.globalNotifications = filterNotify; - self.notificationEnable = notificationEnable; - - self.maxEntities = maxFilters; - } - return self; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIO+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIO+Private.h deleted file mode 100644 index 1e242b8..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIO+Private.h +++ /dev/null @@ -1,62 +0,0 @@ -/** - * MBLGPIO+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 10/30/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLGPIO.h" - -@class MBLGPIOPinChangeEvent; -@class MBLGPIOData; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLGPIO (Private) -@property (nonatomic) MBLRegister *readAnalogAbsolute; -@property (nonatomic) MBLRegister *readAnalogRatio; -@property (nonatomic) MBLRegister *readDigital; -@property (nonatomic) MBLRegister *pinChangeSettings; -@property (nonatomic) MBLRegister *pinChangeNotification; -@property (nonatomic) MBLRegister *pinChangeNotificationEnable; - -- (BFTask *)startNotificationsOnChangeEvent:(MBLGPIOPinChangeEvent *)event; -- (BFTask *)stopNotificationsAsyncOnChangeEvent:(MBLGPIOPinChangeEvent *)event; - -- (BFTask *)configurePin:(uint8_t)pinNumber type:(MBLPinConfiguration)type; -- (BFTask *)setPin:(uint8_t)pinNumber toDigitalValue:(BOOL)on; - -- (BFTask *)performAsyncInitializationForRegister:(MBLGPIOData *)reg; -- (BFTask *)performAsyncDeinitializationForRegister:(MBLGPIOData *)reg; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOData.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOData.h deleted file mode 100644 index 73511a6..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOData.h +++ /dev/null @@ -1,54 +0,0 @@ -/** - * MBLGPIOData1.h - * MetaWear - * - * Created by Stephen Schiffli on 2/2/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLData+Private.h" -@class MBLGPIOPin; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLGPIOData : MBLData - -- (instancetype)initWithRegister:(MBLRegister *)reg pin:(MBLGPIOPin *)pin format:(MBLFormat *)format; - -- (instancetype)initWithRegister:(MBLRegister *)reg - pin:(MBLGPIOPin *)pin - format:(MBLFormat *)format - pullUp:(nullable NSNumber *)pullUp - pullDown:(nullable NSNumber *)pullDown - readDelay:(uint16_t)readDelay; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOData.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOData.m deleted file mode 100644 index f95cc1d..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOData.m +++ /dev/null @@ -1,133 +0,0 @@ -/** - * MBLGPIOData.m - * MetaWear - * - * Created by Stephen Schiffli on 2/2/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLGPIOData.h" -#import "MBLRegister+Private.h" -#import "MBLNumericData+Private.h" -#import "MBLGPIOPin+Private.h" -#import "MBLGPIO+Private.h" -#import "MBLMetaWearManager+Private.h" -#import "MBLMetaWear+Private.h" -#import "BFTask+Private.h" - -@interface MBLGPIOData () -@property (nonatomic, weak) MBLGPIOPin *pin; -@property (nonatomic) NSNumber *pullUp; -@property (nonatomic) NSNumber *pullDown; -@property (nonatomic) uint16_t readDelay; -@end - -@implementation MBLGPIOData - -- (instancetype)initWithRegister:(MBLRegister *)reg pin:(MBLGPIOPin *)pin format:(MBLFormat *)format -{ - self = [super initWithModule:reg.module registerId:reg.registerId index:pin.pin format:format]; - if (self) { - self.pin = pin; - } - return self; -} -- (instancetype)initWithRegister:(MBLRegister *)reg - pin:(MBLGPIOPin *)pin - format:(MBLFormat *)format - pullUp:(NSNumber *)pullUp - pullDown:(NSNumber *)pullDown - readDelay:(uint16_t)readDelay -{ - self = [super initWithModule:reg.module registerId:reg.registerId index:0xFF format:format]; - if (self) { - self.pin = pin; - self.pullUp = pullUp; - self.pullDown = pullDown; - self.readDelay = readDelay; - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - // Use the legacy code if not using pullUp or pullDown - if (!self.pullUp && !self.pullDown) { - return [super performAsyncInitialization]; - } - return [self.module.device.gpio performAsyncInitializationForRegister:self]; -} - -- (BFTask *)performAsyncDeinitialization -{ - // Use the legacy code if not using pullUp or pullDown - if (!self.pullUp && !self.pullDown) { - return [super performAsyncInitialization]; - } - return [self.module.device.gpio performAsyncDeinitializationForRegister:self]; -} - -- (NSData *)readParameters -{ - // Shortcut for older modules - if (self.module.moduleInfo.moduleRevision < 2) { - return [super readParameters]; - } - // Assert we have a valid index if using pullUp or pullDown - assert((!self.pullUp && !self.pullDown) || self.index != 0xFF); - - uint8_t readIndex = self.pin.pin; - uint8_t pullUp = self.pullUp ? self.pullUp.unsignedCharValue : 0xFF; - uint8_t pullDown = self.pullDown ? self.pullDown.unsignedCharValue : 0xFF; - uint8_t startupDelay = MIN(self.readDelay / 4, 0xFF); - uint8_t spoofedIndex = self.index; - - uint8_t data[] = { readIndex, pullUp, pullDown, startupDelay, spoofedIndex }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [NSData dataWithBytes:&data length:dataSize]; -} - -- (BFTask *)performAsyncActivation -{ -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" - if (self.pin.enablePin) { -#pragma clang diagnostic pop - [NSException raise:@"Use of deprecated function" format:@"enablePin is deprecated, please use analogRatioWithPullUp:pullDown:readDelay or analogAbsoluteWithPullUp:pullDown:readDelay instead"]; - } - return [super performAsyncActivation]; -} - -- (BFTask *)performAsyncDeactivation -{ - return [super performAsyncDeactivation]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOPin+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOPin+Private.h deleted file mode 100644 index b8fa22b..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOPin+Private.h +++ /dev/null @@ -1,50 +0,0 @@ -/** - * MBLGPIOPin+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 10/30/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLGPIOPin.h" -@class MBLGPIO; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLGPIOPin (Private) - -@property (nonatomic, weak, nullable) MBLGPIO *gpio; -@property (nonatomic) uint8_t pin; - -- (instancetype)initWithModule:(MBLGPIO *)gpio pin:(uint8_t)pin featureByte:(uint8_t)featureByte; - -@end - -NS_ASSUME_NONNULL_END \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOPinChangeEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOPinChangeEvent.h deleted file mode 100644 index bbb4891..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOPinChangeEvent.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLGPIOPinChangeEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 10/30/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -#import "MBLGPIO+Private.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLGPIOPinChangeEvent : MBLEvent -- (instancetype)initWithModule:(MBLGPIO *)gpio pin:(uint8_t)pin; - -@property (nonatomic) MBLPinChangeType changeType; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOPinChangeEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOPinChangeEvent.m deleted file mode 100644 index 6e9d30e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/GPIO/MBLGPIOPinChangeEvent.m +++ /dev/null @@ -1,84 +0,0 @@ -/** - * MBLGPIOPinChangeEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 10/30/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLGPIOPinChangeEvent.h" -#import "MBLNumericFormatter.h" -#import "MBLMetaWear+Private.h" - -@interface MBLGPIOPinChangeEvent () -@property (nonatomic, weak) MBLGPIO *gpio; -@end - -@implementation MBLGPIOPinChangeEvent - -- (instancetype)initWithModule:(MBLGPIO *)gpio pin:(uint8_t)pin -{ - self = [super initWithModule:gpio - registerId:gpio.pinChangeNotification.registerId - index:pin - format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - if (self) { - self.gpio = gpio; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - uint8_t data[] = { self.index, self.changeType }; - return [self.gpio.pinChangeSettings writeDataAsync:[NSData dataWithBytes:data length:2]]; -} - -- (BFTask *)performAsyncDeactivation -{ - uint8_t data[] = { self.index, 0 }; - return [self.gpio.pinChangeSettings writeDataAsync:[NSData dataWithBytes:data length:2]]; -} - -- (BFTask *)performAsyncStartNotifications -{ - return [[self.module.device.gpio startNotificationsOnChangeEvent:self] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [super performAsyncStartNotifications]; - }]; -} - -- (BFTask *)performAsyncStopNotificationsAsync -{ - return [[super performAsyncStopNotificationsAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.module.device.gpio stopNotificationsAsyncOnChangeEvent:self]; - }]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160+Private.h deleted file mode 100644 index c059854..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160+Private.h +++ /dev/null @@ -1,40 +0,0 @@ -/** - * MBLGyroBMI160+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 5/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLGyroBMI160.h" - -@interface MBLGyroBMI160 (Private) - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160AxisReadyEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160AxisReadyEvent.h deleted file mode 100644 index 483b72e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160AxisReadyEvent.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * MBLGyroBMI160AxisReadyEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 5/28/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLGyroBMI160; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLGyroBMI160AxisReadyEvent : MBLEvent -- (instancetype)initWithGyro:(MBLGyroBMI160 *)gyro axis:(uint8_t)axis; -@end - -NS_ASSUME_NONNULL_END - diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160AxisReadyEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160AxisReadyEvent.m deleted file mode 100644 index 04a4eb7..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160AxisReadyEvent.m +++ /dev/null @@ -1,82 +0,0 @@ -/** - * MBLGyroBMI160AxisReadyEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 5/28/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLGyroBMI160AxisReadyEvent.h" -#import "MBLGyroBMI160Format.h" -#import "MBLGyroBMI160+Private.h" -#import "MBLLogger.h" - -@implementation MBLGyroBMI160AxisReadyEvent - -- (instancetype)initWithGyro:(MBLGyroBMI160 *)gyro axis:(uint8_t)axis -{ - self = [super initWithModule:gyro registerId:0x5 format:[[MBLGyroBMI160Format alloc] initWithGyro:gyro axis:axis]]; - return self; -} - -- (BFTask *)performAsyncInitialization -{ - MBLGyroBMI160 *gyro = (MBLGyroBMI160 *)self.module; - return [gyro.dataReadyEvent initializeAsync]; -} - -- (BFTask *)performAsyncDeinitialization -{ - MBLGyroBMI160 *gyro = (MBLGyroBMI160 *)self.module; - return [gyro.dataReadyEvent deinitializeAsync]; -} - -- (BFTask *)performAsyncActivation -{ - MBLGyroBMI160 *gyro = (MBLGyroBMI160 *)self.module; - return [gyro.dataReadyEvent activateAsync]; -} - -- (BFTask *)performAsyncDeactivation -{ - MBLGyroBMI160 *gyro = (MBLGyroBMI160 *)self.module; - return [gyro.dataReadyEvent deactivateAsync]; -} - -- (BFTask *)startNotificationsWithHandlerAsync:(MBLObjectHandler)handler -{ - MBLGyroBMI160 *gyro = (MBLGyroBMI160 *)self.module; - if (gyro.sampleFrequency > 200) { - MBLLog(MBLLogLevelWarning, @"[Gyro] due to Bluetooth LE bandwidth limitations, notications faster than 200Hz will result in packet loss"); - } - return [super startNotificationsWithHandlerAsync:handler]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160DataReadyEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160DataReadyEvent.h deleted file mode 100644 index 9e3245c..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160DataReadyEvent.h +++ /dev/null @@ -1,50 +0,0 @@ -/** - * MBLGyroBMI160DataReadyEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 5/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -#import "MBLRegister+Private.h" -@class MBLGyroBMI160; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLGyroBMI160DataReadyEvent : MBLEvent - -@property (nonatomic) MBLRegister *dataInterruptEn; - -- (instancetype)initWithGyro:(MBLGyroBMI160 *)gyro; - -@end - -NS_ASSUME_NONNULL_END \ No newline at end of file diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160DataReadyEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160DataReadyEvent.m deleted file mode 100644 index e582fcf..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160DataReadyEvent.m +++ /dev/null @@ -1,123 +0,0 @@ -/** - * MBLGyroBMI160DataReadyEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 5/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - - -#import "MBLGyroBMI160DataReadyEvent.h" -#import "MBLGyro+Private.h" -#import "MBLGyroBMI160+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLRegister+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLGyroBMI160Format.h" -#import "MBLGyroBMI160PackedDataReadyEvent.h" - -typedef NS_ENUM(uint8_t, MBLGyroPackedDataMode) { - MBLGyroPackedDataModeOff = 0, - MBLGyroPackedDataModeNormal = 1, - MBLGyroPackedDataModePacked = 2 -}; - -@interface MBLGyroBMI160DataReadyEvent () -@property (nonatomic) MBLGyroPackedDataMode packerMode; -@property (nonatomic) MBLGyroBMI160PackedDataReadyEvent *packedData; -@end - -@implementation MBLGyroBMI160DataReadyEvent - -- (instancetype)initWithGyro:(MBLGyroBMI160 *)gyro -{ - self = [super initWithModule:gyro registerId:0x5 format:[[MBLGyroBMI160Format alloc] initWithGyro:gyro packed:NO]]; - if (self) { - self.dataInterruptEn = [[MBLRegister alloc] initWithModule:gyro registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - if (gyro.moduleInfo.moduleRevision >= 1) { - self.packedData = [[MBLGyroBMI160PackedDataReadyEvent alloc] initWithGyro:gyro]; - } - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - // Now enable interrupts - uint8_t data[] = { 0x1, 0x0 }; - return [self.dataInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:2]]; -} - -- (BFTask *)performAsyncDeactivation -{ - // Disable interrupts - uint8_t data[] = { 0x0, 0x1 }; - return [self.dataInterruptEn writeDataAsync:[NSData dataWithBytes:&data length:2]]; -} - -- (BFTask *)startNotificationsWithHandlerAsync:(MBLObjectHandler)handler -{ - if (!self.packedData) { - return [super startNotificationsWithHandlerAsync:handler]; - } - - MBLGyroBMI160 *gyro = (MBLGyroBMI160 *)self.module; - if (self.packerMode == MBLGyroPackedDataModeOff) { - // Turn on the packer for frequencies over 100 - self.packerMode = gyro.sampleFrequency >= 100 ? MBLGyroPackedDataModePacked : MBLGyroPackedDataModeNormal; - } - return self.packerMode == MBLGyroPackedDataModePacked ? [self.packedData startNotificationsWithHandlerAsync:handler] - : [super startNotificationsWithHandlerAsync:handler]; -} - -- (BFTask *)stopNotificationsAsync -{ - if (!self.packedData) { - return [super stopNotificationsAsync]; - } - - MBLGyroPackedDataMode prevMode = self.packerMode; - self.packerMode = MBLGyroPackedDataModeOff; - return prevMode == MBLGyroPackedDataModePacked ? [self.packedData stopNotificationsAsync] - : [super stopNotificationsAsync]; -} - -- (BOOL)isNotifying -{ - if (!self.packedData) { - return [super isNotifying]; - } - - return self.packerMode == MBLGyroPackedDataModePacked ? [self.packedData isNotifying] - : [super isNotifying]; -} - - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160Format.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160Format.h deleted file mode 100644 index 2ec939c..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160Format.h +++ /dev/null @@ -1,51 +0,0 @@ -/** - * MBLGyroBMI160Format.h - * MetaWear - * - * Created by Stephen Schiffli on 5/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFormat.h" -@class MBLGyroBMI160; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLGyroBMI160Format : MBLFormat - -@property (nonatomic, weak) MBLGyroBMI160 *gyro; -@property (nonatomic) BOOL packed; - -- (instancetype)initWithGyro:(MBLGyroBMI160 *)gyro packed:(BOOL)packed; -- (instancetype)initWithGyro:(MBLGyroBMI160 *)gyro axis:(uint8_t)axis; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160Format.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160Format.m deleted file mode 100644 index 39c09da..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160Format.m +++ /dev/null @@ -1,149 +0,0 @@ -/** - * MBLGyroBMI160Format.m - * MetaWear - * - * Created by Stephen Schiffli on 5/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLGyroBMI160Format.h" -#import "MBLGyroBMI160+Private.h" -#import "MBLGyroData+Private.h" -#import "MBLNumericData+Private.h" - -@implementation MBLGyroBMI160Format - -- (instancetype)initWithGyro:(MBLGyroBMI160 *)gyro packed:(BOOL)packed -{ - self = [super initArrayWithLength:packed ? 18 : 6 elements:3]; - if (self) { - self.gyro = gyro; - self.packed = packed; - } - return self; -} - -- (instancetype)initWithGyro:(MBLGyroBMI160 *)gyro axis:(uint8_t)axis; -{ - MBLGyroAxis typedAxis = axis; - switch (typedAxis) { - case MBLGyroAxisX: - self = [super initNumberWithLength:2 isSigned:YES offset:0]; - break; - case MBLGyroAxisY: - self = [super initNumberWithLength:2 isSigned:YES offset:2]; - break; - case MBLGyroAxisZ: - self = [super initNumberWithLength:2 isSigned:YES offset:4]; - break; - } - if (self) { - self.gyro = gyro; - } - return self; -} - -- (id)copyWithZone:(NSZone *)zone -{ - MBLGyroBMI160Format *newFormat = [super copyWithZone:zone]; - newFormat.gyro = self.gyro; - return newFormat; -} - -- (id)singleEntryFromData:(NSData *)data date:(NSDate *)date -{ - double x = DBL_MIN, y = DBL_MIN, z = DBL_MIN; - const uint8_t *bytes = data.bytes; - double scale; - switch (self.gyro.fullScaleRange) { - case MBLGyroBMI160Range2000: - scale = 2000.0 / 32768.0; - break; - case MBLGyroBMI160Range1000: - scale = 1000.0 / 32768.0; - break; - case MBLGyroBMI160Range500: - scale = 500.0 / 32768.0; - break; - case MBLGyroBMI160Range250: - scale = 250.0 / 32768.0; - break; - case MBLGyroBMI160Range125: - scale = 125.0 / 32768.0; - break; - } - x = (double)(*(int16_t *)&bytes[0]) * scale; - if (self.type == MBLFormatTypeArray) { - y = (double)(*(int16_t *)&bytes[2]) * scale; - z = (double)(*(int16_t *)&bytes[4]) * scale; - } - - if (self.type == MBLFormatTypeArray) { - return [[MBLGyroData alloc] initWithX:x y:y z:z timestamp:date]; - } else { - return [[MBLNumericData alloc] initWithNumber:[NSNumber numberWithDouble:x] timestamp:date]; - } -} - -- (id)entryFromData:(NSData *)data date:(NSDate *)date -{ - if (self.packed) { - return @[[self singleEntryFromData:[data subdataWithRange:NSMakeRange(0, 6)] date:date], - [self singleEntryFromData:[data subdataWithRange:NSMakeRange(6, 6)] date:date], - [self singleEntryFromData:[data subdataWithRange:NSMakeRange(12, 6)] date:date]]; - } else { - return [self singleEntryFromData:data date:date]; - } -} - -- (NSNumber *)numberFromDouble:(double)value -{ - double scale; - switch (self.gyro.fullScaleRange) { - case MBLGyroBMI160Range2000: - scale = 2000.0 / 32768.0; - break; - case MBLGyroBMI160Range1000: - scale = 1000.0 / 32768.0; - break; - case MBLGyroBMI160Range500: - scale = 500.0 / 32768.0; - break; - case MBLGyroBMI160Range250: - scale = 250.0 / 32768.0; - break; - case MBLGyroBMI160Range125: - scale = 125.0 / 32768.0; - break; - } - return [NSNumber numberWithInt:value / scale]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160PackedDataReadyEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160PackedDataReadyEvent.h deleted file mode 100644 index dc0a49a..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160PackedDataReadyEvent.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLGyroBMI160PackedDataReadyEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 5/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLGyroBMI160; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLGyroBMI160PackedDataReadyEvent : MBLEvent - -- (instancetype)initWithGyro:(MBLGyroBMI160 *)gyro; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160PackedDataReadyEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160PackedDataReadyEvent.m deleted file mode 100644 index 3d6ed47..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/GyroBMI160/MBLGyroBMI160PackedDataReadyEvent.m +++ /dev/null @@ -1,79 +0,0 @@ -/** - * MBLGyroBMI160DataReadyEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 5/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - - -#import "MBLGyroBMI160PackedDataReadyEvent.h" -#import "MBLGyro+Private.h" -#import "MBLGyroBMI160+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLRegister+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLGyroBMI160Format.h" - -@implementation MBLGyroBMI160PackedDataReadyEvent - -- (instancetype)initWithGyro:(MBLGyroBMI160 *)gyro; -{ - self = [super initWithModule:gyro registerId:0x7 format:[[MBLGyroBMI160Format alloc] initWithGyro:gyro packed:YES]]; - if (self) { - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - MBLGyroBMI160 *gyro = (MBLGyroBMI160 *)self.module; - return [gyro.dataReadyEvent initializeAsync]; -} - -- (BFTask *)performAsyncDeinitialization -{ - MBLGyroBMI160 *gyro = (MBLGyroBMI160 *)self.module; - return [gyro.dataReadyEvent deinitializeAsync]; -} - -- (BFTask *)performAsyncActivation -{ - MBLGyroBMI160 *gyro = (MBLGyroBMI160 *)self.module; - return [gyro.dataReadyEvent activateAsync]; -} - -- (BFTask *)performAsyncDeactivation -{ - MBLGyroBMI160 *gyro = (MBLGyroBMI160 *)self.module; - return [gyro.dataReadyEvent deactivateAsync]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/MBLGyro+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/MBLGyro+Private.h deleted file mode 100644 index 6055575..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/MBLGyro+Private.h +++ /dev/null @@ -1,51 +0,0 @@ -/** - * MBLGyro+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 5/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLGyro.h" -#import "MBLRegister+Private.h" -#import "MBLModuleInfo.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLGyro (Private) -@property (nonatomic) MBLEvent *dataReadyEvent; -@property (nonatomic) MBLEvent *xAxisReadyEvent; -@property (nonatomic) MBLEvent *yAxisReadyEvent; -@property (nonatomic) MBLEvent *zAxisReadyEvent; - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/MBLGyroData+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/MBLGyroData+Private.h deleted file mode 100644 index 130aeee..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Gyro/MBLGyroData+Private.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * MBLGyroData+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 5/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLGyroData.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLGyroData (Private) - -- (instancetype)initWithX:(double)x y:(double)y z:(double)z timestamp:(NSDate *)timestamp; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Hygrometer/HygrometerBME280/MBLHygrometerBME280PeriodicHumidityEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Hygrometer/HygrometerBME280/MBLHygrometerBME280PeriodicHumidityEvent.h deleted file mode 100644 index eab0769..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Hygrometer/HygrometerBME280/MBLHygrometerBME280PeriodicHumidityEvent.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLHygrometerBME280PeriodicHumidityEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLHygrometer; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLHygrometerBME280PeriodicHumidityEvent : MBLEvent - -- (instancetype)initWithHygrometer:(MBLHygrometer *)hygrometer; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Hygrometer/HygrometerBME280/MBLHygrometerBME280PeriodicHumidityEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Hygrometer/HygrometerBME280/MBLHygrometerBME280PeriodicHumidityEvent.m deleted file mode 100644 index aeaa663..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Hygrometer/HygrometerBME280/MBLHygrometerBME280PeriodicHumidityEvent.m +++ /dev/null @@ -1,71 +0,0 @@ -/** - * MBLHygrometerBME280PeriodicHumidityEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLHygrometerBME280PeriodicHumidityEvent.h" -#import "MBLHygrometer.h" -#import "MBLNumericFormatter.h" - -@interface MBLHygrometerBME280PeriodicHumidityEvent () -@property (nonatomic) MBLRegister *cyclicEnable; -@end - -@implementation MBLHygrometerBME280PeriodicHumidityEvent - -- (instancetype)initWithHygrometer:(MBLHygrometer *)hygrometer -{ - self = [super initWithModule:hygrometer registerId:0x01 format:[[MBLNumericFormatter alloc] initDoubleWithLength:4 isSigned:NO scale:1.0 / 1024.0]]; - if (self) { - self.cyclicEnable = [[MBLRegister alloc] initWithModule:hygrometer registerId:0x03 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - // Enable cyclic mode - uint8_t data[] = { 1 }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.cyclicEnable writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]; -} - -- (BFTask *)performAsyncDeactivation -{ - // Disable cyclic mode - uint8_t data[] = { 0 }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.cyclicEnable writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Hygrometer/MBLHygrometer+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Hygrometer/MBLHygrometer+Private.h deleted file mode 100644 index c64477c..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Hygrometer/MBLHygrometer+Private.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * MBLHygrometer+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLHygrometer.h" -#import "MBLRegister+Private.h" -#import "MBLModuleInfo.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLHygrometer (Private) - -@property (nonatomic, nullable) MBLData *humidity; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/LED/MBLLED+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/LED/MBLLED+Private.h deleted file mode 100644 index b13bae9..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/LED/MBLLED+Private.h +++ /dev/null @@ -1,57 +0,0 @@ -/** - * MBLGPIO+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 10/30/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLLED.h" - -NS_ASSUME_NONNULL_BEGIN - -typedef struct __attribute__((packed)) { - uint8_t channel; - uint8_t mode; - uint8_t on_intensity; - uint8_t off_intensity; - uint16_t time_rise; - uint16_t time_on; - uint16_t time_fall; - uint16_t time_period; - uint16_t time_offset; - uint8_t repeat_count; -} mw_led_flash_params_t; - -@interface MBLLED (Private) - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLogging.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLogging.h deleted file mode 100644 index b06e9c2..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLogging.h +++ /dev/null @@ -1,138 +0,0 @@ -/** - * MBLLogging.h - * MetaWear - * - * Created by Stephen Schiffli on 9/17/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLModule+Private.h" -#import "MBLConstants.h" -#import - -NS_ASSUME_NONNULL_BEGIN - -typedef struct __attribute__((packed)) { - uint8_t logTriggers; - uint32_t logCap; -} mw_log_module_info; - -typedef struct __attribute__((packed)) { - uint8_t triggerId:5; - uint8_t resetId:3; - uint32_t timestamp; - uint8_t data[4]; -} mw_log_entry_t; - -static const double LOGGING_SEC_PER_TIMESTAMP = 0.00146484375; -static NSString * const kMBLStartingDatesKey = @"com.mbientlab.metawear.logStartingDates"; -static const uint32_t LOGGING_ROLLOVER_COUNT = 0x20000000; - -@class MBLEvent; -@interface MBLLogging : MBLModule { -@public - // Special hook points for testing - BOOL noAckMode; - BOOL printOnlyMode; - - // Real ivars - NSObject *handlerMutex; - BOOL isDownloading; - NSMutableArray *progressHandlers; - NSMutableArray *downloadHandlers; - dispatch_queue_t logProcessingQueue; - dispatch_group_t logProcessingGroup; - BOOL newPageStarted; - NSMutableArray *rawLogEntiresToReject; - NSManagedObjectContext *managedObjectContext; - NSPersistentStoreCoordinator *persistentStoreCoordinator; -} -@property (nonatomic) NSMutableArray *triggers; -@property (nonatomic, nullable) NSNumber *currentResetId; -@property (nonatomic) uint32_t lastTimestamp; -@property (nonatomic) uint8_t lastResetId; - -@property (nonatomic) MBLRegister *addLogTrigger; -@property (nonatomic) MBLRegister *removeLogTrigger; -@property (nonatomic) MBLRegister *currentTime; -@property (nonatomic) MBLRegister *logLength; -@property (nonatomic) MBLRegister *logReadout; -@property (nonatomic) MBLRegister *logReadoutNotify; -@property (nonatomic) MBLRegister *logReadoutProgress; -@property (nonatomic) MBLRegister *dropEntries; -@property (nonatomic) MBLRegister *removeAllTriggers; -@property (nonatomic) MBLRegister *circularBufferMode; -@property (nonatomic) MBLRegister *recycledPageCount; -@property (nonatomic, nullable) MBLRegister *readoutPageComplete; -@property (nonatomic, nullable) MBLRegister *readoutPageConfirm; - -- (BFTask *)startLoggingAsyncEvent:(MBLEvent *)event; -- (BFTask *)stopLoggingEvent:(MBLEvent *)event; -/** - Fetch entire contents of log from MetaWear. Executes the progressHandler - periodically with the progress (0.0 - 1.0), progressHandler will get called - with 1.0 before handler is called. - @param progressHandler Periodically called while log download is in progress - */ -- (BFTask *)downloadLogEvents:(MBLEvent *)event - progressHandler:(MBLLogProgressHandler)progressHandler; - - -- (BFTask *)stopAndClearLog; -- (BFTask *)dropAllEntries; - -- (BFTask *)startReadout:(uint32_t)totalEntries; - -- (BFTask *)checkForResetAsync; - - -- (NSDate *)guessUidStartingDate:(uint8_t)resetId; -- (void)deleteAllRejectObjects; - -- (void)processRawEntry:(const mw_log_entry_t *)rawEntry; - -- (void)performRawReadOutWithHandler:(MBLErrorHandler)handler - progressHandler:(MBLLogProgressHandler)progressHandler; - -@end - -@interface MBLRawLogEntry : NSManagedObject -@property (nonatomic) NSDate *timestamp; -@property (nonatomic) int16_t resetId; -@property (nonatomic) int16_t triggerId; -@property (nonatomic) NSData *data; -@end - -@interface MBLRejectEntry : NSManagedObject -@property (nonatomic) NSDate *timestamp; -@property (nonatomic) NSData *data; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLogging.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLogging.m deleted file mode 100644 index d49198a..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLogging.m +++ /dev/null @@ -1,842 +0,0 @@ -/** - * MBLLogging.m - * MetaWear - * - * Created by Stephen Schiffli on 9/17/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLLogging.h" -#import "MBLLoggingV0.h" -#import "MBLLoggingV1.h" -#import "MBLLoggingV2.h" -#import "MBLEvent.h" -#import "MBLDataSample+Private.h" -#import "MBLRegister+Private.h" -#import "MBLEvent+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLNumericData.h" -#import "MBLConstants+Private.h" -#import "MBLMetaWearManager+Private.h" -#import -#import -#import "BFTask+Private.h" -#import "MBLLogger.h" - - -typedef struct __attribute__((packed)) { - uint8_t logTriggers; - uint16_t logCap; -} mw_log_module_info_old; - -typedef struct __attribute__((packed)) { - uint32_t persentTime; - uint8_t resetId; -} mw_log_current_time; - -typedef struct __attribute__((packed)) { - uint8_t source_modid; - uint8_t source_regid; - uint8_t source_index; - uint8_t source_offset:5; - uint8_t source_datalen:2; - uint8_t valid:1; -} mw_log_trigger_t; - - -@implementation MBLRawLogEntry -@dynamic timestamp; -@dynamic resetId; -@dynamic triggerId; -@dynamic data; -@end - -@implementation MBLRejectEntry -@dynamic timestamp; -@dynamic data; -@end - - -@implementation MBLLogging - -+ (instancetype)objectWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - if (moduleInfo.moduleRevision == 2) { - return [[MBLLoggingV2 alloc] initWithDevice:device moduleInfo:moduleInfo]; - } else if (moduleInfo.moduleRevision == 1) { - return [[MBLLoggingV1 alloc] initWithDevice:device moduleInfo:moduleInfo]; - } else { - return [[MBLLoggingV0 alloc] initWithDevice:device moduleInfo:moduleInfo]; - } -} - -- (void)sharedInit -{ - handlerMutex = [[NSObject alloc] init]; - progressHandlers = [NSMutableArray array]; - downloadHandlers = [NSMutableArray array]; - logProcessingQueue = dispatch_queue_create("com.mbientlab.metawear.logProcessingQueue", DISPATCH_QUEUE_CONCURRENT); - logProcessingGroup = dispatch_group_create(); - - NSString *filename = [[MBLMetaWearManager sharedManager] logFilename:[self.device.identifier.UUIDString stringByAppendingString:@"RawEntries.sqlite3"]]; - NSURL *storeURL = [NSURL fileURLWithPath:filename isDirectory:NO]; - NSError *error; - persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]]; - - // Allow inferred migration from the original version of the application. - NSDictionary *options = @{ NSMigratePersistentStoresAutomaticallyOption : @YES, - NSInferMappingModelAutomaticallyOption : @YES -#if TARGET_OS_IOS || TARGET_OS_TV - , NSPersistentStoreFileProtectionKey : NSFileProtectionCompleteUntilFirstUserAuthentication }; -#else - }; -#endif - - if (![persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:options error:&error]) { - /* - Replace this implementation with code to handle the error appropriately. - - abort() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development. - - Typical reasons for an error here include: - * The persistent store is not accessible; - * The schema for the persistent store is incompatible with current managed object model. - Check the error message to determine what the actual problem was. - - - If the persistent store is not accessible, there is typically something wrong with the file path. Often, a file URL is pointing into the application's resources directory instead of a writeable directory. - - If you encounter schema incompatibility errors during development, you can reduce their frequency by: - * Simply deleting the existing store: - [[NSFileManager defaultManager] removeItemAtURL:storeURL error:nil] - - * Performing automatic lightweight migration by passing the following dictionary as the options parameter: - @{NSMigratePersistentStoresAutomaticallyOption:@YES, NSInferMappingModelAutomaticallyOption:@YES} - - Lightweight migration will only work for a limited set of schema changes; consult "Core Data Model Versioning and Data Migration Programming Guide" for details. - - */ - NSLog(@"Unresolved error %@, %@", error, [error userInfo]); - abort(); - } - - managedObjectContext = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSPrivateQueueConcurrencyType]; - [managedObjectContext setPersistentStoreCoordinator:persistentStoreCoordinator]; -} - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - [self sharedInit]; - - uint8_t triggerCount = 8; // This was the old default - if (moduleInfo.moduleData.length) { - triggerCount = *(uint8_t *)moduleInfo.moduleData.bytes; - //if (moduleInfo.moduleRevision == 1) { - // mw_log_module_info *info = (mw_log_module_info *)moduleInfo.moduleData.bytes; - // MBLLog(MBLLogLevelDebug, @"%d", info->logCap); - //} else { - // mw_log_module_info_old *info = (mw_log_module_info_old *)moduleInfo.moduleData.bytes; - // MBLLog(MBLLogLevelDebug, @"%d", info->logCap); - //} - } - - self.triggers = [NSMutableArray arrayWithCapacity:triggerCount]; - for (int i = 0; i < triggerCount; i++) { - [self.triggers addObject:[NSNull null]]; - } - self.lastTimestamp = 0; - self.lastResetId = 0xFF; - - self.globalEnable = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.addLogTrigger = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:4]]; - self.removeLogTrigger = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[MBLFormat writeOnly]]; - self.currentTime = [[MBLRegister alloc] initWithModule:self registerId:0x4 format:[[MBLFormat alloc] initEncodedDataWithLength:5]]; - self.logReadoutNotify = [[MBLRegister alloc] initWithModule:self registerId:0x7 format:[[MBLFormat alloc] initEncodedDataWithLength:18]]; - self.dropEntries = [[MBLRegister alloc] initWithModule:self registerId:0x9 format:[MBLFormat writeOnly]]; - self.removeAllTriggers = [[MBLRegister alloc] initWithModule:self registerId:0xA format:[MBLFormat writeOnly]]; - self.circularBufferMode = [[MBLRegister alloc] initWithModule:self registerId:0xB format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.recycledPageCount = [[MBLRegister alloc] initWithModule:self registerId:0xC format:[[MBLNumericFormatter alloc] initIntWithLength:2 isSigned:NO]]; - - self.removeAllTriggers.needsResponse = YES; // Give some time for entries to be dropped before continuing - self.addLogTrigger.writeResponds = YES; - } - return self; -} - -- (id)awakeAfterFastCoding -{ - [self sharedInit]; - return self; -} - -- (BFTask *)startLoggingAsyncEvent:(MBLEvent *)event -{ - return [[[self initializeAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - assert(!event.loggingIds.count); - - BFTask *head = [BFTask taskWithResult:nil]; - for (int length = event.format.length, offset = event.format.offset; length > 0; length -= 4, offset += 4) { - mw_log_trigger_t params = {0}; - params.source_modid = event.module.moduleInfo.moduleId; - params.source_regid = event.registerId; - params.source_index = event.index; - params.source_offset = offset; - if (length > 4) { - params.source_datalen = 3; - } else { - params.source_datalen = length - 1; - } - - NSData *paramData = [NSData dataWithBytes:¶ms length:sizeof(mw_log_trigger_t)]; - head = [[head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.addLogTrigger writeDataAsync:paramData]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - MBLDataSample *obj = task.result; - uint8_t logId = *(uint8_t *)obj.data.bytes; - [event.loggingIds addObject:[NSNumber numberWithChar:logId]]; - self.triggers[logId] = paramData; - return nil; - }]; - } - return head; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self activateAsync]; - }]; -} - -- (BFTask *)stopLoggingEvent:(MBLEvent *)event -{ - return [[[self deactivateAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - BFTask *head = [BFTask taskWithResult:nil]; - for (NSNumber *curId in event.loggingIds) { - head = [head continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - self.triggers[curId.charValue] = [NSNull null]; - return [self.removeLogTrigger writeByteAsync:curId.charValue]; - }]; - } - return head; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self deinitializeAsync]; - }]; -} - -- (BFTask *)downloadLogEvents:(MBLEvent *)event - progressHandler:(MBLLogProgressHandler)progressHandler -{ - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - [self performRawReadOutWithHandler:^(NSError *error) { - if (error) { - [source trySetError:error]; - dispatch_group_leave(logProcessingGroup); - return; - } - - dispatch_async([MBLConstants metaWearQueue], ^{ - // TODO: Figure out how to track this better - if (!event.loggingIds.count) { - [source trySetResult:@[]]; - dispatch_group_leave(logProcessingGroup); - return; - } - - NSArray *loggingIds = [event.loggingIds copy]; - // Grab the raw entries based on the logging id of this event - [self entriesForTriggerId:[loggingIds[0] intValue] handler:^(NSArray * _Nullable rawEntries, NSError * _Nullable error) { - if (error) { - [source trySetError:error]; - dispatch_group_leave(logProcessingGroup); - return; - } - // Initialize the final log, this will contain all the properly formated data objects - NSMutableArray *log = [NSMutableArray arrayWithCapacity:rawEntries.count]; - if (loggingIds.count == 1) { - // Fast path if we only need the one entry - for (MBLRawLogEntry *rawEntry in rawEntries) { - NSData *data = [rawEntry.data subdataWithRange:NSMakeRange(0, event.format.length)]; - [log addObject:[event.format entryFromData:data date:rawEntry.timestamp]]; - [self deleteObject:rawEntry]; - } - - [source trySetResult:log]; - dispatch_group_leave(logProcessingGroup); - } else if (loggingIds.count > 1) { - // Longer path to merge different logging id's into a single object - - // The overal idea here is that we get array of all the raw entries - // then work backwards merging the data together. We do backwards - // because the timestamps tend to line up better than we, althought - // we could do an even more advanced timestamp matching... - - // Get an array or array to hold all the reverse enumerators - NSMutableArray *allRawEntries = [NSMutableArray array]; - [allRawEntries addObject:rawEntries.reverseObjectEnumerator]; - - NSArray *additionalLoggingIds = [loggingIds subarrayWithRange:NSMakeRange(1, loggingIds.count - 1)]; - for (NSNumber *uid in additionalLoggingIds) { - // Fetch the arrays for all the other id's - [self entriesForTriggerId:uid.intValue handler:^(NSArray * _Nullable rawEntries, NSError * _Nullable error) { - if (error) { - [source trySetError:error]; - dispatch_group_leave(logProcessingGroup); - return; - } - - [allRawEntries addObject:rawEntries.reverseObjectEnumerator]; - if (uid == [additionalLoggingIds lastObject]) { - // Now we have all arrays so perform the merge - BOOL moreEntries = YES; - while (moreEntries) { - // Loop through and pull out entries until the first array empties - NSMutableData *completeData = [NSMutableData data]; - NSDate *timestamp = nil; - for (NSEnumerator *enumerator in allRawEntries) { - MBLRawLogEntry *cur = [enumerator nextObject]; - if (cur) { - if (!timestamp) { - timestamp = cur.timestamp; - } - NSData *additionalData = [cur.data subdataWithRange:NSMakeRange(0, MIN(event.format.length - completeData.length, 4))]; - [completeData appendData:additionalData]; - [self deleteObject:cur]; - } else { - moreEntries = NO; - break; - } - } - if (moreEntries) { - assert(timestamp); - [log insertObject:[event.format entryFromData:completeData date:timestamp] atIndex:0]; - } - } - // Even though we didn't use them, we need everything marked as read - moreEntries = YES; - while (moreEntries) { - moreEntries = NO; - for (NSEnumerator *enumerator in allRawEntries) { - MBLRawLogEntry *cur = [enumerator nextObject]; - if (cur) { - [self deleteObject:cur]; - moreEntries = YES; - } - } - } - - [source trySetResult:log]; - dispatch_group_leave(logProcessingGroup); - } - }]; - } - } - }]; - }); - } progressHandler:progressHandler]; - return source.task; -} - -- (BFTask *)stopAndClearLog -{ - return [[[self.removeAllTriggers writeDataAsync:nil] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self dropAllEntries]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - [self deleteAllObjects]; - [self deleteAllRejectObjects]; - // Since all old log entires are gone and we are about to reset we should - // purge out all the old log starting dates - for (int i = 0; i < self.device.nonVolatileState.logStartingDates.count; i++) { - self.device.nonVolatileState.logStartingDates[i] = [NSNull null]; - } - return nil; - }]; -} - -- (BFTask *)dropAllEntries -{ - [NSException raise:@"Error" format:@"Please instantiate derived class, this is implemented there"]; - return nil; -} - -- (BFTask *)startReadout:(uint32_t)totalEntries -{ - [NSException raise:@"Error" format:@"Please instantiate derived class, this is implemented there"]; - return nil; -} - -- (void)performRawReadOutWithHandler:(MBLErrorHandler)handler - progressHandler:(MBLLogProgressHandler)progressHandler -{ - @synchronized(handlerMutex) { - if (handler) { - [downloadHandlers addObject:handler]; - } - if (progressHandler) { - MBLLogProgressHandler handlerOnDispatch = ^(uint32_t totalEntries, uint32_t remainingEntries) { - [[MBLMetaWearManager dispatchQueue] addOperationWithBlock:^{ - progressHandler(totalEntries, remainingEntries); - }]; - }; - [progressHandlers addObject:handlerOnDispatch]; - } - if (!isDownloading) { - isDownloading = YES; - [self rawReadOut]; - } - } -} - -- (void)rawReadOut -{ - [[self.logLength readAsync] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - MBLNumericData *data = task.result; - NSError *error = task.error; - - if (error) { - [self rawReadOutFinishedWithError:error]; - return nil; - } - - uint32_t totalEntries = data.value.unsignedIntValue; - // If nothing to read then we are done here! - if (totalEntries == 0) { - [self rawReadOutFinishedWithError:nil]; - return nil; - } - [[[[[self.logReadoutProgress startNotificationsWithExecutorAsync:[BFExecutor metaWearExecutor] withHandler:^(MBLNumericData *data, NSError *error) { - if (error) { - [self rawReadOutFinishedWithError:error]; - return; - } - - uint32_t remainingEntries = data.value.unsignedIntValue; - @synchronized(handlerMutex) { - for (MBLLogProgressHandler progressHandler in progressHandlers) { - progressHandler(totalEntries, remainingEntries); - } - } - if (remainingEntries == 0) { - [[[[self.logReadoutProgress stopNotificationsAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.logReadoutNotify stopNotificationsAsync]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.readoutPageComplete stopNotificationsAsync]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - [self deleteAllRejectObjects]; // TODO: BFTask this - [self rawReadOutFinishedWithError:task.error]; - return task; - }]; - } - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.logReadoutNotify startNotificationsWithExecutorAsync:[BFExecutor metaWearExecutor] withHandler:^(MBLDataSample *obj, NSError *error) { - if (error) { - return; - } - if (obj.data.length >= 9) { - const uint8_t *bytes = (const uint8_t *)obj.data.bytes; - [self processRawEntry:(const mw_log_entry_t *)bytes]; - if (obj.data.length == 18) { - [self processRawEntry:(const mw_log_entry_t *)(bytes + 9)]; - } - } - }]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.readoutPageComplete startNotificationsWithExecutorAsync:[BFExecutor metaWearExecutor] withHandler:^(id _Nullable obj, NSError * _Nullable error) { - if (error) { - return; - } - newPageStarted = YES; - [self saveLogAsync:YES]; - if (noAckMode) { // GNARLY TEST CODE!!! - [self.logReadoutProgress stopNotificationsAsync]; - [self.logReadoutNotify stopNotificationsAsync]; - [self.readoutPageComplete stopNotificationsAsync]; - [self rawReadOutFinishedWithError:nil]; - return; - } - [self.readoutPageConfirm writeDataAsync:nil]; - }]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - if (self.moduleInfo.moduleRevision >= 2) { - rawLogEntiresToReject = [self getAllRejectEntries]; - newPageStarted = YES; - } else { - self.lastTimestamp = 0; - } - - return [self startReadout:totalEntries]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - // Since log downloads take a while, let's save state here - return [self.device synchronizeAsync]; - }]; - return nil; - }]; -} - -- (void)rawReadOutFinishedWithError:(NSError *)error -{ - @synchronized(handlerMutex) { - if (error) { - [self dropEntriesSinceSave]; - self.lastTimestamp = 0; - } - [progressHandlers removeAllObjects]; - for (MBLErrorHandler handler in downloadHandlers) { - dispatch_group_enter(logProcessingGroup); - dispatch_async(logProcessingQueue, ^{ - handler(error); - }); - } - [downloadHandlers removeAllObjects]; - - dispatch_group_notify(logProcessingGroup, logProcessingQueue, ^{ - @synchronized(handlerMutex) { - [self saveLogAsync:NO]; - // Now that processing is finished, if someone else is waiting for - // entries, kick off another download, otherwise put her to sleep. - if (downloadHandlers.count || progressHandlers.count) { - [self rawReadOut]; - } else { - isDownloading = NO; - } - } - }); - } -} - -- (BFTask *)isStateValid -{ - return [BFTask taskFromMetaWearWithBlock:^id _Nonnull{ - NSMutableArray *tasks = [NSMutableArray array]; - [tasks addObject:[BFTask taskWithResult:@YES]]; // Base case - for (int i = 0; i < self.triggers.count; i++) { - if (self.triggers[i] != [NSNull null]) { - [tasks addObject:[[self.addLogTrigger readForcedIndexAsync:i] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - MBLDataSample *result = task.result; - NSData *actualData = result.data; - NSData *expectedData = self.triggers[i]; - if (actualData.length >= expectedData.length) { - if ([expectedData isEqualToData:[actualData subdataWithRange:NSMakeRange(0, expectedData.length)]]) { - return [BFTask taskWithResult:@YES]; - } - } - MBLLog(MBLLogLevelInfo, @"Logging: Entity[%d] expected != actual (%@ != %@)", i, expectedData, actualData); - return [BFTask taskWithResult:@NO]; - }]]; - } - } - return [BFTask taskForCompletionOfAllTasksWithResults:tasks]; - }]; -} - -- (BFTask *)checkForResetAsync; -{ - return [[self.currentTime readAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - MBLDataSample *timeData = task.result; - const mw_log_current_time *info = (const mw_log_current_time *)timeData.data.bytes; - BOOL didReset = NO; - BOOL firstLaunch = NO; - if (self.currentResetId) { - if (self.currentResetId.unsignedCharValue != info->resetId) { - didReset = YES; - } - } else { - firstLaunch = YES; - } - // If we did reset, then guess any missed id starting times - if (didReset) { - uint8_t prevUid = self.currentResetId.unsignedCharValue; - // Extra fun check to make sure any missed ID's are guessed to our best effort - for (uint8_t guessId = (prevUid + 1) & LOGGING_RESET_UIDS_MASK; guessId != info->resetId; guessId = (guessId + 1) & LOGGING_RESET_UIDS_MASK) { - [self guessUidStartingDate:guessId]; - } - } - // Update the startingDates array if needed - if (firstLaunch || didReset) { - self.currentResetId = [NSNumber numberWithUnsignedChar:info->resetId]; - uint32_t currentTs = info->persentTime; - uint8_t resetId = info->resetId; - NSTimeInterval intervalSinceZero = currentTs * LOGGING_SEC_PER_TIMESTAMP * -1; - // Safe because we are on the MetaWear Queue - self.device.nonVolatileState.logStartingDates[resetId] = [[NSDate date] dateByAddingTimeInterval:intervalSinceZero]; - } - MBLLog(MBLLogLevelInfo, @"%@Reset-Uid: %d", didReset ? @"[RESET OCCURED] " : @"", info->resetId); - return [NSNumber numberWithBool:didReset]; - }]; -} - -#pragma mark - Log Recovery - -- (void)processRawEntry:(const mw_log_entry_t *)rawEntry -{ - assert([MBLConstants isMetaWearQueue]); - if (printOnlyMode) { - MBLLog(MBLLogLevelInfo, @"[%d] %d:%d - %@", rawEntry->triggerId, rawEntry->resetId, rawEntry->timestamp, [NSData dataWithBytes:rawEntry->data length:4]); - return; - } - - // No need to reject so process that entry! - uint32_t entryTs = rawEntry->timestamp; - uint8_t resetId = rawEntry->resetId; - uint8_t triggerId = rawEntry->triggerId; - NSData *data = [NSData dataWithBytes:rawEntry->data length:4]; - NSDate __block *date = nil; - date = self.device.nonVolatileState.logStartingDates[resetId]; - if ([[NSNull null] isEqual:date]) { - MBLLog(MBLLogLevelError, @"Timestamp error, please call setConfiguration:nil on the MBLMetaWear object to reset log"); - date = [NSDate dateWithTimeIntervalSince1970:0]; - self.device.nonVolatileState.logStartingDates[resetId] = date; - } - - // If we roll over, then advance the starting date - if (entryTs < self.lastTimestamp) { - MBLLog(MBLLogLevelInfo, @"***Timestamp Rolling Over***"); - date = [date dateByAddingTimeInterval:LOGGING_SEC_PER_TIMESTAMP * LOGGING_ROLLOVER_COUNT]; - self.device.nonVolatileState.logStartingDates[resetId] = date; - } - // Update our tracking variables - self.lastTimestamp = entryTs; - self.lastResetId = resetId; - - // Convert to real time - NSDate *timestamp = [date dateByAddingTimeInterval:entryTs * LOGGING_SEC_PER_TIMESTAMP]; - - // Now that it's processed, commit it to the database - [managedObjectContext performBlock:^{ - MBLRawLogEntry *entry = (MBLRawLogEntry *)[NSEntityDescription insertNewObjectForEntityForName:@"MBLRawLogEntry" inManagedObjectContext:managedObjectContext]; - entry.timestamp = timestamp; - entry.resetId = resetId; - entry.triggerId = triggerId; - entry.data = data; - }]; -} - -- (void)entriesForTriggerId:(uint8_t)triggerId handler:(MBLArrayErrorHandler)handler -{ - [managedObjectContext performBlock:^{ - NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"MBLRawLogEntry"]; - fetchRequest.predicate = [NSPredicate predicateWithFormat:@"triggerId == %d", triggerId]; - fetchRequest.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"timestamp" ascending:YES]]; - - NSError *error; - NSArray *results = [managedObjectContext executeFetchRequest:fetchRequest error:&error]; - if (error) { - MBLLog(MBLLogLevelError, @"Unable to execute fetch request.\n%@", error); - } - if (handler) { - handler(results, error); - } - }]; -} - -- (void)dropEntriesSinceSave -{ - [managedObjectContext performBlock:^{ - [managedObjectContext rollback]; - MBLLog(MBLLogLevelInfo, @"Rollback"); - }]; -} - -- (void)deleteAllRejectObjects -{ - [managedObjectContext performBlock:^{ - NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"MBLRejectEntry"]; - - NSError *error; - NSArray *results = [managedObjectContext executeFetchRequest:fetchRequest error:&error]; - if (error) { - MBLLog(MBLLogLevelError, @"Unable to execute fetch request.\n%@", error); - } else { - for (MBLRawLogEntry *entry in results) { - [managedObjectContext deleteObject:entry]; - } - MBLLog(MBLLogLevelInfo, @"Delete reject entires"); - } - }]; - // Make sure the save happens right after all these deletes - [self saveLogAsync:YES]; -} - -- (void)deleteAllObjects -{ - [managedObjectContext performBlock:^{ - NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"MBLRawLogEntry"]; - - NSError *error; - NSArray *results = [managedObjectContext executeFetchRequest:fetchRequest error:&error]; - if (error) { - MBLLog(MBLLogLevelError, @"Unable to execute fetch request.\n%@", error); - } else { - for (MBLRawLogEntry *entry in results) { - [managedObjectContext deleteObject:entry]; - } - MBLLog(MBLLogLevelInfo, @"Delete all objects"); - } - }]; - // Make sure the save happens right after all these deletes - [self saveLogAsync:YES]; -} - -- (void)deleteObject:(NSManagedObject *)object -{ - [managedObjectContext performBlock:^{ - [managedObjectContext deleteObject:object]; - }]; -} - -- (void)saveLogAsync:(BOOL)async -{ - if (async) { - [managedObjectContext performBlock:^{ - NSError *error; - [managedObjectContext save:&error]; - if (error) { - MBLLog(MBLLogLevelError, @"Unable to save.\n%@", error); - } - MBLLog(MBLLogLevelInfo, @"Save Log Async"); - }]; - } else { - [managedObjectContext performBlockAndWait:^{ - NSError *error; - [managedObjectContext save:&error]; - if (error) { - MBLLog(MBLLogLevelError, @"Unable to save.\n%@", error); - } - MBLLog(MBLLogLevelInfo, @"Save Log Sync"); - }]; - } -} - -- (NSDate *)guessUidStartingDate:(uint8_t)resetId -{ - MBLLog(MBLLogLevelWarning, @"Multiple unexpected resets, log timestamps are estimated"); - NSDate __block *date = nil; - [managedObjectContext performBlockAndWait:^{ - NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"MBLRawLogEntry"]; - fetchRequest.predicate = [NSPredicate predicateWithFormat:@"resetId == %d", (resetId - 1) & LOGGING_RESET_UIDS_MASK]; - fetchRequest.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"timestamp" ascending:NO]]; - fetchRequest.fetchLimit = 1; - fetchRequest.includesPropertyValues = NO; - - NSError *error; - NSArray *results = [managedObjectContext executeFetchRequest:fetchRequest error:&error]; - if (error) { - MBLLog(MBLLogLevelError, @"Unable to execute fetch request.\n%@", error); - } else { - MBLRawLogEntry *obj = [results firstObject]; - date = [obj.timestamp dateByAddingTimeInterval:LOGGING_SEC_PER_TIMESTAMP]; - } - }]; - return date; -} - -- (NSMutableArray *)getAllRejectEntries -{ - NSMutableArray __block *entries = nil; - [managedObjectContext performBlockAndWait:^{ - NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"MBLRejectEntry"]; - fetchRequest.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"timestamp" ascending:YES]]; - - NSError *error; - NSArray *results = [managedObjectContext executeFetchRequest:fetchRequest error:&error]; - if (error) { - MBLLog(MBLLogLevelError, @"Unable to execute fetch request.\n%@", error); - } else { - entries = [results mutableCopy]; - } - }]; - return entries.count ? entries : nil; -} - -#pragma mark - Core Data stack - -- (NSManagedObjectModel *)managedObjectModel -{ - static NSManagedObjectModel *_managedObjectModel = nil; - static dispatch_once_t onceToken; - dispatch_once(&onceToken, ^{ - _managedObjectModel = [[NSManagedObjectModel alloc] init]; - - // create the entity - NSEntityDescription *rawLogEntity = [[NSEntityDescription alloc] init]; - rawLogEntity.name = @"MBLRawLogEntry"; - [rawLogEntity setManagedObjectClassName:@"MBLRawLogEntry"]; - - // create the attributes - NSAttributeDescription *timestampAttribute = [[NSAttributeDescription alloc] init]; - timestampAttribute.name = @"timestamp"; - timestampAttribute.attributeType = NSDateAttributeType; - timestampAttribute.indexed = YES; - - NSAttributeDescription *resetIdAttribute = [[NSAttributeDescription alloc] init]; - resetIdAttribute.name = @"resetId"; - resetIdAttribute.attributeType = NSInteger16AttributeType; - resetIdAttribute.indexed = YES; - - NSAttributeDescription *logIdAttribute = [[NSAttributeDescription alloc] init]; - logIdAttribute.name = @"triggerId"; - logIdAttribute.attributeType = NSInteger16AttributeType; - logIdAttribute.indexed = YES; - - NSAttributeDescription *dataAttribute = [[NSAttributeDescription alloc] init]; - dataAttribute.name = @"data"; - dataAttribute.attributeType = NSBinaryDataAttributeType; - dataAttribute.indexed = NO; - - // add attributes to entity - rawLogEntity.properties = @[timestampAttribute, resetIdAttribute, logIdAttribute, dataAttribute]; - - - // create the entity - NSEntityDescription *rejectBufferEntity = [[NSEntityDescription alloc] init]; - rejectBufferEntity.name = @"MBLRejectEntry"; - [rejectBufferEntity setManagedObjectClassName:@"MBLRejectEntry"]; - - // create the attributes - NSAttributeDescription *rejectTimestampAttribute = [[NSAttributeDescription alloc] init]; - rejectTimestampAttribute.name = @"timestamp"; - rejectTimestampAttribute.attributeType = NSDateAttributeType; - rejectTimestampAttribute.indexed = YES; - - NSAttributeDescription *rejectDataAttribute = [[NSAttributeDescription alloc] init]; - rejectDataAttribute.name = @"data"; - rejectDataAttribute.attributeType = NSBinaryDataAttributeType; - rejectDataAttribute.indexed = NO; - - // add attributes to entity - rejectBufferEntity.properties = @[rejectTimestampAttribute, rejectDataAttribute]; - - - // add entity to model - _managedObjectModel.entities = @[rawLogEntity, rejectBufferEntity]; - }); - return _managedObjectModel; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV0.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV0.h deleted file mode 100644 index 960d64e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV0.h +++ /dev/null @@ -1,40 +0,0 @@ -/** - * MBLLoggingV0.h - * MetaWear - * - * Created by Stephen Schiffli on 8/24/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLLogging.h" - -@interface MBLLoggingV0 : MBLLogging - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV0.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV0.m deleted file mode 100644 index 5bebd2b..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV0.m +++ /dev/null @@ -1,76 +0,0 @@ -/** - * MBLLoggingV0.m - * MetaWear - * - * Created by Stephen Schiffli on 8/24/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLLoggingV0.h" -#import "MBLRegister+Private.h" -#import "MBLNumericFormatter.h" - -@implementation MBLLoggingV0 - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.logLength = [[MBLRegister alloc] initWithModule:self registerId:0x5 format:[[MBLNumericFormatter alloc] initIntWithLength:2 isSigned:NO]]; - self.logReadout = [[MBLRegister alloc] initWithModule:self registerId:0x6 format:[[MBLFormat alloc] initEncodedDataWithLength:4]]; - self.logReadoutProgress = [[MBLRegister alloc] initWithModule:self registerId:0x8 format:[[MBLNumericFormatter alloc] initIntWithLength:2 isSigned:NO]]; - } - return self; -} - -- (BFTask *)dropAllEntries -{ - uint16_t count = 0xFFFF; - return [self.dropEntries writeDataAsync:[NSData dataWithBytes:&count length:2]]; -} - -- (BFTask *)startReadout:(uint32_t)totalEntries -{ - NSMutableData *params = [NSMutableData dataWithBytes:&totalEntries length:2]; - uint16_t delta; - if (totalEntries > 2000) { - delta = totalEntries / 100; - } else if (totalEntries > 1000) { - delta = totalEntries / 10; - } else if (totalEntries > 100) { - delta = totalEntries / 4; - } else { - delta = UINT16_MAX; - } - [params appendBytes:&delta length:2]; - return [self.logReadout writeDataAsync:params]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV1.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV1.h deleted file mode 100644 index 95322d6..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV1.h +++ /dev/null @@ -1,40 +0,0 @@ -/** - * MBLLoggingV1.h - * MetaWear - * - * Created by Stephen Schiffli on 8/24/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLLogging.h" - -@interface MBLLoggingV1 : MBLLogging - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV1.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV1.m deleted file mode 100644 index 8c11fdf..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV1.m +++ /dev/null @@ -1,76 +0,0 @@ -/** - * MBLLoggingV1.m - * MetaWear - * - * Created by Stephen Schiffli on 8/24/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLLoggingV1.h" -#import "MBLRegister+Private.h" -#import "MBLNumericFormatter.h" - -@implementation MBLLoggingV1 - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.logLength = [[MBLRegister alloc] initWithModule:self registerId:0x5 format:[[MBLNumericFormatter alloc] initIntWithLength:4 isSigned:NO]]; - self.logReadout = [[MBLRegister alloc] initWithModule:self registerId:0x6 format:[[MBLFormat alloc] initEncodedDataWithLength:8]]; - self.logReadoutProgress = [[MBLRegister alloc] initWithModule:self registerId:0x8 format:[[MBLNumericFormatter alloc] initIntWithLength:4 isSigned:NO]]; - } - return self; -} - -- (BFTask *)dropAllEntries -{ - uint32_t count = 0xFFFFFFFF; - return [self.dropEntries writeDataAsync:[NSData dataWithBytes:&count length:4]]; -} - -- (BFTask *)startReadout:(uint32_t)totalEntries -{ - NSMutableData *params = [NSMutableData dataWithBytes:&totalEntries length:4]; - uint32_t delta; - if (totalEntries > 2000) { - delta = totalEntries / 100; - } else if (totalEntries > 1000) { - delta = totalEntries / 10; - } else if (totalEntries > 100) { - delta = totalEntries / 4; - } else { - delta = UINT32_MAX; - } - [params appendBytes:&delta length:4]; - return [self.logReadout writeDataAsync:params]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV2.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV2.h deleted file mode 100644 index d1bbb5f..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV2.h +++ /dev/null @@ -1,40 +0,0 @@ -/** - * MBLLoggingV2.h - * MetaWear - * - * Created by Stephen Schiffli on 11/16/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLLogging.h" - -@interface MBLLoggingV2 : MBLLogging - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV2.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV2.m deleted file mode 100644 index 41fe84f..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Logging/MBLLoggingV2.m +++ /dev/null @@ -1,196 +0,0 @@ -/** - * MBLLoggingV2.m - * MetaWear - * - * Created by Stephen Schiffli on 11/16/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLLoggingV2.h" -#import "MBLRegister+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLNumericData+Private.h" -#import "MBLConstants+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLLogger.h" - -@implementation MBLLoggingV2 - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.logLength = [[MBLRegister alloc] initWithModule:self registerId:0x5 format:[[MBLNumericFormatter alloc] initIntWithLength:4 isSigned:NO]]; - self.logReadout = [[MBLRegister alloc] initWithModule:self registerId:0x6 format:[[MBLFormat alloc] initEncodedDataWithLength:8]]; - self.logReadoutProgress = [[MBLRegister alloc] initWithModule:self registerId:0x8 format:[[MBLNumericFormatter alloc] initIntWithLength:4 isSigned:NO]]; - - self.readoutPageComplete = [[MBLRegister alloc] initWithModule:self registerId:0xD format:[[MBLFormat alloc] initEncodedDataWithLength:0]]; - self.readoutPageConfirm = [[MBLRegister alloc] initWithModule:self registerId:0xE format:[[MBLFormat alloc] initEncodedDataWithLength:0]]; - } - return self; -} - -- (BFTask *)dropAllEntries -{ - BFTaskCompletionSource *source = [BFTaskCompletionSource taskCompletionSource]; - [[self.logLength readAsync] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - if (task.error) { - [source trySetError:task.error]; - return nil; - } - MBLNumericData *data = task.result; - uint32_t totalEntries = data.value.unsignedIntValue; - // If nothing to read then we are done here! - if (totalEntries == 0) { - [source trySetResult:@YES]; - return nil; - } - // When droping entires, we get a readoutPageComplete notification - // when it completes, no need to ack the message - [[self.readoutPageComplete startNotificationsWithExecutorAsync:[BFExecutor metaWearExecutor] withHandler:^(id _Nullable obj, NSError * _Nullable error) { - if (error) { - [source trySetError:error]; - return; - } - [[self.readoutPageComplete stopNotificationsAsync] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - if (task.error) { - [source trySetError:task.error]; - } else { - [source trySetResult:@YES]; - } - return nil; - }]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - if (task.error) { - [source trySetError:task.error]; - } - return nil; - }]; - uint32_t count = 0xFFFFFFFF; - [[self.dropEntries writeDataAsync:[NSData dataWithBytes:&count length:4]] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - if (task.error) { - [source trySetError:task.error]; - } - return nil; - }]; - return nil; - }]; - return source.task; -} - -- (BFTask *)startReadout:(uint32_t)totalEntries -{ - NSMutableData *params = [NSMutableData dataWithBytes:&totalEntries length:4]; - uint32_t delta; - if (totalEntries > 2000) { - delta = totalEntries / 100; - } else if (totalEntries > 1000) { - delta = totalEntries / 10; - } else if (totalEntries > 100) { - delta = totalEntries / 4; - } else { - delta = UINT32_MAX; - } - [params appendBytes:&delta length:4]; - return [self.logReadout writeDataAsync:params]; -} - -- (void)processRawEntry:(const mw_log_entry_t *)rawEntry -{ - assert([MBLConstants isMetaWearQueue]); - if (printOnlyMode) { - MBLLog(MBLLogLevelInfo, @"[%d] %d:%d - %@", rawEntry->triggerId, rawEntry->resetId, rawEntry->timestamp, [NSData dataWithBytes:rawEntry->data length:4]); - } - - // Check if this entry has been seen before, and ignore it if needed - NSData *curEntry = [NSData dataWithBytes:rawEntry length:sizeof(mw_log_entry_t)]; - if (rawLogEntiresToReject) { - MBLRejectEntry *entry = [rawLogEntiresToReject firstObject]; - if ([entry.data isEqualToData:curEntry]) { - [rawLogEntiresToReject removeObjectAtIndex:0]; - return; - } else { - rawLogEntiresToReject = nil; - } - } - - // If we started a new page, than means we successfully cleaned up all pervious entries - // so there is 0 chance we can ever encounter them again, so remove all the reject objects. - if (newPageStarted) { - newPageStarted = NO; - [self deleteAllRejectObjects]; - } - - // No need to reject so process that entry! - uint32_t entryTs = rawEntry->timestamp; - uint8_t resetId = rawEntry->resetId; - uint8_t triggerId = rawEntry->triggerId; - NSData *data = [NSData dataWithBytes:rawEntry->data length:4]; - NSDate __block *date = nil; - date = self.device.nonVolatileState.logStartingDates[resetId]; - // If reset uid changes then reset lastTimestamp - if (resetId != self.lastResetId) { - self.lastTimestamp = 0; - } - // If we roll over, then advance the starting date - if (entryTs < self.lastTimestamp) { - MBLLog(MBLLogLevelInfo, @"***Timestamp Rolling Over***"); - date = [date dateByAddingTimeInterval:LOGGING_SEC_PER_TIMESTAMP * LOGGING_ROLLOVER_COUNT]; - self.device.nonVolatileState.logStartingDates[resetId] = date; - } - // Update our tracking variables - self.lastTimestamp = entryTs; - self.lastResetId = resetId; - - if ([[NSNull null] isEqual:date]) { - MBLLog(MBLLogLevelError, @"Timestamp error, please call setConfiguration:nil on the MBLMetaWear object to reset log"); - date = [NSDate dateWithTimeIntervalSince1970:0]; - self.device.nonVolatileState.logStartingDates[resetId] = date; - } - // Convert to real time - NSDate *timestamp = [date dateByAddingTimeInterval:entryTs * LOGGING_SEC_PER_TIMESTAMP]; - - // Now that it's processed, commit it to the database - [managedObjectContext performBlock:^{ - // We may need to reject this entry as a duplicate later, so save it as an MBLRejectEntry - MBLRejectEntry *rejectEntry = (MBLRejectEntry *)[NSEntityDescription insertNewObjectForEntityForName:@"MBLRejectEntry" inManagedObjectContext:managedObjectContext]; - rejectEntry.timestamp = timestamp; - rejectEntry.data = curEntry; - - MBLRawLogEntry *entry = (MBLRawLogEntry *)[NSEntityDescription insertNewObjectForEntityForName:@"MBLRawLogEntry" inManagedObjectContext:managedObjectContext]; - entry.timestamp = timestamp; - entry.resetId = resetId; - entry.triggerId = triggerId; - entry.data = data; - }]; -} - - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Macro/MBLMacro.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Macro/MBLMacro.h deleted file mode 100644 index e159a6e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Macro/MBLMacro.h +++ /dev/null @@ -1,51 +0,0 @@ -/** - * MBLMacro.h - * MetaWear - * - * Created by Stephen Schiffli on 1/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLModule+Private.h" -#import "MBLConstants.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLMacro : MBLModule - -- (void)programConfigurationWithHandler:(MBLVoidHandler)handler; -- (void)clearAllMacros; - -- (BFTask *)programMacroWithCommands:(MBLVoidHandler)block; -- (BFTask *)executeMacro:(uint8_t)macroId; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Macro/MBLMacro.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Macro/MBLMacro.m deleted file mode 100644 index 77c0e36..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Macro/MBLMacro.m +++ /dev/null @@ -1,188 +0,0 @@ -/** - * MBLMacro.m - * MetaWear - * - * Created by Stephen Schiffli on 1/27/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLMacro.h" -#import "MBLRegister+Private.h" -#import "MBLModule+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLLED.h" -#import "MBLNumericFormatter.h" -#import "MBLDataSample.h" -#import "MBLMetaWearManager+Private.h" -#import "BFTask+Private.h" - - -@interface MBLMacro () -@property (nonatomic) MBLRegister *addMacro; -@property (nonatomic) MBLRegister *addCommand; -@property (nonatomic) MBLRegister *endMacro; -@property (nonatomic) MBLRegister *executeMacro; -@property (nonatomic) MBLRegister *macroFinishNotificationEnable; -@property (nonatomic) MBLRegister *macroFinishNotification; -@property (nonatomic) MBLRegister *eraseAll; -@property (nonatomic) MBLRegister *addCommandPartial; -@end - -@implementation MBLMacro - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.globalEnable = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLNumericFormatter alloc] initIntWithLength:1 isSigned:NO]]; - self.addMacro = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:3]]; - self.addCommand = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[[MBLFormat alloc] initEncodedDataWithLength:18]]; - self.endMacro = [[MBLRegister alloc] initWithModule:self registerId:0x4 format:[MBLFormat writeOnly]]; - self.executeMacro = [[MBLRegister alloc] initWithModule:self registerId:0x5 format:[MBLFormat writeOnly]]; - self.macroFinishNotificationEnable = [[MBLRegister alloc] initWithModule:self registerId:0x6 format:[MBLFormat writeOnly]]; - - self.macroFinishNotification = [[MBLRegister alloc] initWithModule:self registerId:0x7 format:[[MBLFormat alloc] initEncodedDataWithLength:1]]; - self.eraseAll = [[MBLRegister alloc] initWithModule:self registerId:0x8 format:[MBLFormat writeOnly]]; - self.addCommandPartial = [[MBLRegister alloc] initWithModule:self registerId:0x9 format:[MBLFormat writeOnly]]; - - if (moduleInfo.moduleRevision == 0) { - self.addMacro.needsResponse = YES; - self.addCommand.needsResponse = YES; - self.endMacro.needsResponse = YES; - } - - self.addMacro.writeResponds = YES; - //self.addCommand.needsResponse = YES; - } - return self; -} - -- (void)programConfigurationWithHandler:(MBLVoidHandler)handler -{ - // Sniff the configuration fun - NSMutableArray *commands = [NSMutableArray array]; - [self.device startSnifferWithHandler:^(NSData *data, NSError *error) { - [commands addObject:data]; - }]; - - // Do the actual setup - [self.device.configuration runOnDeviceBoot:self.device]; - - // Wait for all setup code to finish - [[self.device waitForCommandCompletion] successOnMetaWear:^(id result) { - // Stop sniffing - [self.device stopSniffer]; - - if (commands.count) { - // Make sure the key register will persist a reset - [commands insertObject:[self.device.testDebug writeKeyRegisterCommand] atIndex:0]; - - [[[self.addMacro writeByteAsync:0x1] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - //uint8_t uid = *(uint8_t *)obj.data.bytes; - for (NSData *command in commands) { - if (command.length > 18) { - [self.addCommandPartial writeDataAsync:[command subdataWithRange:NSMakeRange(0, 2)]]; - [self.addCommand writeDataAsync:[command subdataWithRange:NSMakeRange(2, command.length - 2)]]; - } else { - [self.addCommand writeDataAsync:command]; - } - } - [self.endMacro writeDataAsync:nil]; - // Wait for the macro to be added in all nice by doing a dummy read - return [self.addMacro readForcedIndexAsync:0]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - if (handler) { - handler(); - } - return nil; - }]; - } else { - if (handler) { - handler(); - } - } - }]; -} - -- (BFTask *)programMacroWithCommands:(MBLVoidHandler)block -{ - NSMutableArray *commands = [NSMutableArray array]; - uint8_t __block macroId = 0xFF; - - return [[[[[[[[[self initializeAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.device waitForSimulatorTurn]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.addMacro writeByteAsync:0x0]; - }] continueWithExecutor:[BFExecutor simulatorExecutor] withBlock:^id _Nullable(BFTask * _Nonnull task) { - MBLDataSample *result = task.result; - macroId = *(uint8_t *)result.data.bytes; - [self.device startSimulationWithHandler:^(uint8_t module, uint8_t opcode, NSData *parameters) { - uint8_t data[] = { module, opcode }; - NSMutableData *command = [NSMutableData dataWithBytes:&data length:2]; - [command appendData:parameters]; - [commands addObject:command]; - }]; - block(); - return nil; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self.device waitForSimulatorCompletion]; - }] continueWithExecutor:[BFExecutor metaWearExecutor] withBlock:^id _Nullable(BFTask * _Nonnull task) { - for (NSData *command in commands) { - if (command.length > 18) { - [self.addCommandPartial writeDataAsync:[command subdataWithRange:NSMakeRange(0, 2)]]; - [self.addCommand writeDataAsync:[command subdataWithRange:NSMakeRange(2, command.length - 2)]]; - } else { - [self.addCommand writeDataAsync:command]; - } - } - [self.endMacro writeDataAsync:nil]; - // Wait for the macro to be added in all nice by doing a dummy read - return [self.addMacro readForcedIndexAsync:0]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [self activateAsync]; - }] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull task) { - return [BFTask taskWithResult:[NSNumber numberWithUnsignedChar:macroId]]; - }] continueOnMetaWearWithBlock:^id _Nullable(BFTask * _Nonnull task) { - [self.device stopSimulation]; - return task; - }]; -} - -- (BFTask *)executeMacro:(uint8_t)macroId -{ - return [self.executeMacro writeByteAsync:macroId]; -} - -- (void)clearAllMacros -{ - [self.eraseAll writeDataAsync:nil]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MBLMagnetometer+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MBLMagnetometer+Private.h deleted file mode 100644 index 77e83e9..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MBLMagnetometer+Private.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * MBLMagnetometer+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 1/5/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLMagnetometer.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLMagnetometer (Private) - -@property (nonatomic, nullable) MBLData *magneticField; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MBLMagnetometerData+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MBLMagnetometerData+Private.h deleted file mode 100644 index c1ba201..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MBLMagnetometerData+Private.h +++ /dev/null @@ -1,42 +0,0 @@ -/** - * MBLMagnetometerData+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 1/5/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLMagnetometerData.h" - -@interface MBLMagnetometerData (Private) - -- (instancetype)initWithX:(double)x y:(double)y z:(double)z timestamp:(NSDate *)timestamp; - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150Format.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150Format.h deleted file mode 100644 index 6e16240..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150Format.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLMagnetometerBMM150Format.h - * MetaWear - * - * Created by Stephen Schiffli on 1/6/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFormat.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLMagnetometerBMM150Format : MBLFormat - -- (instancetype)init; -- (instancetype)initWithAxis:(uint8_t)axis; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150Format.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150Format.m deleted file mode 100644 index baf63d0..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150Format.m +++ /dev/null @@ -1,105 +0,0 @@ -/** - * MBLMagnetometerBMM150Format.m - * MetaWear - * - * Created by Stephen Schiffli on 1/6/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLMagnetometerBMM150Format.h" -#import "MBLMagnetometerData+Private.h" -#import "MBLNumericData+Private.h" - -/** - Magnetometer axis - */ -typedef NS_ENUM(uint8_t, MBLMagnetometerAxis) { - MBLMagnetometerAxisX = 0, - MBLMagnetometerAxisY = 1, - MBLMagnetometerAxisZ = 2 -}; - -@implementation MBLMagnetometerBMM150Format - -- (instancetype)init -{ - self = [super initArrayWithLength:6 elements:3]; - return self; -} - -- (instancetype)initWithAxis:(uint8_t)axis -{ - MBLMagnetometerAxis typedAxis = axis; - switch (typedAxis) { - case MBLMagnetometerAxisX: - self = [super initNumberWithLength:2 isSigned:YES offset:0]; - break; - case MBLMagnetometerAxisY: - self = [super initNumberWithLength:2 isSigned:YES offset:2]; - break; - case MBLMagnetometerAxisZ: - self = [super initNumberWithLength:2 isSigned:YES offset:4]; - break; - } - return self; -} - -- (id)copyWithZone:(NSZone *)zone -{ - MBLMagnetometerBMM150Format *newFormat = [super copyWithZone:zone]; - return newFormat; -} - -- (id)entryFromData:(NSData *)data date:(NSDate *)date -{ - double x = DBL_MIN, y = DBL_MIN, z = DBL_MIN; - const uint8_t *bytes = data.bytes; - double scale = 0.0000000625; // Firmware units are 1/16 uT, we want T - - x = (double)(*(int16_t *)&bytes[0]) * scale; - if (self.type == MBLFormatTypeArray) { - y = (double)(*(int16_t *)&bytes[2]) * scale; - z = (double)(*(int16_t *)&bytes[4]) * scale; - } - - if (self.type == MBLFormatTypeArray) { - return [[MBLMagnetometerData alloc] initWithX:x y:y z:z timestamp:date]; - } else { - return [[MBLNumericData alloc] initWithNumber:[NSNumber numberWithDouble:x] timestamp:date]; - } -} - -- (NSNumber *)numberFromDouble:(double)value -{ - double scale = 0.0000000625; // Firmware units are 1/16 uT, we are given T - return [NSNumber numberWithInt:value / scale]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150PeriodicMagneticFieldEvent.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150PeriodicMagneticFieldEvent.h deleted file mode 100644 index b70297b..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150PeriodicMagneticFieldEvent.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLMagnetometerBMM150PeriodicMagneticFieldEvent.h - * MetaWear - * - * Created by Stephen Schiffli on 1/6/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLEvent+Private.h" -@class MBLMagnetometer; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLMagnetometerBMM150PeriodicMagneticFieldEvent : MBLEvent - -- (instancetype)initWithMagnetometer:(MBLMagnetometer *)magnetometer; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150PeriodicMagneticFieldEvent.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150PeriodicMagneticFieldEvent.m deleted file mode 100644 index dfa2ccb..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Magnetometer/MagnetometerBMM150/MBLMagnetometerBMM150PeriodicMagneticFieldEvent.m +++ /dev/null @@ -1,72 +0,0 @@ -/** - * MBLMagnetometerBMM150PeriodicMagneticFieldEvent.m - * MetaWear - * - * Created by Stephen Schiffli on 1/6/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLMagnetometerBMM150PeriodicMagneticFieldEvent.h" -#import "MBLMagnetometer.h" -#import "MBLMagnetometerBMM150Format.h" - -@interface MBLMagnetometerBMM150PeriodicMagneticFieldEvent () -@property (nonatomic) MBLRegister *dataEnable; -@end - -@implementation MBLMagnetometerBMM150PeriodicMagneticFieldEvent - -- (instancetype)initWithMagnetometer:(MBLMagnetometer *)magnetometer -{ - self = [super initWithModule:magnetometer registerId:0x05 format:[[MBLMagnetometerBMM150Format alloc] init]]; - if (self) { - self.dataEnable = [[MBLRegister alloc] initWithModule:magnetometer registerId:0x02 format:[[MBLFormat alloc] initEncodedDataWithLength:2]]; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - // Write the enable bit for mag data ready interrupts - uint8_t data[] = { (1 << 0) , 0 }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.dataEnable writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]; -} - - -- (BFTask *)performAsyncDeactivation -{ - // Write the disable bit for mag data ready interrupts - uint8_t data[] = { 0, (1 << 0) }; - int dataSize = sizeof(data) / sizeof(data[0]); - return [self.dataEnable writeDataAsync:[NSData dataWithBytes:&data length:dataSize]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Neopixel/MBLNeopixel+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Neopixel/MBLNeopixel+Private.h deleted file mode 100644 index 8b8d723..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Neopixel/MBLNeopixel+Private.h +++ /dev/null @@ -1,57 +0,0 @@ -/** - * MBLNeopixel+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 3/2/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLNeopixel.h" -#import - -@class MBLNeopixelStrand; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLNeopixel (Private) - -- (BFTask *)initializeStrand:(MBLNeopixelStrand *)strand; -- (BFTask *)deinitializeStrand:(MBLNeopixelStrand *)strand; -- (BFTask *)deallocDeinitializeStrand:(MBLNeopixelStrand *)strand; - - -- (BFTask *)setPixelAtIndex:(uint8_t)index pixel:(uint8_t)pixel color:(MBLColor *)color; -- (BFTask *)clearStrandAtIndex:(uint8_t)index startPixel:(uint8_t)start endPixel:(uint8_t)end; -- (BFTask *)holdStrandAtIndex:(uint8_t)index withEnable:(BOOL)enable; -- (BFTask *)rotateStrandAtIndex:(uint8_t)index direction:(MBLRotationDirection)direction repetitions:(uint8_t)repetitions period:(uint16_t)period; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Neopixel/MBLNeopixelStrand+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Neopixel/MBLNeopixelStrand+Private.h deleted file mode 100644 index 5d5234d..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Neopixel/MBLNeopixelStrand+Private.h +++ /dev/null @@ -1,52 +0,0 @@ -/** - * MBLNeopixelStrand+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 3/2/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLNeopixelStrand.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLNeopixelStrand (Private) - -@property (nonatomic) MBLColorOrdering color; -@property (nonatomic) MBLStrandSpeed speed; -@property (nonatomic) uint8_t pin; -@property (nonatomic) uint8_t length; -@property (nonatomic) uint8_t index; - -- (instancetype)initWithNeopixel:(MBLNeopixel *)neopixel color:(MBLColorOrdering)color speed:(MBLStrandSpeed)speed pin:(uint8_t)pin length:(uint8_t)length; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Photometer/MBLPhotometer+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Photometer/MBLPhotometer+Private.h deleted file mode 100644 index a1b6942..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Photometer/MBLPhotometer+Private.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * MBLPhotometer+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLPhotometer.h" - -@interface MBLPhotometer (Private) -@property (nonatomic, nullable) MBLData *color; -@property (nonatomic, nullable) MBLData *redColor; -@property (nonatomic, nullable) MBLData *greenColor; -@property (nonatomic, nullable) MBLData *blueColor; -@property (nonatomic, nullable) MBLData *clearColor; -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Photometer/MBLRGBData+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Photometer/MBLRGBData+Private.h deleted file mode 100644 index a62bd96..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Photometer/MBLRGBData+Private.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * MBLRGBData+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLRGBData.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLRGBData (Private) - -- (instancetype)initWithRed:(uint16_t)red green:(uint16_t)green blue:(uint16_t)blue clear:(uint16_t)clear timestamp:(NSDate *)timestamp; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Photometer/PhotometerTCS3472/MBLPhotometerTCS3472Format.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Photometer/PhotometerTCS3472/MBLPhotometerTCS3472Format.h deleted file mode 100644 index 91658fe..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Photometer/PhotometerTCS3472/MBLPhotometerTCS3472Format.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * MBLPhotometerTCS3472Format.h - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLFormat.h" -#import "MBLAccelerometerMMA8452Q+Private.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLPhotometerTCS3472Format : MBLFormat - -- (instancetype)init; -- (instancetype)initWithOffset:(uint8_t)offset; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Photometer/PhotometerTCS3472/MBLPhotometerTCS3472Format.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Photometer/PhotometerTCS3472/MBLPhotometerTCS3472Format.m deleted file mode 100644 index b3903ef..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Photometer/PhotometerTCS3472/MBLPhotometerTCS3472Format.m +++ /dev/null @@ -1,78 +0,0 @@ -/** - * MBLPhotometerTCS3472Format.m - * MetaWear - * - * Created by Stephen Schiffli on 2/17/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLPhotometerTCS3472Format.h" -#import "MBLRGBData+Private.h" -#import "MBLNumericData+Private.h" - -@implementation MBLPhotometerTCS3472Format - -- (instancetype)init -{ - self = [super initArrayWithLength:8 elements:4]; - return self; -} - -- (instancetype)initWithOffset:(uint8_t)offset -{ - self = [super initNumberWithLength:2 isSigned:NO offset:offset]; - return self; -} - -- (id)entryFromData:(NSData *)data date:(NSDate *)date -{ - double red = DBL_MIN, green = DBL_MIN, blue = DBL_MIN, clear = DBL_MIN; - const uint8_t *bytes = data.bytes; - - clear = (double)(*(uint16_t *)&bytes[0]); - if (self.type == MBLFormatTypeArray) { - red = (double)(*(uint16_t *)&bytes[2]); - green = (double)(*(uint16_t *)&bytes[4]); - blue = (double)(*(uint16_t *)&bytes[6]); - } - - if (self.type == MBLFormatTypeArray) { - return [[MBLRGBData alloc] initWithRed:red green:green blue:blue clear:clear timestamp:date]; - } else { - return [[MBLNumericData alloc] initWithNumber:[NSNumber numberWithDouble:clear] timestamp:date]; - } -} - -- (NSNumber *)numberFromDouble:(double)value -{ - return [NSNumber numberWithInt:value]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Proximity/MBLProximity+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Proximity/MBLProximity+Private.h deleted file mode 100644 index f72619e..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Proximity/MBLProximity+Private.h +++ /dev/null @@ -1,40 +0,0 @@ -/** - * MBLProximity+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 2/22/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLProximity.h" - -@interface MBLProximity (Private) -@property (nonatomic, nullable) MBLData *proximity; -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Serial/MBLI2CData+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Serial/MBLI2CData+Private.h deleted file mode 100644 index c39e12c..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Serial/MBLI2CData+Private.h +++ /dev/null @@ -1,55 +0,0 @@ -/** - * MBLI2CData+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 1/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLI2CData.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLI2CData (Private) - -- (instancetype)initWithRegister:(MBLRegister *)reg - deviceAddress:(uint8_t)deviceAddress - registerAddress:(uint8_t)registerAddress - length:(uint8_t)length; - -- (instancetype)initNumberWithRegister:(MBLRegister *)reg - deviceAddress:(uint8_t)deviceAddress - registerAddress:(uint8_t)registerAddress - length:(uint8_t)length - isSigned:(BOOL)isSigned; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Serial/MBLSPIData+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Serial/MBLSPIData+Private.h deleted file mode 100644 index b527f55..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Serial/MBLSPIData+Private.h +++ /dev/null @@ -1,67 +0,0 @@ -/** - * MBLSPIData+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 1/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLSPIData.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLSPIData (Private) - -- (instancetype)initWithRegister:(MBLRegister *)reg - slaveSelectPin:(uint8_t)slaveSelectPin - clockPin:(uint8_t)clockPin - mosiPin:(uint8_t)mosiPin - misoPin:(uint8_t)misoPin - lsbFirst:(BOOL)lsbFirst - spiMode:(uint8_t)spiMode - spiFrequency:(uint8_t)spiFrequency - nativePinIndexing:(BOOL)nativePinIndexing - length:(uint8_t)length; - -- (instancetype)initNumberWithRegister:(MBLRegister *)reg - slaveSelectPin:(uint8_t)slaveSelectPin - clockPin:(uint8_t)clockPin - mosiPin:(uint8_t)mosiPin - misoPin:(uint8_t)misoPin - lsbFirst:(BOOL)lsbFirst - spiMode:(uint8_t)spiMode - spiFrequency:(uint8_t)spiFrequency - nativePinIndexing:(BOOL)nativePinIndexing - length:(uint8_t)length - isSigned:(BOOL)isSigned; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Serial/MBLSerial+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Serial/MBLSerial+Private.h deleted file mode 100644 index 2bee7a8..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Serial/MBLSerial+Private.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * MBLSerial+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 1/26/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLSerial.h" -#import - -@class MBLSerialData; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLSerial (Private) -- (BFTask *)performAsyncInitializationForRegister:(MBLRegister *)reg; -- (BFTask *)performAsyncDeinitializationForRegister:(MBLRegister *)reg; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Settings/MBLSettings+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Settings/MBLSettings+Private.h deleted file mode 100644 index 81a57b4..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Settings/MBLSettings+Private.h +++ /dev/null @@ -1,49 +0,0 @@ -/** - * MBLSettings+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 10/29/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLSettings.h" -#import "MBLRegister+Private.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLSettings (Private) -@property (nonatomic, readonly) MBLRegister *deviceName; - -- (BFTask *)startWatchdog:(double)seconds runWhileSleeping:(BOOL)runWhileSleeping; -- (BFTask *)refreshOnScheduler:(BOOL)scheduler enteringSleep:(BOOL)enteringSleep; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLExternalThermistor0.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLExternalThermistor0.h deleted file mode 100644 index 743f452..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLExternalThermistor0.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLExternalThermistor0.h - * MetaWear - * - * Created by Stephen Schiffli on 7/14/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLExternalThermistor.h" -@class MBLTemperature; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLExternalThermistor0 : MBLExternalThermistor - -- (instancetype)initWithTemperature:(MBLTemperature *)temperature; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLExternalThermistor0.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLExternalThermistor0.m deleted file mode 100644 index 6228328..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLExternalThermistor0.m +++ /dev/null @@ -1,64 +0,0 @@ -/** - * MBLExternalThermistor0.m - * MetaWear - * - * Created by Stephen Schiffli on 7/14/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLExternalThermistor0.h" -#import "MBLTemperature+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLData+Private.h" - -static const double DEGREES_CELSIUS_PER_UNIT = 0.125; - -@implementation MBLExternalThermistor0 - -- (instancetype)initWithTemperature:(MBLTemperature *)temperature -{ - self = [super initWithModule:temperature registerId:0x1 format:[[MBLNumericFormatter alloc] initDoubleWithLength:2 isSigned:YES scale:DEGREES_CELSIUS_PER_UNIT]]; - if (self) { - self.readPin = 0xFF; - self.enablePin = 0xFF; - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - MBLTemperature *temperature = (MBLTemperature *)self.module; - temperature.source = MBLTemperatureSourceThermistor; - temperature.thermistorEnablePin = self.enablePin; - temperature.thermistorReadPin = self.readPin; - return [super performAsyncInitialization]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLExternalThermistor1.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLExternalThermistor1.h deleted file mode 100644 index 7650a43..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLExternalThermistor1.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLExternalThermistor1.h - * MetaWear - * - * Created by Stephen Schiffli on 7/14/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLExternalThermistor.h" -@class MBLTemperature; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLExternalThermistor1 : MBLExternalThermistor - -- (instancetype)initWithTemperature:(MBLTemperature *)temperature index:(uint8_t)index; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLExternalThermistor1.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLExternalThermistor1.m deleted file mode 100644 index a7240d3..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLExternalThermistor1.m +++ /dev/null @@ -1,85 +0,0 @@ -/** - * MBLExternalThermistor1.m - * MetaWear - * - * Created by Stephen Schiffli on 7/14/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLExternalThermistor1.h" -#import "MBLTemperature+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLData+Private.h" -#import "MBLFormat.h" - -typedef struct __attribute__((packed)) { - uint8_t index; - uint8_t gpio_analog_pin; - uint8_t gpio_enable_pin; - uint8_t gpio_enable_active_high; -} mw_temp_therm1_mode_t; - -static const double DEGREES_CELSIUS_PER_UNIT = 0.125; - -@interface MBLExternalThermistor1 () -@property (nonatomic) MBLRegister *mode; -@end - -@implementation MBLExternalThermistor1 - -- (instancetype)initWithTemperature:(MBLTemperature *)temperature index:(uint8_t)index -{ - self = [super initWithModule:temperature registerId:0x1 index:index format:[[MBLNumericFormatter alloc] initDoubleWithLength:2 isSigned:YES scale:DEGREES_CELSIUS_PER_UNIT]]; - if (self) { - self.mode = [[MBLRegister alloc] initWithModule:temperature registerId:0x2 index:index format:[[MBLFormat alloc] initEncodedDataWithLength:3]]; - self.readPin = 0xFF; - self.enablePin = 0xFF; - self.enablePinActiveLow = YES; - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - if (self.readPin == 0xFF || self.enablePin == 0xFF || - (self.readPin == self.enablePin)) { - [NSException raise:@"Invalid thermistor values" - format:@"Set readPin and enablePin to valid values"]; - } - - mw_temp_therm1_mode_t regs; - regs.index = self.index; - regs.gpio_analog_pin = self.readPin; - regs.gpio_enable_pin = self.enablePin; - regs.gpio_enable_active_high = self.enablePinActiveLow ? 0 : 1; - return [self.mode writeDataAsync:[NSData dataWithBytes:®s length:sizeof(mw_temp_therm1_mode_t)]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLOnDieTemperature0.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLOnDieTemperature0.h deleted file mode 100644 index 4863480..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLOnDieTemperature0.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * MBLOnDieTemperature0.h - * MetaWear - * - * Created by Stephen Schiffli on 7/9/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLData+Private.h" -@class MBLTemperature; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLOnDieTemperature0 : MBLData - -- (instancetype)initWithTemperature:(MBLTemperature *)temperature; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLOnDieTemperature0.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLOnDieTemperature0.m deleted file mode 100644 index 37b98d0..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLOnDieTemperature0.m +++ /dev/null @@ -1,59 +0,0 @@ -/** - * MBLOnDieTemperature0.m - * MetaWear - * - * Created by Stephen Schiffli on 7/9/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLOnDieTemperature0.h" -#import "MBLNumericFormatter.h" -#import "MBLTemperature+Private.h" - -static const double DEGREES_CELSIUS_PER_UNIT = 0.125; - -@implementation MBLOnDieTemperature0 - -- (instancetype)initWithTemperature:(MBLTemperature *)temperature -{ - self = [super initWithModule:temperature registerId:0x1 format:[[MBLNumericFormatter alloc] initDoubleWithLength:2 isSigned:YES scale:DEGREES_CELSIUS_PER_UNIT]]; - if (self) { - } - return self; -} - -- (BFTask *)performAsyncInitialization -{ - MBLTemperature *temperature = (MBLTemperature *)self.module; - temperature.source = MBLTemperatureSourceInternal; - return [super performAsyncInitialization]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperature+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperature+Private.h deleted file mode 100644 index cab7479..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperature+Private.h +++ /dev/null @@ -1,59 +0,0 @@ -/** - * MBLTemperature+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 10/28/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLTemperature.h" - -NS_ASSUME_NONNULL_BEGIN - -typedef NS_ENUM(uint8_t, MBLTemperatureSource) { - MBLTemperatureSourceInternal, - MBLTemperatureSourceThermistor -}; - -@interface MBLTemperature (Private) -@property (nonatomic) NSArray *channels; -@property (nonatomic) MBLData *onDieThermistor; -@property (nonatomic, nullable) MBLExternalThermistor *externalThermistor; -@property (nonatomic, nullable) MBLData *onboardThermistor; - - -@property (nonatomic, nullable) MBLRegister *thermistorSettings; - -@property (nonatomic) MBLTemperatureSource source; -@property (nonatomic) uint8_t thermistorReadPin; -@property (nonatomic) uint8_t thermistorEnablePin; -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperatureV0.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperatureV0.h deleted file mode 100644 index 237c473..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperatureV0.h +++ /dev/null @@ -1,40 +0,0 @@ -/** - * MBLTemperatureV0.h - * MetaWear - * - * Created by Stephen Schiffli on 8/24/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLTemperature+Private.h" - -@interface MBLTemperatureV0 : MBLTemperature - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperatureV0.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperatureV0.m deleted file mode 100644 index 79da378..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperatureV0.m +++ /dev/null @@ -1,97 +0,0 @@ -/** - * MBLTemperatureV0.m - * MetaWear - * - * Created by Stephen Schiffli on 8/24/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLTemperatureV0.h" -#import "MBLRegister+Private.h" -#import "MBLEvent+Private.h" -#import "MBLNumericData+Private.h" -#import "MBLDeviceInfo.h" -#import "MBLNumericFormatter.h" -#import "MBLData+Private.h" -#import "MBLOnDieTemperature0.h" -#import "MBLExternalThermistor0.h" - - -typedef struct __attribute__((packed)) { - uint8_t enable; - uint8_t gpio_analog_pin; - uint8_t gpio_pulldown_pin; -} mw_temp_therm_mode_t; - - -@implementation MBLTemperatureV0 - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.source = MBLTemperatureSourceInternal; - self.thermistorReadPin = 0xFF; - self.thermistorEnablePin = 0xFF; - - self.thermistorSettings = [[MBLRegister alloc] initWithModule:self registerId:0x5 format:[[MBLFormat alloc] initEncodedDataWithLength:3]]; - - self.onDieThermistor = [[MBLOnDieTemperature0 alloc] initWithTemperature:self]; - self.externalThermistor = [[MBLExternalThermistor0 alloc] initWithTemperature:self]; - self.onboardThermistor = nil; - self.channels = @[self.onDieThermistor, self.externalThermistor]; - } - return self; -} - -- (BFTask *)performAsyncActivation -{ - if (self.source == MBLTemperatureSourceThermistor) { - if (self.thermistorReadPin == 0xFF || self.thermistorEnablePin == 0xFF || - (self.thermistorReadPin == self.thermistorEnablePin)) { - [NSException raise:@"Invalid thermistor values" - format:@"Set thermistorReadPin and thermistorEnablePin to valid values"]; - } - } - - mw_temp_therm_mode_t thermRegs; - thermRegs.enable = self.source == MBLTemperatureSourceThermistor; - thermRegs.gpio_analog_pin = self.thermistorReadPin; - thermRegs.gpio_pulldown_pin = self.thermistorEnablePin; - return [self.thermistorSettings writeDataAsync:[NSData dataWithBytes:&thermRegs length:sizeof(mw_temp_therm_mode_t)]]; -} - -- (BFTask *)performAsyncDeactivation -{ - mw_temp_therm_mode_t thermRegs = { 0 }; - return [self.thermistorSettings writeDataAsync:[NSData dataWithBytes:&thermRegs length:sizeof(mw_temp_therm_mode_t)]]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperatureV1.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperatureV1.h deleted file mode 100644 index 9f38cdc..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperatureV1.h +++ /dev/null @@ -1,40 +0,0 @@ -/** - * MBLTemperatureV1.h - * MetaWear - * - * Created by Stephen Schiffli on 8/24/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLTemperature+Private.h" - -@interface MBLTemperatureV1 : MBLTemperature - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperatureV1.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperatureV1.m deleted file mode 100644 index 623743a..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Temperature/MBLTemperatureV1.m +++ /dev/null @@ -1,94 +0,0 @@ -/** - * MBLTemperatureV1.m - * MetaWear - * - * Created by Stephen Schiffli on 8/24/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLTemperatureV1.h" -#import "MBLRegister+Private.h" -#import "MBLEvent+Private.h" -#import "MBLNumericData+Private.h" -#import "MBLDeviceInfo.h" -#import "MBLNumericFormatter.h" -#import "MBLData+Private.h" -#import "MBLExternalThermistor1.h" - -static const double DEGREES_CELSIUS_PER_UNIT = 0.125; - -@implementation MBLTemperatureV1 - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.source = MBLTemperatureSourceInternal; - self.thermistorReadPin = 0xFF; - self.thermistorEnablePin = 0xFF; - - uint8_t *bytes = (uint8_t *)moduleInfo.moduleData.bytes; - NSMutableArray *channels = [NSMutableArray array]; - for (int i = 0; i < moduleInfo.moduleData.length; i++) { - uint8_t driverId = bytes[i]; - NSObject *current = nil; - switch (driverId) { - case 0: - self.onDieThermistor = [[MBLData alloc] initWithModule:self registerId:0x1 index:i format:[[MBLNumericFormatter alloc] initDoubleWithLength:2 isSigned:YES scale:DEGREES_CELSIUS_PER_UNIT]]; - current = self.onDieThermistor; - self.onDieThermistor.needsResponse = YES; // TODO: Remove once fixed - break; - case 1: - self.externalThermistor = [[MBLExternalThermistor1 alloc] initWithTemperature:self index:i]; - current = self.externalThermistor; - self.externalThermistor.needsResponse = YES; // TODO: Remove once fixed - break; - case 2: - // TODO: Enable the BMP280 Temperature - break; - case 3: - self.onboardThermistor = [[MBLData alloc] initWithModule:self registerId:0x1 index:i format:[[MBLNumericFormatter alloc] initDoubleWithLength:2 isSigned:YES scale:DEGREES_CELSIUS_PER_UNIT]]; - current = self.onboardThermistor; - self.onboardThermistor.needsResponse = YES; // TODO: Remove once fixed - break; - default: - assert(NO && "Unexpected temperature driver"); - break; - } - if (current) { - [channels addObject:current]; - } - } - self.channels = channels; - } - return self; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/TestDebug/MBLTestDebug.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/TestDebug/MBLTestDebug.h deleted file mode 100644 index 15a5b3a..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/TestDebug/MBLTestDebug.h +++ /dev/null @@ -1,112 +0,0 @@ -/** - * MBLTestDebug.h - * MetaWear - * - * Created by Stephen Schiffli on 8/12/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import -#import -#import -@class MBLEvent; -@class MBLFormat; -@class MBLRegister; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLTestDebug : MBLModule -@property (nonatomic) uint32_t magicKey; -@property (nonatomic, readonly) MBLRegister *keyRegister; - -/** - Indicates if triggerDisconnect was called or not - */ -@property (nonatomic) BOOL triggerDisconnectInProgress; - -/** - Reset board immediately - */ -- (BFTask *)resetDevice; - -/** - This makes sure that non-volatile memory is clean'd up first before a rest happens - */ -- (BFTask *)resetDeviceAfterGarbageCollect; - -/** - Enter Bootloader mode - */ -- (BFTask *)jumpToBootloader; - -/** - Triggers a GAP disconnect - */ -- (BFTask *)triggerDisconnect; - -/** - This checks to see if we are the application that currently claims to own this MetaWear - */ -- (BFTask *)isGuestApplicationAsync; - -/** - Command values to write magic value to the key register - */ -- (NSData *)writeKeyRegisterCommand; - -/** - Get a spoofable event for use with - */ -- (MBLEvent *)spoofEvent:(MBLFormat *)format; -/** - Spoof an array of notifications on the MetaWear. Format is: - @["01-02-03-01-10", - "AB-CD-EF-01-88-22-33-44"]; - */ -- (BFTask *)spoofData:(NSArray *)data notification:(BOOL)notification; - -/** - Spoof any event you want - */ -- (BFTask *)spoofRawData:(NSArray *)data; - -/** - Enters powerdown mode on next reset after resetting all sensors at boot. - */ -- (BFTask *)enterPowersaveOnReset; - -/** - Invalidate firmware image and force bootloader. - */ -- (BFTask *)invalidateAppImage; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/TestDebug/MBLTestDebug.m b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/TestDebug/MBLTestDebug.m deleted file mode 100644 index b9ed77a..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/TestDebug/MBLTestDebug.m +++ /dev/null @@ -1,201 +0,0 @@ -/** - * MBLTestDebug.m - * MetaWear - * - * Created by Stephen Schiffli on 8/12/14. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLTestDebug.h" -#import "MBLMetaWear.h" -#import "MBLRegister+Private.h" -#import "MBLMetaWear+Private.h" -#import "MBLTimer+Private.h" -#import "MBLNumericFormatter.h" -#import "MBLNumericData+Private.h" -#import "BFTask+MBLExtensions.h" -#import "MBLMetaWearManager+Private.h" -#import "MBLLogger.h" - -@interface MBLTestDebug () -@property (nonatomic) MBLRegister *reset; -@property (nonatomic) MBLRegister *bootloader; -@property (nonatomic) MBLRegister *notificationSpoofer; -@property (nonatomic) MBLRegister *keyRegister; -@property (nonatomic) MBLRegister *delayedReset; -@property (nonatomic) MBLRegister *gapDisconnect; -@property (nonatomic) MBLRegister *powersaveOnReset; -@property (nonatomic) MBLRegister *appInvalidate; -@end - -@implementation MBLTestDebug - -- (instancetype)initWithDevice:(MBLMetaWear *)device moduleInfo:(MBLModuleInfo *)moduleInfo -{ - self = [super initWithDevice:device moduleInfo:moduleInfo]; - if (self) { - self.reset = [[MBLRegister alloc] initWithModule:self registerId:0x1 format:[[MBLFormat alloc] initEncodedDataWithLength:0]]; - self.bootloader = [[MBLRegister alloc] initWithModule:self registerId:0x2 format:[[MBLFormat alloc] initEncodedDataWithLength:0]]; - self.notificationSpoofer = [[MBLRegister alloc] initWithModule:self registerId:0x3 format:[[MBLFormat alloc] initEncodedDataWithLength:18]]; - self.keyRegister = [[MBLRegister alloc] initWithModule:self registerId:0x4 format:[[MBLNumericFormatter alloc] initIntWithLength:4 isSigned:NO]]; - self.delayedReset = [[MBLRegister alloc] initWithModule:self registerId:0x5 format:[[MBLFormat alloc] initEncodedDataWithLength:0]]; - self.gapDisconnect = [[MBLRegister alloc] initWithModule:self registerId:0x6 format:[[MBLFormat alloc] initEncodedDataWithLength:0]]; - if (moduleInfo.moduleRevision >= 1) { - self.powersaveOnReset = [[MBLRegister alloc] initWithModule:self registerId:0x7 format:[MBLFormat writeOnly]]; - self.appInvalidate = [[MBLRegister alloc] initWithModule:self registerId:0x8 format:[MBLFormat writeOnly]]; - } - } - return self; -} - -- (void)setMagicKey:(uint32_t)magicKey -{ - while (magicKey == 0) { - magicKey = arc4random(); - } - _magicKey = magicKey; -} - -- (BFTask *)resetDevice -{ - self.triggerDisconnectInProgress = YES; - return [self.reset writeDataAsync:nil]; -} - -- (BFTask *)resetDeviceAfterGarbageCollect -{ - self.triggerDisconnectInProgress = YES; - return [[self.delayedReset writeDataAsync:nil] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull t) {; - return [self.gapDisconnect writeDataAsync:nil]; - }]; -} - -- (BFTask *)jumpToBootloader -{ - self.triggerDisconnectInProgress = YES; - return [self.bootloader writeDataAsync:nil]; -} - -- (BFTask *)triggerDisconnect -{ - self.triggerDisconnectInProgress = YES; - return [self.gapDisconnect writeDataAsync:nil]; -} - -- (BFTask *)isGuestApplicationAsync -{ - return [[self.keyRegister readAsync] continueOnMetaWearWithSuccessBlock:^id _Nullable(BFTask * _Nonnull t) { - // If another app tries to connect to this MetaWear it will issue this same - // command, so lets track any unexpected reads of the key register and use that - // as an indicator someone is trying to use 2 apps simultaneously wihch is very - // dangerous and unsupported. Our only option is to disconnect this app - MBLMetaWear *device = self.device; - [self.keyRegister addNotificationWithExecutor:[BFExecutor metaWearExecutor] handler:^(id _Nullable obj, NSError * _Nullable error) { - if (obj) { - MBLLog(MBLLogLevelWarning, @"Simultaneous Connection - Disconnecting %@ because another App has initiated a connection", device); - [[MBLMetaWearManager sharedManager] disconnectMetaWear:device fromPeripheralSide:NO]; - } - }]; - - MBLNumericData *obj = t.result; - if (obj.value.unsignedIntValue) { - // Write magic value exisits, see if it matches! - if (obj.value.unsignedIntValue != self.magicKey) { - MBLLog(MBLLogLevelWarning, @"Guest Connection - Use caution to avoid causing data loss for other applications"); - return @YES; - } - } else { - // Write magic value since none was present - uint32_t key = self.magicKey; - [self.keyRegister writeDataAsync:[NSData dataWithBytes:&key length:sizeof(key)]]; - } - return @NO; - }]; -} - -- (NSData *)writeKeyRegisterCommand -{ - uint8_t header[] = { self.moduleInfo.moduleId, self.keyRegister.registerId }; - int headerSize = sizeof(header) / sizeof(header[0]); - NSMutableData *data = [NSMutableData dataWithBytes:header length:headerSize]; - uint32_t key = self.magicKey; - [data appendData:[NSData dataWithBytes:&key length:sizeof(key)]]; - return data; -} - -- (MBLEvent *)spoofEvent:(MBLFormat *)format -{ - return [[MBLEvent alloc] initWithModule:self.device.timer registerId:0xFF format:format]; -} - -- (BFTask *)spoofData:(NSArray *)data notification:(BOOL)notification -{ - NSMutableArray *tasks = [NSMutableArray array]; - uint8_t header[] = { 0x0C, 0xFF, notification }; - for (NSString *byteArray in data) { - NSArray *bytes = [byteArray componentsSeparatedByString:@"-"]; - NSMutableData *mutableData = [NSMutableData dataWithBytes:header length:3]; - for (NSString *byte in bytes) { - unsigned tmp; - [[NSScanner scannerWithString:byte] scanHexInt:&tmp]; - [mutableData appendBytes:&tmp length:1]; - } - [tasks addObject:[self.notificationSpoofer writeDataAsync:mutableData]]; - } - return [BFTask taskForCompletionOfAllTasks:tasks]; -} - -- (BFTask *)spoofRawData:(NSArray *)data -{ - NSMutableArray *tasks = [NSMutableArray array]; - for (NSString *byteArray in data) { - NSArray *bytes = [byteArray componentsSeparatedByString:@"-"]; - NSMutableData *mutableData = [NSMutableData data]; - for (NSString *byte in bytes) { - unsigned tmp; - [[NSScanner scannerWithString:byte] scanHexInt:&tmp]; - [mutableData appendBytes:&tmp length:1]; - } - [tasks addObject:[self.notificationSpoofer writeDataAsync:mutableData]]; - } - return [BFTask taskForCompletionOfAllTasks:tasks]; -} - -- (BFTask *)enterPowersaveOnReset -{ - return [self.powersaveOnReset writeDataAsync:nil]; -} - -- (BFTask *)invalidateAppImage -{ - return [self.appInvalidate writeDataAsync:nil]; -} - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Timer/MBLTimer+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Timer/MBLTimer+Private.h deleted file mode 100644 index 0d2c610..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Timer/MBLTimer+Private.h +++ /dev/null @@ -1,49 +0,0 @@ -/** - * MMBLTimer+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 1/12/15. - * Copyright 2014-2015 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLTimer.h" - -typedef struct __attribute__((packed)) { - uint32_t period; - uint16_t repeat_count; - uint8_t notify_on_start; -} mw_timer_param_t; - -@interface MBLTimer (Private) - -- (BFTask *)startTimer:(MBLTimerEvent *)timer; -- (BFTask *)stopTimer:(MBLTimerEvent *)timer; - -@end diff --git a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Timer/MBLTimerEvent+Private.h b/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Timer/MBLTimerEvent+Private.h deleted file mode 100644 index ae88ebd..0000000 --- a/StarterProject/Pods/MetaWear/MetaWear/Internal/Modules/Timer/MBLTimerEvent+Private.h +++ /dev/null @@ -1,52 +0,0 @@ -/** - * MBLTimerEvent+Private.h - * MetaWear - * - * Created by Stephen Schiffli on 3/11/16. - * Copyright 2016 MbientLab Inc. All rights reserved. - * - * IMPORTANT: Your use of this Software is limited to those specific rights - * granted under the terms of a software license agreement between the user who - * downloaded the software, his/her employer (which must be your employer) and - * MbientLab Inc, (the "License"). You may not use this Software unless you - * agree to abide by the terms of the License which can be found at - * www.mbientlab.com/terms. The License limits your use, and you acknowledge, - * that the Software may be modified, copied, and distributed when used in - * conjunction with an MbientLab Inc, product. Other than for the foregoing - * purpose, you may not use, reproduce, copy, prepare derivative works of, - * modify, distribute, perform, display or sell this Software and/or its - * documentation for any purpose. - * - * YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE - * PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, - * NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL - * MBIENTLAB OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT, NEGLIGENCE, - * STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER LEGAL EQUITABLE - * THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING BUT NOT LIMITED - * TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR CONSEQUENTIAL DAMAGES, LOST - * PROFITS OR LOST DATA, COST OF PROCUREMENT OF SUBSTITUTE GOODS, TECHNOLOGY, - * SERVICES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING BUT NOT LIMITED TO ANY - * DEFENSE THEREOF), OR OTHER SIMILAR COSTS. - * - * Should you have any questions regarding your right to use this Software, - * contact MbientLab via email: hello@mbientlab.com - */ - -#import "MBLTimerEvent.h" -@class MBLEntityModule; -@class MBLFormat; - -NS_ASSUME_NONNULL_BEGIN - -@interface MBLTimerEvent (Private) - -- (instancetype)initWithModule:(MBLEntityModule *)module - registerId:(uint8_t)registerId - addEntityParameters:(NSData *)addEntityParameters - format:(MBLFormat *)format - autoStart:(BOOL)autoStart; - -@end - -NS_ASSUME_NONNULL_END diff --git a/StarterProject/Pods/MetaWear/README.md b/StarterProject/Pods/MetaWear/README.md deleted file mode 100644 index c3afa97..0000000 --- a/StarterProject/Pods/MetaWear/README.md +++ /dev/null @@ -1,80 +0,0 @@ -# MetaWear SDK for iOS/OS X/tvOS by MBIENTLAB - -[![Platforms](https://img.shields.io/cocoapods/p/MetaWear.svg?style=flat)](http://cocoapods.org/pods/MetaWear) -[![License](https://img.shields.io/cocoapods/l/MetaWear.svg?style=flat)](https://mbientlab.com/license) -[![Version](https://img.shields.io/cocoapods/v/MetaWear.svg?style=flat)](http://cocoapods.org/pods/MetaWear) - -[![Build Status](https://travis-ci.org/mbientlab/MetaWear-SDK-iOS-macOS-tvOS.svg?branch=master)](https://travis-ci.org/mbientlab/MetaWear-SDK-iOS-macOS-tvOS) -[![Codecov](https://img.shields.io/codecov/c/github/mbientlab/MetaWear-SDK-iOS-macOS-tvOS.svg?maxAge=2592000)](https://codecov.io/github/mbientlab/MetaWear-SDK-iOS-macOS-tvOS?branch=master) - -![alt tag](https://github.com/mbientlab/MetaWear-SDK-iOS-macOS-tvOS/blob/master/Images/Metawear.png) - -### Overview - -[MetaWear](https://mbientlab.com) is a complete development and production platform for wearable and connected device applications. - -MetaWear features a number of sensors and peripherals all easily controllable over Bluetooth 4.0 Low Energy using this SDK, no firmware or hardware experience needed! - -The MetaWear hardware comes pre-loaded with a wirelessly upgradeable firmware, so it keeps getting more powerful over time. - -### Requirements -- [MetaWear board](https://mbientlab.com/store/) -- [Apple ID](https://appleid.apple.com/), you can now get started for free! Once you are ready to submit an App to the App Store, you need a paid [Apple Developer Account](https://developer.apple.com/programs/ios/). -- Device running iOS 8.0 or later with Bluetooth 4.0 - -> REQUIREMENT NOTES -The iOS simulator doesn’t support Bluetooth 4.0, so test apps must be run on a real iOS device which requires a developer account. Bluetooth 4.0 available on iPhone 4S+, iPad 3rd generation+, or iPod Touch 5th generation. - -### License -See the [License](https://github.com/mbientlab/MetaWear-SDK-iOS-macOS-tvOS/blob/master/LICENSE) - -### Support -Reach out to the [community](http://community.mbientlab.com) if you encounter any problems, or just want to chat :) - -## Getting Started - -### Installation - -MetaWear is available through [CocoaPods](http://cocoapods.org). To install -it, simply add the following line to your Podfile: - -```ruby -pod "MetaWear" -``` -For first time CocoaPods users we have a detailed [video guide](https://youtu.be/VTb_EDv5j7A). - -### Simple API Test - -Here is a walkthrough to showcase a very basic connect and toggle LED operation. - -First, import the framework header files like this: -```obj-c -#import -``` - -Then add the following code wherever appropriate to make the LED flash green: -```obj-c -[[MBLMetaWearManager sharedManager] startScanForMetaWearsWithHandler:^(NSArray *array) { - // Hooray! We found a MetaWear board, so stop scanning for more - [[MBLMetaWearManager sharedManager] stopScanForMetaWears]; - // Connect to the board we found - MBLMetaWear *device = [array firstObject]; - [[device connectAsync] success:^(MBLMetaWear * _Nonnull result) { - // Hooray! We connected to a MetaWear board, so flash its LED! - [result.led flashLEDColorAsync:[UIColor greenColor] withIntensity:0.5]; - }]; -}]; -``` -Now run the app! - -*BLUETOOTH IS NOT SUPPORTED IN THE SIMULATOR* but we do include a simulated MetaWear for use with basic testing, however, it does not have all the features of a real MetaWear. - -### Sample iOS App - -We have a sample iOS App on the [App Store](https://itunes.apple.com/us/app/metawear/id920878581) and the source can be found on our [GitHub Page](https://github.com/mbientlab/Metawear-SampleiOSApp). - -The sample iOS App demonstrates the base functionality of the various MetaWear modules and serves as a good starting point for developers. - -### API Documentation - -See the [iOS Guide](https://mbientlab.com/iosdocs/latest/) diff --git a/StarterProject/Pods/Pods.xcodeproj/project.pbxproj b/StarterProject/Pods/Pods.xcodeproj/project.pbxproj index a5809a1..7a13d79 100644 --- a/StarterProject/Pods/Pods.xcodeproj/project.pbxproj +++ b/StarterProject/Pods/Pods.xcodeproj/project.pbxproj @@ -7,708 +7,688 @@ objects = { /* Begin PBXBuildFile section */ - 0014A31142F45CF8DD8F97158A923F16 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D8F6F4A39D77B7B09DBEBC03CD050624 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 03A692AEF2ED48F470E6B7CF1019ACA0 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 30D64E2A8AC33A4E6F9E7E3BF5CD1722 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 014A66651CC5A451DDEB625938387F1C /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 440B67D7DF07B2CC441871F904CE00EF /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 041123E8BDF49911B13644D05184CA05 /* TaskCompletionSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 837B192127E7B12E08CEDCC250CC101A /* TaskCompletionSource.swift */; }; - 04CA6E7EF20337F2D62C7FF0406922D4 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3301A15FC2949AEA2784492EDBC7A70C /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 06C0D6BAB5F22A3ED733A4E29D9A2B14 /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CC22EA09F1BA863F9EE8B97CAD40EF /* MetaWear+Async.swift */; }; - 06D5336482F5A360B1620719ED27C1D9 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D4FB7A5D78EE1FDB4857D9EDF07615C /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 077D1E27C1B0490BDD74BF5B01EEF534 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E3BE72C2F05F975EB0586FF2EBE41C3F /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 0A80CAD573E2FA8014579F77DB102016 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E201522B79ACA9E5B191D8CA137B0533 /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 0B099FCA3E21389F64648E54928C0520 /* common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73596A17D39152C54F79907E905F484D /* common.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 0B6036686D5D49DC8295B31477BB26FC /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D0608D15485BBD00C2D02C2A174FB451 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 047AC10563CA1F9EA9A438A868BA5E3D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 62ACBD4662324E90BCD96BA7EA2BF812 /* Foundation.framework */; }; + 0524949C41B8DBC99D9C22845841642A /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1080D504B29917E7A74A307CB5D66C9B /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 06020BD42B48485B4E23BC936E124039 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FBB3BF4C348A1B541964B842801B6189 /* Cocoa.framework */; }; + 065655D67DCE4BB319E0EFCB963052F3 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1080D504B29917E7A74A307CB5D66C9B /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 069234C20D2C1F6CC6AE823A545281B8 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4D21686F4F9972B460899617E589EE31 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0A5CE683F551657DBEC02354FE72D8E3 /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 322DE5C5FDEA948725D1F86CC8F13DCF /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0B8B740DAA1ECA669A486DE3EA403533 /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4BCFAD90F5D5CA8E5D9B95A2CEBFAA27 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0C67E38CF83C0A6C315EC9C22DEB977B /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A66FB38AF5CED00AEE0D4B25977DF1E9 /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 0C77D9E19D871ECAC707564A2BB53EEE /* Pods-Starter-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = BB8FF63AAD949B90017C1EA691426A74 /* Pods-Starter-tvOS-dummy.m */; }; - 15524AF80C7687EEFE178820AA44AB60 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B36557E57399D9FE06D3DD94D7C1713 /* MblMwDataSignal+Async.swift */; }; - 16180C74AE6F9E2575B1384CAFE9FCC2 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FBC3AE734CABE764F2BA471459498219 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 16F0830A853B092479C886A507DE2CC2 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B36557E57399D9FE06D3DD94D7C1713 /* MblMwDataSignal+Async.swift */; }; - 178F103D7EC8B9D156D85E4C0FC770F6 /* common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73596A17D39152C54F79907E905F484D /* common.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0CD89E7641EF087283E52432D6739713 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9CA6F4AC0236407AFCC5FFFDAFD54C75 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 0D9A14A943F0D679DE342166B44307FC /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C71EE0232314A829D6983C00C4D1685B /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 11B12039E5C90DF4245EAAFF86C9D02B /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4BCFAD90F5D5CA8E5D9B95A2CEBFAA27 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 13BCCC871369BC4BDAFA87DC4D35459D /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8268A18C900AA08EA1EF1132A6AB4641 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 13DDAD6264678FB6657FA7DF83257DF5 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD9A2A311869B111F0574EA193B10550 /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 140AEBC15B85D0674AC93BC1E61ACFBA /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9CA6F4AC0236407AFCC5FFFDAFD54C75 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1459103535433C9E98D48F3A6A71D660 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4D5DFCD24DC8BAFA9FE4C2A744E78920 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 159D5F69CA4B54ED23851DB7A4FC4233 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39D248FB1B6A1DB3D4359DF9AC8C4EF0 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 16C1BC9AF4C1ECF73C0B6B0B705E5B7A /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5DB602D4ECD6283083BCC54699EFE45B /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 172F0C436B6E5366310A6AAD872E293B /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E34B79E148FDB7C37F1437FB08793498 /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1782F8E5E43B98B17BA101A86D2D6996 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6105CB2AC398BFE9DC16A98751E95392 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 17EEFEFFC71F0AC6D1D8B82606F976B2 /* Task+Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 36E8749BB2603A491F9958EE2A3A12F0 /* Task+Delay.swift */; }; - 1850BB07DCAEDB7428DEF05A7594C283 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3301A15FC2949AEA2784492EDBC7A70C /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 187F7B3780CB90BDEA7E3DDB113F5550 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E35692E77DA1D9DEE753AD3CD06C59C8 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 18F89FCB2CB100B4BF83ADE71DF739E2 /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5611B1879BD77C08A4F191EBA98F7DC5 /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 19152FFD996FC9CF163B024D24F02270 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46A0EA664A6D23D23970F2B50FA1ED0F /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1A725BCF419EB201AAD7F0A77BF28710 /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AE6DEF4DCC0A14478137AC7E5923734 /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 191A646CC3D1552A4DBFA456E4242804 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 873067A70EEF28327EB82BFB5FF42397 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 19BDB3299F2CCBC5F500B956703CBE57 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 940B1A78A509FC5E861E0F33B9FF2955 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1A00CD1C782607B84912F7DD8D910441 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = E149DBCDF48543804B2104AEAB54637E /* MetaWear+LED.swift */; }; 1A85E25520CBEB05A133319ACEA5A56C /* Task+WhenAny.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD84494AE611F8C6D2420C8D5A578A8B /* Task+WhenAny.swift */; }; - 1CAF919B7200F1B12A25BC720B8712FA /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8E5337698F92619E772C69177B31FF2D /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1CFB6D47E17FB3C8EDAE2F6EB8747650 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A1BC54611F59DDB9DA105EFA630CE88A /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1F821F1315630039027C4B742E6C0751 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CB218E81B6C29AF1C2468898A82CF981 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 1FA32DF6191FEBB8583ADF7B79EC2A95 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E513416C0B1E25C2439AB961BAA5B742 /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 201A8D3006004DC77C228E3D570F6CAE /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0374A8966340D6C6F204AEDDE7195E09 /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 203844E7708938ED22151CD5C0BDD1E6 /* SwiftGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2C5A74F26A5F693ED79C88FA42343DD5 /* SwiftGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 20669C43F983528EFB1C457F3D2A322B /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FFAEA4E7DEC191F4EB7AFFE15AD8C887 /* BoltsSwift.framework */; }; - 21DD5796A46589CC7E3D8D3FE21E8622 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 469B8B015B60FEA92F8C92251AF6AE31 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 22027B209730C10381D3A5EF7998F75D /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EF2AF82017A5DF639AB80DA9167CB62D /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 228A4AC6B7608A5222B4955AB11F08C7 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46A0EA664A6D23D23970F2B50FA1ED0F /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 231C6C3D6A36B403E06ED2DE5D0277FF /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 940B1A78A509FC5E861E0F33B9FF2955 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 24D828C45E6F71B2082242FEC478A6D9 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CB218E81B6C29AF1C2468898A82CF981 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 256865952B85AD41E9BD93E916A0A0DD /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87D659F1465356AA74B9A092439A6D8A /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1C686346E9429EE2C33B46744233B59C /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C71EE0232314A829D6983C00C4D1685B /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1C890CB7D318B42A9552032528E48547 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 041D9538C8286C10748E8E8B52C25B2A /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1D94194D3BEDB6AA1DE4851BA9E9A4AE /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E34B79E148FDB7C37F1437FB08793498 /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 1D958D639CB914592F357B08ACB30A90 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9CED93C4D93A38B9822FDC7E7AEDE54E /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 20212C700E6D0DAB6629A734FD9979AD /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 98EB1140A71E6201AFB78EF6D744BBB3 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2381FF16A6B131017740E0AE145FDB90 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AA222498403C37B047BE83037BD42325 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 23BE5D1D3354E16CD49EFF90B25CA951 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AC53A490DAFFB5D16AFD5E7B7C3D700 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 23C1F0D819F06331B0165B541474AA37 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9144025DABE270C8035839AAC2D6CF6 /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 23DD6A092C4E6F098659B6B77D8DF532 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 258260CAA5679A15FCBAADAAE4B672B4 /* ScannerModel.swift */; }; + 24BD27192A3035045FB1F5088A8D37DD /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F26F81A7AD9B9B926E9106B90C1263D9 /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 2575109DD723D9A21749C10103DEBEC5 /* Task+ContinueWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5D65D6F3D9A1EC0060BD382ED9DE1ED /* Task+ContinueWith.swift */; }; - 259E2EB27A2359C48F7958CF9E78CECB /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9282C71969A1439C75E173883400052A /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2628224ABCBDFEC7A2567C2A848000E5 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D8F6F4A39D77B7B09DBEBC03CD050624 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2687D31A9F75D0A73139754E456628E9 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9282C71969A1439C75E173883400052A /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 26995070AFF602D3165DAD25B3FAC067 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A1BC54611F59DDB9DA105EFA630CE88A /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 26BC7FD4E1C7AAECFFA19356465D2DD0 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD9A2A311869B111F0574EA193B10550 /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 26E737FBDD43E67DA5AF78F8C5ADC85E /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F8D4FEE512423AEBA199921A57ADEF46 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2719F65CC486072C543ABE92DEBEDC37 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A8A76DCFF9440906C34B2692D420CFD /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 280392E00A51885851356F6F55EC59D0 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DB26455D1DB0B9B017F42AF23632D353 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2970478C2D5DF00B038205E8E7AFE7F2 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB6ECAA2DC4375581C0E7143B4B4F2B1 /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 2A1068BADE74247CBE0A05BDF2E52634 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 469B8B015B60FEA92F8C92251AF6AE31 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 25FFFB8A14FF23DA251A0D02517B0BCF /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A92C6A27B8E84326669B52DB9203614E /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 2729A78CC413E35973C1E8851F10C2F4 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 96CB75CFF13BAA0A8635C3A4224A757E /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 286F34EA3D2EBE4C33B95BE82D1B95E2 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5DB602D4ECD6283083BCC54699EFE45B /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 2A13229A19D2F7E8499904F2796D7E69 /* Pods-Starter-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B1B3569712E32522356304FB6B9DF2A5 /* Pods-Starter-macOS-dummy.m */; }; - 2BF42E06871308B91BDD5E17AA9753F1 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D4FB7A5D78EE1FDB4857D9EDF07615C /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 2C4D89B5A708C91CE814A3FDF4FE2608 /* MBProgressHUD-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A4A6B497310165A8A16BDFC2E6DC8B0D /* MBProgressHUD-tvOS-dummy.m */; }; - 2D6693FA2CF1931EAFCDF745534354A1 /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 048875C8ECDAE11D7003057D8B992756 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 2DC6DB0B644E11CF6F5F3BB01E3ACAC4 /* MBProgressHUD.h in Headers */ = {isa = PBXBuildFile; fileRef = 363FA38843C2836FEF61C1DBC3EC40C0 /* MBProgressHUD.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 2FE192EFAFFD820C7C6B3503F44B717D /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CC22EA09F1BA863F9EE8B97CAD40EF /* MetaWear+Async.swift */; }; + 2E0C0437E465BCD132285600B2C27EA1 /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CC22EA09F1BA863F9EE8B97CAD40EF /* MetaWear+Async.swift */; }; + 2FC40B93A9F61BEBE7774E19A7411710 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F64EC134A32A2E2619915856F128C5C /* MblMwEvent+Async.swift */; }; 2FF24404FE5B2EB0AAF24C6CC239A360 /* Task+Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 36E8749BB2603A491F9958EE2A3A12F0 /* Task+Delay.swift */; }; - 2FF37A9085F3AE8B4F5D818D1B437F3B /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FFAEA4E7DEC191F4EB7AFFE15AD8C887 /* BoltsSwift.framework */; }; - 3002C8371B19C2E0A24643652A227D46 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 45940F0CF94A548FC9F3B4FA33051F8E /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3100EB2B963D0392824F2632AECBEF00 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E9F0F9BC85B1D451DE7DA97C59957ECD /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 33A4B1DCD85F8E6CA6A7676F01BED65E /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B36557E57399D9FE06D3DD94D7C1713 /* MblMwDataSignal+Async.swift */; }; - 3500A3C847D19046F4C42180349B781F /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = E149DBCDF48543804B2104AEAB54637E /* MetaWear+LED.swift */; }; - 353F993E28096768AC6691BF74212084 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7AD861E0372523DEECEF815D9FA7F8EE /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3543EA7C331150D535FFAAEA77718AB2 /* CSharpGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8DA8F605306A00A56093264E789638F9 /* CSharpGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3559EE0E1B4664C757A4571C06775274 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 30D64E2A8AC33A4E6F9E7E3BF5CD1722 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 30449DC8344D1CFC4885BDE0CDDB8040 /* MetaWear-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 7BF15712AABD985A36C7041D143B0F7B /* MetaWear-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 3146109CDA4A6178FB01CD76D4697831 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 873067A70EEF28327EB82BFB5FF42397 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 31623DAB391CB788B64C50F355D6E2A3 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 98EB1140A71E6201AFB78EF6D744BBB3 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 32BF7369CCB34545FBF13AD2FD926073 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 622353FD062886C34247C4FAA064770C /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3591F2E559A996A99D1A48F21A3E36A4 /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 368B609454A40BCA2D47E0559091B55D /* CoreBluetooth.framework */; }; 35D1D588025EF2D15D8F95BBA7041C57 /* MBProgressHUD-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 8754823756355F1A18C60F348C8B8CFA /* MBProgressHUD-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 38866C4F499B7C987A7BD75B79718765 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9282C71969A1439C75E173883400052A /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 38976BB25614C69769492DA355DFB469 /* MetaWear-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2AD5AA094AC651E9C924FEE31376C333 /* MetaWear-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 3607CA36EEFDA3162E9CEA01956D20B8 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 98EB1140A71E6201AFB78EF6D744BBB3 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 366284B882BBD26FA8347D21B8F141F8 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B1559D9AD0C59A4263268B2823A06BDD /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3669BF7643CFD729A92BC93B1681E041 /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2E036ADC482B4B030FE4648F17AC2AF4 /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3686C7045F6D7680744E73F7DE1C6E0B /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1D8723325F15311F9E5CFA1E39C3D537 /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 36B390E1BC8AE659460C94B68DEC8AB0 /* MetaWear-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2AD5AA094AC651E9C924FEE31376C333 /* MetaWear-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 36B5D78210897CBDA6EBE5AF3E2D43CD /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1D8723325F15311F9E5CFA1E39C3D537 /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 37048A8C42106AB3788B980B69DBD4AF /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 936C85CD5632707AFDBA77A49B76B8D4 /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 38AA5C3ADAAB8085BA56AFE8782B345E /* Task+Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 36E8749BB2603A491F9958EE2A3A12F0 /* Task+Delay.swift */; }; 3941A75CC188FE7BDED71339B96CC1C7 /* Pods-Starter-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 03F915EA8DA168A6746EE05A27437E6B /* Pods-Starter-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 39FCE0410151B5721D3BE3604ACA380F /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31FB69DDB532444DA82167E53E4B1683 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3A7C2AA34343C3770C12D8D339679CFC /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9CA6F4AC0236407AFCC5FFFDAFD54C75 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3B71FD81FE14146B0B040CDFFD73FE4C /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A6FD942C8BC69385A7C869C3DBF689B6 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 3B8192DDEB643B6066EE1E5156ADD514 /* Task+WhenAny.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD84494AE611F8C6D2420C8D5A578A8B /* Task+WhenAny.swift */; }; - 3B9C8B3B7CE4FC381B73B4D49DF09E14 /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FFAEA4E7DEC191F4EB7AFFE15AD8C887 /* BoltsSwift.framework */; }; - 3CC3B7943A8409B33D729827E92A7C10 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6C947102CABC6CF1B03A3CC74BFE1143 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3DA9EC6C9DC71F587494883CEC122F1E /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DBF5C8F2E797539E9CAA66EC26BC6E5E /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3E4265511D9A5AC5B8829F574822B343 /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8E5337698F92619E772C69177B31FF2D /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 3E6B292275D6F2E3CB23119707E3CF00 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 45940F0CF94A548FC9F3B4FA33051F8E /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 41497E852551A843D068FCCA6095AD53 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 497DB20EAE931C659A46172B75E5B8E6 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3E39B2A161704DD8329E54687EBB6792 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 041D9538C8286C10748E8E8B52C25B2A /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3F5FA8DAD254A3D11D8C6D489CEBBDFF /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C129BF0B3E163B2A9A5AE98ADD5A9BD /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 3F9FF4860A0F7B9D61F5D5AEC9371391 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA0560F3124490759DBB7E2EF9B80E4D /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4078DCE93A8E023350BEDD61963A9D71 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B36557E57399D9FE06D3DD94D7C1713 /* MblMwDataSignal+Async.swift */; }; 418F3DAFDC4AF200D7CDE275A94997C2 /* MBProgressHUD.m in Sources */ = {isa = PBXBuildFile; fileRef = D85F0CF7B03ECBB29CF09997E90A440E /* MBProgressHUD.m */; }; - 424DF1FC4751C62203EEB0959811735E /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B71604572313E9BB286E64E29DBC6732 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 428D9B67876EC88BE60B452EAD5F84A5 /* MBProgressHUD-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 33BF957528576B66622BDA86E26B08A2 /* MBProgressHUD-iOS-dummy.m */; }; - 428F82ED9C61A6EB96D25452050E8D77 /* MetaWear-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 6F4DFDD326DF0F687E3A573D7C34CB4D /* MetaWear-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 42AA346EECAD5AE9FEE7DE6BA5ADB909 /* PythonGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E390F0DA33824EEA188BADFECC38820 /* PythonGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4290E5340BF6C3718EDDB7BAC36E298C /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 622353FD062886C34247C4FAA064770C /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 43C9A6DE352D1908736E7F0AAFD22A83 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 62ACBD4662324E90BCD96BA7EA2BF812 /* Foundation.framework */; }; - 44D90BE3E3A318A2DE2B765A539BE606 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = E149DBCDF48543804B2104AEAB54637E /* MetaWear+LED.swift */; }; - 4839B890D86547C12E28C1B9984C7BF2 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DBF5C8F2E797539E9CAA66EC26BC6E5E /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 43CD8560868D2E01733D532ABD988EF8 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 96CB75CFF13BAA0A8635C3A4224A757E /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 484EB9AA3C52F20DCA088502F5483EB3 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 62ACBD4662324E90BCD96BA7EA2BF812 /* Foundation.framework */; }; - 48D32CD4FB4E7356AAEE1D089DB27C47 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 69478DF70155827E5C4A8D65FE8544EA /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 4BAF6EE2DABB8814F27CDEB8EFE5CCDF /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 915C92E52AD291DB12C9D2632199C9A3 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 4D0507DB2116EC1F1DF1FAE69E367736 /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E61CD130A90592403E1785F55D129BF6 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 488C00ED4EF951BF120A9D4744C46514 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A66FB38AF5CED00AEE0D4B25977DF1E9 /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4BD1FED367E93D00A17A28DDE122CC97 /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87D659F1465356AA74B9A092439A6D8A /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4C37E94EED12290BA008E5411CE988E3 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BC285E1A6866C9A5A6611C0D1144A7A /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 4D07CF26DFE82FEAB36B03293E884E3A /* Executor.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEFC2E63C96F3AA31A529BF1F51E6C74 /* Executor.swift */; }; - 4DF390DBA13DEB209AB2D5B6A72C5B07 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 497DB20EAE931C659A46172B75E5B8E6 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 4E11F70E0B418E9719C2111C08FD6047 /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F8F58A4DB3EC7AB82C245D76694985D7 /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 4F16EC419BE5AD01EDE65419E1258D7E /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 469B8B015B60FEA92F8C92251AF6AE31 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 503FE1CA27065E51E9571B19A89EBEC8 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EF3984D14110A5F2723454D510C554B8 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5245DE8BDA3CEF69FD3F68960DFD5212 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5B1FDC1A446A4999A70F9AD891F6203 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 55011E1376E4542939FEF78AC4577BEE /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 048875C8ECDAE11D7003057D8B992756 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 555CF92B5CF0860E6382A3D99BED516B /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5611B1879BD77C08A4F191EBA98F7DC5 /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 57BCC7D7C52D44A32C2FE28DDC51FBE4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 62ACBD4662324E90BCD96BA7EA2BF812 /* Foundation.framework */; }; + 4E008BD9612D9A61C7458913B336A655 /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00DE7570816253D5BCFEAA0889CD7B8A /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 4F09705A86DE6C065D3E09A57E9F0373 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9CED93C4D93A38B9822FDC7E7AEDE54E /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 51F6110EEB82C5D33CE17BC7B08AA880 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB6ECAA2DC4375581C0E7143B4B4F2B1 /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 53207967CBA081EA79CC080B5C937661 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46A0EA664A6D23D23970F2B50FA1ED0F /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 546C1550269ADC2665E7BAFF8B03B55D /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AC53A490DAFFB5D16AFD5E7B7C3D700 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 54C03B78B13C516A3050802B7A7D24BF /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2E036ADC482B4B030FE4648F17AC2AF4 /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 56D6BA3462303C3259D8C4E6B4BAE10D /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 440B67D7DF07B2CC441871F904CE00EF /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 58DA6845EFFC6FDA03D7933277AB36CD /* Task+WhenAny.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD84494AE611F8C6D2420C8D5A578A8B /* Task+WhenAny.swift */; }; 591CFE7E7431D4ACAF447FA33F19FBD6 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8A94499076F43ED27622B582C18A1DD8 /* CoreGraphics.framework */; }; - 598E9CADA08B465439642DDDFB6650FA /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6C947102CABC6CF1B03A3CC74BFE1143 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5A90FE173B59A4604C5C032C68493EDD /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FBC3AE734CABE764F2BA471459498219 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 5E296B37789E0CC1DBFEABD2AA4095C9 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F64EC134A32A2E2619915856F128C5C /* MblMwEvent+Async.swift */; }; + 5B20789166A1E738BAB1F4F04508C5A0 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8268A18C900AA08EA1EF1132A6AB4641 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5B3DF2209FAD551C171BD95D0B576DB9 /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 800695C91E09337CF59DAEA9AC08A10B /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5BCDA5AD485D585DD275249F99C159A0 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4D21686F4F9972B460899617E589EE31 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 5C1DAF381F111FDB508CDAE56B8BA4FD /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1080D504B29917E7A74A307CB5D66C9B /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 5E8C6E9C84996C14D7754D8C9FE0ACFE /* TaskCompletionSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 837B192127E7B12E08CEDCC250CC101A /* TaskCompletionSource.swift */; }; 6016899346D2C439D466C959F051E566 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9DC9077D61C1F98C3178577A231EDCFA /* CoreGraphics.framework */; }; - 62C1023A5E2F8B3F34B4E6C5366A4014 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 01D834C2C6B1749521F45F5CAE05A0AF /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6386469E50D711E0B9F43C1109686548 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A8A76DCFF9440906C34B2692D420CFD /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 63DDB564AD84EB019AC65C93AB8F81F0 /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E513416C0B1E25C2439AB961BAA5B742 /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 63FAD868B24E6B7748160B6B2A8DF8E0 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 01D834C2C6B1749521F45F5CAE05A0AF /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 60A18A76E103C5E0D671648EBC2C54C9 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA0560F3124490759DBB7E2EF9B80E4D /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 61155B83C1CD5564E402C97AAABB5301 /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B36557E57399D9FE06D3DD94D7C1713 /* MblMwDataSignal+Async.swift */; }; + 62BB29DD4A13123ADF3078527415A44A /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 72606E964BE0EEC7D8CAF7820504909D /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 63A00778EBDBC48FF8E79635A5BDA137 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A6FD942C8BC69385A7C869C3DBF689B6 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 63B6E69326D6B142E8C8A466E8EA198B /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 622353FD062886C34247C4FAA064770C /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 64D2D743320686F9D9F1D43BDB00B69A /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6105CB2AC398BFE9DC16A98751E95392 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6525B3604A027B49BF64F91E0A9C5456 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC06CFE2FE2E56FAB739148BF89AE0C7 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 652C419571AB0F8B86D47417A11CDF1C /* TaskCompletionSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 837B192127E7B12E08CEDCC250CC101A /* TaskCompletionSource.swift */; }; 66506341EC41A72C818EB1B795046A62 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FBB3BF4C348A1B541964B842801B6189 /* Cocoa.framework */; }; - 66AAC37B28988CAF55464DCCF661F6BD /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F64EC134A32A2E2619915856F128C5C /* MblMwEvent+Async.swift */; }; - 67C66BB7856B3DE85F4E1C321B150C7B /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6D4FB7A5D78EE1FDB4857D9EDF07615C /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 67E33686A3B8D4DB42F9AEDB84ADBBC5 /* PythonGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E390F0DA33824EEA188BADFECC38820 /* PythonGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 670EFE02E4739BEF2D9139ABF87AAA8A /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE6B25EA7F6BAC20B469AFA0E9107547 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6829201C8EC299F3532AA2AB36312070 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB6ECAA2DC4375581C0E7143B4B4F2B1 /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 682A2B6EBF7462C94283551D84E423DB /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C71EE0232314A829D6983C00C4D1685B /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 697CCE81E02FD15611AD5B4C86D3B2C8 /* Bolts-Swift-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = F1CFA36BBDAADC3C7B435BF2E42672A3 /* Bolts-Swift-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 6AF38C98C1734B226BFBA56F13BDA5E8 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D08C199309C453DFB18384D427ACC20F /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6B0F09B34EC1DED9C1944FD4AA1C199E /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5B1FDC1A446A4999A70F9AD891F6203 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6B2B9202D95431A8D50317F45BD9FB63 /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AE6DEF4DCC0A14478137AC7E5923734 /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6B6BA1766438B75C02F7A53F19E9E3A6 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31FB69DDB532444DA82167E53E4B1683 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 6FAC24D771A5F5409D7FAD1AF4108C06 /* threadpool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 01D834C2C6B1749521F45F5CAE05A0AF /* threadpool.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 7081CC1291BA714647C51F53AD604B9E /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 960E6CF8D16AAFA541846C643B412CED /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 70D34329E457DB5A73EA3908FCA04B63 /* common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73596A17D39152C54F79907E905F484D /* common.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 71368054D134564D3F572F0294BBC05E /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB6ECAA2DC4375581C0E7143B4B4F2B1 /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 715835AA319F6B00102B8EA41FAFD9BC /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D0608D15485BBD00C2D02C2A174FB451 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 724843BE996C01CBF81F06DFD1788B2D /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FFB774922242F93A433397808756C1EE /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6A1903C2DD4E55F718FF74542B3F2474 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = E149DBCDF48543804B2104AEAB54637E /* MetaWear+LED.swift */; }; + 6B72C8A68368F1D36F1BEE2451748DB2 /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FFAEA4E7DEC191F4EB7AFFE15AD8C887 /* BoltsSwift.framework */; }; + 6C603603BB8401A92F84979FDE87BE22 /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87D659F1465356AA74B9A092439A6D8A /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6CA235C5754344CCA5B4EBAA5553A1F5 /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 130C412BC833896D101596638D703B79 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6DFA4DBBAA258AC24BEFF817399421DB /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1DFAC2B8FB12FC2C9742C5C2ECB67454 /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6E40341A7331841899FF1692D9B0C178 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1D8723325F15311F9E5CFA1E39C3D537 /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 6F9F6A0218EB768882E4854A0D05F1A1 /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 130C412BC833896D101596638D703B79 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 70B99EBDF0FF3AABF0E268A6512269FE /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8268A18C900AA08EA1EF1132A6AB4641 /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 72D27DF79BEEA067C9707C5FDFC8A6FF /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7DFA7E1CF90980A0A17D88F03E86FD05 /* Errors.swift */; }; 72E60F7411C6077AED13F9800054438C /* Task.swift in Sources */ = {isa = PBXBuildFile; fileRef = B15555497F693B6A99DE2F485EF4A1AC /* Task.swift */; }; - 748599986A02CB3A1CD0BAA30ECCFD65 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E35692E77DA1D9DEE753AD3CD06C59C8 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 770616CEC8F8011DC53F21C2C9DC0382 /* JavaScriptGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08A673C854AF0D8C3D944940AF04ADF4 /* JavaScriptGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7653E2A01952ACF27D20217BDEB6B374 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46A0EA664A6D23D23970F2B50FA1ED0F /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 79DCFD5516667F253580E607C9CB73D5 /* MBProgressHUD.m in Sources */ = {isa = PBXBuildFile; fileRef = D85F0CF7B03ECBB29CF09997E90A440E /* MBProgressHUD.m */; }; 7A04D5CD995C5E94005A7A2F304035AD /* Executor.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEFC2E63C96F3AA31A529BF1F51E6C74 /* Executor.swift */; }; + 7A583B30B6006FAB205381257F27808C /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 258260CAA5679A15FCBAADAAE4B672B4 /* ScannerModel.swift */; }; + 7A61DF07DE0B71ADF1FB3915035B23E9 /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4D21686F4F9972B460899617E589EE31 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7B0D47F268356F5401C33DADAE94B4D5 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AA222498403C37B047BE83037BD42325 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 7B191AFF5067E87545FB80092A529B43 /* Task.swift in Sources */ = {isa = PBXBuildFile; fileRef = B15555497F693B6A99DE2F485EF4A1AC /* Task.swift */; }; 7D0D2355F24951B4A0B35C9ACCEDE121 /* Task.swift in Sources */ = {isa = PBXBuildFile; fileRef = B15555497F693B6A99DE2F485EF4A1AC /* Task.swift */; }; - 7E37C424389699B98AE505D080DE49EA /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CC22EA09F1BA863F9EE8B97CAD40EF /* MetaWear+Async.swift */; }; + 7D2F0C971D06483A895BC573B5E20451 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08B3F6FB756B6C33CD4EEAB5FAC2A3AD /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7D67C1CC3850DE5DE98E281F795EAFCB /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9144025DABE270C8035839AAC2D6CF6 /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7DB9742576E3BC5EFEE809149861D71F /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB6ECAA2DC4375581C0E7143B4B4F2B1 /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 7FAE07C224FA939BFF0FC044A8EFC0CF /* MBProgressHUD.h in Headers */ = {isa = PBXBuildFile; fileRef = 363FA38843C2836FEF61C1DBC3EC40C0 /* MBProgressHUD.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 81D37212609958C8D4AC676289AB798B /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 47B0FA97D88DC55F5C8D9B70618CFE50 /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 82182EB272D1C8BA20E584BF77492BB3 /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE6B25EA7F6BAC20B469AFA0E9107547 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8221AD2CFA3AE7A89AA7844C5963F651 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BC285E1A6866C9A5A6611C0D1144A7A /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8393D965460E8FD5BF384DF8F7D92EDB /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE6B25EA7F6BAC20B469AFA0E9107547 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 7FED0227BD3B17B058F52AFAD8178B3E /* MblMwDataSignal+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B36557E57399D9FE06D3DD94D7C1713 /* MblMwDataSignal+Async.swift */; }; + 80DB83629BA96CE3E43D3CF41A687ACE /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 936C85CD5632707AFDBA77A49B76B8D4 /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 819C8FD3E4C8CB8154E09033D6368B09 /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C8F246D88EFD44DBED1336DFA2FBA42 /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 822D7F45F3216449B34166BDA01F08C1 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2782F7B99963B84157F1AA0390EC00A1 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 82A40C437C1674493A8B21A6DBB3B735 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AC53A490DAFFB5D16AFD5E7B7C3D700 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 83B1B34720AA1EAAE7D713AEDE74A678 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2930A596A32FF425D7DAB104DFA2F73B /* Foundation.framework */; }; - 854120AC9CE144D477BBA7CB28B5F138 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 258260CAA5679A15FCBAADAAE4B672B4 /* ScannerModel.swift */; }; - 885A384CD3D953975CBF0D878B6E00B2 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EB4834A2855D12DEF11E3933422A1571 /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 89CB4C55AD20FC80C63E0303C3AF2AF3 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9144025DABE270C8035839AAC2D6CF6 /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8A0E255FADB60E45BA3CFAA6A2BD45E2 /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = E149DBCDF48543804B2104AEAB54637E /* MetaWear+LED.swift */; }; - 8A973496271A2FC9105041839921C465 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A8A76DCFF9440906C34B2692D420CFD /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8B2718D2EF1537DEC60EA3368C0C82FA /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F8F58A4DB3EC7AB82C245D76694985D7 /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8B2CDF9CEDE2AC82249DA185DC6987D2 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7AD861E0372523DEECEF815D9FA7F8EE /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8C63607B4BC81098C084E5D480C67C79 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BC285E1A6866C9A5A6611C0D1144A7A /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8E3EBF7FB5A144669ACA9C2A9959014B /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31FB69DDB532444DA82167E53E4B1683 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 8F31B09D782302C8B46EA7097F5F73B1 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC95E47A76D8C1A2E83EC0B0254B906C /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 91BF982A6325FF30EAB98ECE8CD7D696 /* MetaWear-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 563914C0B411345CAB35522A89CCFB92 /* MetaWear-tvOS-dummy.m */; }; - 927E64C0AF69CB582A45203A0D5717E5 /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D0608D15485BBD00C2D02C2A174FB451 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 92CBA17BE5DAC2E731014601D2EDBFCD /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5B1FDC1A446A4999A70F9AD891F6203 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9473BD6B6B45FE028524DAD62B1DEC5C /* SwiftGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2C5A74F26A5F693ED79C88FA42343DD5 /* SwiftGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 94F569ACF894EE4C4F077232344C893C /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EF3984D14110A5F2723454D510C554B8 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9560D784E84B61CEE051D7FDB234BD13 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46A0EA664A6D23D23970F2B50FA1ED0F /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 84511E3364F7FEE57520E09AFEDB3B05 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 162114BF7CBBA07BD9066AFD5B158298 /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 87F888DDF5E394A9495813C6FBA97271 /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E357C9843A2739ED72A001AF3DAA8272 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 87FA84139939C0F02D908392C5ADE8EE /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FFAEA4E7DEC191F4EB7AFFE15AD8C887 /* BoltsSwift.framework */; }; + 896CA72E415E95CEBC9D493BB8A80222 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39D248FB1B6A1DB3D4359DF9AC8C4EF0 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8B186687F9AA50A15299676822136631 /* ibeacon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6105CB2AC398BFE9DC16A98751E95392 /* ibeacon.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8B85B944FC63DA22A8F21621BA0C91FF /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08B3F6FB756B6C33CD4EEAB5FAC2A3AD /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8C56DB501F42C3CE3601736A73795D61 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B1559D9AD0C59A4263268B2823A06BDD /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8D9C00A50C994FAEB8005BEB93036B0F /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8C62E827F21DEB7A8FD41B842D2F7D2C /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8DA763C2170074644949E476B83BA129 /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 936C85CD5632707AFDBA77A49B76B8D4 /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 8EE19A23C99099CC70D1D728ADB37695 /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F64EC134A32A2E2619915856F128C5C /* MblMwEvent+Async.swift */; }; + 8F5BE636CE9E9EF431C5E48E72CD30C5 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BC285E1A6866C9A5A6611C0D1144A7A /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 90DB7324D75D64F403AACB2446E7FF08 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA0560F3124490759DBB7E2EF9B80E4D /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9354C84D943C524A846DE7AA47BF1151 /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 162114BF7CBBA07BD9066AFD5B158298 /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 93B208B87B2B5F04CBFD978F44648E41 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 258260CAA5679A15FCBAADAAE4B672B4 /* ScannerModel.swift */; }; + 943056798A2ACF079F905441C031F7D1 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD9A2A311869B111F0574EA193B10550 /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 94ABFB494BCA20BC68B6C584FC2E7BB8 /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A92C6A27B8E84326669B52DB9203614E /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 95013563ABD941F2EF01086B6FCFF5AB /* sensor_fusion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 162114BF7CBBA07BD9066AFD5B158298 /* sensor_fusion.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 95B2655BC846E64C917139D97BC9BD5B /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 940B1A78A509FC5E861E0F33B9FF2955 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 96842388F596B35029DAF34B0C8197CD /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7DFA7E1CF90980A0A17D88F03E86FD05 /* Errors.swift */; }; - 972B08A105885405DE062AB73B41A25D /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87D659F1465356AA74B9A092439A6D8A /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9A1E7047ECBA60B34392CF1D33CADE5C /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DBF5C8F2E797539E9CAA66EC26BC6E5E /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 97B380631AB2172B9B9954CBDA5ECE10 /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 322DE5C5FDEA948725D1F86CC8F13DCF /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 97CBBB2674CA361CE034235315B8BDF0 /* MetaWear-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 563914C0B411345CAB35522A89CCFB92 /* MetaWear-tvOS-dummy.m */; }; + 97F05474FB76EF172A21E62742AC40DD /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C8F246D88EFD44DBED1336DFA2FBA42 /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 98EAADBF7AEA76AB8ED3D52258BB9395 /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 800695C91E09337CF59DAEA9AC08A10B /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 990EE7D0235D18E142E537218FF62800 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC06CFE2FE2E56FAB739148BF89AE0C7 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; 9A2C4B49C5E9259DD74393605004741A /* Task+ContinueWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5D65D6F3D9A1EC0060BD382ED9DE1ED /* Task+ContinueWith.swift */; }; - 9A4CF5EFA1053D34BDBFABC39197DDAE /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EB4834A2855D12DEF11E3933422A1571 /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9A9B6E40AA20B07E1693848F9CDE92D3 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E3BE72C2F05F975EB0586FF2EBE41C3F /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9CA40DFBCF4374057B3F7537C222DCF1 /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 497DB20EAE931C659A46172B75E5B8E6 /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9CAFF904B28525D0C60F45C37C34BAF2 /* MetaWear-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 7BF15712AABD985A36C7041D143B0F7B /* MetaWear-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9D3A1B52DF5E8B33527CCE0276D539A3 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3301A15FC2949AEA2784492EDBC7A70C /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9D52C1B12AE41F8836F47B06C7A9F59D /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0374A8966340D6C6F204AEDDE7195E09 /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9D68C3DBB769842B31FF920093973CA5 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D08C199309C453DFB18384D427ACC20F /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - 9E9760F57A75A0871F52BC26A237DB89 /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FBC3AE734CABE764F2BA471459498219 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A0E0AB7C968ECA9161DA46965657DA78 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B71604572313E9BB286E64E29DBC6732 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A2F8503188C73215D66397BA592E002E /* CSharpGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8DA8F605306A00A56093264E789638F9 /* CSharpGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A31CC0581975A93AC672339085FC808C /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AE6DEF4DCC0A14478137AC7E5923734 /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9AE49AB6E3FAF1DB1DE4AA4404669419 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E3AA7E93FB447F481AC11377F1524C97 /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + 9D2DB3E3E0A71A336D18DAE0D20FFFD0 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 72606E964BE0EEC7D8CAF7820504909D /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A0158FC78D93FCAF4EF96703E69902F4 /* String+VersionCompare.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46A0EA664A6D23D23970F2B50FA1ED0F /* String+VersionCompare.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; A3761FD6656A8ABE4D9413ACA5CF8D13 /* Task+WhenAll.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB5787F377410A3566126C52B31A1EE0 /* Task+WhenAll.swift */; }; - A3B0A71DB6AB6BB8213F93E627B45BA9 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 30D64E2A8AC33A4E6F9E7E3BF5CD1722 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A5431868A4FC4E3593BC18891CAFA0FD /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7AD861E0372523DEECEF815D9FA7F8EE /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A54D3D09A6EBA2A545EA48140E598611 /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BC285E1A6866C9A5A6611C0D1144A7A /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A67805997E22E904B2B53A1E39A11590 /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 130C412BC833896D101596638D703B79 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A6983B4A50D6D63ACA836DC9A5AA94C0 /* MetaWear-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 6F4DFDD326DF0F687E3A573D7C34CB4D /* MetaWear-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + A6C108BEF3C0C2B20352E170EABE53B8 /* file_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 873067A70EEF28327EB82BFB5FF42397 /* file_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A7DD9A49357F336B8F083DA3D4556B58 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F7673374ED5494F00B986AA3EF36297 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; A8466FE5C48C1E85637CE4BB79265262 /* Bolts-Swift-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 26AA8BF3E47F5213AC49F51A2F14D082 /* Bolts-Swift-tvOS-dummy.m */; }; - A88A44078E834A3F0E9AC5B32E3E9C4D /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE6B25EA7F6BAC20B469AFA0E9107547 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - A9F2382185A6ACBE738DC06FA4A70052 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AF9BE72D3F724EFB9A6ADFDE7CF0DC2E /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - AD4D3C81A904AE78FB14DA7D98F0A6DB /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5611B1879BD77C08A4F191EBA98F7DC5 /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - ADB060AC0D87EDA5F01642AF5C37EDB1 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AF9BE72D3F724EFB9A6ADFDE7CF0DC2E /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A935CC4D5BBAA4893BD49D18D16BC46E /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4D5DFCD24DC8BAFA9FE4C2A744E78920 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + A9EDA8AF487DE77575123E54233FADC7 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1DFAC2B8FB12FC2C9742C5C2ECB67454 /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + ABA00677F7FF3FAF143404651140D3BB /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1DFAC2B8FB12FC2C9742C5C2ECB67454 /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + AC164AB89D959480F833940917463143 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C129BF0B3E163B2A9A5AE98ADD5A9BD /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; AE820863AA78013E03649B1A70CD6E2B /* Pods-Starter-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F13FC7E2EA6900A8A2228E057CB9D94D /* Pods-Starter-iOS-dummy.m */; }; - B013EAE133CA81919DAA21A77FB8667B /* CSharpGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8DA8F605306A00A56093264E789638F9 /* CSharpGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B1BD375B7DED21AC3C11F34FC9597489 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EF3984D14110A5F2723454D510C554B8 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B2599F065389E1B19785D81A0600D8ED /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC95E47A76D8C1A2E83EC0B0254B906C /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B2F56D4605F8876AA6762A10C77BC484 /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 69BBBFBD413E4347F9175B0DC4182489 /* CoreBluetooth.framework */; }; - B3602E2EDFE23F1EB99EA8C2F4FC2DBB /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E61CD130A90592403E1785F55D129BF6 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B406DE7B106F854062DB2327F9B83189 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 940B1A78A509FC5E861E0F33B9FF2955 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B05E3785007EBEE30E7B8CD79227B143 /* timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4D5DFCD24DC8BAFA9FE4C2A744E78920 /* timer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B0F84724D3B29961DC8439E4A22FB6C5 /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00DE7570816253D5BCFEAA0889CD7B8A /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B173AB4D54E4E2BFE17FBAFC61E534ED /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC06CFE2FE2E56FAB739148BF89AE0C7 /* event.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; B44201DB8888C4AE1997955FADAA80AD /* Bolts-Swift-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A32F3EA739395EC8FBF864B3A8E08B49 /* Bolts-Swift-macOS-dummy.m */; }; B5A87D8B501C5D8AC39EF9B02F943317 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 16B794F4704C79E1632AA45BFE6195EB /* QuartzCore.framework */; }; - B65EBEF57C8A6F85C807D7E78CC16599 /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C129BF0B3E163B2A9A5AE98ADD5A9BD /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B7FB87FD9851479B332A0E30036E9765 /* PythonGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E390F0DA33824EEA188BADFECC38820 /* PythonGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - B915520A8230401BC8CC78CBBDE26716 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E9F0F9BC85B1D451DE7DA97C59957ECD /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BBB2E266B8D0F3DB111DAFBB8A099256 /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F8D4FEE512423AEBA199921A57ADEF46 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - BF96E928E9BC3AD8F27382CF69C120D3 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D08C199309C453DFB18384D427ACC20F /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C05E69FEF419B1B2ACC8C10ABEA3D9B1 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FBB3BF4C348A1B541964B842801B6189 /* Cocoa.framework */; }; - C1A011DF8AEBB597474C9980724D8DE1 /* JavaScriptGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08A673C854AF0D8C3D944940AF04ADF4 /* JavaScriptGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B701BDDFCD0F77B5E32630C29637DFEB /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A92C6A27B8E84326669B52DB9203614E /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + B8CDC454D5171BC7214157367EF42009 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F26F81A7AD9B9B926E9106B90C1263D9 /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BA3A136562F166EB8169834B162A9A3E /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87D659F1465356AA74B9A092439A6D8A /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BA5F5023C3AC88DA25E387ABC89762FB /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2E036ADC482B4B030FE4648F17AC2AF4 /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BB1E9590E6FBA669592D7AF0B6E59B2B /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F26F81A7AD9B9B926E9106B90C1263D9 /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BD49555E03548529BC7859394679C758 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 940B1A78A509FC5E861E0F33B9FF2955 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BE24FB9397381142A12BDB1CCE437E7F /* datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00DE7570816253D5BCFEAA0889CD7B8A /* datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BF86B17358E46E7F125BC7A855D3EC1E /* MetaWear+LED.swift in Sources */ = {isa = PBXBuildFile; fileRef = E149DBCDF48543804B2104AEAB54637E /* MetaWear+LED.swift */; }; + BFB745DEB5B832545D4C72C6632EF15E /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2782F7B99963B84157F1AA0390EC00A1 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + BFFC83780642BAA0158FD7E76E58D4A2 /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 78FA47E416E330555C8481834F3CF2C8 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C1A8E1AD6A0084519320459275BA3FA0 /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE6B25EA7F6BAC20B469AFA0E9107547 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C29828A687D2AC7BD7D2234E5C82F919 /* ambientlight_ltr329.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E34B79E148FDB7C37F1437FB08793498 /* ambientlight_ltr329.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; C2B1EFCD372318999D8C5CB07C9DD356 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2930A596A32FF425D7DAB104DFA2F73B /* Foundation.framework */; }; - C392A8F80289A97FEBB033BE8AFE5E95 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA0560F3124490759DBB7E2EF9B80E4D /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C3B0F4102AD116AF702E8871E4FD94AE /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 960E6CF8D16AAFA541846C643B412CED /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C4973E0B17208E272C5A5BFE5731F152 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E9F0F9BC85B1D451DE7DA97C59957ECD /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C4DC237CE3DFD050F68ED6D9432A658F /* gpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E513416C0B1E25C2439AB961BAA5B742 /* gpio.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C4EF1F475B020B6EBE6E212DF5ED07D1 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FFB774922242F93A433397808756C1EE /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C56F79C59AA42C0D80590F31F7D1A471 /* led.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CB218E81B6C29AF1C2468898A82CF981 /* led.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C3A872474AF720DD3D2012D52793B6E2 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E3AA7E93FB447F481AC11377F1524C97 /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C44E0B072B39053D6A9734ED291CBA45 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E7CB75A62B9A86FDEEB009D335893096 /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C5154C40125BE5944AB0B419D9ACEF68 /* memory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A6FD942C8BC69385A7C869C3DBF689B6 /* memory.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; C5DE41F9FBE09C47A75C9CACA8E8E1FC /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 62ACBD4662324E90BCD96BA7EA2BF812 /* Foundation.framework */; }; - C6176DBD76096CBA50BC837DA24E3300 /* multichanneltemperature.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B71604572313E9BB286E64E29DBC6732 /* multichanneltemperature.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C97B5F59C9526A216427A8D2C00C4317 /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA0560F3124490759DBB7E2EF9B80E4D /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - C99E708777B6973FD80EB672C0FAFEB7 /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EF2AF82017A5DF639AB80DA9167CB62D /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + C78FE6696DF4AEC622F73D2A4C931661 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A66FB38AF5CED00AEE0D4B25977DF1E9 /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CA30DBC2FB8EF95126A8B390AFA8FCCF /* BoltsSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FFAEA4E7DEC191F4EB7AFFE15AD8C887 /* BoltsSwift.framework */; }; CAAA1842F5F7F4D105FAC2951DA031CE /* Bolts-Swift-macOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 53D5B262CE0C7571E16E6B9C0D0B5B7C /* Bolts-Swift-macOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - CB2BD4123FAE4E8F14022AAE583AE0B2 /* anonymous_datasignal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E3BE72C2F05F975EB0586FF2EBE41C3F /* anonymous_datasignal.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CB9482CC3E8245F0FAB34B0D181284D3 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DB26455D1DB0B9B017F42AF23632D353 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CE380E59B294F3007EFE85BD51E0FA99 /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DB26455D1DB0B9B017F42AF23632D353 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CEE1471416C2501F7C384880DBCC69C7 /* MetaWearData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87D659F1465356AA74B9A092439A6D8A /* MetaWearData.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - CFA33D37F27FAFAABC4C419DB374D247 /* humidity_bme280.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D8F6F4A39D77B7B09DBEBC03CD050624 /* humidity_bme280.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CACEB4ECC1AE7911691FAED3F7230DF9 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD9A2A311869B111F0574EA193B10550 /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CC0D797D9722E60CC058D19DAE36F811 /* accelerometer_mma8452q.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E3AA7E93FB447F481AC11377F1524C97 /* accelerometer_mma8452q.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CCC8261DF1AB3EC3DB64B1E95A2CCF4F /* MetaWear-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 666264D4C3954BEDBA107D17B1224431 /* MetaWear-iOS-dummy.m */; }; + CE09F2F0AE0B333190D16A4FCF0D71A4 /* task.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39D248FB1B6A1DB3D4359DF9AC8C4EF0 /* task.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CE662C3F25298E40E6BED723AD1EDC0F /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 69BBBFBD413E4347F9175B0DC4182489 /* CoreBluetooth.framework */; }; + CEB69A36D725D8E73B1BA6F3F76CD6C7 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F7673374ED5494F00B986AA3EF36297 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CF3E3CE0FDD9DCEC37786FD43DF8F39B /* MblMwGattChar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BC285E1A6866C9A5A6611C0D1144A7A /* MblMwGattChar.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + CF54785ACA89EF4526CDC92300F8519A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2930A596A32FF425D7DAB104DFA2F73B /* Foundation.framework */; }; + CF854923C7B05311351CFCA4E7335CBA /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 96CB75CFF13BAA0A8635C3A4224A757E /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; CFF15CE790676F06D91D07660424585C /* Pods-Starter-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 702271784BFC1B5B9BBAB107FDE921EC /* Pods-Starter-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - D09E7CD344CB9E3667F5F2FC7695F032 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 69478DF70155827E5C4A8D65FE8544EA /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D0E93DC0A5D5F5FDCCF75DD024B9369E /* debug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0374A8966340D6C6F204AEDDE7195E09 /* debug.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D11A164E1ADECBEFAF91F4F82F4D17AC /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 915C92E52AD291DB12C9D2632199C9A3 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D3041EC87A6A4A8E12EF5EEA9874FDEE /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2930A596A32FF425D7DAB104DFA2F73B /* Foundation.framework */; }; - D3FF604F71C60C1D685353352999C113 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9144025DABE270C8035839AAC2D6CF6 /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D434CC3561FF32AAE8B406C050D9C9F2 /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9144025DABE270C8035839AAC2D6CF6 /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D47786F6190D073C88E50E931F973810 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 258260CAA5679A15FCBAADAAE4B672B4 /* ScannerModel.swift */; }; - D5D14F31FB56F36DF45CCFD1885D33DB /* DeviceInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA0560F3124490759DBB7E2EF9B80E4D /* DeviceInformation.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D6A5E773E3A5D7CB2EC5154110DAF031 /* MetaWear.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB6ECAA2DC4375581C0E7143B4B4F2B1 /* MetaWear.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D735AF60094DA5DD2F4F960BC82F9CF0 /* dfu_operations_details.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AF9BE72D3F724EFB9A6ADFDE7CF0DC2E /* dfu_operations_details.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - D7A774958B3D3D390D493339FBD76484 /* proximity_tsl2671.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EF2AF82017A5DF639AB80DA9167CB62D /* proximity_tsl2671.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D058E533961EB9862ABE906C38039D1C /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 322DE5C5FDEA948725D1F86CC8F13DCF /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D38611D651E3B147E158A57A92F164E6 /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8C62E827F21DEB7A8FD41B842D2F7D2C /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D7A75B8B00C3A8A7413995F928F33F70 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E7CB75A62B9A86FDEEB009D335893096 /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; D7C318ECB2D5345DE5BE1CAF2925D26F /* Task+WhenAll.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB5787F377410A3566126C52B31A1EE0 /* Task+WhenAll.swift */; }; + D7CE11D538DB22BBC205A2B42FC5A88E /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8C62E827F21DEB7A8FD41B842D2F7D2C /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; D8E64CBAD5BB57243A5A56C5077FE779 /* Bolts-Swift-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2BBB101F67AAC195E7CEDB4588BB57FB /* Bolts-Swift-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - D947047846547C3438EC17FB74B6E47F /* gyro_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8E5337698F92619E772C69177B31FF2D /* gyro_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; D9AA07C34C9AAEED782F2E5E3A7AD02A /* Executor.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEFC2E63C96F3AA31A529BF1F51E6C74 /* Executor.swift */; }; - DA64460CC47A15B3F1A29518C1774F1A /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DC95E47A76D8C1A2E83EC0B0254B906C /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - DC2C04B6DF676F0A3B7FA65BE0E62955 /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FFB774922242F93A433397808756C1EE /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - DC88C64635B1BC7776A165C66EF7222C /* settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6C947102CABC6CF1B03A3CC74BFE1143 /* settings.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + D9DDBA8B9D1AA23D9B158EAC12AD627A /* cbindings.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9144025DABE270C8035839AAC2D6CF6 /* cbindings.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DC26572A0CC1267440D91C3A60B07A69 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 041D9538C8286C10748E8E8B52C25B2A /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; DD92E7F3D43A224CA28560550FB7C9E9 /* Pods-Starter-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 605A1D4036ADEF955D22C5B3FD98B178 /* Pods-Starter-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - DE669BCAB3DE3D874895C3814B0F4648 /* macro.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 45940F0CF94A548FC9F3B4FA33051F8E /* macro.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - DE7081D6B52EF09A3A227090795DEF9B /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E201522B79ACA9E5B191D8CA137B0533 /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - DE7F2478D252EFFD020FD8E798E30AA2 /* MetaWear-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 666264D4C3954BEDBA107D17B1224431 /* MetaWear-iOS-dummy.m */; }; + DD95C54D1BDF9725D736521863B79864 /* datainterpreter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5DB602D4ECD6283083BCC54699EFE45B /* datainterpreter.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DE221BBC9AABCD89AE5136DC32A6C730 /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4BCFAD90F5D5CA8E5D9B95A2CEBFAA27 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DE6215B91BC962636B71D7942BBD3895 /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B1559D9AD0C59A4263268B2823A06BDD /* logging.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DE7F0F58AF7E20FBA131BC62718D9878 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9CED93C4D93A38B9822FDC7E7AEDE54E /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + DF315C6359D7561263DB2479F0E346E7 /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 72606E964BE0EEC7D8CAF7820504909D /* version.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; E127C713A2F3FE8C6C35D4196C55E2C5 /* Task+ContinueWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5D65D6F3D9A1EC0060BD382ED9DE1ED /* Task+ContinueWith.swift */; }; - E483729863968734FEB19457C32435BC /* dataprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 048875C8ECDAE11D7003057D8B992756 /* dataprocessor.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E66C17787D4D3865650EA18C44524756 /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 368B609454A40BCA2D47E0559091B55D /* CoreBluetooth.framework */; }; - E70CB0D0FC3ED4B33F3130CC11E220E7 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD9A2A311869B111F0574EA193B10550 /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E8470C571EECD48E33CF2A08CF0DBB08 /* switch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F8F58A4DB3EC7AB82C245D76694985D7 /* switch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E88A141537735E1A2D31665CBCA7BF7A /* miniz.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A1BC54611F59DDB9DA105EFA630CE88A /* miniz.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E8ADA1E221617221D85DCBDE5D623FD5 /* conductance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E61CD130A90592403E1785F55D129BF6 /* conductance.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E200B2E0D37332EE51ECF576E75C5D9E /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 78FA47E416E330555C8481834F3CF2C8 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E28452FB3F13C74C9AF7E3BECFC7BDD4 /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08B3F6FB756B6C33CD4EEAB5FAC2A3AD /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E2F9974E8D096B1D636A91629540717C /* barometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 800695C91E09337CF59DAEA9AC08A10B /* barometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E51AB1557BEDEC0D1C5B149EE7A6407B /* async_creator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 440B67D7DF07B2CC441871F904CE00EF /* async_creator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E58174B228D25E6DC763AC80B9836FA8 /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E357C9843A2739ED72A001AF3DAA8272 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + E7299F59203877A6F0C551B1F9AB5956 /* LogDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE6B25EA7F6BAC20B469AFA0E9107547 /* LogDelegate.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; E90AC37B868C0143CB8C1345DC8C332D /* Task+WhenAll.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB5787F377410A3566126C52B31A1EE0 /* Task+WhenAll.swift */; }; - E91CF3FED5BF4AA027E07AAC3863F4F8 /* SwiftGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2C5A74F26A5F693ED79C88FA42343DD5 /* SwiftGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E942EBF8884BD390011C52E257427BBF /* metawearboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E35692E77DA1D9DEE753AD3CD06C59C8 /* metawearboard.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - E94F87589CA2FE250F58B7CD18379E1C /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F64EC134A32A2E2619915856F128C5C /* MblMwEvent+Async.swift */; }; E980520A402A130D8E25337D5857249B /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9E0D7E61DB92369D72A5735D8D562C0C /* QuartzCore.framework */; }; + EA9C07060CF5A0D67CE2967CCA3BF87D /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E357C9843A2739ED72A001AF3DAA8272 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + EADF9F8B61B351AD7083F48D50D668CE /* responseheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2782F7B99963B84157F1AA0390EC00A1 /* responseheader.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + EC43BA6ECE35163EA90DC6E4E535C965 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E7CB75A62B9A86FDEEB009D335893096 /* utils.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; EC81B6C016677EDE69A61A1D8DF3159A /* Bolts-Swift-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 08CEB11F49F203041F68DAFA500A3812 /* Bolts-Swift-iOS-dummy.m */; }; - ED606D536497058B453CD6D65F008119 /* Bridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD9A2A311869B111F0574EA193B10550 /* Bridging.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - ED60FE4915E23F355DF4D4C93B24FDFA /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C129BF0B3E163B2A9A5AE98ADD5A9BD /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - EDB942C181CC5A63745CB605B62BC5D8 /* MetaWearScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 940B1A78A509FC5E861E0F33B9FF2955 /* MetaWearScanner.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; EF151BD9E0597C91523D5427BFFADDDA /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FBB3BF4C348A1B541964B842801B6189 /* Cocoa.framework */; }; + F00E1AF02BB54DEBDE1925994FCE0141 /* accelerometer_bosch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 78FA47E416E330555C8481834F3CF2C8 /* accelerometer_bosch.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F0B86679D81A76621D618C515DF9C98D /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CC22EA09F1BA863F9EE8B97CAD40EF /* MetaWear+Async.swift */; }; + F120AD5DB1FB2CCBBD3E0650262F2C62 /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 355399F4FBDB7CF0B09DCC84CAB74461 /* CoreBluetooth.framework */; }; F1369AA6A64A78DEA0419CEF01AF6A13 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7DFA7E1CF90980A0A17D88F03E86FD05 /* Errors.swift */; }; F20EA11CACA3864CE3D296CE2C76B245 /* MBProgressHUD-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 35CBECF0D39F356FB46856D69398C895 /* MBProgressHUD-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F28EEC4865C8387880774C41BE4B92FB /* JavaScriptGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08A673C854AF0D8C3D944940AF04ADF4 /* JavaScriptGenerator.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F39D6049A4B18D62BE71CDB3BA622371 /* CoreBluetooth.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 355399F4FBDB7CF0B09DCC84CAB74461 /* CoreBluetooth.framework */; }; - F5D6C9E67F7B014B8C2B60F3B15C1B06 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 47B0FA97D88DC55F5C8D9B70618CFE50 /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F3CA543014E4EE236CFA78759F284E8B /* MetaWear+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CC22EA09F1BA863F9EE8B97CAD40EF /* MetaWear+Async.swift */; }; F792091BA4AF3AA326959CBE19A3D7B3 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2930A596A32FF425D7DAB104DFA2F73B /* Foundation.framework */; }; - F79930322639B789FB1B122B9EED7D38 /* MetaWear-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 84A1AFD074DA79FEDE0E4400345D85C2 /* MetaWear-macOS-dummy.m */; }; - F7C1820889CD2E8F3A8E5A4655EFE760 /* dfu_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 47B0FA97D88DC55F5C8D9B70618CFE50 /* dfu_utility.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F7D038AE8757B89603D707C7B6097AB8 /* dfu_operations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 69478DF70155827E5C4A8D65FE8544EA /* dfu_operations.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - F80F92FF236F74F61BAD5B4D87D77420 /* ScannerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 258260CAA5679A15FCBAADAAE4B672B4 /* ScannerModel.swift */; }; - F9A34D3177F33BC772DB96A984982190 /* magnetometer_bmm150.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EB4834A2855D12DEF11E3933422A1571 /* magnetometer_bmm150.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FAA68C92A88427C050D9D3AC9E6DA316 /* haptic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E201522B79ACA9E5B191D8CA137B0533 /* haptic.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FD804026EDA455AAA55B88F26170D69C /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C129BF0B3E163B2A9A5AE98ADD5A9BD /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FE5789F2A48C54986B1595B610855338 /* dataprocessor_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 960E6CF8D16AAFA541846C643B412CED /* dataprocessor_config.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FE87D4AE37801E46E203F1095BD93F28 /* neopixel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 915C92E52AD291DB12C9D2632199C9A3 /* neopixel.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; - FF30CF63B2D546D8C2F5F735AE32584D /* serialpassthrough.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F8D4FEE512423AEBA199921A57ADEF46 /* serialpassthrough.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F8C5C5B584F5B5401745393CE00A7626 /* colordetector_tcs34725.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AA222498403C37B047BE83037BD42325 /* colordetector_tcs34725.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + F952AFBA9A798F766F9FD456E8DA708B /* CBUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C129BF0B3E163B2A9A5AE98ADD5A9BD /* CBUUID.swift */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FB2DF7B8B8AEE5A9355738355D8E4E61 /* MetaWear-macOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 84A1AFD074DA79FEDE0E4400345D85C2 /* MetaWear-macOS-dummy.m */; }; + FCEC874C32E41C924A40EF4AE78BE29A /* accelerometer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C8F246D88EFD44DBED1336DFA2FBA42 /* accelerometer.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; + FE2209F632AF15C169C473E245A2CE9C /* MblMwEvent+Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F64EC134A32A2E2619915856F128C5C /* MblMwEvent+Async.swift */; }; + FE7804CCDA50F1ABECD24583E0B1EBFA /* moduleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F7673374ED5494F00B986AA3EF36297 /* moduleinfo.cpp */; settings = {COMPILER_FLAGS = "-Wno-documentation -Wno-comma"; }; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 156FE86E1EF71429A33FA248CA0C7064 /* PBXContainerItemProxy */ = { + 1D2E5604F544E0B5C4FC38D6A74DC40A /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 3EAD5FC7EE8E8D39DBDCCF711B0F7D75; - remoteInfo = "MetaWear-macOS"; - }; - 19C0968DF1BACECFB3E048780BC0BA93 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 4ACB068906486CDBA8800775159A069C; - remoteInfo = "MBProgressHUD-tvOS"; + remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; + remoteInfo = "Bolts-Swift-tvOS"; }; - 1C7BAAC7CFE214F0E12769A44B73EB39 /* PBXContainerItemProxy */ = { + 31DFEF4030E750EF5CC6950E5AEBFD0A /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 40F96C8785C4CCB505582120F8B02D1A; - remoteInfo = "MetaWear-iOS"; + remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; + remoteInfo = "Bolts-Swift-iOS"; }; - 245792CBF382DE157EBF64316430E63A /* PBXContainerItemProxy */ = { + 526636D511AACF9C6246CA315FEA6D31 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; - remoteInfo = "Bolts-Swift-tvOS"; + remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; + remoteInfo = "Bolts-Swift-macOS"; }; - 3E122BB9935D05146AC1E9A8FA6087F2 /* PBXContainerItemProxy */ = { + 5FF77E81DEB3F0E927A03EF465897F26 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; - remoteInfo = "Bolts-Swift-macOS"; + remoteGlobalIDString = 40F96C8785C4CCB505582120F8B02D1A; + remoteInfo = "MetaWear-iOS"; }; - 5BC6785D2AACBB742D4DB22DF11194C5 /* PBXContainerItemProxy */ = { + 8D46B54AE244F82243461F2590D49F43 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 553FC7D4BCBC31EB47C0C394118E4FE5; remoteInfo = "Bolts-Swift-tvOS"; }; - 92C68114804FA8D83E197D764C95BF5A /* PBXContainerItemProxy */ = { + 9B34AFEFC61FE6098E552AF84E07B3C3 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = AFF87B4D6717C0C808A53295373A8AD4; remoteInfo = "MBProgressHUD-iOS"; }; - AAE0C3466C81C64F38536F4A913538A4 /* PBXContainerItemProxy */ = { + BD60CEC2CFC07AA7010D3FF125E22B8B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; + remoteInfo = "Bolts-Swift-macOS"; + }; + E7FAD6409EE2514DBFF926516DB7BA84 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; remoteInfo = "Bolts-Swift-iOS"; }; - B2EBE82B0FF66AE592E0DEEAA45D2C10 /* PBXContainerItemProxy */ = { + EDFF9D438A615E93BC33D9DABDFCDD6B /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 33D1D149C44676165C3F0A61912DB392; - remoteInfo = "MetaWear-tvOS"; + remoteGlobalIDString = 4ACB068906486CDBA8800775159A069C; + remoteInfo = "MBProgressHUD-tvOS"; }; - C5D7716F2FC4EEC62AA874B25F424962 /* PBXContainerItemProxy */ = { + F50729F48BA9C962FD16877CB02C9D38 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 60E729C6D466746E969FA5CA967B984D; - remoteInfo = "Bolts-Swift-macOS"; + remoteGlobalIDString = 33D1D149C44676165C3F0A61912DB392; + remoteInfo = "MetaWear-tvOS"; }; - E314C30E409D604711D71CE41E1F4414 /* PBXContainerItemProxy */ = { + F8C4B93989D81E4DC95B71B26E25F3E5 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = A23A11CBF477F1C60EB99E0CECF4EFEF; - remoteInfo = "Bolts-Swift-iOS"; + remoteGlobalIDString = 3EAD5FC7EE8E8D39DBDCCF711B0F7D75; + remoteInfo = "MetaWear-macOS"; }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ 0006F7B0D08B2D67969A4FB893737AD3 /* MetaWear-macOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-macOS-prefix.pch"; path = "../MetaWear-macOS/MetaWear-macOS-prefix.pch"; sourceTree = ""; }; - 01488C26AFC0D2544C9ADE4CF38E8855 /* MetaWear.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = MetaWear.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 01D834C2C6B1749521F45F5CAE05A0AF /* threadpool.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = threadpool.cpp; sourceTree = ""; }; - 0374A8966340D6C6F204AEDDE7195E09 /* debug.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = debug.cpp; sourceTree = ""; }; - 03838BEF07C051D1F8F5375360BBBA69 /* magnetometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = magnetometer.doctree; path = Docs/build/doctrees/magnetometer.doctree; sourceTree = ""; }; + 00DE7570816253D5BCFEAA0889CD7B8A /* datasignal.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = datasignal.cpp; sourceTree = ""; }; + 01488C26AFC0D2544C9ADE4CF38E8855 /* MetaWear.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; path = MetaWear.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 03838BEF07C051D1F8F5375360BBBA69 /* magnetometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = magnetometer.doctree; path = Docs/build/doctrees/magnetometer.doctree; sourceTree = ""; }; 03F915EA8DA168A6746EE05A27437E6B /* Pods-Starter-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Starter-macOS-umbrella.h"; sourceTree = ""; }; - 0412B5403776349A6C516A885FA009E7 /* searchtools.js */ = {isa = PBXFileReference; includeInIndex = 1; name = searchtools.js; path = Docs/build/html/_static/searchtools.js; sourceTree = ""; }; - 048875C8ECDAE11D7003057D8B992756 /* dataprocessor.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dataprocessor.cpp; sourceTree = ""; }; - 057454DD2370EC453F053CA27F37A766 /* spi.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = spi.doctree; path = Docs/build/doctrees/spi.doctree; sourceTree = ""; }; - 058732315A312FAFF8765B72FA8AB8F6 /* cppbridge.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = cppbridge.doctree; path = Docs/build/doctrees/cppbridge.doctree; sourceTree = ""; }; - 05DD842BF1C13349319CEFA2420D3DE5 /* fontawesome-webfont.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.woff"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.woff"; sourceTree = ""; }; + 0412B5403776349A6C516A885FA009E7 /* searchtools.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = searchtools.js; path = Docs/build/html/_static/searchtools.js; sourceTree = ""; }; + 041D9538C8286C10748E8E8B52C25B2A /* macro.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = macro.cpp; sourceTree = ""; }; + 057454DD2370EC453F053CA27F37A766 /* spi.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = spi.doctree; path = Docs/build/doctrees/spi.doctree; sourceTree = ""; }; + 058732315A312FAFF8765B72FA8AB8F6 /* cppbridge.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = cppbridge.doctree; path = Docs/build/doctrees/cppbridge.doctree; sourceTree = ""; }; + 05DD842BF1C13349319CEFA2420D3DE5 /* fontawesome-webfont.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "fontawesome-webfont.woff"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.woff"; sourceTree = ""; }; 0693D0FA75EBDE90846C9525204EB8D2 /* MBProgressHUD-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MBProgressHUD-tvOS.release.xcconfig"; path = "../MBProgressHUD-tvOS/MBProgressHUD-tvOS.release.xcconfig"; sourceTree = ""; }; - 08185502D871F2BD8FABF5075EE174A1 /* objects.inv */ = {isa = PBXFileReference; includeInIndex = 1; name = objects.inv; path = Docs/build/html/objects.inv; sourceTree = ""; }; - 08A673C854AF0D8C3D944940AF04ADF4 /* JavaScriptGenerator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = JavaScriptGenerator.cpp; sourceTree = ""; }; + 08185502D871F2BD8FABF5075EE174A1 /* objects.inv */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = objects.inv; path = Docs/build/html/objects.inv; sourceTree = ""; }; + 08B3F6FB756B6C33CD4EEAB5FAC2A3AD /* metawearboard.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = metawearboard.cpp; sourceTree = ""; }; 08CEB11F49F203041F68DAFA500A3812 /* Bolts-Swift-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Bolts-Swift-iOS-dummy.m"; sourceTree = ""; }; - 08E88EDE1D59330A49B314797739B243 /* sensors.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = sensors.rst; path = Docs/source/sensors.rst; sourceTree = ""; }; + 08E88EDE1D59330A49B314797739B243 /* sensors.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = sensors.rst; path = Docs/source/sensors.rst; sourceTree = ""; }; 08F333B4B493B043971FC11A23114CAB /* Bolts-Swift-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Bolts-Swift-iOS.modulemap"; sourceTree = ""; }; - 0A72C8099B3F5C20BDA1A182DFF81082 /* lato-normal.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-normal.woff2"; path = "Docs/build/html/_static/css/fonts/lato-normal.woff2"; sourceTree = ""; }; + 0A72C8099B3F5C20BDA1A182DFF81082 /* lato-normal.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-normal.woff2"; path = "Docs/build/html/_static/css/fonts/lato-normal.woff2"; sourceTree = ""; }; 0AB4412AD9BFFD8726C27BE359704CAC /* MetaWear-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MetaWear-macOS.modulemap"; path = "../MetaWear-macOS/MetaWear-macOS.modulemap"; sourceTree = ""; }; - 0ABF10E8AF299DE8EB83811C69E2C4BD /* core_modules.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = core_modules.doctree; path = Docs/build/doctrees/core_modules.doctree; sourceTree = ""; }; - 0AEC34E824AF9D524ACDF06F2B7ACFB8 /* logger.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = logger.rst; path = Docs/source/logger.rst; sourceTree = ""; }; - 0B065D025FB92FC7BD543899B8E5FC59 /* index.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = index.rst.txt; path = Docs/build/html/_sources/index.rst.txt; sourceTree = ""; }; - 0BB52EA77C6EDC0F1C3AD4616510ECAB /* i2c.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = i2c.rst; path = Docs/source/i2c.rst; sourceTree = ""; }; - 0C02738DBE1AFED83CD5B42C63960A03 /* haptic.html */ = {isa = PBXFileReference; includeInIndex = 1; name = haptic.html; path = Docs/build/html/haptic.html; sourceTree = ""; }; - 0C35F45A266CA9EE072F62A986F232A7 /* sensors.html */ = {isa = PBXFileReference; includeInIndex = 1; name = sensors.html; path = Docs/build/html/sensors.html; sourceTree = ""; }; - 0D7A15C510ABBE1A396BB616131D9806 /* led.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = led.doctree; path = Docs/build/doctrees/led.doctree; sourceTree = ""; }; - 0D903B36E6CF67AE30923660C0519F60 /* magnetometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = magnetometer.rst; path = Docs/source/magnetometer.rst; sourceTree = ""; }; - 0E01CEBBC16426ED5BB22722E986FBF2 /* Pods_Starter_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_Starter_iOS.framework; path = "Pods-Starter-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 10B61FC3444C41C97D322F6E68AFB029 /* project.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = project.rst; path = Docs/source/project.rst; sourceTree = ""; }; - 129D1E286656EEAEFF8B6A555D5BD147 /* peripherals.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = peripherals.doctree; path = Docs/build/doctrees/peripherals.doctree; sourceTree = ""; }; - 1350D30F6595F9C36056A886C9810565 /* lato-bold-italic.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-bold-italic.woff"; path = "Docs/build/html/_static/css/fonts/lato-bold-italic.woff"; sourceTree = ""; }; - 144734E72160EFDC6AD21BD976CFD0DF /* Pods_Starter_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_Starter_macOS.framework; path = "Pods-Starter-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 150DF75EB461C9BF5B66F0BC81FFDE92 /* search.html */ = {isa = PBXFileReference; includeInIndex = 1; name = search.html; path = Docs/build/html/search.html; sourceTree = ""; }; - 15EBEBB4C3654969622C3D50CE1A580D /* project.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = project.doctree; path = Docs/build/doctrees/project.doctree; sourceTree = ""; }; + 0ABF10E8AF299DE8EB83811C69E2C4BD /* core_modules.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = core_modules.doctree; path = Docs/build/doctrees/core_modules.doctree; sourceTree = ""; }; + 0AEC34E824AF9D524ACDF06F2B7ACFB8 /* logger.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = logger.rst; path = Docs/source/logger.rst; sourceTree = ""; }; + 0B065D025FB92FC7BD543899B8E5FC59 /* index.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = index.rst.txt; path = Docs/build/html/_sources/index.rst.txt; sourceTree = ""; }; + 0BB52EA77C6EDC0F1C3AD4616510ECAB /* i2c.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = i2c.rst; path = Docs/source/i2c.rst; sourceTree = ""; }; + 0C02738DBE1AFED83CD5B42C63960A03 /* haptic.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = haptic.html; path = Docs/build/html/haptic.html; sourceTree = ""; }; + 0C35F45A266CA9EE072F62A986F232A7 /* sensors.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = sensors.html; path = Docs/build/html/sensors.html; sourceTree = ""; }; + 0D7A15C510ABBE1A396BB616131D9806 /* led.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = led.doctree; path = Docs/build/doctrees/led.doctree; sourceTree = ""; }; + 0D903B36E6CF67AE30923660C0519F60 /* magnetometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = magnetometer.rst; path = Docs/source/magnetometer.rst; sourceTree = ""; }; + 0E01CEBBC16426ED5BB22722E986FBF2 /* Pods_Starter_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Starter_iOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 1080D504B29917E7A74A307CB5D66C9B /* threadpool.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = threadpool.cpp; sourceTree = ""; }; + 10B61FC3444C41C97D322F6E68AFB029 /* project.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = project.rst; path = Docs/source/project.rst; sourceTree = ""; }; + 129D1E286656EEAEFF8B6A555D5BD147 /* peripherals.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = peripherals.doctree; path = Docs/build/doctrees/peripherals.doctree; sourceTree = ""; }; + 130C412BC833896D101596638D703B79 /* conductance.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = conductance.cpp; sourceTree = ""; }; + 1350D30F6595F9C36056A886C9810565 /* lato-bold-italic.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bold-italic.woff"; path = "Docs/build/html/_static/css/fonts/lato-bold-italic.woff"; sourceTree = ""; }; + 144734E72160EFDC6AD21BD976CFD0DF /* Pods_Starter_macOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Starter_macOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 150DF75EB461C9BF5B66F0BC81FFDE92 /* search.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = search.html; path = Docs/build/html/search.html; sourceTree = ""; }; + 15EBEBB4C3654969622C3D50CE1A580D /* project.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = project.doctree; path = Docs/build/doctrees/project.doctree; sourceTree = ""; }; + 162114BF7CBBA07BD9066AFD5B158298 /* sensor_fusion.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = sensor_fusion.cpp; sourceTree = ""; }; 16B794F4704C79E1632AA45BFE6195EB /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS14.0.sdk/System/Library/Frameworks/QuartzCore.framework; sourceTree = DEVELOPER_DIR; }; - 17DFB82FD21C5682380223E33925C025 /* dataprocessor.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = dataprocessor.doctree; path = Docs/build/doctrees/dataprocessor.doctree; sourceTree = ""; }; + 17DFB82FD21C5682380223E33925C025 /* dataprocessor.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = dataprocessor.doctree; path = Docs/build/doctrees/dataprocessor.doctree; sourceTree = ""; }; 17E3C6A09FDDC2761D9AB30C52368CC3 /* Pods-Starter-macOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Starter-macOS-acknowledgements.markdown"; sourceTree = ""; }; 1A66E457F724C9BC8C72AD7552E59DA7 /* Pods-Starter-tvOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Starter-tvOS-frameworks.sh"; sourceTree = ""; }; - 1A8A76DCFF9440906C34B2692D420CFD /* sensor_fusion.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = sensor_fusion.cpp; sourceTree = ""; }; - 1AE6DEF4DCC0A14478137AC7E5923734 /* barometer_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = barometer_bosch.cpp; sourceTree = ""; }; - 1D158D87A509E4F419EE21CEA8D25A57 /* pygments.css */ = {isa = PBXFileReference; includeInIndex = 1; name = pygments.css; path = Docs/build/html/_static/pygments.css; sourceTree = ""; }; - 1DCAD1776D7552957265A077AA57B68D /* settings.html */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.html; path = Docs/build/html/settings.html; sourceTree = ""; }; + 1AC53A490DAFFB5D16AFD5E7B7C3D700 /* led.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = led.cpp; sourceTree = ""; }; + 1D158D87A509E4F419EE21CEA8D25A57 /* pygments.css */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.css; name = pygments.css; path = Docs/build/html/_static/pygments.css; sourceTree = ""; }; + 1D8723325F15311F9E5CFA1E39C3D537 /* dfu_operations.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_operations.cpp; sourceTree = ""; }; + 1DCAD1776D7552957265A077AA57B68D /* settings.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = settings.html; path = Docs/build/html/settings.html; sourceTree = ""; }; + 1DFAC2B8FB12FC2C9742C5C2ECB67454 /* dfu_operations_details.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_operations_details.cpp; sourceTree = ""; }; 1E81577EC3C916336A3E28118F7B3EF4 /* MetaWear-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "MetaWear-iOS.debug.xcconfig"; sourceTree = ""; }; - 1EB4E4F126BF8DA37AFA5067EA1F2872 /* settings.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.doctree; path = Docs/build/doctrees/settings.doctree; sourceTree = ""; }; - 212C9414B68A923BFE685FF28FF9E6F8 /* spi.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = spi.rst.txt; path = Docs/build/html/_sources/spi.rst.txt; sourceTree = ""; }; - 216BA82E343FF087A5A19F10ADC4F0DA /* Pods_Starter_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_Starter_tvOS.framework; path = "Pods-Starter-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 226E1042AF5C55F92816A6ED6979C5BE /* cppbridge.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = cppbridge.rst.txt; path = Docs/build/html/_sources/cppbridge.rst.txt; sourceTree = ""; }; - 2351E2FF2ADEBE202CDBABF6391EEBF6 /* fontawesome-webfont.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.woff2"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.woff2"; sourceTree = ""; }; - 24A0CAE5AB07F87179244251710D3182 /* Roboto-Slab-Bold.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "Roboto-Slab-Bold.woff2"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Bold.woff2"; sourceTree = ""; }; + 1EB4E4F126BF8DA37AFA5067EA1F2872 /* settings.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = settings.doctree; path = Docs/build/doctrees/settings.doctree; sourceTree = ""; }; + 212C9414B68A923BFE685FF28FF9E6F8 /* spi.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = spi.rst.txt; path = Docs/build/html/_sources/spi.rst.txt; sourceTree = ""; }; + 216BA82E343FF087A5A19F10ADC4F0DA /* Pods_Starter_tvOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Starter_tvOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 226E1042AF5C55F92816A6ED6979C5BE /* cppbridge.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = cppbridge.rst.txt; path = Docs/build/html/_sources/cppbridge.rst.txt; sourceTree = ""; }; + 2351E2FF2ADEBE202CDBABF6391EEBF6 /* fontawesome-webfont.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "fontawesome-webfont.woff2"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.woff2"; sourceTree = ""; }; + 24A0CAE5AB07F87179244251710D3182 /* Roboto-Slab-Bold.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "Roboto-Slab-Bold.woff2"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Bold.woff2"; sourceTree = ""; }; 258260CAA5679A15FCBAADAAE4B672B4 /* ScannerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScannerModel.swift; path = MetaWear/UI/ScannerModel.swift; sourceTree = ""; }; 26AA8BF3E47F5213AC49F51A2F14D082 /* Bolts-Swift-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Bolts-Swift-tvOS-dummy.m"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS-dummy.m"; sourceTree = ""; }; - 28D225FD9A0F5439A32B865D3F4773EE /* event.html */ = {isa = PBXFileReference; includeInIndex = 1; name = event.html; path = Docs/build/html/event.html; sourceTree = ""; }; + 2782F7B99963B84157F1AA0390EC00A1 /* responseheader.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = responseheader.cpp; sourceTree = ""; }; + 28D225FD9A0F5439A32B865D3F4773EE /* event.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = event.html; path = Docs/build/html/event.html; sourceTree = ""; }; 2930A596A32FF425D7DAB104DFA2F73B /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS14.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; 2AD5AA094AC651E9C924FEE31376C333 /* MetaWear-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-tvOS-umbrella.h"; path = "../MetaWear-tvOS/MetaWear-tvOS-umbrella.h"; sourceTree = ""; }; 2B5875CA926E5448969650D1C2F56D64 /* MetaWear-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-macOS.debug.xcconfig"; path = "../MetaWear-macOS/MetaWear-macOS.debug.xcconfig"; sourceTree = ""; }; 2BBB101F67AAC195E7CEDB4588BB57FB /* Bolts-Swift-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Bolts-Swift-iOS-umbrella.h"; sourceTree = ""; }; - 2C5A74F26A5F693ED79C88FA42343DD5 /* SwiftGenerator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = SwiftGenerator.cpp; sourceTree = ""; }; 2C9DA65690D45B28732C759444D3C3BC /* MetaWear-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MetaWear-tvOS.modulemap"; path = "../MetaWear-tvOS/MetaWear-tvOS.modulemap"; sourceTree = ""; }; - 2D5FA4900902AC594DCC854A646D7EF6 /* badge_only.js */ = {isa = PBXFileReference; includeInIndex = 1; name = badge_only.js; path = Docs/build/html/_static/js/badge_only.js; sourceTree = ""; }; - 30D64E2A8AC33A4E6F9E7E3BF5CD1722 /* colordetector_tcs34725.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = colordetector_tcs34725.cpp; sourceTree = ""; }; - 31FB69DDB532444DA82167E53E4B1683 /* timer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = timer.cpp; sourceTree = ""; }; - 3298C3F29F145805CA7D677F0409ABAF /* underscore-1.3.1.js */ = {isa = PBXFileReference; includeInIndex = 1; name = "underscore-1.3.1.js"; path = "Docs/build/html/_static/underscore-1.3.1.js"; sourceTree = ""; }; - 3301A15FC2949AEA2784492EDBC7A70C /* datainterpreter.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = datainterpreter.cpp; sourceTree = ""; }; + 2D5FA4900902AC594DCC854A646D7EF6 /* badge_only.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = badge_only.js; path = Docs/build/html/_static/js/badge_only.js; sourceTree = ""; }; + 2E036ADC482B4B030FE4648F17AC2AF4 /* debug.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = debug.cpp; sourceTree = ""; }; + 322DE5C5FDEA948725D1F86CC8F13DCF /* switch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = switch.cpp; sourceTree = ""; }; + 3298C3F29F145805CA7D677F0409ABAF /* underscore-1.3.1.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = "underscore-1.3.1.js"; path = "Docs/build/html/_static/underscore-1.3.1.js"; sourceTree = ""; }; 33BF957528576B66622BDA86E26B08A2 /* MBProgressHUD-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "MBProgressHUD-iOS-dummy.m"; sourceTree = ""; }; 33F1F1E8C4F2BD51D67CEE59C17F725F /* Pods-Starter-iOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Starter-iOS-acknowledgements.markdown"; sourceTree = ""; }; 355399F4FBDB7CF0B09DCC84CAB74461 /* CoreBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreBluetooth.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/CoreBluetooth.framework; sourceTree = DEVELOPER_DIR; }; 35CBECF0D39F356FB46856D69398C895 /* MBProgressHUD-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MBProgressHUD-iOS-umbrella.h"; sourceTree = ""; }; - 35F0217BA18AB17DA09F86C6F3209CAA /* lato-normal.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-normal.woff"; path = "Docs/build/html/_static/css/fonts/lato-normal.woff"; sourceTree = ""; }; + 35F0217BA18AB17DA09F86C6F3209CAA /* lato-normal.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-normal.woff"; path = "Docs/build/html/_static/css/fonts/lato-normal.woff"; sourceTree = ""; }; 360B2722A20BFEA8A283C944A6E86271 /* Pods-Starter-tvOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Starter-tvOS-acknowledgements.markdown"; sourceTree = ""; }; - 36368621EF3D8B13430636782298C244 /* barometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = barometer.doctree; path = Docs/build/doctrees/barometer.doctree; sourceTree = ""; }; + 36368621EF3D8B13430636782298C244 /* barometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = barometer.doctree; path = Docs/build/doctrees/barometer.doctree; sourceTree = ""; }; 363FA38843C2836FEF61C1DBC3EC40C0 /* MBProgressHUD.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = MBProgressHUD.h; sourceTree = ""; }; 368B609454A40BCA2D47E0559091B55D /* CoreBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreBluetooth.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/CoreBluetooth.framework; sourceTree = DEVELOPER_DIR; }; 36E8749BB2603A491F9958EE2A3A12F0 /* Task+Delay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Task+Delay.swift"; path = "Sources/BoltsSwift/Task+Delay.swift"; sourceTree = ""; }; - 39EFC3444868D94E50BD6C83FB0CD5CD /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = BoltsSwift.framework; path = "Bolts-Swift-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 3BEBA4B59B21A99BF2B702A6F263699C /* i2c.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = i2c.doctree; path = Docs/build/doctrees/i2c.doctree; sourceTree = ""; }; - 3C1F2E210D781709B5AB3B3086469390 /* haptic.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = haptic.rst.txt; path = Docs/build/html/_sources/haptic.rst.txt; sourceTree = ""; }; - 3C42D2BCE4974A872635E78612BA854A /* macro.html */ = {isa = PBXFileReference; includeInIndex = 1; name = macro.html; path = Docs/build/html/macro.html; sourceTree = ""; }; - 3C9DB9E3A7B0CEF28696B912A8CA0196 /* lato-normal-italic.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-normal-italic.woff2"; path = "Docs/build/html/_static/css/fonts/lato-normal-italic.woff2"; sourceTree = ""; }; - 3D6C72D191131D9677C372C85DC2E59D /* humidity.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = humidity.rst; path = Docs/source/humidity.rst; sourceTree = ""; }; + 39D248FB1B6A1DB3D4359DF9AC8C4EF0 /* task.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = task.cpp; sourceTree = ""; }; + 39EFC3444868D94E50BD6C83FB0CD5CD /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 3BEBA4B59B21A99BF2B702A6F263699C /* i2c.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = i2c.doctree; path = Docs/build/doctrees/i2c.doctree; sourceTree = ""; }; + 3C1F2E210D781709B5AB3B3086469390 /* haptic.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = haptic.rst.txt; path = Docs/build/html/_sources/haptic.rst.txt; sourceTree = ""; }; + 3C42D2BCE4974A872635E78612BA854A /* macro.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = macro.html; path = Docs/build/html/macro.html; sourceTree = ""; }; + 3C9DB9E3A7B0CEF28696B912A8CA0196 /* lato-normal-italic.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-normal-italic.woff2"; path = "Docs/build/html/_static/css/fonts/lato-normal-italic.woff2"; sourceTree = ""; }; + 3D6C72D191131D9677C372C85DC2E59D /* humidity.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = humidity.rst; path = Docs/source/humidity.rst; sourceTree = ""; }; 3DF1623D445CE059A8EF075D79FC99F5 /* MetaWear-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "MetaWear-iOS.modulemap"; sourceTree = ""; }; - 3F6DC87C4D5B37D476C551040B11E2C0 /* MBProgressHUD.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MBProgressHUD.framework; path = "MBProgressHUD-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 3FB9A21FA4A3EDBB86D873FA6B9489F7 /* theme.js */ = {isa = PBXFileReference; includeInIndex = 1; name = theme.js; path = Docs/build/html/_static/js/theme.js; sourceTree = ""; }; - 41AA032C3D741AA6521931B8ACE74B8F /* fontawesome-webfont.ttf */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.ttf"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.ttf"; sourceTree = ""; }; - 42BDC5161CCA367FC57D38FF2C8653AD /* dataprocessor.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = dataprocessor.rst.txt; path = Docs/build/html/_sources/dataprocessor.rst.txt; sourceTree = ""; }; - 430010C2452376810C487F4E46248571 /* logging.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.rst; path = Docs/source/logging.rst; sourceTree = ""; }; + 3F6DC87C4D5B37D476C551040B11E2C0 /* MBProgressHUD.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MBProgressHUD.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 3FB9A21FA4A3EDBB86D873FA6B9489F7 /* theme.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = theme.js; path = Docs/build/html/_static/js/theme.js; sourceTree = ""; }; + 41AA032C3D741AA6521931B8ACE74B8F /* fontawesome-webfont.ttf */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "fontawesome-webfont.ttf"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.ttf"; sourceTree = ""; }; + 42BDC5161CCA367FC57D38FF2C8653AD /* dataprocessor.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = dataprocessor.rst.txt; path = Docs/build/html/_sources/dataprocessor.rst.txt; sourceTree = ""; }; + 430010C2452376810C487F4E46248571 /* logging.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = logging.rst; path = Docs/source/logging.rst; sourceTree = ""; }; 43969DBAEBDBBD2D0C0846CD5F0058CB /* Pods-Starter-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Starter-iOS-Info.plist"; sourceTree = ""; }; - 4542239B657F3586AAFF5F2124CA29D7 /* sensor_fusion.html */ = {isa = PBXFileReference; includeInIndex = 1; name = sensor_fusion.html; path = Docs/build/html/sensor_fusion.html; sourceTree = ""; }; - 45940F0CF94A548FC9F3B4FA33051F8E /* macro.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = macro.cpp; sourceTree = ""; }; - 45B4A31A9AB51C8C6F9B4EBD0C8EF2D0 /* logging.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.doctree; path = Docs/build/doctrees/logging.doctree; sourceTree = ""; }; - 469B8B015B60FEA92F8C92251AF6AE31 /* task.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = task.cpp; sourceTree = ""; }; + 440B67D7DF07B2CC441871F904CE00EF /* async_creator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = async_creator.cpp; sourceTree = ""; }; + 4542239B657F3586AAFF5F2124CA29D7 /* sensor_fusion.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = sensor_fusion.html; path = Docs/build/html/sensor_fusion.html; sourceTree = ""; }; + 45B4A31A9AB51C8C6F9B4EBD0C8EF2D0 /* logging.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = logging.doctree; path = Docs/build/doctrees/logging.doctree; sourceTree = ""; }; 46A0EA664A6D23D23970F2B50FA1ED0F /* String+VersionCompare.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "String+VersionCompare.swift"; sourceTree = ""; }; - 4713CAD05BCA76054CA8A9548D949076 /* lato-bold-italic.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-bold-italic.woff2"; path = "Docs/build/html/_static/css/fonts/lato-bold-italic.woff2"; sourceTree = ""; }; - 47B0FA97D88DC55F5C8D9B70618CFE50 /* dfu_utility.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_utility.cpp; sourceTree = ""; }; - 4817A1760DAC2F13567CC1326F7608BF /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = BoltsSwift.framework; path = "Bolts-Swift-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 4713CAD05BCA76054CA8A9548D949076 /* lato-bold-italic.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bold-italic.woff2"; path = "Docs/build/html/_static/css/fonts/lato-bold-italic.woff2"; sourceTree = ""; }; + 4817A1760DAC2F13567CC1326F7608BF /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 48CC22EA09F1BA863F9EE8B97CAD40EF /* MetaWear+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+Async.swift"; path = "MetaWear/AsyncUtils/MetaWear+Async.swift"; sourceTree = ""; }; - 497DB20EAE931C659A46172B75E5B8E6 /* async_creator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = async_creator.cpp; sourceTree = ""; }; 4BC285E1A6866C9A5A6611C0D1144A7A /* MblMwGattChar.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MblMwGattChar.swift; sourceTree = ""; }; + 4BCFAD90F5D5CA8E5D9B95A2CEBFAA27 /* dataprocessor.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dataprocessor.cpp; sourceTree = ""; }; 4C129BF0B3E163B2A9A5AE98ADD5A9BD /* CBUUID.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CBUUID.swift; sourceTree = ""; }; 4C5A69CC40153AAA3F412C4D7546D8C1 /* MetaWear-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MetaWear-macOS-Info.plist"; path = "../MetaWear-macOS/MetaWear-macOS-Info.plist"; sourceTree = ""; }; - 4CCE76410F4E5BE373B1AE1A2E5E1976 /* lato-bold.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-bold.woff"; path = "Docs/build/html/_static/css/fonts/lato-bold.woff"; sourceTree = ""; }; - 4D41D6112C846BF30FEBCEF2D6DEC5D0 /* cppbridge.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = cppbridge.rst; path = Docs/source/cppbridge.rst; sourceTree = ""; }; - 4D569CD8885FE50A3EA812AA958BAD65 /* gyro.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = gyro.doctree; path = Docs/build/doctrees/gyro.doctree; sourceTree = ""; }; - 4DA3D72E24D4F40D57A5B5D4E41F79AA /* accelerometer.html */ = {isa = PBXFileReference; includeInIndex = 1; name = accelerometer.html; path = Docs/build/html/accelerometer.html; sourceTree = ""; }; - 4E75D52F71560E96F165E9D21F6410DF /* magnetometer.html */ = {isa = PBXFileReference; includeInIndex = 1; name = magnetometer.html; path = Docs/build/html/magnetometer.html; sourceTree = ""; }; - 4EC49DB5A15AE7DE2C9FF5A839EFB2F5 /* Roboto-Slab-Regular.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "Roboto-Slab-Regular.woff"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Regular.woff"; sourceTree = ""; }; - 4EFCC6D296830CD71AC81F8089C40D5B /* logging.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.rst.txt; path = Docs/build/html/_sources/logging.rst.txt; sourceTree = ""; }; - 4FFF43E18F0A49B7DFB5210E6A3685ED /* ibeacon.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = ibeacon.rst; path = Docs/source/ibeacon.rst; sourceTree = ""; }; + 4C8F246D88EFD44DBED1336DFA2FBA42 /* accelerometer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer.cpp; sourceTree = ""; }; + 4CCE76410F4E5BE373B1AE1A2E5E1976 /* lato-bold.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bold.woff"; path = "Docs/build/html/_static/css/fonts/lato-bold.woff"; sourceTree = ""; }; + 4D21686F4F9972B460899617E589EE31 /* settings.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = settings.cpp; sourceTree = ""; }; + 4D41D6112C846BF30FEBCEF2D6DEC5D0 /* cppbridge.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = cppbridge.rst; path = Docs/source/cppbridge.rst; sourceTree = ""; }; + 4D569CD8885FE50A3EA812AA958BAD65 /* gyro.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = gyro.doctree; path = Docs/build/doctrees/gyro.doctree; sourceTree = ""; }; + 4D5DFCD24DC8BAFA9FE4C2A744E78920 /* timer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = timer.cpp; sourceTree = ""; }; + 4DA3D72E24D4F40D57A5B5D4E41F79AA /* accelerometer.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = accelerometer.html; path = Docs/build/html/accelerometer.html; sourceTree = ""; }; + 4E75D52F71560E96F165E9D21F6410DF /* magnetometer.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = magnetometer.html; path = Docs/build/html/magnetometer.html; sourceTree = ""; }; + 4EC49DB5A15AE7DE2C9FF5A839EFB2F5 /* Roboto-Slab-Regular.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "Roboto-Slab-Regular.woff"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Regular.woff"; sourceTree = ""; }; + 4EFCC6D296830CD71AC81F8089C40D5B /* logging.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = logging.rst.txt; path = Docs/build/html/_sources/logging.rst.txt; sourceTree = ""; }; + 4FFF43E18F0A49B7DFB5210E6A3685ED /* ibeacon.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = ibeacon.rst; path = Docs/source/ibeacon.rst; sourceTree = ""; }; 50B6D92C920877C7145E1CD0741C4A00 /* Pods-Starter-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Starter-iOS.debug.xcconfig"; sourceTree = ""; }; 519E8073B26237AF29E940250557E169 /* MBProgressHUD-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "MBProgressHUD-tvOS.modulemap"; path = "../MBProgressHUD-tvOS/MBProgressHUD-tvOS.modulemap"; sourceTree = ""; }; 52992EE6B8AA8940F327214B955F1000 /* Pods-Starter-tvOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Starter-tvOS-acknowledgements.plist"; sourceTree = ""; }; 53D5B262CE0C7571E16E6B9C0D0B5B7C /* Bolts-Swift-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-macOS-umbrella.h"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS-umbrella.h"; sourceTree = ""; }; - 53D8A89EFDE8AE5BD709693ED9D3A8F8 /* datasignal.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = datasignal.doctree; path = Docs/build/doctrees/datasignal.doctree; sourceTree = ""; }; - 543016C1C8E6DA45DA56360FC9EF643D /* datasignal.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = datasignal.rst; path = Docs/source/datasignal.rst; sourceTree = ""; }; + 53D8A89EFDE8AE5BD709693ED9D3A8F8 /* datasignal.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = datasignal.doctree; path = Docs/build/doctrees/datasignal.doctree; sourceTree = ""; }; + 543016C1C8E6DA45DA56360FC9EF643D /* datasignal.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = datasignal.rst; path = Docs/source/datasignal.rst; sourceTree = ""; }; 544A1E89305BD5F64340AA3095088671 /* Pods-Starter-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Starter-tvOS.debug.xcconfig"; sourceTree = ""; }; - 5596B2A2DD49BB45776DF9AF6BB3D1F0 /* project.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = project.rst.txt; path = Docs/build/html/_sources/project.rst.txt; sourceTree = ""; }; - 55A10666CB72EFBCE3F16C2B931654A0 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MetaWear.framework; path = "MetaWear-iOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 5611B1879BD77C08A4F191EBA98F7DC5 /* datasignal.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = datasignal.cpp; sourceTree = ""; }; + 5596B2A2DD49BB45776DF9AF6BB3D1F0 /* project.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = project.rst.txt; path = Docs/build/html/_sources/project.rst.txt; sourceTree = ""; }; + 55A10666CB72EFBCE3F16C2B931654A0 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MetaWear.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 563914C0B411345CAB35522A89CCFB92 /* MetaWear-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MetaWear-tvOS-dummy.m"; path = "../MetaWear-tvOS/MetaWear-tvOS-dummy.m"; sourceTree = ""; }; 5646898F1C8EC90044A04228EA7348C2 /* MetaWear-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "MetaWear-iOS-Info.plist"; sourceTree = ""; }; - 57FA21D120E6676A69747F422EE314D2 /* fontawesome-webfont.svg */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.svg"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.svg"; sourceTree = ""; }; + 57FA21D120E6676A69747F422EE314D2 /* fontawesome-webfont.svg */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xml; name = "fontawesome-webfont.svg"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.svg"; sourceTree = ""; }; 58D113D145A9C42B8B5D3060E4D2E4A8 /* Pods-Starter-iOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Starter-iOS-acknowledgements.plist"; sourceTree = ""; }; 58DE8C555AC916CFE978BAF40295195D /* Bolts-Swift-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Bolts-Swift-iOS.release.xcconfig"; sourceTree = ""; }; 5910F9884FB4F999174E1EC93DDA5349 /* MBProgressHUD-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MBProgressHUD-tvOS-Info.plist"; path = "../MBProgressHUD-tvOS/MBProgressHUD-tvOS-Info.plist"; sourceTree = ""; }; 5B66A4EDBA0346D0497BC0144D33C67E /* Bolts-Swift-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Bolts-Swift-iOS-prefix.pch"; sourceTree = ""; }; + 5DB602D4ECD6283083BCC54699EFE45B /* datainterpreter.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = datainterpreter.cpp; sourceTree = ""; }; 5F64EC134A32A2E2619915856F128C5C /* MblMwEvent+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MblMwEvent+Async.swift"; path = "MetaWear/AsyncUtils/MblMwEvent+Async.swift"; sourceTree = ""; }; 605A1D4036ADEF955D22C5B3FD98B178 /* Pods-Starter-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Starter-iOS-umbrella.h"; sourceTree = ""; }; + 6105CB2AC398BFE9DC16A98751E95392 /* ibeacon.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ibeacon.cpp; sourceTree = ""; }; 612387514A3BD2942AA5BFD04BC09471 /* Bolts-Swift-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-macOS.debug.xcconfig"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS.debug.xcconfig"; sourceTree = ""; }; - 61D04396491500A173D0FFBAB780D31D /* timer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.doctree; path = Docs/build/doctrees/timer.doctree; sourceTree = ""; }; + 61D04396491500A173D0FFBAB780D31D /* timer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = timer.doctree; path = Docs/build/doctrees/timer.doctree; sourceTree = ""; }; + 622353FD062886C34247C4FAA064770C /* gpio.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = gpio.cpp; sourceTree = ""; }; 62ACBD4662324E90BCD96BA7EA2BF812 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; 666264D4C3954BEDBA107D17B1224431 /* MetaWear-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "MetaWear-iOS-dummy.m"; sourceTree = ""; }; - 67452940E4BC60A39601C94EAD5DFB77 /* gyro.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = gyro.rst; path = Docs/source/gyro.rst; sourceTree = ""; }; - 69478DF70155827E5C4A8D65FE8544EA /* dfu_operations.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_operations.cpp; sourceTree = ""; }; + 67452940E4BC60A39601C94EAD5DFB77 /* gyro.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = gyro.rst; path = Docs/source/gyro.rst; sourceTree = ""; }; 69BBBFBD413E4347F9175B0DC4182489 /* CoreBluetooth.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreBluetooth.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS14.0.sdk/System/Library/Frameworks/CoreBluetooth.framework; sourceTree = DEVELOPER_DIR; }; - 69CF4410E2179DACEB620FFCBBA32109 /* magnetometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = magnetometer.rst.txt; path = Docs/build/html/_sources/magnetometer.rst.txt; sourceTree = ""; }; - 6A24C82034C3F33943F32366825A7F53 /* haptic.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = haptic.rst; path = Docs/source/haptic.rst; sourceTree = ""; }; - 6A7B40F3255D097630B2CFB3278B7DAC /* humidity.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = humidity.doctree; path = Docs/build/doctrees/humidity.doctree; sourceTree = ""; }; + 69CF4410E2179DACEB620FFCBBA32109 /* magnetometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = magnetometer.rst.txt; path = Docs/build/html/_sources/magnetometer.rst.txt; sourceTree = ""; }; + 6A24C82034C3F33943F32366825A7F53 /* haptic.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = haptic.rst; path = Docs/source/haptic.rst; sourceTree = ""; }; + 6A7B40F3255D097630B2CFB3278B7DAC /* humidity.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = humidity.doctree; path = Docs/build/doctrees/humidity.doctree; sourceTree = ""; }; 6C337243CE5ED654EBE80ABFE62B90F0 /* MBProgressHUD-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "MBProgressHUD-iOS.modulemap"; sourceTree = ""; }; - 6C947102CABC6CF1B03A3CC74BFE1143 /* settings.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = settings.cpp; sourceTree = ""; }; - 6D00ED3BC39B109FA0D6F23746313432 /* environment.pickle */ = {isa = PBXFileReference; includeInIndex = 1; name = environment.pickle; path = Docs/build/doctrees/environment.pickle; sourceTree = ""; }; - 6D4FB7A5D78EE1FDB4857D9EDF07615C /* file_operations.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = file_operations.cpp; sourceTree = ""; }; - 6DF75879D9379473EA340CDEF27C04E3 /* i2c.html */ = {isa = PBXFileReference; includeInIndex = 1; name = i2c.html; path = Docs/build/html/i2c.html; sourceTree = ""; }; - 6E548A000C7AA5DBDA459E5CFE1D08B0 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MetaWear.framework; path = "MetaWear-macOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 6D00ED3BC39B109FA0D6F23746313432 /* environment.pickle */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = environment.pickle; path = Docs/build/doctrees/environment.pickle; sourceTree = ""; }; + 6DF75879D9379473EA340CDEF27C04E3 /* i2c.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = i2c.html; path = Docs/build/html/i2c.html; sourceTree = ""; }; + 6E548A000C7AA5DBDA459E5CFE1D08B0 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MetaWear.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 6F4DFDD326DF0F687E3A573D7C34CB4D /* MetaWear-macOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-macOS-umbrella.h"; path = "../MetaWear-macOS/MetaWear-macOS-umbrella.h"; sourceTree = ""; }; - 6F90FE959C5F8630ED647A98837D766A /* logger.html */ = {isa = PBXFileReference; includeInIndex = 1; name = logger.html; path = Docs/build/html/logger.html; sourceTree = ""; }; + 6F90FE959C5F8630ED647A98837D766A /* logger.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = logger.html; path = Docs/build/html/logger.html; sourceTree = ""; }; 702271784BFC1B5B9BBAB107FDE921EC /* Pods-Starter-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Starter-tvOS-umbrella.h"; sourceTree = ""; }; - 70714BE6042AB4FD6FE5A0ACBBA5E405 /* macro.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = macro.rst.txt; path = Docs/build/html/_sources/macro.rst.txt; sourceTree = ""; }; - 70D1B35F7260C2B6850329D33F431888 /* temperature.html */ = {isa = PBXFileReference; includeInIndex = 1; name = temperature.html; path = Docs/build/html/temperature.html; sourceTree = ""; }; - 70DC84F6802825A7ACCE1D134E26579C /* gpio.html */ = {isa = PBXFileReference; includeInIndex = 1; name = gpio.html; path = Docs/build/html/gpio.html; sourceTree = ""; }; - 70E052A0D22CF553F00BF9B60AAF314E /* ambientlightsensor.html */ = {isa = PBXFileReference; includeInIndex = 1; name = ambientlightsensor.html; path = Docs/build/html/ambientlightsensor.html; sourceTree = ""; }; + 70714BE6042AB4FD6FE5A0ACBBA5E405 /* macro.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = macro.rst.txt; path = Docs/build/html/_sources/macro.rst.txt; sourceTree = ""; }; + 70D1B35F7260C2B6850329D33F431888 /* temperature.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = temperature.html; path = Docs/build/html/temperature.html; sourceTree = ""; }; + 70DC84F6802825A7ACCE1D134E26579C /* gpio.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = gpio.html; path = Docs/build/html/gpio.html; sourceTree = ""; }; + 70E052A0D22CF553F00BF9B60AAF314E /* ambientlightsensor.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = ambientlightsensor.html; path = Docs/build/html/ambientlightsensor.html; sourceTree = ""; }; 71C80E8469B47A167FD49190C5F25FD6 /* MetaWear-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-tvOS.release.xcconfig"; path = "../MetaWear-tvOS/MetaWear-tvOS.release.xcconfig"; sourceTree = ""; }; - 71DA3BD0D4B12F92A08EEC60407E8CB3 /* doctools.js */ = {isa = PBXFileReference; includeInIndex = 1; name = doctools.js; path = Docs/build/html/_static/doctools.js; sourceTree = ""; }; - 7217CA910247FBFC09ECDAAED1FAA751 /* ambientlightsensor.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = ambientlightsensor.doctree; path = Docs/build/doctrees/ambientlightsensor.doctree; sourceTree = ""; }; + 71DA3BD0D4B12F92A08EEC60407E8CB3 /* doctools.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = doctools.js; path = Docs/build/html/_static/doctools.js; sourceTree = ""; }; + 7217CA910247FBFC09ECDAAED1FAA751 /* ambientlightsensor.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = ambientlightsensor.doctree; path = Docs/build/doctrees/ambientlightsensor.doctree; sourceTree = ""; }; + 72606E964BE0EEC7D8CAF7820504909D /* version.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = version.cpp; sourceTree = ""; }; 727D672B885D63406AFDABB9A8BC708C /* MBProgressHUD-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "MBProgressHUD-iOS-Info.plist"; sourceTree = ""; }; - 73596A17D39152C54F79907E905F484D /* common.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = common.cpp; sourceTree = ""; }; 73C56E3159D96EE5790B58981C71B08F /* Bolts-Swift-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-tvOS.debug.xcconfig"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS.debug.xcconfig"; sourceTree = ""; }; - 73F90626148B6926CD0A3CF52A7E3287 /* dataprocessor.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = dataprocessor.rst; path = Docs/source/dataprocessor.rst; sourceTree = ""; }; - 7418CF41A42F30CF160C2A5C7A4C7715 /* MBProgressHUD.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MBProgressHUD.framework; path = "MBProgressHUD-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 75AEFB622039DC267B8083016484BF84 /* genindex.html */ = {isa = PBXFileReference; includeInIndex = 1; name = genindex.html; path = Docs/build/html/genindex.html; sourceTree = ""; }; - 75F6B9E777BF67164B289B4A899616A5 /* humidity.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = humidity.rst.txt; path = Docs/build/html/_sources/humidity.rst.txt; sourceTree = ""; }; - 763577F12BE55BB7C2C3CB169B80E912 /* core_modules.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = core_modules.rst; path = Docs/source/core_modules.rst; sourceTree = ""; }; - 76420B6D059B622049A79A9CADAB636C /* settings.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.rst; path = Docs/source/settings.rst; sourceTree = ""; }; - 76EC20733025534D43C97EF33183EC39 /* barometer.html */ = {isa = PBXFileReference; includeInIndex = 1; name = barometer.html; path = Docs/build/html/barometer.html; sourceTree = ""; }; - 780E39B0E7CC446384C25BBA74A91ECE /* sensor_fusion.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = sensor_fusion.rst.txt; path = Docs/build/html/_sources/sensor_fusion.rst.txt; sourceTree = ""; }; - 781F5D1DB4CF64528FC57FCAC3C29F5F /* advanced_features.html */ = {isa = PBXFileReference; includeInIndex = 1; name = advanced_features.html; path = Docs/build/html/advanced_features.html; sourceTree = ""; }; - 7830D4E509A6301BB21BBB855A5BE241 /* logger.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = logger.doctree; path = Docs/build/doctrees/logger.doctree; sourceTree = ""; }; + 73F90626148B6926CD0A3CF52A7E3287 /* dataprocessor.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = dataprocessor.rst; path = Docs/source/dataprocessor.rst; sourceTree = ""; }; + 7418CF41A42F30CF160C2A5C7A4C7715 /* MBProgressHUD.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MBProgressHUD.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 75AEFB622039DC267B8083016484BF84 /* genindex.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = genindex.html; path = Docs/build/html/genindex.html; sourceTree = ""; }; + 75F6B9E777BF67164B289B4A899616A5 /* humidity.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = humidity.rst.txt; path = Docs/build/html/_sources/humidity.rst.txt; sourceTree = ""; }; + 763577F12BE55BB7C2C3CB169B80E912 /* core_modules.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = core_modules.rst; path = Docs/source/core_modules.rst; sourceTree = ""; }; + 76420B6D059B622049A79A9CADAB636C /* settings.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = settings.rst; path = Docs/source/settings.rst; sourceTree = ""; }; + 76EC20733025534D43C97EF33183EC39 /* barometer.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = barometer.html; path = Docs/build/html/barometer.html; sourceTree = ""; }; + 780E39B0E7CC446384C25BBA74A91ECE /* sensor_fusion.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = sensor_fusion.rst.txt; path = Docs/build/html/_sources/sensor_fusion.rst.txt; sourceTree = ""; }; + 781F5D1DB4CF64528FC57FCAC3C29F5F /* advanced_features.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = advanced_features.html; path = Docs/build/html/advanced_features.html; sourceTree = ""; }; + 7830D4E509A6301BB21BBB855A5BE241 /* logger.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = logger.doctree; path = Docs/build/doctrees/logger.doctree; sourceTree = ""; }; + 78FA47E416E330555C8481834F3CF2C8 /* accelerometer_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer_bosch.cpp; sourceTree = ""; }; 7AAC9ACF72E9A75C8F8619A59E6142BD /* MBProgressHUD-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MBProgressHUD-iOS-prefix.pch"; sourceTree = ""; }; - 7AD861E0372523DEECEF815D9FA7F8EE /* ambientlight_ltr329.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ambientlight_ltr329.cpp; sourceTree = ""; }; 7B36557E57399D9FE06D3DD94D7C1713 /* MblMwDataSignal+Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MblMwDataSignal+Async.swift"; path = "MetaWear/AsyncUtils/MblMwDataSignal+Async.swift"; sourceTree = ""; }; 7BB6060635F52EB33D6A127505F26CA1 /* MetaWear-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-tvOS.debug.xcconfig"; path = "../MetaWear-tvOS/MetaWear-tvOS.debug.xcconfig"; sourceTree = ""; }; 7BF15712AABD985A36C7041D143B0F7B /* MetaWear-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MetaWear-iOS-umbrella.h"; sourceTree = ""; }; - 7DB0BD827BAFBB4A29321AAB7C2D9209 /* metawearboard.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearboard.rst; path = Docs/source/metawearboard.rst; sourceTree = ""; }; + 7DB0BD827BAFBB4A29321AAB7C2D9209 /* metawearboard.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = metawearboard.rst; path = Docs/source/metawearboard.rst; sourceTree = ""; }; 7DFA7E1CF90980A0A17D88F03E86FD05 /* Errors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Errors.swift; path = Sources/BoltsSwift/Errors.swift; sourceTree = ""; }; - 7E390F0DA33824EEA188BADFECC38820 /* PythonGenerator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = PythonGenerator.cpp; sourceTree = ""; }; 7F3E0B8E0AD0DB3D3B601C398C66DF7F /* Pods-Starter-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Starter-tvOS.release.xcconfig"; sourceTree = ""; }; - 8082259281DFB8C049D3E08D23252D81 /* timer.html */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.html; path = Docs/build/html/timer.html; sourceTree = ""; }; + 800695C91E09337CF59DAEA9AC08A10B /* barometer_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = barometer_bosch.cpp; sourceTree = ""; }; + 8082259281DFB8C049D3E08D23252D81 /* timer.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = timer.html; path = Docs/build/html/timer.html; sourceTree = ""; }; 8180ED6AA8B350F7282D6C70A86941EE /* MetaWear-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MetaWear-macOS.release.xcconfig"; path = "../MetaWear-macOS/MetaWear-macOS.release.xcconfig"; sourceTree = ""; }; - 819E76F26F0DBB099EDE7AEC9D2F5575 /* event.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = event.rst; path = Docs/source/event.rst; sourceTree = ""; }; - 82049F9A58281394DE855DF0C1E6C363 /* metawearscanner.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearscanner.rst; path = Docs/source/metawearscanner.rst; sourceTree = ""; }; + 819E76F26F0DBB099EDE7AEC9D2F5575 /* event.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = event.rst; path = Docs/source/event.rst; sourceTree = ""; }; + 82049F9A58281394DE855DF0C1E6C363 /* metawearscanner.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = metawearscanner.rst; path = Docs/source/metawearscanner.rst; sourceTree = ""; }; + 8268A18C900AA08EA1EF1132A6AB4641 /* anonymous_datasignal.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = anonymous_datasignal.cpp; sourceTree = ""; }; 829FE6E31553903E1B9AD49D369843AA /* MetaWear-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "MetaWear-tvOS-Info.plist"; path = "../MetaWear-tvOS/MetaWear-tvOS-Info.plist"; sourceTree = ""; }; 837B192127E7B12E08CEDCC250CC101A /* TaskCompletionSource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskCompletionSource.swift; path = Sources/BoltsSwift/TaskCompletionSource.swift; sourceTree = ""; }; 83E1398E2BABE33EFA94E9368A71684C /* upload.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; name = upload.sh; path = Docs/upload.sh; sourceTree = ""; }; 84A1AFD074DA79FEDE0E4400345D85C2 /* MetaWear-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MetaWear-macOS-dummy.m"; path = "../MetaWear-macOS/MetaWear-macOS-dummy.m"; sourceTree = ""; }; - 85C8BA20B3E59C69821DD782F166EEF4 /* event.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = event.doctree; path = Docs/build/doctrees/event.doctree; sourceTree = ""; }; + 85C8BA20B3E59C69821DD782F166EEF4 /* event.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = event.doctree; path = Docs/build/doctrees/event.doctree; sourceTree = ""; }; + 873067A70EEF28327EB82BFB5FF42397 /* file_operations.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = file_operations.cpp; sourceTree = ""; }; 8754823756355F1A18C60F348C8B8CFA /* MBProgressHUD-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MBProgressHUD-tvOS-umbrella.h"; path = "../MBProgressHUD-tvOS/MBProgressHUD-tvOS-umbrella.h"; sourceTree = ""; }; 87D44A912EE8674FA1013061A1CBC555 /* Bolts-Swift-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Bolts-Swift-iOS-Info.plist"; sourceTree = ""; }; 87D659F1465356AA74B9A092439A6D8A /* MetaWearData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWearData.swift; sourceTree = ""; }; 887A0B2E8481AB7CE0DD552ADD31F5C6 /* Pods-Starter-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Starter-tvOS.modulemap"; sourceTree = ""; }; - 888E301C84C29361A6D17FA7BD6FC5C6 /* ambientlightsensor.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = ambientlightsensor.rst.txt; path = Docs/build/html/_sources/ambientlightsensor.rst.txt; sourceTree = ""; }; - 88F3F050AC9DCDD47CA87E6C64A31031 /* metawearscanner.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearscanner.rst.txt; path = Docs/build/html/_sources/metawearscanner.rst.txt; sourceTree = ""; }; + 888E301C84C29361A6D17FA7BD6FC5C6 /* ambientlightsensor.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = ambientlightsensor.rst.txt; path = Docs/build/html/_sources/ambientlightsensor.rst.txt; sourceTree = ""; }; + 88F3F050AC9DCDD47CA87E6C64A31031 /* metawearscanner.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = metawearscanner.rst.txt; path = Docs/build/html/_sources/metawearscanner.rst.txt; sourceTree = ""; }; 8A94499076F43ED27622B582C18A1DD8 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/CoreGraphics.framework; sourceTree = DEVELOPER_DIR; }; - 8AECED3EAEA299BAF975F89EDDC030FE /* haptic.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = haptic.doctree; path = Docs/build/doctrees/haptic.doctree; sourceTree = ""; }; + 8AECED3EAEA299BAF975F89EDDC030FE /* haptic.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = haptic.doctree; path = Docs/build/doctrees/haptic.doctree; sourceTree = ""; }; 8C2EEE8CD5B553715127DAC33DC40809 /* MBProgressHUD-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "MBProgressHUD-iOS.release.xcconfig"; sourceTree = ""; }; - 8C4779E9F32CBC976D46FCA71BC384D0 /* spi.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = spi.rst; path = Docs/source/spi.rst; sourceTree = ""; }; - 8C4E60FA5AA15460A6D9A8E5C5774258 /* core_modules.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = core_modules.rst.txt; path = Docs/build/html/_sources/core_modules.rst.txt; sourceTree = ""; }; - 8D93A451DA20E000F47E9DB2C2AE8A77 /* sensors.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = sensors.rst.txt; path = Docs/build/html/_sources/sensors.rst.txt; sourceTree = ""; }; - 8DA8F605306A00A56093264E789638F9 /* CSharpGenerator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = CSharpGenerator.cpp; sourceTree = ""; }; - 8DFAF9FFD5851465C20BA3DB650A5A0F /* temperature.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = temperature.rst.txt; path = Docs/build/html/_sources/temperature.rst.txt; sourceTree = ""; }; - 8E5337698F92619E772C69177B31FF2D /* gyro_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = gyro_bosch.cpp; sourceTree = ""; }; - 8E73CBCA5892532AB47FAEFA6C2AA186 /* index.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = index.doctree; path = Docs/build/doctrees/index.doctree; sourceTree = ""; }; + 8C4779E9F32CBC976D46FCA71BC384D0 /* spi.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = spi.rst; path = Docs/source/spi.rst; sourceTree = ""; }; + 8C4E60FA5AA15460A6D9A8E5C5774258 /* core_modules.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = core_modules.rst.txt; path = Docs/build/html/_sources/core_modules.rst.txt; sourceTree = ""; }; + 8C62E827F21DEB7A8FD41B842D2F7D2C /* gyro_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = gyro_bosch.cpp; sourceTree = ""; }; + 8D93A451DA20E000F47E9DB2C2AE8A77 /* sensors.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = sensors.rst.txt; path = Docs/build/html/_sources/sensors.rst.txt; sourceTree = ""; }; + 8DFAF9FFD5851465C20BA3DB650A5A0F /* temperature.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = temperature.rst.txt; path = Docs/build/html/_sources/temperature.rst.txt; sourceTree = ""; }; + 8E73CBCA5892532AB47FAEFA6C2AA186 /* index.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = index.doctree; path = Docs/build/doctrees/index.doctree; sourceTree = ""; }; 8F72C28F3CC1842F6B07A196D329BA2C /* Bolts-Swift-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Bolts-Swift-iOS.debug.xcconfig"; sourceTree = ""; }; - 8FE18352D7951479EFF9166009D5FE28 /* i2c.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = i2c.rst.txt; path = Docs/build/html/_sources/i2c.rst.txt; sourceTree = ""; }; - 9065F9D0C5197CA6A79E2C9E79E1533F /* accelerometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = accelerometer.rst.txt; path = Docs/build/html/_sources/accelerometer.rst.txt; sourceTree = ""; }; - 915C92E52AD291DB12C9D2632199C9A3 /* neopixel.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = neopixel.cpp; sourceTree = ""; }; - 9282C71969A1439C75E173883400052A /* accelerometer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer.cpp; sourceTree = ""; }; - 9328A45B394AA6F5C68B56D82E673DFC /* jquery.js */ = {isa = PBXFileReference; includeInIndex = 1; name = jquery.js; path = Docs/build/html/_static/jquery.js; sourceTree = ""; }; - 93A104537BE055AF14D78DE0DD05B00B /* metawearboard.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearboard.doctree; path = Docs/build/doctrees/metawearboard.doctree; sourceTree = ""; }; + 8FE18352D7951479EFF9166009D5FE28 /* i2c.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = i2c.rst.txt; path = Docs/build/html/_sources/i2c.rst.txt; sourceTree = ""; }; + 9065F9D0C5197CA6A79E2C9E79E1533F /* accelerometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = accelerometer.rst.txt; path = Docs/build/html/_sources/accelerometer.rst.txt; sourceTree = ""; }; + 9328A45B394AA6F5C68B56D82E673DFC /* jquery.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = jquery.js; path = Docs/build/html/_static/jquery.js; sourceTree = ""; }; + 936C85CD5632707AFDBA77A49B76B8D4 /* proximity_tsl2671.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = proximity_tsl2671.cpp; sourceTree = ""; }; + 93A104537BE055AF14D78DE0DD05B00B /* metawearboard.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = metawearboard.doctree; path = Docs/build/doctrees/metawearboard.doctree; sourceTree = ""; }; 940B1A78A509FC5E861E0F33B9FF2955 /* MetaWearScanner.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWearScanner.swift; sourceTree = ""; }; 95927B638B5049F46D71A0C4A2B6F8BA /* MetaWear-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MetaWear-tvOS-prefix.pch"; path = "../MetaWear-tvOS/MetaWear-tvOS-prefix.pch"; sourceTree = ""; }; - 960E6CF8D16AAFA541846C643B412CED /* dataprocessor_config.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dataprocessor_config.cpp; sourceTree = ""; }; - 971248F309E34FAF0266C0AC36238ADE /* lato-bold.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-bold.woff2"; path = "Docs/build/html/_static/css/fonts/lato-bold.woff2"; sourceTree = ""; }; + 96CB75CFF13BAA0A8635C3A4224A757E /* neopixel.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = neopixel.cpp; sourceTree = ""; }; + 971248F309E34FAF0266C0AC36238ADE /* lato-bold.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-bold.woff2"; path = "Docs/build/html/_static/css/fonts/lato-bold.woff2"; sourceTree = ""; }; 973F1F6E8D98971DFC54B89A49598E78 /* Pods-Starter-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Starter-tvOS-Info.plist"; sourceTree = ""; }; - 97E098307FCCCF6B097AC4B577FF04EF /* peripherals.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = peripherals.rst; path = Docs/source/peripherals.rst; sourceTree = ""; }; + 97E098307FCCCF6B097AC4B577FF04EF /* peripherals.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = peripherals.rst; path = Docs/source/peripherals.rst; sourceTree = ""; }; 98241A252EE9A09357645FC887B227C6 /* Bolts-Swift-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "Bolts-Swift-tvOS.modulemap"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS.modulemap"; sourceTree = ""; }; - 9925F3872F89CD8A31D438559D9A38D7 /* Roboto-Slab-Bold.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "Roboto-Slab-Bold.woff"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Bold.woff"; sourceTree = ""; }; - 99C6F40D52D0737098504CF7565DED44 /* led.html */ = {isa = PBXFileReference; includeInIndex = 1; name = led.html; path = Docs/build/html/led.html; sourceTree = ""; }; + 98EB1140A71E6201AFB78EF6D744BBB3 /* multichanneltemperature.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = multichanneltemperature.cpp; sourceTree = ""; }; + 9925F3872F89CD8A31D438559D9A38D7 /* Roboto-Slab-Bold.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "Roboto-Slab-Bold.woff"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Bold.woff"; sourceTree = ""; }; + 99C6F40D52D0737098504CF7565DED44 /* led.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = led.html; path = Docs/build/html/led.html; sourceTree = ""; }; 9C1B536A0A6CDFDEB99751E59899728C /* MetaWear-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "MetaWear-iOS.release.xcconfig"; sourceTree = ""; }; - 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 9CA6F4AC0236407AFCC5FFFDAFD54C75 /* humidity_bme280.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = humidity_bme280.cpp; sourceTree = ""; }; + 9CED93C4D93A38B9822FDC7E7AEDE54E /* dataprocessor_config.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dataprocessor_config.cpp; sourceTree = ""; }; + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; 9DC9077D61C1F98C3178577A231EDCFA /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS14.0.sdk/System/Library/Frameworks/CoreGraphics.framework; sourceTree = DEVELOPER_DIR; }; 9E0D7E61DB92369D72A5735D8D562C0C /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/QuartzCore.framework; sourceTree = DEVELOPER_DIR; }; - A1BC54611F59DDB9DA105EFA630CE88A /* miniz.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = miniz.cpp; sourceTree = ""; }; + 9F7673374ED5494F00B986AA3EF36297 /* moduleinfo.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = moduleinfo.cpp; sourceTree = ""; }; A32F3EA739395EC8FBF864B3A8E08B49 /* Bolts-Swift-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Bolts-Swift-macOS-dummy.m"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS-dummy.m"; sourceTree = ""; }; - A3BEB3D6E1A86B5C85D11DA03F476671 /* temperature.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = temperature.rst; path = Docs/source/temperature.rst; sourceTree = ""; }; + A3BEB3D6E1A86B5C85D11DA03F476671 /* temperature.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = temperature.rst; path = Docs/source/temperature.rst; sourceTree = ""; }; A3BFC962E615607D27A73E209AF87F79 /* MBProgressHUD-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "MBProgressHUD-tvOS.debug.xcconfig"; path = "../MBProgressHUD-tvOS/MBProgressHUD-tvOS.debug.xcconfig"; sourceTree = ""; }; - A4016FFAEDA0DA9EDA859825795F4AC9 /* timer.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.rst; path = Docs/source/timer.rst; sourceTree = ""; }; - A48523ED159104EE7638E6C6E4F14B0A /* macro.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = macro.doctree; path = Docs/build/doctrees/macro.doctree; sourceTree = ""; }; + A4016FFAEDA0DA9EDA859825795F4AC9 /* timer.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = timer.rst; path = Docs/source/timer.rst; sourceTree = ""; }; + A48523ED159104EE7638E6C6E4F14B0A /* macro.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = macro.doctree; path = Docs/build/doctrees/macro.doctree; sourceTree = ""; }; A4A6B497310165A8A16BDFC2E6DC8B0D /* MBProgressHUD-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "MBProgressHUD-tvOS-dummy.m"; path = "../MBProgressHUD-tvOS/MBProgressHUD-tvOS-dummy.m"; sourceTree = ""; }; A5372FC8ECA6A811905243B4EC16FA3D /* Bolts-Swift-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-macOS.release.xcconfig"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS.release.xcconfig"; sourceTree = ""; }; A61DEC5F2BB53734CEAF84D0596B872E /* Bolts-Swift-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-tvOS-prefix.pch"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS-prefix.pch"; sourceTree = ""; }; - A664C95B75FCF91CE08A4EAE7BD19507 /* gyro.html */ = {isa = PBXFileReference; includeInIndex = 1; name = gyro.html; path = Docs/build/html/gyro.html; sourceTree = ""; }; - A968F6900C4B3410E2C08D7925FA946D /* index.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = index.rst; path = Docs/source/index.rst; sourceTree = ""; }; - A9DA7456B9A446DE705CA0792DD1A5D8 /* LICENSE.md */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE.md; sourceTree = ""; }; - AA168D11874285055C0DB759157C8366 /* ambientlightsensor.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = ambientlightsensor.rst; path = Docs/source/ambientlightsensor.rst; sourceTree = ""; }; - AADD448787441C1267FFCD7035682F41 /* advanced_features.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = advanced_features.rst.txt; path = Docs/build/html/_sources/advanced_features.rst.txt; sourceTree = ""; }; - AC16AF9C03890DEA2A12F04BAA829EFF /* metawearscanner.html */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearscanner.html; path = Docs/build/html/metawearscanner.html; sourceTree = ""; }; + A664C95B75FCF91CE08A4EAE7BD19507 /* gyro.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = gyro.html; path = Docs/build/html/gyro.html; sourceTree = ""; }; + A66FB38AF5CED00AEE0D4B25977DF1E9 /* magnetometer_bmm150.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = magnetometer_bmm150.cpp; sourceTree = ""; }; + A6FD942C8BC69385A7C869C3DBF689B6 /* memory.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = memory.cpp; sourceTree = ""; }; + A92C6A27B8E84326669B52DB9203614E /* miniz.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = miniz.cpp; sourceTree = ""; }; + A968F6900C4B3410E2C08D7925FA946D /* index.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = index.rst; path = Docs/source/index.rst; sourceTree = ""; }; + A9DA7456B9A446DE705CA0792DD1A5D8 /* LICENSE.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; path = LICENSE.md; sourceTree = ""; }; + AA168D11874285055C0DB759157C8366 /* ambientlightsensor.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = ambientlightsensor.rst; path = Docs/source/ambientlightsensor.rst; sourceTree = ""; }; + AA222498403C37B047BE83037BD42325 /* colordetector_tcs34725.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = colordetector_tcs34725.cpp; sourceTree = ""; }; + AADD448787441C1267FFCD7035682F41 /* advanced_features.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = advanced_features.rst.txt; path = Docs/build/html/_sources/advanced_features.rst.txt; sourceTree = ""; }; + AC16AF9C03890DEA2A12F04BAA829EFF /* metawearscanner.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = metawearscanner.html; path = Docs/build/html/metawearscanner.html; sourceTree = ""; }; AC708C124E7BBC3699D1F782FD67686F /* file.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = file.png; path = Docs/build/html/_static/file.png; sourceTree = ""; }; - ACE5F2ED7D50242EFF75090D99C76927 /* logging.html */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.html; path = Docs/build/html/logging.html; sourceTree = ""; }; - AD64B0694BC2C8ED8B75A9D7BE0DA7C8 /* gpio.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = gpio.rst.txt; path = Docs/build/html/_sources/gpio.rst.txt; sourceTree = ""; }; + ACE5F2ED7D50242EFF75090D99C76927 /* logging.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = logging.html; path = Docs/build/html/logging.html; sourceTree = ""; }; + AD64B0694BC2C8ED8B75A9D7BE0DA7C8 /* gpio.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = gpio.rst.txt; path = Docs/build/html/_sources/gpio.rst.txt; sourceTree = ""; }; AE0D16902D92A36A820FD1814FFE14DC /* Pods-Starter-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Starter-macOS.modulemap"; sourceTree = ""; }; - AE145F7E7626B34845FAA49CBCC1A2F5 /* spi.html */ = {isa = PBXFileReference; includeInIndex = 1; name = spi.html; path = Docs/build/html/spi.html; sourceTree = ""; }; - AE34D13AE4272C80F5DE844E6689AB2A /* gyro.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = gyro.rst.txt; path = Docs/build/html/_sources/gyro.rst.txt; sourceTree = ""; }; - AE97A88FA72CBBE2AC25A4DE5C982520 /* event.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = event.rst.txt; path = Docs/build/html/_sources/event.rst.txt; sourceTree = ""; }; - AF3B70568FD7AA14EB110315B2672ECC /* index.html */ = {isa = PBXFileReference; includeInIndex = 1; name = index.html; path = Docs/build/html/index.html; sourceTree = ""; }; - AF455F06CF0459F70AAFD514CE9B8C90 /* sensor_fusion.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = sensor_fusion.doctree; path = Docs/build/doctrees/sensor_fusion.doctree; sourceTree = ""; }; - AF9BE72D3F724EFB9A6ADFDE7CF0DC2E /* dfu_operations_details.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_operations_details.cpp; sourceTree = ""; }; - B07EBDA6087E77B7FBF0B5EE7F835A56 /* temperature.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = temperature.doctree; path = Docs/build/doctrees/temperature.doctree; sourceTree = ""; }; - B0833D5E766F8A66B34C77E0646A98A9 /* peripherals.html */ = {isa = PBXFileReference; includeInIndex = 1; name = peripherals.html; path = Docs/build/html/peripherals.html; sourceTree = ""; }; - B09995BBCCF22483CEC38EB78C7992A4 /* metawearboard.html */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearboard.html; path = Docs/build/html/metawearboard.html; sourceTree = ""; }; + AE145F7E7626B34845FAA49CBCC1A2F5 /* spi.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = spi.html; path = Docs/build/html/spi.html; sourceTree = ""; }; + AE34D13AE4272C80F5DE844E6689AB2A /* gyro.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = gyro.rst.txt; path = Docs/build/html/_sources/gyro.rst.txt; sourceTree = ""; }; + AE97A88FA72CBBE2AC25A4DE5C982520 /* event.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = event.rst.txt; path = Docs/build/html/_sources/event.rst.txt; sourceTree = ""; }; + AF3B70568FD7AA14EB110315B2672ECC /* index.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = index.html; path = Docs/build/html/index.html; sourceTree = ""; }; + AF455F06CF0459F70AAFD514CE9B8C90 /* sensor_fusion.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = sensor_fusion.doctree; path = Docs/build/doctrees/sensor_fusion.doctree; sourceTree = ""; }; + B07EBDA6087E77B7FBF0B5EE7F835A56 /* temperature.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = temperature.doctree; path = Docs/build/doctrees/temperature.doctree; sourceTree = ""; }; + B0833D5E766F8A66B34C77E0646A98A9 /* peripherals.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = peripherals.html; path = Docs/build/html/peripherals.html; sourceTree = ""; }; + B09995BBCCF22483CEC38EB78C7992A4 /* metawearboard.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = metawearboard.html; path = Docs/build/html/metawearboard.html; sourceTree = ""; }; B15555497F693B6A99DE2F485EF4A1AC /* Task.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Task.swift; path = Sources/BoltsSwift/Task.swift; sourceTree = ""; }; + B1559D9AD0C59A4263268B2823A06BDD /* logging.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = logging.cpp; sourceTree = ""; }; B1B3569712E32522356304FB6B9DF2A5 /* Pods-Starter-macOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Starter-macOS-dummy.m"; sourceTree = ""; }; - B2B67FDDC92ADF288F862CF09115C908 /* badge_only.css */ = {isa = PBXFileReference; includeInIndex = 1; name = badge_only.css; path = Docs/build/html/_static/css/badge_only.css; sourceTree = ""; }; + B2B67FDDC92ADF288F862CF09115C908 /* badge_only.css */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.css; name = badge_only.css; path = Docs/build/html/_static/css/badge_only.css; sourceTree = ""; }; B342E0A9CA2E7D446D273E80F6A39634 /* plus.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = plus.png; path = Docs/build/html/_static/plus.png; sourceTree = ""; }; - B3BDF2105B28EAC636817114B8E6FF6B /* advanced_features.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = advanced_features.rst; path = Docs/source/advanced_features.rst; sourceTree = ""; }; - B3BFD8F7FDEABE86A0B82DCEBD8BAC49 /* macro.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = macro.rst; path = Docs/source/macro.rst; sourceTree = ""; }; - B705D38C8AF52642C58DE64E291AD532 /* project.html */ = {isa = PBXFileReference; includeInIndex = 1; name = project.html; path = Docs/build/html/project.html; sourceTree = ""; }; - B71604572313E9BB286E64E29DBC6732 /* multichanneltemperature.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = multichanneltemperature.cpp; sourceTree = ""; }; - B92084A02EDB6F7A265F8E39A3239F45 /* fontawesome-webfont.eot */ = {isa = PBXFileReference; includeInIndex = 1; name = "fontawesome-webfont.eot"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.eot"; sourceTree = ""; }; - B9AB5E8B8A30D62D31EB5C8E2B2FD175 /* datasignal.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = datasignal.rst.txt; path = Docs/build/html/_sources/datasignal.rst.txt; sourceTree = ""; }; + B3BDF2105B28EAC636817114B8E6FF6B /* advanced_features.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = advanced_features.rst; path = Docs/source/advanced_features.rst; sourceTree = ""; }; + B3BFD8F7FDEABE86A0B82DCEBD8BAC49 /* macro.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = macro.rst; path = Docs/source/macro.rst; sourceTree = ""; }; + B705D38C8AF52642C58DE64E291AD532 /* project.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = project.html; path = Docs/build/html/project.html; sourceTree = ""; }; + B92084A02EDB6F7A265F8E39A3239F45 /* fontawesome-webfont.eot */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "fontawesome-webfont.eot"; path = "Docs/build/html/_static/css/fonts/fontawesome-webfont.eot"; sourceTree = ""; }; + B9AB5E8B8A30D62D31EB5C8E2B2FD175 /* datasignal.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = datasignal.rst.txt; path = Docs/build/html/_sources/datasignal.rst.txt; sourceTree = ""; }; BA5E0166744E14FD215072817656470E /* Bolts-Swift-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "Bolts-Swift-macOS-Info.plist"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS-Info.plist"; sourceTree = ""; }; BB8FF63AAD949B90017C1EA691426A74 /* Pods-Starter-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Starter-tvOS-dummy.m"; sourceTree = ""; }; - BD1681E2CDFE24B8786F89BBE4EF85FC /* gpio.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = gpio.rst; path = Docs/source/gpio.rst; sourceTree = ""; }; - BED3FEA98526E49E140844EB3D56089E /* html5shiv.min.js */ = {isa = PBXFileReference; includeInIndex = 1; name = html5shiv.min.js; path = Docs/build/html/_static/js/html5shiv.min.js; sourceTree = ""; }; - BF3FE49FBC55DBBEE9D689295441F9AF /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + BC06CFE2FE2E56FAB739148BF89AE0C7 /* event.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = event.cpp; sourceTree = ""; }; + BD1681E2CDFE24B8786F89BBE4EF85FC /* gpio.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = gpio.rst; path = Docs/source/gpio.rst; sourceTree = ""; }; + BED3FEA98526E49E140844EB3D56089E /* html5shiv.min.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = html5shiv.min.js; path = Docs/build/html/_static/js/html5shiv.min.js; sourceTree = ""; }; + BF3FE49FBC55DBBEE9D689295441F9AF /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; }; C099A53D7B4B4B957280D1A29B8AB95C /* Pods-Starter-iOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Starter-iOS-frameworks.sh"; sourceTree = ""; }; - C21967F5C33E749B602F315E15E8E299 /* metawearscanner.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearscanner.doctree; path = Docs/build/doctrees/metawearscanner.doctree; sourceTree = ""; }; - C455BD80D0B724316FAA636CDC8562D4 /* lato-normal-italic.woff */ = {isa = PBXFileReference; includeInIndex = 1; name = "lato-normal-italic.woff"; path = "Docs/build/html/_static/css/fonts/lato-normal-italic.woff"; sourceTree = ""; }; - C52F6AB1A05108D70669568167D18805 /* layout.html */ = {isa = PBXFileReference; includeInIndex = 1; name = layout.html; path = Docs/source/_templates/layout.html; sourceTree = ""; }; - C58E3BE77CBA2E837613FA138CE24B92 /* documentation_options.js */ = {isa = PBXFileReference; includeInIndex = 1; name = documentation_options.js; path = Docs/build/html/_static/documentation_options.js; sourceTree = ""; }; - C625A7F7E5341AD19981D11484733176 /* led.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = led.rst.txt; path = Docs/build/html/_sources/led.rst.txt; sourceTree = ""; }; - C765F6E825F979DBF983E7EFE6F4394C /* jquery-3.5.1.js */ = {isa = PBXFileReference; includeInIndex = 1; name = "jquery-3.5.1.js"; path = "Docs/build/html/_static/jquery-3.5.1.js"; sourceTree = ""; }; + C21967F5C33E749B602F315E15E8E299 /* metawearscanner.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = metawearscanner.doctree; path = Docs/build/doctrees/metawearscanner.doctree; sourceTree = ""; }; + C455BD80D0B724316FAA636CDC8562D4 /* lato-normal-italic.woff */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "lato-normal-italic.woff"; path = "Docs/build/html/_static/css/fonts/lato-normal-italic.woff"; sourceTree = ""; }; + C52F6AB1A05108D70669568167D18805 /* layout.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = layout.html; path = Docs/source/_templates/layout.html; sourceTree = ""; }; + C58E3BE77CBA2E837613FA138CE24B92 /* documentation_options.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = documentation_options.js; path = Docs/build/html/_static/documentation_options.js; sourceTree = ""; }; + C625A7F7E5341AD19981D11484733176 /* led.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = led.rst.txt; path = Docs/build/html/_sources/led.rst.txt; sourceTree = ""; }; + C71EE0232314A829D6983C00C4D1685B /* haptic.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = haptic.cpp; sourceTree = ""; }; + C765F6E825F979DBF983E7EFE6F4394C /* jquery-3.5.1.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = "jquery-3.5.1.js"; path = "Docs/build/html/_static/jquery-3.5.1.js"; sourceTree = ""; }; C81D2E67097EFC1B69D02B9B96CAC265 /* Pods-Starter-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Starter-iOS.modulemap"; sourceTree = ""; }; C89E6622B43CF1FBB3D18A3036852974 /* Pods-Starter-macOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Starter-macOS-acknowledgements.plist"; sourceTree = ""; }; CA10A7C819BBF350BDDD6EDCD550F31B /* Pods-Starter-macOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Starter-macOS.release.xcconfig"; sourceTree = ""; }; - CB218E81B6C29AF1C2468898A82CF981 /* led.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = led.cpp; sourceTree = ""; }; CB6ECAA2DC4375581C0E7143B4B4F2B1 /* MetaWear.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MetaWear.swift; sourceTree = ""; }; CCD8661E715FAC2CD26666708187A118 /* minus.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = minus.png; path = Docs/build/html/_static/minus.png; sourceTree = ""; }; CD84494AE611F8C6D2420C8D5A578A8B /* Task+WhenAny.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Task+WhenAny.swift"; path = "Sources/BoltsSwift/Task+WhenAny.swift"; sourceTree = ""; }; - CF3002C3345141957EE7C9AA14729609 /* barometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = barometer.rst; path = Docs/source/barometer.rst; sourceTree = ""; }; - CF985630325C9CC34D98CCA8536D7611 /* language_data.js */ = {isa = PBXFileReference; includeInIndex = 1; name = language_data.js; path = Docs/build/html/_static/language_data.js; sourceTree = ""; }; - D0387C870B9F243BE20EF29AFCB3B0A8 /* theme.css */ = {isa = PBXFileReference; includeInIndex = 1; name = theme.css; path = Docs/build/html/_static/css/theme.css; sourceTree = ""; }; - D0608D15485BBD00C2D02C2A174FB451 /* accelerometer_bosch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer_bosch.cpp; sourceTree = ""; }; - D08C199309C453DFB18384D427ACC20F /* version.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = version.cpp; sourceTree = ""; }; + CF3002C3345141957EE7C9AA14729609 /* barometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = barometer.rst; path = Docs/source/barometer.rst; sourceTree = ""; }; + CF985630325C9CC34D98CCA8536D7611 /* language_data.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = language_data.js; path = Docs/build/html/_static/language_data.js; sourceTree = ""; }; + D0387C870B9F243BE20EF29AFCB3B0A8 /* theme.css */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.css; name = theme.css; path = Docs/build/html/_static/css/theme.css; sourceTree = ""; }; D197FBAD8B0D726C59E35F0713802A8F /* Pods-Starter-macOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Starter-macOS-frameworks.sh"; sourceTree = ""; }; - D2039622104039FDF928B9B96838DB28 /* underscore.js */ = {isa = PBXFileReference; includeInIndex = 1; name = underscore.js; path = Docs/build/html/_static/underscore.js; sourceTree = ""; }; - D30FA847D61BD29F80E44A0963799ECD /* accelerometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = accelerometer.rst; path = Docs/source/accelerometer.rst; sourceTree = ""; }; + D2039622104039FDF928B9B96838DB28 /* underscore.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = underscore.js; path = Docs/build/html/_static/underscore.js; sourceTree = ""; }; + D30FA847D61BD29F80E44A0963799ECD /* accelerometer.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = accelerometer.rst; path = Docs/source/accelerometer.rst; sourceTree = ""; }; D5D65D6F3D9A1EC0060BD382ED9DE1ED /* Task+ContinueWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Task+ContinueWith.swift"; path = "Sources/BoltsSwift/Task+ContinueWith.swift"; sourceTree = ""; }; D5D809EBC8662CB00C9EE89EDEAA4C28 /* Bolts-Swift-tvOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "Bolts-Swift-tvOS-Info.plist"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS-Info.plist"; sourceTree = ""; }; - D84A7E69F949CD5E675587450FD3A0F1 /* accelerometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = accelerometer.doctree; path = Docs/build/doctrees/accelerometer.doctree; sourceTree = ""; }; + D84A7E69F949CD5E675587450FD3A0F1 /* accelerometer.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = accelerometer.doctree; path = Docs/build/doctrees/accelerometer.doctree; sourceTree = ""; }; D85F0CF7B03ECBB29CF09997E90A440E /* MBProgressHUD.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = MBProgressHUD.m; sourceTree = ""; }; - D8F6F4A39D77B7B09DBEBC03CD050624 /* humidity_bme280.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = humidity_bme280.cpp; sourceTree = ""; }; D97D161FDB1E5FDBA4B98B11F07A7B96 /* Pods-Starter-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Starter-iOS.release.xcconfig"; sourceTree = ""; }; - DB0E3E499BD91DBAFCF5B4578FB26DC5 /* dataprocessor.html */ = {isa = PBXFileReference; includeInIndex = 1; name = dataprocessor.html; path = Docs/build/html/dataprocessor.html; sourceTree = ""; }; - DB26455D1DB0B9B017F42AF23632D353 /* responseheader.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = responseheader.cpp; sourceTree = ""; }; - DB4DC702436396F6F063E8B2AB9520BA /* conf.py */ = {isa = PBXFileReference; includeInIndex = 1; name = conf.py; path = Docs/source/conf.py; sourceTree = ""; }; - DBF5C8F2E797539E9CAA66EC26BC6E5E /* logging.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = logging.cpp; sourceTree = ""; }; - DC95353461390196266698C600083358 /* humidity.html */ = {isa = PBXFileReference; includeInIndex = 1; name = humidity.html; path = Docs/build/html/humidity.html; sourceTree = ""; }; - DC95E47A76D8C1A2E83EC0B0254B906C /* utils.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = utils.cpp; sourceTree = ""; }; + DB0E3E499BD91DBAFCF5B4578FB26DC5 /* dataprocessor.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = dataprocessor.html; path = Docs/build/html/dataprocessor.html; sourceTree = ""; }; + DB4DC702436396F6F063E8B2AB9520BA /* conf.py */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.python; name = conf.py; path = Docs/source/conf.py; sourceTree = ""; }; + DC95353461390196266698C600083358 /* humidity.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = humidity.html; path = Docs/build/html/humidity.html; sourceTree = ""; }; DCB8B42B9F579C8B8D21BED2494BF344 /* Pods-Starter-macOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Starter-macOS.debug.xcconfig"; sourceTree = ""; }; - DE6F645E53910CAB7E785CF5768B2C7C /* metawearboard.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = metawearboard.rst.txt; path = Docs/build/html/_sources/metawearboard.rst.txt; sourceTree = ""; }; - DE7619118602E09847E0B5A38BDEC961 /* cppbridge.html */ = {isa = PBXFileReference; includeInIndex = 1; name = cppbridge.html; path = Docs/build/html/cppbridge.html; sourceTree = ""; }; - DF2D39BA429BAD2A721C2CCA6CCB780F /* peripherals.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = peripherals.rst.txt; path = Docs/build/html/_sources/peripherals.rst.txt; sourceTree = ""; }; + DE6F645E53910CAB7E785CF5768B2C7C /* metawearboard.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = metawearboard.rst.txt; path = Docs/build/html/_sources/metawearboard.rst.txt; sourceTree = ""; }; + DE7619118602E09847E0B5A38BDEC961 /* cppbridge.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = cppbridge.html; path = Docs/build/html/cppbridge.html; sourceTree = ""; }; + DF2D39BA429BAD2A721C2CCA6CCB780F /* peripherals.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = peripherals.rst.txt; path = Docs/build/html/_sources/peripherals.rst.txt; sourceTree = ""; }; E149DBCDF48543804B2104AEAB54637E /* MetaWear+LED.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MetaWear+LED.swift"; path = "MetaWear/AsyncUtils/MetaWear+LED.swift"; sourceTree = ""; }; - E15F91A4061CB972A32132E8E493ABCA /* ibeacon.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = ibeacon.doctree; path = Docs/build/doctrees/ibeacon.doctree; sourceTree = ""; }; - E18A066BD9FCE33032F9520C8FD43713 /* sensor_fusion.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = sensor_fusion.rst; path = Docs/source/sensor_fusion.rst; sourceTree = ""; }; - E1BC4C1ADF2BB1668E406F5BF7600F77 /* logger.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = logger.rst.txt; path = Docs/build/html/_sources/logger.rst.txt; sourceTree = ""; }; - E201522B79ACA9E5B191D8CA137B0533 /* haptic.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = haptic.cpp; sourceTree = ""; }; - E273C7159987FEB6731F1C09BE95BEBF /* datasignal.html */ = {isa = PBXFileReference; includeInIndex = 1; name = datasignal.html; path = Docs/build/html/datasignal.html; sourceTree = ""; }; - E2846EFD2B0A1FA9675CF9A036F1E2EE /* searchindex.js */ = {isa = PBXFileReference; includeInIndex = 1; name = searchindex.js; path = Docs/build/html/searchindex.js; sourceTree = ""; }; - E2E1502A728116AF07158BD0D4BEB85C /* settings.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.rst.txt; path = Docs/build/html/_sources/settings.rst.txt; sourceTree = ""; }; - E35692E77DA1D9DEE753AD3CD06C59C8 /* metawearboard.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = metawearboard.cpp; sourceTree = ""; }; - E3927302C716F50BA92C88C8AC378BD9 /* led.rst */ = {isa = PBXFileReference; includeInIndex = 1; name = led.rst; path = Docs/source/led.rst; sourceTree = ""; }; - E3BE72C2F05F975EB0586FF2EBE41C3F /* anonymous_datasignal.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = anonymous_datasignal.cpp; sourceTree = ""; }; - E513416C0B1E25C2439AB961BAA5B742 /* gpio.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = gpio.cpp; sourceTree = ""; }; + E15F91A4061CB972A32132E8E493ABCA /* ibeacon.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = ibeacon.doctree; path = Docs/build/doctrees/ibeacon.doctree; sourceTree = ""; }; + E18A066BD9FCE33032F9520C8FD43713 /* sensor_fusion.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = sensor_fusion.rst; path = Docs/source/sensor_fusion.rst; sourceTree = ""; }; + E1BC4C1ADF2BB1668E406F5BF7600F77 /* logger.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = logger.rst.txt; path = Docs/build/html/_sources/logger.rst.txt; sourceTree = ""; }; + E273C7159987FEB6731F1C09BE95BEBF /* datasignal.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = datasignal.html; path = Docs/build/html/datasignal.html; sourceTree = ""; }; + E2846EFD2B0A1FA9675CF9A036F1E2EE /* searchindex.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = searchindex.js; path = Docs/build/html/searchindex.js; sourceTree = ""; }; + E2E1502A728116AF07158BD0D4BEB85C /* settings.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = settings.rst.txt; path = Docs/build/html/_sources/settings.rst.txt; sourceTree = ""; }; + E34B79E148FDB7C37F1437FB08793498 /* ambientlight_ltr329.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ambientlight_ltr329.cpp; sourceTree = ""; }; + E357C9843A2739ED72A001AF3DAA8272 /* serialpassthrough.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = serialpassthrough.cpp; sourceTree = ""; }; + E3927302C716F50BA92C88C8AC378BD9 /* led.rst */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = led.rst; path = Docs/source/led.rst; sourceTree = ""; }; + E3AA7E93FB447F481AC11377F1524C97 /* accelerometer_mma8452q.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer_mma8452q.cpp; sourceTree = ""; }; E514F89FB8879DB45DE348CC46A637EC /* Bolts-Swift-macOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "Bolts-Swift-macOS.modulemap"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS.modulemap"; sourceTree = ""; }; - E61CD130A90592403E1785F55D129BF6 /* conductance.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = conductance.cpp; sourceTree = ""; }; - E6F756312B53C1C48AAE1F46297643E8 /* gpio.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = gpio.doctree; path = Docs/build/doctrees/gpio.doctree; sourceTree = ""; }; - E74CBB42A7102674EB6B25648903057E /* sensors.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = sensors.doctree; path = Docs/build/doctrees/sensors.doctree; sourceTree = ""; }; + E6F756312B53C1C48AAE1F46297643E8 /* gpio.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = gpio.doctree; path = Docs/build/doctrees/gpio.doctree; sourceTree = ""; }; + E74CBB42A7102674EB6B25648903057E /* sensors.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = sensors.doctree; path = Docs/build/doctrees/sensors.doctree; sourceTree = ""; }; + E7CB75A62B9A86FDEEB009D335893096 /* utils.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = utils.cpp; sourceTree = ""; }; E9144025DABE270C8035839AAC2D6CF6 /* cbindings.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = cbindings.swift; sourceTree = ""; }; - E94F6EAC408D39E79557859D40E8565A /* Makefile */ = {isa = PBXFileReference; includeInIndex = 1; name = Makefile; path = Docs/Makefile; sourceTree = ""; }; - E9AF0AFF425D0015BA54FDFB5BF52DA5 /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = BoltsSwift.framework; path = "Bolts-Swift-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - E9F0F9BC85B1D451DE7DA97C59957ECD /* accelerometer_mma8452q.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = accelerometer_mma8452q.cpp; sourceTree = ""; }; + E94F6EAC408D39E79557859D40E8565A /* Makefile */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.make; name = Makefile; path = Docs/Makefile; sourceTree = ""; }; + E9AF0AFF425D0015BA54FDFB5BF52DA5 /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; EA0560F3124490759DBB7E2EF9B80E4D /* DeviceInformation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DeviceInformation.swift; sourceTree = ""; }; - EA49821A6A93B7D0B1ABF7A4468724DD /* advanced_features.doctree */ = {isa = PBXFileReference; includeInIndex = 1; name = advanced_features.doctree; path = Docs/build/doctrees/advanced_features.doctree; sourceTree = ""; }; + EA49821A6A93B7D0B1ABF7A4468724DD /* advanced_features.doctree */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = advanced_features.doctree; path = Docs/build/doctrees/advanced_features.doctree; sourceTree = ""; }; EA5CDEDC3A217752F3668741D172E801 /* MetaWear-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "MetaWear-iOS-prefix.pch"; sourceTree = ""; }; - EB4834A2855D12DEF11E3933422A1571 /* magnetometer_bmm150.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = magnetometer_bmm150.cpp; sourceTree = ""; }; EC52D80BE1D471D05E23450AB5A209E7 /* MBProgressHUD-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "MBProgressHUD-iOS.debug.xcconfig"; sourceTree = ""; }; - EC5F868C4BDA0FE5B7DAF301563AD19D /* barometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = barometer.rst.txt; path = Docs/build/html/_sources/barometer.rst.txt; sourceTree = ""; }; - EEA5F7D3BA6D2A352E4C591C17B5A8A0 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = MetaWear.framework; path = "MetaWear-tvOS.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - EF2AF82017A5DF639AB80DA9167CB62D /* proximity_tsl2671.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = proximity_tsl2671.cpp; sourceTree = ""; }; - EF3984D14110A5F2723454D510C554B8 /* memory.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = memory.cpp; sourceTree = ""; }; + EC5F868C4BDA0FE5B7DAF301563AD19D /* barometer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = barometer.rst.txt; path = Docs/build/html/_sources/barometer.rst.txt; sourceTree = ""; }; + EEA5F7D3BA6D2A352E4C591C17B5A8A0 /* MetaWear.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MetaWear.framework; sourceTree = BUILT_PRODUCTS_DIR; }; EFE2600CFBB6EC57773E50AB9E06EABA /* Bolts-Swift-macOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-macOS-prefix.pch"; path = "../Bolts-Swift-macOS/Bolts-Swift-macOS-prefix.pch"; sourceTree = ""; }; F13FC7E2EA6900A8A2228E057CB9D94D /* Pods-Starter-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Starter-iOS-dummy.m"; sourceTree = ""; }; - F173AA78D167A9B51AE7052CBDB91E18 /* Roboto-Slab-Regular.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; name = "Roboto-Slab-Regular.woff2"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Regular.woff2"; sourceTree = ""; }; + F173AA78D167A9B51AE7052CBDB91E18 /* Roboto-Slab-Regular.woff2 */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file; name = "Roboto-Slab-Regular.woff2"; path = "Docs/build/html/_static/css/fonts/Roboto-Slab-Regular.woff2"; sourceTree = ""; }; F1CFA36BBDAADC3C7B435BF2E42672A3 /* Bolts-Swift-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Bolts-Swift-tvOS-umbrella.h"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS-umbrella.h"; sourceTree = ""; }; F26225951E05BC38821150CAEE20F830 /* MBProgressHUD-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "MBProgressHUD-tvOS-prefix.pch"; path = "../MBProgressHUD-tvOS/MBProgressHUD-tvOS-prefix.pch"; sourceTree = ""; }; - F5B1FDC1A446A4999A70F9AD891F6203 /* ibeacon.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = ibeacon.cpp; sourceTree = ""; }; - F8D4FEE512423AEBA199921A57ADEF46 /* serialpassthrough.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = serialpassthrough.cpp; sourceTree = ""; }; - F8F58A4DB3EC7AB82C245D76694985D7 /* switch.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = switch.cpp; sourceTree = ""; }; + F26F81A7AD9B9B926E9106B90C1263D9 /* dfu_utility.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = dfu_utility.cpp; sourceTree = ""; }; FA470C9BD2DC321FBE20260D27FCE4B7 /* Pods-Starter-macOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Starter-macOS-Info.plist"; sourceTree = ""; }; - FA9FFCC8A0072DE78C9552EFA8B66D7B /* core_modules.html */ = {isa = PBXFileReference; includeInIndex = 1; name = core_modules.html; path = Docs/build/html/core_modules.html; sourceTree = ""; }; + FA9FFCC8A0072DE78C9552EFA8B66D7B /* core_modules.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = core_modules.html; path = Docs/build/html/core_modules.html; sourceTree = ""; }; FB5787F377410A3566126C52B31A1EE0 /* Task+WhenAll.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Task+WhenAll.swift"; path = "Sources/BoltsSwift/Task+WhenAll.swift"; sourceTree = ""; }; - FB8967EA3F3880F9DD7DF74BAA4B0A02 /* basic.css */ = {isa = PBXFileReference; includeInIndex = 1; name = basic.css; path = Docs/build/html/_static/basic.css; sourceTree = ""; }; + FB8967EA3F3880F9DD7DF74BAA4B0A02 /* basic.css */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.css; name = basic.css; path = Docs/build/html/_static/basic.css; sourceTree = ""; }; FBB3BF4C348A1B541964B842801B6189 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Cocoa.framework; sourceTree = DEVELOPER_DIR; }; - FBBE91A0ABBF403E4796CE7BDE7A03D0 /* ibeacon.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = ibeacon.rst.txt; path = Docs/build/html/_sources/ibeacon.rst.txt; sourceTree = ""; }; - FBC3AE734CABE764F2BA471459498219 /* event.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = event.cpp; sourceTree = ""; }; + FBBE91A0ABBF403E4796CE7BDE7A03D0 /* ibeacon.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = ibeacon.rst.txt; path = Docs/build/html/_sources/ibeacon.rst.txt; sourceTree = ""; }; FBDCEB5E511D9AC8F207373B91E5471A /* Bolts-Swift-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Bolts-Swift-tvOS.release.xcconfig"; path = "../Bolts-Swift-tvOS/Bolts-Swift-tvOS.release.xcconfig"; sourceTree = ""; }; - FC3749EBF6F251F3622B3236F1CF6AA9 /* html5shiv-printshiv.min.js */ = {isa = PBXFileReference; includeInIndex = 1; name = "html5shiv-printshiv.min.js"; path = "Docs/build/html/_static/js/html5shiv-printshiv.min.js"; sourceTree = ""; }; + FC3749EBF6F251F3622B3236F1CF6AA9 /* html5shiv-printshiv.min.js */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.javascript; name = "html5shiv-printshiv.min.js"; path = "Docs/build/html/_static/js/html5shiv-printshiv.min.js"; sourceTree = ""; }; FD9A2A311869B111F0574EA193B10550 /* Bridging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Bridging.swift; sourceTree = ""; }; - FDBA6E41B037B966097B2A579BCEADDD /* ibeacon.html */ = {isa = PBXFileReference; includeInIndex = 1; name = ibeacon.html; path = Docs/build/html/ibeacon.html; sourceTree = ""; }; + FDBA6E41B037B966097B2A579BCEADDD /* ibeacon.html */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.html; name = ibeacon.html; path = Docs/build/html/ibeacon.html; sourceTree = ""; }; FE6B25EA7F6BAC20B469AFA0E9107547 /* LogDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = LogDelegate.swift; sourceTree = ""; }; - FE83AE2EE714C133C7CD48CF6C7565C8 /* timer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.rst.txt; path = Docs/build/html/_sources/timer.rst.txt; sourceTree = ""; }; + FE83AE2EE714C133C7CD48CF6C7565C8 /* timer.rst.txt */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = timer.rst.txt; path = Docs/build/html/_sources/timer.rst.txt; sourceTree = ""; }; FEFC2E63C96F3AA31A529BF1F51E6C74 /* Executor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Executor.swift; path = Sources/BoltsSwift/Executor.swift; sourceTree = ""; }; FFAEA4E7DEC191F4EB7AFFE15AD8C887 /* BoltsSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = BoltsSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - FFB774922242F93A433397808756C1EE /* moduleinfo.cpp */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; path = moduleinfo.cpp; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -720,13 +700,13 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 113A8264626AF5A14ACD0B79B12FEEAE /* Frameworks */ = { + 205F35F4FC2C2FED7A7E8FAF000E1C71 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 20669C43F983528EFB1C457F3D2A322B /* BoltsSwift.framework in Frameworks */, - B2F56D4605F8876AA6762A10C77BC484 /* CoreBluetooth.framework in Frameworks */, - D3041EC87A6A4A8E12EF5EEA9874FDEE /* Foundation.framework in Frameworks */, + 87FA84139939C0F02D908392C5ADE8EE /* BoltsSwift.framework in Frameworks */, + CE662C3F25298E40E6BED723AD1EDC0F /* CoreBluetooth.framework in Frameworks */, + CF54785ACA89EF4526CDC92300F8519A /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -746,21 +726,21 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 2F6182123C3B77769AC2271EB3BB8499 /* Frameworks */ = { + 3307C818888C400F656B37EFB4B0503E /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 3B9C8B3B7CE4FC381B73B4D49DF09E14 /* BoltsSwift.framework in Frameworks */, - C05E69FEF419B1B2ACC8C10ABEA3D9B1 /* Cocoa.framework in Frameworks */, - E66C17787D4D3865650EA18C44524756 /* CoreBluetooth.framework in Frameworks */, + EF151BD9E0597C91523D5427BFFADDDA /* Cocoa.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 3307C818888C400F656B37EFB4B0503E /* Frameworks */ = { + 37B874F47741E887F1B3BC874E458F45 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - EF151BD9E0597C91523D5427BFFADDDA /* Cocoa.framework in Frameworks */, + 6B72C8A68368F1D36F1BEE2451748DB2 /* BoltsSwift.framework in Frameworks */, + F120AD5DB1FB2CCBBD3E0650262F2C62 /* CoreBluetooth.framework in Frameworks */, + 047AC10563CA1F9EA9A438A868BA5E3D /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -792,21 +772,21 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - E30DADC2B3AA707EF1460C76EBD08BB3 /* Frameworks */ = { + AB9A58DA30BF96358C278E58E7E1B087 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 66506341EC41A72C818EB1B795046A62 /* Cocoa.framework in Frameworks */, + CA30DBC2FB8EF95126A8B390AFA8FCCF /* BoltsSwift.framework in Frameworks */, + 06020BD42B48485B4E23BC936E124039 /* Cocoa.framework in Frameworks */, + 3591F2E559A996A99D1A48F21A3E36A4 /* CoreBluetooth.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - EB7B29D723579EA9B9D6B92E87221491 /* Frameworks */ = { + E30DADC2B3AA707EF1460C76EBD08BB3 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 2FF37A9085F3AE8B4F5D818D1B437F3B /* BoltsSwift.framework in Frameworks */, - F39D6049A4B18D62BE71CDB3BA622371 /* CoreBluetooth.framework in Frameworks */, - 57BCC7D7C52D44A32C2FE28DDC51FBE4 /* Foundation.framework in Frameworks */, + 66506341EC41A72C818EB1B795046A62 /* Cocoa.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -821,15 +801,6 @@ name = "Development Pods"; sourceTree = ""; }; - 062DC5BBEEE85953BCC481E4A9613B2B /* core */ = { - isa = PBXGroup; - children = ( - 12806095227AF71B39068D19F0B6610F /* cpp */, - ); - name = core; - path = core; - sourceTree = ""; - }; 0F1619DEEDAD2A9E9F06CE99C6B4A33D /* AsyncUtils */ = { isa = PBXGroup; children = ( @@ -850,25 +821,6 @@ name = "OS X"; sourceTree = ""; }; - 12806095227AF71B39068D19F0B6610F /* cpp */ = { - isa = PBXGroup; - children = ( - E3BE72C2F05F975EB0586FF2EBE41C3F /* anonymous_datasignal.cpp */, - 5611B1879BD77C08A4F191EBA98F7DC5 /* datasignal.cpp */, - 0374A8966340D6C6F204AEDDE7195E09 /* debug.cpp */, - FBC3AE734CABE764F2BA471459498219 /* event.cpp */, - DBF5C8F2E797539E9CAA66EC26BC6E5E /* logging.cpp */, - 45940F0CF94A548FC9F3B4FA33051F8E /* macro.cpp */, - FFB774922242F93A433397808756C1EE /* moduleinfo.cpp */, - DB26455D1DB0B9B017F42AF23632D353 /* responseheader.cpp */, - 6C947102CABC6CF1B03A3CC74BFE1143 /* settings.cpp */, - 31FB69DDB532444DA82167E53E4B1683 /* timer.cpp */, - D08C199309C453DFB18384D427ACC20F /* version.cpp */, - ); - name = cpp; - path = cpp; - sourceTree = ""; - }; 18FED5DA2790CDFDED63692167C3C3E7 /* Pods-Starter-iOS */ = { isa = PBXGroup; children = ( @@ -903,56 +855,59 @@ path = "Target Support Files/Pods-Starter-tvOS"; sourceTree = ""; }; - 2816A4D2404586E9EB63D4F76E33B318 /* cpp */ = { - isa = PBXGroup; - children = ( - 73596A17D39152C54F79907E905F484D /* common.cpp */, - 8DA8F605306A00A56093264E789638F9 /* CSharpGenerator.cpp */, - 08A673C854AF0D8C3D944940AF04ADF4 /* JavaScriptGenerator.cpp */, - 7E390F0DA33824EEA188BADFECC38820 /* PythonGenerator.cpp */, - 2C5A74F26A5F693ED79C88FA42343DD5 /* SwiftGenerator.cpp */, - ); - name = cpp; - path = cpp; - sourceTree = ""; - }; - 385126DD5C422C4D67F70EFD277EA2E5 /* Core */ = { + 289B46D57F2539AE5531222965D6C7FD /* metawear */ = { isa = PBXGroup; children = ( - 8126928A000F6382C205B8EDEC18B296 /* Core */, - B0901EF6997BF5E89FC3FEE76DFF33ED /* MetaWear-SDK-Cpp */, + E8183BDF08942B27D9F702630CDF1F8B /* core */, + 48C40F3FEBE6DBE28EEFE7977AA89BE7 /* dfu */, + 738E8EEBE5A4A8B17F24190EC2A53527 /* impl */, + 30BE8ED794C6FB1F220B4BF624195C77 /* peripheral */, + C16B9F33306EE88867FB2E565183E27E /* platform */, + 9EA9637AEFDBCF6FD54779314BDE0427 /* processor */, + 88224263C317C2C20AF136604149675D /* sensor */, ); - name = Core; + path = metawear; sourceTree = ""; }; - 39DFFE6BD2C339B1C29D30886BF6BF88 /* dfu */ = { + 30BE8ED794C6FB1F220B4BF624195C77 /* peripheral */ = { isa = PBXGroup; children = ( - C20EEF538B96A6E3B0163278F0F48942 /* cpp */, + F026FB690F406D1EBAD749A0B547C57A /* cpp */, ); - name = dfu; - path = dfu; + path = peripheral; sourceTree = ""; }; - 3A98B3B34A129B189B4AAA9FC324819A /* cpp */ = { + 31EDAD4CF61FF8F2D2A48A9571AA5950 /* cpp */ = { isa = PBXGroup; children = ( - E201522B79ACA9E5B191D8CA137B0533 /* haptic.cpp */, - F5B1FDC1A446A4999A70F9AD891F6203 /* ibeacon.cpp */, - CB218E81B6C29AF1C2468898A82CF981 /* led.cpp */, - 915C92E52AD291DB12C9D2632199C9A3 /* neopixel.cpp */, + 4C8F246D88EFD44DBED1336DFA2FBA42 /* accelerometer.cpp */, + 78FA47E416E330555C8481834F3CF2C8 /* accelerometer_bosch.cpp */, + E3AA7E93FB447F481AC11377F1524C97 /* accelerometer_mma8452q.cpp */, + E34B79E148FDB7C37F1437FB08793498 /* ambientlight_ltr329.cpp */, + 800695C91E09337CF59DAEA9AC08A10B /* barometer_bosch.cpp */, + AA222498403C37B047BE83037BD42325 /* colordetector_tcs34725.cpp */, + 130C412BC833896D101596638D703B79 /* conductance.cpp */, + 622353FD062886C34247C4FAA064770C /* gpio.cpp */, + 8C62E827F21DEB7A8FD41B842D2F7D2C /* gyro_bosch.cpp */, + 9CA6F4AC0236407AFCC5FFFDAFD54C75 /* humidity_bme280.cpp */, + A66FB38AF5CED00AEE0D4B25977DF1E9 /* magnetometer_bmm150.cpp */, + 98EB1140A71E6201AFB78EF6D744BBB3 /* multichanneltemperature.cpp */, + 936C85CD5632707AFDBA77A49B76B8D4 /* proximity_tsl2671.cpp */, + 162114BF7CBBA07BD9066AFD5B158298 /* sensor_fusion.cpp */, + E357C9843A2739ED72A001AF3DAA8272 /* serialpassthrough.cpp */, + 322DE5C5FDEA948725D1F86CC8F13DCF /* switch.cpp */, + E7CB75A62B9A86FDEEB009D335893096 /* utils.cpp */, ); - name = cpp; path = cpp; sourceTree = ""; }; - 3D1ACA74C256B115D83D5DE79FF7D4B8 /* platform */ = { + 385126DD5C422C4D67F70EFD277EA2E5 /* Core */ = { isa = PBXGroup; children = ( - AC5495154E41BE73DC162DD82576FF49 /* cpp */, + 8126928A000F6382C205B8EDEC18B296 /* Core */, + B0901EF6997BF5E89FC3FEE76DFF33ED /* MetaWear-SDK-Cpp */, ); - name = platform; - path = platform; + name = Core; sourceTree = ""; }; 42D9C3E5F731D0A8595621F41783D11F /* Products */ = { @@ -973,22 +928,20 @@ name = Products; sourceTree = ""; }; - 4E819FBCF3147A5F7A56C09590768C3A /* swift */ = { + 48C40F3FEBE6DBE28EEFE7977AA89BE7 /* dfu */ = { isa = PBXGroup; children = ( - E9144025DABE270C8035839AAC2D6CF6 /* cbindings.swift */, + 8D198B7A33A86047EEE04E03C4BDE596 /* cpp */, ); - name = swift; - path = swift; + path = dfu; sourceTree = ""; }; - 51AB356C7A8382795F7D3CD1A7BDF946 /* sensor */ = { + 4E819FBCF3147A5F7A56C09590768C3A /* swift */ = { isa = PBXGroup; children = ( - EFEA3B29E8436DAABC0FB922CEF3BEF8 /* cpp */, + E9144025DABE270C8035839AAC2D6CF6 /* cbindings.swift */, ); - name = sensor; - path = sensor; + path = swift; sourceTree = ""; }; 5518D67F3DC130180B1984D2F8894D23 /* Pods */ = { @@ -1010,6 +963,15 @@ name = "Targets Support Files"; sourceTree = ""; }; + 57F9A4E68DC6EF2DB2B4890B587F517A /* cpp */ = { + isa = PBXGroup; + children = ( + 5DB602D4ECD6283083BCC54699EFE45B /* datainterpreter.cpp */, + 08B3F6FB756B6C33CD4EEAB5FAC2A3AD /* metawearboard.cpp */, + ); + path = cpp; + sourceTree = ""; + }; 5BE566B475D5593CC5726D40A0E33C44 /* Pod */ = { isa = PBXGroup; children = ( @@ -1218,30 +1180,12 @@ path = "StarterProject/Pods/Target Support Files/MetaWear-iOS"; sourceTree = ""; }; - 6964743FD6D2B88DB2D25DA98314D5AB /* metawear */ = { - isa = PBXGroup; - children = ( - 062DC5BBEEE85953BCC481E4A9613B2B /* core */, - 39DFFE6BD2C339B1C29D30886BF6BF88 /* dfu */, - 7D7DF61D7E23E4BB1420550BF5FFD6D2 /* generator */, - F726118C646E218D28219C6E37EE2FF1 /* impl */, - CA5096F96897F4DD64EF509A0AC84E32 /* peripheral */, - 3D1ACA74C256B115D83D5DE79FF7D4B8 /* platform */, - 9A921FC134031F3C573D0907C752C587 /* processor */, - 51AB356C7A8382795F7D3CD1A7BDF946 /* sensor */, - ); - name = metawear; - path = metawear; - sourceTree = ""; - }; - 73D7D91D17BB4F6AEF66004FB2DC9155 /* cpp */ = { + 738E8EEBE5A4A8B17F24190EC2A53527 /* impl */ = { isa = PBXGroup; children = ( - 048875C8ECDAE11D7003057D8B992756 /* dataprocessor.cpp */, - 960E6CF8D16AAFA541846C643B412CED /* dataprocessor_config.cpp */, + 57F9A4E68DC6EF2DB2B4890B587F517A /* cpp */, ); - name = cpp; - path = cpp; + path = impl; sourceTree = ""; }; 780E82EC3D8D9D969D2FADD404894F89 /* Pods-Starter-macOS */ = { @@ -1290,15 +1234,6 @@ path = "../Target Support Files/Bolts-Swift-iOS"; sourceTree = ""; }; - 7D7DF61D7E23E4BB1420550BF5FFD6D2 /* generator */ = { - isa = PBXGroup; - children = ( - 2816A4D2404586E9EB63D4F76E33B318 /* cpp */, - ); - name = generator; - path = generator; - sourceTree = ""; - }; 8126928A000F6382C205B8EDEC18B296 /* Core */ = { isa = PBXGroup; children = ( @@ -1316,6 +1251,34 @@ path = MetaWear/Core; sourceTree = ""; }; + 825E461F10AE30A6D6A4E8EA02FA6256 /* src */ = { + isa = PBXGroup; + children = ( + 289B46D57F2539AE5531222965D6C7FD /* metawear */, + ); + path = src; + sourceTree = ""; + }; + 88224263C317C2C20AF136604149675D /* sensor */ = { + isa = PBXGroup; + children = ( + 31EDAD4CF61FF8F2D2A48A9571AA5950 /* cpp */, + ); + path = sensor; + sourceTree = ""; + }; + 8D198B7A33A86047EEE04E03C4BDE596 /* cpp */ = { + isa = PBXGroup; + children = ( + 1D8723325F15311F9E5CFA1E39C3D537 /* dfu_operations.cpp */, + 1DFAC2B8FB12FC2C9742C5C2ECB67454 /* dfu_operations_details.cpp */, + F26F81A7AD9B9B926E9106B90C1263D9 /* dfu_utility.cpp */, + 873067A70EEF28327EB82BFB5FF42397 /* file_operations.cpp */, + A92C6A27B8E84326669B52DB9203614E /* miniz.cpp */, + ); + path = cpp; + sourceTree = ""; + }; 8F41A24A62CAA8B2F719170AFB9729D6 /* Frameworks */ = { isa = PBXGroup; children = ( @@ -1327,21 +1290,11 @@ name = Frameworks; sourceTree = ""; }; - 8F9D01B609E3C604426D003747DAEADA /* src */ = { + 9EA9637AEFDBCF6FD54779314BDE0427 /* processor */ = { isa = PBXGroup; children = ( - 6964743FD6D2B88DB2D25DA98314D5AB /* metawear */, + A348A52E036180D43932F2EB6C2C0213 /* cpp */, ); - name = src; - path = src; - sourceTree = ""; - }; - 9A921FC134031F3C573D0907C752C587 /* processor */ = { - isa = PBXGroup; - children = ( - 73D7D91D17BB4F6AEF66004FB2DC9155 /* cpp */, - ); - name = processor; path = processor; sourceTree = ""; }; @@ -1350,17 +1303,15 @@ children = ( 4E819FBCF3147A5F7A56C09590768C3A /* swift */, ); - name = bindings; path = bindings; sourceTree = ""; }; - A6FBB0668C87D6AFD3DC323B0D90F596 /* cpp */ = { + A348A52E036180D43932F2EB6C2C0213 /* cpp */ = { isa = PBXGroup; children = ( - 3301A15FC2949AEA2784492EDBC7A70C /* datainterpreter.cpp */, - E35692E77DA1D9DEE753AD3CD06C59C8 /* metawearboard.cpp */, + 4BCFAD90F5D5CA8E5D9B95A2CEBFAA27 /* dataprocessor.cpp */, + 9CED93C4D93A38B9822FDC7E7AEDE54E /* dataprocessor_config.cpp */, ); - name = cpp; path = cpp; sourceTree = ""; }; @@ -1372,18 +1323,6 @@ name = UI; sourceTree = ""; }; - AC5495154E41BE73DC162DD82576FF49 /* cpp */ = { - isa = PBXGroup; - children = ( - 497DB20EAE931C659A46172B75E5B8E6 /* async_creator.cpp */, - EF3984D14110A5F2723454D510C554B8 /* memory.cpp */, - 469B8B015B60FEA92F8C92251AF6AE31 /* task.cpp */, - 01D834C2C6B1749521F45F5CAE05A0AF /* threadpool.cpp */, - ); - name = cpp; - path = cpp; - sourceTree = ""; - }; B073F0C14BE0CE0A4973EC909111F311 /* iOS */ = { isa = PBXGroup; children = ( @@ -1399,7 +1338,7 @@ isa = PBXGroup; children = ( A092D77BDA5EF898B75B721334FEE41B /* bindings */, - 8F9D01B609E3C604426D003747DAEADA /* src */, + 825E461F10AE30A6D6A4E8EA02FA6256 /* src */, ); name = "MetaWear-SDK-Cpp"; path = "MetaWear/MetaWear-SDK-Cpp"; @@ -1416,26 +1355,12 @@ name = tvOS; sourceTree = ""; }; - C20EEF538B96A6E3B0163278F0F48942 /* cpp */ = { - isa = PBXGroup; - children = ( - 69478DF70155827E5C4A8D65FE8544EA /* dfu_operations.cpp */, - AF9BE72D3F724EFB9A6ADFDE7CF0DC2E /* dfu_operations_details.cpp */, - 47B0FA97D88DC55F5C8D9B70618CFE50 /* dfu_utility.cpp */, - 6D4FB7A5D78EE1FDB4857D9EDF07615C /* file_operations.cpp */, - A1BC54611F59DDB9DA105EFA630CE88A /* miniz.cpp */, - ); - name = cpp; - path = cpp; - sourceTree = ""; - }; - CA5096F96897F4DD64EF509A0AC84E32 /* peripheral */ = { + C16B9F33306EE88867FB2E565183E27E /* platform */ = { isa = PBXGroup; children = ( - 3A98B3B34A129B189B4AAA9FC324819A /* cpp */, + EE550D41119CE4905659EF6ED517A4C6 /* cpp */, ); - name = peripheral; - path = peripheral; + path = platform; sourceTree = ""; }; CD4FCF3FA53664D6009B4DCE8FAC6B96 /* MBProgressHUD */ = { @@ -1445,7 +1370,6 @@ D85F0CF7B03ECBB29CF09997E90A440E /* MBProgressHUD.m */, DCF62EFF3C916AB4BE493B91306B9561 /* Support Files */, ); - name = MBProgressHUD; path = MBProgressHUD; sourceTree = ""; }; @@ -1483,38 +1407,52 @@ path = "../Target Support Files/MBProgressHUD-iOS"; sourceTree = ""; }; - EFEA3B29E8436DAABC0FB922CEF3BEF8 /* cpp */ = { + E8183BDF08942B27D9F702630CDF1F8B /* core */ = { isa = PBXGroup; children = ( - 9282C71969A1439C75E173883400052A /* accelerometer.cpp */, - D0608D15485BBD00C2D02C2A174FB451 /* accelerometer_bosch.cpp */, - E9F0F9BC85B1D451DE7DA97C59957ECD /* accelerometer_mma8452q.cpp */, - 7AD861E0372523DEECEF815D9FA7F8EE /* ambientlight_ltr329.cpp */, - 1AE6DEF4DCC0A14478137AC7E5923734 /* barometer_bosch.cpp */, - 30D64E2A8AC33A4E6F9E7E3BF5CD1722 /* colordetector_tcs34725.cpp */, - E61CD130A90592403E1785F55D129BF6 /* conductance.cpp */, - E513416C0B1E25C2439AB961BAA5B742 /* gpio.cpp */, - 8E5337698F92619E772C69177B31FF2D /* gyro_bosch.cpp */, - D8F6F4A39D77B7B09DBEBC03CD050624 /* humidity_bme280.cpp */, - EB4834A2855D12DEF11E3933422A1571 /* magnetometer_bmm150.cpp */, - B71604572313E9BB286E64E29DBC6732 /* multichanneltemperature.cpp */, - EF2AF82017A5DF639AB80DA9167CB62D /* proximity_tsl2671.cpp */, - 1A8A76DCFF9440906C34B2692D420CFD /* sensor_fusion.cpp */, - F8D4FEE512423AEBA199921A57ADEF46 /* serialpassthrough.cpp */, - F8F58A4DB3EC7AB82C245D76694985D7 /* switch.cpp */, - DC95E47A76D8C1A2E83EC0B0254B906C /* utils.cpp */, - ); - name = cpp; + E92C636DE73FD7730E72DEA27B94C84E /* cpp */, + ); + path = core; + sourceTree = ""; + }; + E92C636DE73FD7730E72DEA27B94C84E /* cpp */ = { + isa = PBXGroup; + children = ( + 8268A18C900AA08EA1EF1132A6AB4641 /* anonymous_datasignal.cpp */, + 00DE7570816253D5BCFEAA0889CD7B8A /* datasignal.cpp */, + 2E036ADC482B4B030FE4648F17AC2AF4 /* debug.cpp */, + BC06CFE2FE2E56FAB739148BF89AE0C7 /* event.cpp */, + B1559D9AD0C59A4263268B2823A06BDD /* logging.cpp */, + 041D9538C8286C10748E8E8B52C25B2A /* macro.cpp */, + 9F7673374ED5494F00B986AA3EF36297 /* moduleinfo.cpp */, + 2782F7B99963B84157F1AA0390EC00A1 /* responseheader.cpp */, + 4D21686F4F9972B460899617E589EE31 /* settings.cpp */, + 4D5DFCD24DC8BAFA9FE4C2A744E78920 /* timer.cpp */, + 72606E964BE0EEC7D8CAF7820504909D /* version.cpp */, + ); path = cpp; sourceTree = ""; }; - F726118C646E218D28219C6E37EE2FF1 /* impl */ = { + EE550D41119CE4905659EF6ED517A4C6 /* cpp */ = { isa = PBXGroup; children = ( - A6FBB0668C87D6AFD3DC323B0D90F596 /* cpp */, + 440B67D7DF07B2CC441871F904CE00EF /* async_creator.cpp */, + A6FD942C8BC69385A7C869C3DBF689B6 /* memory.cpp */, + 39D248FB1B6A1DB3D4359DF9AC8C4EF0 /* task.cpp */, + 1080D504B29917E7A74A307CB5D66C9B /* threadpool.cpp */, ); - name = impl; - path = impl; + path = cpp; + sourceTree = ""; + }; + F026FB690F406D1EBAD749A0B547C57A /* cpp */ = { + isa = PBXGroup; + children = ( + C71EE0232314A829D6983C00C4D1685B /* haptic.cpp */, + 6105CB2AC398BFE9DC16A98751E95392 /* ibeacon.cpp */, + 1AC53A490DAFFB5D16AFD5E7B7C3D700 /* led.cpp */, + 96CB75CFF13BAA0A8635C3A4224A757E /* neopixel.cpp */, + ); + path = cpp; sourceTree = ""; }; FBB4E98F57EEE3BBBFD07F23A710E175 /* Bolts-Swift */ = { @@ -1530,7 +1468,6 @@ 837B192127E7B12E08CEDCC250CC101A /* TaskCompletionSource.swift */, 7A26F7B2F78137F7F056094E98F91ED7 /* Support Files */, ); - name = "Bolts-Swift"; path = "Bolts-Swift"; sourceTree = ""; }; @@ -1550,6 +1487,14 @@ /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ + 1403784B6EB816366AECC44CB81E7014 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 36B390E1BC8AE659460C94B68DEC8AB0 /* MetaWear-tvOS-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 28DF15EC00E0072CB001938690D35782 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -1575,14 +1520,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 81CC07C175DA49E2B297BF515E207053 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 9CAFF904B28525D0C60F45C37C34BAF2 /* MetaWear-iOS-umbrella.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 82C11A61F494346EFCFD1B26B3F9C401 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -1608,35 +1545,35 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - A99B29820DCE1DEA9B1EAF5162D37648 /* Headers */ = { + C60D04F71DE70EF0C157C643EBDB87DD /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 38976BB25614C69769492DA355DFB469 /* MetaWear-tvOS-umbrella.h in Headers */, + 3941A75CC188FE7BDED71339B96CC1C7 /* Pods-Starter-macOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - C60D04F71DE70EF0C157C643EBDB87DD /* Headers */ = { + CCF70EE599E99902BC644378E0F131EB /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 3941A75CC188FE7BDED71339B96CC1C7 /* Pods-Starter-macOS-umbrella.h in Headers */, + DD92E7F3D43A224CA28560550FB7C9E9 /* Pods-Starter-iOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - CCF70EE599E99902BC644378E0F131EB /* Headers */ = { + E2011CD5D3562B1092CE9220283F716D /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - DD92E7F3D43A224CA28560550FB7C9E9 /* Pods-Starter-iOS-umbrella.h in Headers */, + 30449DC8344D1CFC4885BDE0CDDB8040 /* MetaWear-iOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - E83684E3528E26511FD1E270794B1A70 /* Headers */ = { + E21D8D660BB62A2CD8CBA9D1651115BC /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 428F82ED9C61A6EB96D25452050E8D77 /* MetaWear-macOS-umbrella.h in Headers */, + A6983B4A50D6D63ACA836DC9A5AA94C0 /* MetaWear-macOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1655,9 +1592,9 @@ buildRules = ( ); dependencies = ( - 06C5BADF0D6D68D88224B9DF30C332E1 /* PBXTargetDependency */, - CA91457B0E031D63F2732891B4501CBE /* PBXTargetDependency */, - 377561D20C875CDA493B0F4909927466 /* PBXTargetDependency */, + 3E64EA44ABB5673F74B36045B9F6204B /* PBXTargetDependency */, + B58404DB3C652134CB6143C6214E13AA /* PBXTargetDependency */, + 72994EB57D10AD147C7368C7AEB568DB /* PBXTargetDependency */, ); name = "Pods-Starter-tvOS"; productName = "Pods-Starter-tvOS"; @@ -1666,17 +1603,17 @@ }; 33D1D149C44676165C3F0A61912DB392 /* MetaWear-tvOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 7D0D05AE63F2A8FDA25A1E97619C14D7 /* Build configuration list for PBXNativeTarget "MetaWear-tvOS" */; + buildConfigurationList = 9866A1C965A44D1A23316F5DB3D329FD /* Build configuration list for PBXNativeTarget "MetaWear-tvOS" */; buildPhases = ( - A99B29820DCE1DEA9B1EAF5162D37648 /* Headers */, - A469FE25C3879EE2CF8BDFAEF634E718 /* Sources */, - 113A8264626AF5A14ACD0B79B12FEEAE /* Frameworks */, - FE70A19A3C51B3C93575B4D08F63B96D /* Resources */, + 1403784B6EB816366AECC44CB81E7014 /* Headers */, + 431783424CFC92EFD5DE82841084F9BC /* Sources */, + 205F35F4FC2C2FED7A7E8FAF000E1C71 /* Frameworks */, + B9B2623EE347CE11DCD5973B4C91798D /* Resources */, ); buildRules = ( ); dependencies = ( - 26336C6F3F075EA924871D0C7FED9B49 /* PBXTargetDependency */, + CD25A3FE649C8D4FB238E9BC9E1B960E /* PBXTargetDependency */, ); name = "MetaWear-tvOS"; productName = "MetaWear-tvOS"; @@ -1685,17 +1622,17 @@ }; 3EAD5FC7EE8E8D39DBDCCF711B0F7D75 /* MetaWear-macOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 15C424E67904330769CB45E8AD3D58B4 /* Build configuration list for PBXNativeTarget "MetaWear-macOS" */; + buildConfigurationList = 6067D9023D8A9FC8BC50259E1DEE0632 /* Build configuration list for PBXNativeTarget "MetaWear-macOS" */; buildPhases = ( - E83684E3528E26511FD1E270794B1A70 /* Headers */, - 18A8899350A3AC4D25EFE508C6F9BB95 /* Sources */, - 2F6182123C3B77769AC2271EB3BB8499 /* Frameworks */, - 6C8DD5798402E4958F87C644C0998D9A /* Resources */, + E21D8D660BB62A2CD8CBA9D1651115BC /* Headers */, + 81E1D782963EDCE4ED8FBE697CAB0F4F /* Sources */, + AB9A58DA30BF96358C278E58E7E1B087 /* Frameworks */, + D1394D093460B19F7CC111B97919B662 /* Resources */, ); buildRules = ( ); dependencies = ( - F3D97938763A1BA4FBEDF0B5B6110CFF /* PBXTargetDependency */, + 554910B3E04E7011576C964F07D77E0D /* PBXTargetDependency */, ); name = "MetaWear-macOS"; productName = "MetaWear-macOS"; @@ -1704,17 +1641,17 @@ }; 40F96C8785C4CCB505582120F8B02D1A /* MetaWear-iOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 3DD20A9AFA9A8B4DAC86164D78DB9E9D /* Build configuration list for PBXNativeTarget "MetaWear-iOS" */; + buildConfigurationList = 52ED81EAEAA7108A9D332E64084D7859 /* Build configuration list for PBXNativeTarget "MetaWear-iOS" */; buildPhases = ( - 81CC07C175DA49E2B297BF515E207053 /* Headers */, - 5228E8575FB5A1E0046388C14869B5C6 /* Sources */, - EB7B29D723579EA9B9D6B92E87221491 /* Frameworks */, - ACBD2B3F1F19CF24476C18C60B5EA772 /* Resources */, + E2011CD5D3562B1092CE9220283F716D /* Headers */, + B2C337BBBA150A1E75E8D18B31821025 /* Sources */, + 37B874F47741E887F1B3BC874E458F45 /* Frameworks */, + 5F1ECC69B8F3C0570419C9EEAEB7B336 /* Resources */, ); buildRules = ( ); dependencies = ( - 51896A97A74CF4DCF1AEA79C0CCC8F4C /* PBXTargetDependency */, + D8199C5ADAD51821C5D1CCE72D9DDF88 /* PBXTargetDependency */, ); name = "MetaWear-iOS"; productName = "MetaWear-iOS"; @@ -1787,9 +1724,9 @@ buildRules = ( ); dependencies = ( - 5C1D24230C47486CB503CEA6C26844C4 /* PBXTargetDependency */, - 27BAC95D8C6E3A3A38C47EBA5444873F /* PBXTargetDependency */, - 8558EEECB449BFFD318ABBEEA5B7CC05 /* PBXTargetDependency */, + 9C619D07461CAB3209BDB89FB08924CE /* PBXTargetDependency */, + D9D15555FDCE901377C07512360B71BF /* PBXTargetDependency */, + 54CAB50ACABEA53AEE18FD6E3CB8C3D7 /* PBXTargetDependency */, ); name = "Pods-Starter-iOS"; productName = "Pods-Starter-iOS"; @@ -1844,8 +1781,8 @@ buildRules = ( ); dependencies = ( - 267BF41F733C9AD74BE01E7AA887E98F /* PBXTargetDependency */, - 40C252C642D4544078AA93DC16F3A459 /* PBXTargetDependency */, + 747232988016FEB3308C0DCF53899A10 /* PBXTargetDependency */, + 654B02E1754CEEE2923754AF78E68F56 /* PBXTargetDependency */, ); name = "Pods-Starter-macOS"; productName = "Pods-Starter-macOS"; @@ -1859,7 +1796,7 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 1100; - LastUpgradeCheck = 1100; + LastUpgradeCheck = 1240; }; buildConfigurationList = 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */; compatibilityVersion = "Xcode 3.2"; @@ -1911,7 +1848,7 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 6C8DD5798402E4958F87C644C0998D9A /* Resources */ = { + 5F1ECC69B8F3C0570419C9EEAEB7B336 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( @@ -1939,28 +1876,28 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - ACBD2B3F1F19CF24476C18C60B5EA772 /* Resources */ = { + B9B2623EE347CE11DCD5973B4C91798D /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - F580A483F82E9F6C0555A9119565F665 /* Resources */ = { + D1394D093460B19F7CC111B97919B662 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - FCF46DA57A021972F7538DD29D8BDB69 /* Resources */ = { + F580A483F82E9F6C0555A9119565F665 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - FE70A19A3C51B3C93575B4D08F63B96D /* Resources */ = { + FCF46DA57A021972F7538DD29D8BDB69 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( @@ -1970,79 +1907,6 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ - 18A8899350A3AC4D25EFE508C6F9BB95 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 259E2EB27A2359C48F7958CF9E78CECB /* accelerometer.cpp in Sources */, - 715835AA319F6B00102B8EA41FAFD9BC /* accelerometer_bosch.cpp in Sources */, - 3100EB2B963D0392824F2632AECBEF00 /* accelerometer_mma8452q.cpp in Sources */, - A5431868A4FC4E3593BC18891CAFA0FD /* ambientlight_ltr329.cpp in Sources */, - 9A9B6E40AA20B07E1693848F9CDE92D3 /* anonymous_datasignal.cpp in Sources */, - 41497E852551A843D068FCCA6095AD53 /* async_creator.cpp in Sources */, - A31CC0581975A93AC672339085FC808C /* barometer_bosch.cpp in Sources */, - 26BC7FD4E1C7AAECFFA19356465D2DD0 /* Bridging.swift in Sources */, - D3FF604F71C60C1D685353352999C113 /* cbindings.swift in Sources */, - B65EBEF57C8A6F85C807D7E78CC16599 /* CBUUID.swift in Sources */, - 03A692AEF2ED48F470E6B7CF1019ACA0 /* colordetector_tcs34725.cpp in Sources */, - 70D34329E457DB5A73EA3908FCA04B63 /* common.cpp in Sources */, - E8ADA1E221617221D85DCBDE5D623FD5 /* conductance.cpp in Sources */, - B013EAE133CA81919DAA21A77FB8667B /* CSharpGenerator.cpp in Sources */, - 1850BB07DCAEDB7428DEF05A7594C283 /* datainterpreter.cpp in Sources */, - 2D6693FA2CF1931EAFCDF745534354A1 /* dataprocessor.cpp in Sources */, - FE5789F2A48C54986B1595B610855338 /* dataprocessor_config.cpp in Sources */, - AD4D3C81A904AE78FB14DA7D98F0A6DB /* datasignal.cpp in Sources */, - 9D52C1B12AE41F8836F47B06C7A9F59D /* debug.cpp in Sources */, - C392A8F80289A97FEBB033BE8AFE5E95 /* DeviceInformation.swift in Sources */, - 48D32CD4FB4E7356AAEE1D089DB27C47 /* dfu_operations.cpp in Sources */, - ADB060AC0D87EDA5F01642AF5C37EDB1 /* dfu_operations_details.cpp in Sources */, - F7C1820889CD2E8F3A8E5A4655EFE760 /* dfu_utility.cpp in Sources */, - 16180C74AE6F9E2575B1384CAFE9FCC2 /* event.cpp in Sources */, - 06D5336482F5A360B1620719ED27C1D9 /* file_operations.cpp in Sources */, - 63DDB564AD84EB019AC65C93AB8F81F0 /* gpio.cpp in Sources */, - D947047846547C3438EC17FB74B6E47F /* gyro_bosch.cpp in Sources */, - DE7081D6B52EF09A3A227090795DEF9B /* haptic.cpp in Sources */, - CFA33D37F27FAFAABC4C419DB374D247 /* humidity_bme280.cpp in Sources */, - 6B0F09B34EC1DED9C1944FD4AA1C199E /* ibeacon.cpp in Sources */, - F28EEC4865C8387880774C41BE4B92FB /* JavaScriptGenerator.cpp in Sources */, - 1F821F1315630039027C4B742E6C0751 /* led.cpp in Sources */, - A88A44078E834A3F0E9AC5B32E3E9C4D /* LogDelegate.swift in Sources */, - 9A1E7047ECBA60B34392CF1D33CADE5C /* logging.cpp in Sources */, - DE669BCAB3DE3D874895C3814B0F4648 /* macro.cpp in Sources */, - 885A384CD3D953975CBF0D878B6E00B2 /* magnetometer_bmm150.cpp in Sources */, - 16F0830A853B092479C886A507DE2CC2 /* MblMwDataSignal+Async.swift in Sources */, - 5E296B37789E0CC1DBFEABD2AA4095C9 /* MblMwEvent+Async.swift in Sources */, - A54D3D09A6EBA2A545EA48140E598611 /* MblMwGattChar.swift in Sources */, - 503FE1CA27065E51E9571B19A89EBEC8 /* memory.cpp in Sources */, - 7E37C424389699B98AE505D080DE49EA /* MetaWear+Async.swift in Sources */, - 3500A3C847D19046F4C42180349B781F /* MetaWear+LED.swift in Sources */, - F79930322639B789FB1B122B9EED7D38 /* MetaWear-macOS-dummy.m in Sources */, - 71368054D134564D3F572F0294BBC05E /* MetaWear.swift in Sources */, - 187F7B3780CB90BDEA7E3DDB113F5550 /* metawearboard.cpp in Sources */, - CEE1471416C2501F7C384880DBCC69C7 /* MetaWearData.swift in Sources */, - 231C6C3D6A36B403E06ED2DE5D0277FF /* MetaWearScanner.swift in Sources */, - E88A141537735E1A2D31665CBCA7BF7A /* miniz.cpp in Sources */, - C4EF1F475B020B6EBE6E212DF5ED07D1 /* moduleinfo.cpp in Sources */, - 424DF1FC4751C62203EEB0959811735E /* multichanneltemperature.cpp in Sources */, - D11A164E1ADECBEFAF91F4F82F4D17AC /* neopixel.cpp in Sources */, - D7A774958B3D3D390D493339FBD76484 /* proximity_tsl2671.cpp in Sources */, - B7FB87FD9851479B332A0E30036E9765 /* PythonGenerator.cpp in Sources */, - 280392E00A51885851356F6F55EC59D0 /* responseheader.cpp in Sources */, - 854120AC9CE144D477BBA7CB28B5F138 /* ScannerModel.swift in Sources */, - 8A973496271A2FC9105041839921C465 /* sensor_fusion.cpp in Sources */, - FF30CF63B2D546D8C2F5F735AE32584D /* serialpassthrough.cpp in Sources */, - DC88C64635B1BC7776A165C66EF7222C /* settings.cpp in Sources */, - 19152FFD996FC9CF163B024D24F02270 /* String+VersionCompare.swift in Sources */, - 203844E7708938ED22151CD5C0BDD1E6 /* SwiftGenerator.cpp in Sources */, - 8B2718D2EF1537DEC60EA3368C0C82FA /* switch.cpp in Sources */, - 21DD5796A46589CC7E3D8D3FE21E8622 /* task.cpp in Sources */, - 63FAD868B24E6B7748160B6B2A8DF8E0 /* threadpool.cpp in Sources */, - 6B6BA1766438B75C02F7A53F19E9E3A6 /* timer.cpp in Sources */, - B2599F065389E1B19785D81A0600D8ED /* utils.cpp in Sources */, - 9D68C3DBB769842B31FF920093973CA5 /* version.cpp in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 27A522FC59610BD220308FC10BA93C5F /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -2052,76 +1916,71 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 5228E8575FB5A1E0046388C14869B5C6 /* Sources */ = { + 431783424CFC92EFD5DE82841084F9BC /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 38866C4F499B7C987A7BD75B79718765 /* accelerometer.cpp in Sources */, - 0B6036686D5D49DC8295B31477BB26FC /* accelerometer_bosch.cpp in Sources */, - B915520A8230401BC8CC78CBBDE26716 /* accelerometer_mma8452q.cpp in Sources */, - 353F993E28096768AC6691BF74212084 /* ambientlight_ltr329.cpp in Sources */, - CB2BD4123FAE4E8F14022AAE583AE0B2 /* anonymous_datasignal.cpp in Sources */, - 4DF390DBA13DEB209AB2D5B6A72C5B07 /* async_creator.cpp in Sources */, - 6B2B9202D95431A8D50317F45BD9FB63 /* barometer_bosch.cpp in Sources */, - E70CB0D0FC3ED4B33F3130CC11E220E7 /* Bridging.swift in Sources */, - D434CC3561FF32AAE8B406C050D9C9F2 /* cbindings.swift in Sources */, - ED60FE4915E23F355DF4D4C93B24FDFA /* CBUUID.swift in Sources */, - A3B0A71DB6AB6BB8213F93E627B45BA9 /* colordetector_tcs34725.cpp in Sources */, - 178F103D7EC8B9D156D85E4C0FC770F6 /* common.cpp in Sources */, - 4D0507DB2116EC1F1DF1FAE69E367736 /* conductance.cpp in Sources */, - 3543EA7C331150D535FFAAEA77718AB2 /* CSharpGenerator.cpp in Sources */, - 9D3A1B52DF5E8B33527CCE0276D539A3 /* datainterpreter.cpp in Sources */, - 55011E1376E4542939FEF78AC4577BEE /* dataprocessor.cpp in Sources */, - 7081CC1291BA714647C51F53AD604B9E /* dataprocessor_config.cpp in Sources */, - 18F89FCB2CB100B4BF83ADE71DF739E2 /* datasignal.cpp in Sources */, - 201A8D3006004DC77C228E3D570F6CAE /* debug.cpp in Sources */, - D5D14F31FB56F36DF45CCFD1885D33DB /* DeviceInformation.swift in Sources */, - F7D038AE8757B89603D707C7B6097AB8 /* dfu_operations.cpp in Sources */, - D735AF60094DA5DD2F4F960BC82F9CF0 /* dfu_operations_details.cpp in Sources */, - 81D37212609958C8D4AC676289AB798B /* dfu_utility.cpp in Sources */, - 9E9760F57A75A0871F52BC26A237DB89 /* event.cpp in Sources */, - 2BF42E06871308B91BDD5E17AA9753F1 /* file_operations.cpp in Sources */, - C4DC237CE3DFD050F68ED6D9432A658F /* gpio.cpp in Sources */, - 3E4265511D9A5AC5B8829F574822B343 /* gyro_bosch.cpp in Sources */, - FAA68C92A88427C050D9D3AC9E6DA316 /* haptic.cpp in Sources */, - 2628224ABCBDFEC7A2567C2A848000E5 /* humidity_bme280.cpp in Sources */, - 92CBA17BE5DAC2E731014601D2EDBFCD /* ibeacon.cpp in Sources */, - C1A011DF8AEBB597474C9980724D8DE1 /* JavaScriptGenerator.cpp in Sources */, - C56F79C59AA42C0D80590F31F7D1A471 /* led.cpp in Sources */, - 82182EB272D1C8BA20E584BF77492BB3 /* LogDelegate.swift in Sources */, - 4839B890D86547C12E28C1B9984C7BF2 /* logging.cpp in Sources */, - 3E6B292275D6F2E3CB23119707E3CF00 /* macro.cpp in Sources */, - 9A4CF5EFA1053D34BDBFABC39197DDAE /* magnetometer_bmm150.cpp in Sources */, - 33A4B1DCD85F8E6CA6A7676F01BED65E /* MblMwDataSignal+Async.swift in Sources */, - E94F87589CA2FE250F58B7CD18379E1C /* MblMwEvent+Async.swift in Sources */, - 8221AD2CFA3AE7A89AA7844C5963F651 /* MblMwGattChar.swift in Sources */, - 94F569ACF894EE4C4F077232344C893C /* memory.cpp in Sources */, - 2FE192EFAFFD820C7C6B3503F44B717D /* MetaWear+Async.swift in Sources */, - 44D90BE3E3A318A2DE2B765A539BE606 /* MetaWear+LED.swift in Sources */, - DE7F2478D252EFFD020FD8E798E30AA2 /* MetaWear-iOS-dummy.m in Sources */, - D6A5E773E3A5D7CB2EC5154110DAF031 /* MetaWear.swift in Sources */, - 748599986A02CB3A1CD0BAA30ECCFD65 /* metawearboard.cpp in Sources */, - 972B08A105885405DE062AB73B41A25D /* MetaWearData.swift in Sources */, - EDB942C181CC5A63745CB605B62BC5D8 /* MetaWearScanner.swift in Sources */, - 26995070AFF602D3165DAD25B3FAC067 /* miniz.cpp in Sources */, - 724843BE996C01CBF81F06DFD1788B2D /* moduleinfo.cpp in Sources */, - A0E0AB7C968ECA9161DA46965657DA78 /* multichanneltemperature.cpp in Sources */, - FE87D4AE37801E46E203F1095BD93F28 /* neopixel.cpp in Sources */, - 22027B209730C10381D3A5EF7998F75D /* proximity_tsl2671.cpp in Sources */, - 67E33686A3B8D4DB42F9AEDB84ADBBC5 /* PythonGenerator.cpp in Sources */, - CB9482CC3E8245F0FAB34B0D181284D3 /* responseheader.cpp in Sources */, - F80F92FF236F74F61BAD5B4D87D77420 /* ScannerModel.swift in Sources */, - 6386469E50D711E0B9F43C1109686548 /* sensor_fusion.cpp in Sources */, - 26E737FBDD43E67DA5AF78F8C5ADC85E /* serialpassthrough.cpp in Sources */, - 3CC3B7943A8409B33D729827E92A7C10 /* settings.cpp in Sources */, - 228A4AC6B7608A5222B4955AB11F08C7 /* String+VersionCompare.swift in Sources */, - 9473BD6B6B45FE028524DAD62B1DEC5C /* SwiftGenerator.cpp in Sources */, - 4E11F70E0B418E9719C2111C08FD6047 /* switch.cpp in Sources */, - 2A1068BADE74247CBE0A05BDF2E52634 /* task.cpp in Sources */, - 6FAC24D771A5F5409D7FAD1AF4108C06 /* threadpool.cpp in Sources */, - 8E3EBF7FB5A144669ACA9C2A9959014B /* timer.cpp in Sources */, - DA64460CC47A15B3F1A29518C1774F1A /* utils.cpp in Sources */, - 6AF38C98C1734B226BFBA56F13BDA5E8 /* version.cpp in Sources */, + 819C8FD3E4C8CB8154E09033D6368B09 /* accelerometer.cpp in Sources */, + BFFC83780642BAA0158FD7E76E58D4A2 /* accelerometer_bosch.cpp in Sources */, + 9AE49AB6E3FAF1DB1DE4AA4404669419 /* accelerometer_mma8452q.cpp in Sources */, + 1D94194D3BEDB6AA1DE4851BA9E9A4AE /* ambientlight_ltr329.cpp in Sources */, + 13BCCC871369BC4BDAFA87DC4D35459D /* anonymous_datasignal.cpp in Sources */, + 56D6BA3462303C3259D8C4E6B4BAE10D /* async_creator.cpp in Sources */, + E2F9974E8D096B1D636A91629540717C /* barometer_bosch.cpp in Sources */, + CACEB4ECC1AE7911691FAED3F7230DF9 /* Bridging.swift in Sources */, + 23C1F0D819F06331B0165B541474AA37 /* cbindings.swift in Sources */, + F952AFBA9A798F766F9FD456E8DA708B /* CBUUID.swift in Sources */, + 2381FF16A6B131017740E0AE145FDB90 /* colordetector_tcs34725.cpp in Sources */, + 6CA235C5754344CCA5B4EBAA5553A1F5 /* conductance.cpp in Sources */, + DD95C54D1BDF9725D736521863B79864 /* datainterpreter.cpp in Sources */, + 11B12039E5C90DF4245EAAFF86C9D02B /* dataprocessor.cpp in Sources */, + 4F09705A86DE6C065D3E09A57E9F0373 /* dataprocessor_config.cpp in Sources */, + BE24FB9397381142A12BDB1CCE437E7F /* datasignal.cpp in Sources */, + 3669BF7643CFD729A92BC93B1681E041 /* debug.cpp in Sources */, + 60A18A76E103C5E0D671648EBC2C54C9 /* DeviceInformation.swift in Sources */, + 36B5D78210897CBDA6EBE5AF3E2D43CD /* dfu_operations.cpp in Sources */, + 6DFA4DBBAA258AC24BEFF817399421DB /* dfu_operations_details.cpp in Sources */, + 24BD27192A3035045FB1F5088A8D37DD /* dfu_utility.cpp in Sources */, + 990EE7D0235D18E142E537218FF62800 /* event.cpp in Sources */, + 3146109CDA4A6178FB01CD76D4697831 /* file_operations.cpp in Sources */, + 63B6E69326D6B142E8C8A466E8EA198B /* gpio.cpp in Sources */, + D7CE11D538DB22BBC205A2B42FC5A88E /* gyro_bosch.cpp in Sources */, + 0D9A14A943F0D679DE342166B44307FC /* haptic.cpp in Sources */, + 3A7C2AA34343C3770C12D8D339679CFC /* humidity_bme280.cpp in Sources */, + 1782F8E5E43B98B17BA101A86D2D6996 /* ibeacon.cpp in Sources */, + 82A40C437C1674493A8B21A6DBB3B735 /* led.cpp in Sources */, + 670EFE02E4739BEF2D9139ABF87AAA8A /* LogDelegate.swift in Sources */, + 8C56DB501F42C3CE3601736A73795D61 /* logging.cpp in Sources */, + DC26572A0CC1267440D91C3A60B07A69 /* macro.cpp in Sources */, + 0C67E38CF83C0A6C315EC9C22DEB977B /* magnetometer_bmm150.cpp in Sources */, + 4078DCE93A8E023350BEDD61963A9D71 /* MblMwDataSignal+Async.swift in Sources */, + FE2209F632AF15C169C473E245A2CE9C /* MblMwEvent+Async.swift in Sources */, + 8F5BE636CE9E9EF431C5E48E72CD30C5 /* MblMwGattChar.swift in Sources */, + C5154C40125BE5944AB0B419D9ACEF68 /* memory.cpp in Sources */, + F0B86679D81A76621D618C515DF9C98D /* MetaWear+Async.swift in Sources */, + BF86B17358E46E7F125BC7A855D3EC1E /* MetaWear+LED.swift in Sources */, + 97CBBB2674CA361CE034235315B8BDF0 /* MetaWear-tvOS-dummy.m in Sources */, + 51F6110EEB82C5D33CE17BC7B08AA880 /* MetaWear.swift in Sources */, + 7D2F0C971D06483A895BC573B5E20451 /* metawearboard.cpp in Sources */, + 6C603603BB8401A92F84979FDE87BE22 /* MetaWearData.swift in Sources */, + 95B2655BC846E64C917139D97BC9BD5B /* MetaWearScanner.swift in Sources */, + B701BDDFCD0F77B5E32630C29637DFEB /* miniz.cpp in Sources */, + CEB69A36D725D8E73B1BA6F3F76CD6C7 /* moduleinfo.cpp in Sources */, + 31623DAB391CB788B64C50F355D6E2A3 /* multichanneltemperature.cpp in Sources */, + 43CD8560868D2E01733D532ABD988EF8 /* neopixel.cpp in Sources */, + 80DB83629BA96CE3E43D3CF41A687ACE /* proximity_tsl2671.cpp in Sources */, + EADF9F8B61B351AD7083F48D50D668CE /* responseheader.cpp in Sources */, + 7A583B30B6006FAB205381257F27808C /* ScannerModel.swift in Sources */, + 84511E3364F7FEE57520E09AFEDB3B05 /* sensor_fusion.cpp in Sources */, + 87F888DDF5E394A9495813C6FBA97271 /* serialpassthrough.cpp in Sources */, + 7A61DF07DE0B71ADF1FB3915035B23E9 /* settings.cpp in Sources */, + A0158FC78D93FCAF4EF96703E69902F4 /* String+VersionCompare.swift in Sources */, + 97B380631AB2172B9B9954CBDA5ECE10 /* switch.cpp in Sources */, + CE09F2F0AE0B333190D16A4FCF0D71A4 /* task.cpp in Sources */, + 5C1DAF381F111FDB508CDAE56B8BA4FD /* threadpool.cpp in Sources */, + 1459103535433C9E98D48F3A6A71D660 /* timer.cpp in Sources */, + C44E0B072B39053D6A9734ED291CBA45 /* utils.cpp in Sources */, + 62BB29DD4A13123ADF3078527415A44A /* version.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2133,93 +1992,88 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 9425B1FC044EC8AAD9E8C60DCE1231B1 /* Sources */ = { + 81E1D782963EDCE4ED8FBE697CAB0F4F /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 0C77D9E19D871ECAC707564A2BB53EEE /* Pods-Starter-tvOS-dummy.m in Sources */, + FCEC874C32E41C924A40EF4AE78BE29A /* accelerometer.cpp in Sources */, + E200B2E0D37332EE51ECF576E75C5D9E /* accelerometer_bosch.cpp in Sources */, + CC0D797D9722E60CC058D19DAE36F811 /* accelerometer_mma8452q.cpp in Sources */, + 172F0C436B6E5366310A6AAD872E293B /* ambientlight_ltr329.cpp in Sources */, + 70B99EBDF0FF3AABF0E268A6512269FE /* anonymous_datasignal.cpp in Sources */, + 014A66651CC5A451DDEB625938387F1C /* async_creator.cpp in Sources */, + 5B3DF2209FAD551C171BD95D0B576DB9 /* barometer_bosch.cpp in Sources */, + 943056798A2ACF079F905441C031F7D1 /* Bridging.swift in Sources */, + 7D67C1CC3850DE5DE98E281F795EAFCB /* cbindings.swift in Sources */, + 3F5FA8DAD254A3D11D8C6D489CEBBDFF /* CBUUID.swift in Sources */, + F8C5C5B584F5B5401745393CE00A7626 /* colordetector_tcs34725.cpp in Sources */, + 6F9F6A0218EB768882E4854A0D05F1A1 /* conductance.cpp in Sources */, + 286F34EA3D2EBE4C33B95BE82D1B95E2 /* datainterpreter.cpp in Sources */, + 0B8B740DAA1ECA669A486DE3EA403533 /* dataprocessor.cpp in Sources */, + DE7F0F58AF7E20FBA131BC62718D9878 /* dataprocessor_config.cpp in Sources */, + B0F84724D3B29961DC8439E4A22FB6C5 /* datasignal.cpp in Sources */, + BA5F5023C3AC88DA25E387ABC89762FB /* debug.cpp in Sources */, + 3F9FF4860A0F7B9D61F5D5AEC9371391 /* DeviceInformation.swift in Sources */, + 6E40341A7331841899FF1692D9B0C178 /* dfu_operations.cpp in Sources */, + A9EDA8AF487DE77575123E54233FADC7 /* dfu_operations_details.cpp in Sources */, + B8CDC454D5171BC7214157367EF42009 /* dfu_utility.cpp in Sources */, + B173AB4D54E4E2BFE17FBAFC61E534ED /* event.cpp in Sources */, + A6C108BEF3C0C2B20352E170EABE53B8 /* file_operations.cpp in Sources */, + 4290E5340BF6C3718EDDB7BAC36E298C /* gpio.cpp in Sources */, + 8D9C00A50C994FAEB8005BEB93036B0F /* gyro_bosch.cpp in Sources */, + 682A2B6EBF7462C94283551D84E423DB /* haptic.cpp in Sources */, + 140AEBC15B85D0674AC93BC1E61ACFBA /* humidity_bme280.cpp in Sources */, + 64D2D743320686F9D9F1D43BDB00B69A /* ibeacon.cpp in Sources */, + 23BE5D1D3354E16CD49EFF90B25CA951 /* led.cpp in Sources */, + C1A8E1AD6A0084519320459275BA3FA0 /* LogDelegate.swift in Sources */, + 366284B882BBD26FA8347D21B8F141F8 /* logging.cpp in Sources */, + 3E39B2A161704DD8329E54687EBB6792 /* macro.cpp in Sources */, + 488C00ED4EF951BF120A9D4744C46514 /* magnetometer_bmm150.cpp in Sources */, + 61155B83C1CD5564E402C97AAABB5301 /* MblMwDataSignal+Async.swift in Sources */, + 2FC40B93A9F61BEBE7774E19A7411710 /* MblMwEvent+Async.swift in Sources */, + CF3E3CE0FDD9DCEC37786FD43DF8F39B /* MblMwGattChar.swift in Sources */, + 63A00778EBDBC48FF8E79635A5BDA137 /* memory.cpp in Sources */, + 2E0C0437E465BCD132285600B2C27EA1 /* MetaWear+Async.swift in Sources */, + 6A1903C2DD4E55F718FF74542B3F2474 /* MetaWear+LED.swift in Sources */, + FB2DF7B8B8AEE5A9355738355D8E4E61 /* MetaWear-macOS-dummy.m in Sources */, + 7DB9742576E3BC5EFEE809149861D71F /* MetaWear.swift in Sources */, + 8B85B944FC63DA22A8F21621BA0C91FF /* metawearboard.cpp in Sources */, + 4BD1FED367E93D00A17A28DDE122CC97 /* MetaWearData.swift in Sources */, + BD49555E03548529BC7859394679C758 /* MetaWearScanner.swift in Sources */, + 25FFFB8A14FF23DA251A0D02517B0BCF /* miniz.cpp in Sources */, + A7DD9A49357F336B8F083DA3D4556B58 /* moduleinfo.cpp in Sources */, + 20212C700E6D0DAB6629A734FD9979AD /* multichanneltemperature.cpp in Sources */, + CF854923C7B05311351CFCA4E7335CBA /* neopixel.cpp in Sources */, + 8DA763C2170074644949E476B83BA129 /* proximity_tsl2671.cpp in Sources */, + BFB745DEB5B832545D4C72C6632EF15E /* responseheader.cpp in Sources */, + 93B208B87B2B5F04CBFD978F44648E41 /* ScannerModel.swift in Sources */, + 95013563ABD941F2EF01086B6FCFF5AB /* sensor_fusion.cpp in Sources */, + EA9C07060CF5A0D67CE2967CCA3BF87D /* serialpassthrough.cpp in Sources */, + 5BCDA5AD485D585DD275249F99C159A0 /* settings.cpp in Sources */, + 53207967CBA081EA79CC080B5C937661 /* String+VersionCompare.swift in Sources */, + 0A5CE683F551657DBEC02354FE72D8E3 /* switch.cpp in Sources */, + 159D5F69CA4B54ED23851DB7A4FC4233 /* task.cpp in Sources */, + 065655D67DCE4BB319E0EFCB963052F3 /* threadpool.cpp in Sources */, + B05E3785007EBEE30E7B8CD79227B143 /* timer.cpp in Sources */, + D7A75B8B00C3A8A7413995F928F33F70 /* utils.cpp in Sources */, + DF315C6359D7561263DB2479F0E346E7 /* version.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 9665A9133B47D157B9BDA8D0FDC0067B /* Sources */ = { + 9425B1FC044EC8AAD9E8C60DCE1231B1 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 428D9B67876EC88BE60B452EAD5F84A5 /* MBProgressHUD-iOS-dummy.m in Sources */, - 79DCFD5516667F253580E607C9CB73D5 /* MBProgressHUD.m in Sources */, + 0C77D9E19D871ECAC707564A2BB53EEE /* Pods-Starter-tvOS-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - A469FE25C3879EE2CF8BDFAEF634E718 /* Sources */ = { + 9665A9133B47D157B9BDA8D0FDC0067B /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 2687D31A9F75D0A73139754E456628E9 /* accelerometer.cpp in Sources */, - 927E64C0AF69CB582A45203A0D5717E5 /* accelerometer_bosch.cpp in Sources */, - C4973E0B17208E272C5A5BFE5731F152 /* accelerometer_mma8452q.cpp in Sources */, - 8B2CDF9CEDE2AC82249DA185DC6987D2 /* ambientlight_ltr329.cpp in Sources */, - 077D1E27C1B0490BDD74BF5B01EEF534 /* anonymous_datasignal.cpp in Sources */, - 9CA40DFBCF4374057B3F7537C222DCF1 /* async_creator.cpp in Sources */, - 1A725BCF419EB201AAD7F0A77BF28710 /* barometer_bosch.cpp in Sources */, - ED606D536497058B453CD6D65F008119 /* Bridging.swift in Sources */, - 89CB4C55AD20FC80C63E0303C3AF2AF3 /* cbindings.swift in Sources */, - FD804026EDA455AAA55B88F26170D69C /* CBUUID.swift in Sources */, - 3559EE0E1B4664C757A4571C06775274 /* colordetector_tcs34725.cpp in Sources */, - 0B099FCA3E21389F64648E54928C0520 /* common.cpp in Sources */, - B3602E2EDFE23F1EB99EA8C2F4FC2DBB /* conductance.cpp in Sources */, - A2F8503188C73215D66397BA592E002E /* CSharpGenerator.cpp in Sources */, - 04CA6E7EF20337F2D62C7FF0406922D4 /* datainterpreter.cpp in Sources */, - E483729863968734FEB19457C32435BC /* dataprocessor.cpp in Sources */, - C3B0F4102AD116AF702E8871E4FD94AE /* dataprocessor_config.cpp in Sources */, - 555CF92B5CF0860E6382A3D99BED516B /* datasignal.cpp in Sources */, - D0E93DC0A5D5F5FDCCF75DD024B9369E /* debug.cpp in Sources */, - C97B5F59C9526A216427A8D2C00C4317 /* DeviceInformation.swift in Sources */, - D09E7CD344CB9E3667F5F2FC7695F032 /* dfu_operations.cpp in Sources */, - A9F2382185A6ACBE738DC06FA4A70052 /* dfu_operations_details.cpp in Sources */, - F5D6C9E67F7B014B8C2B60F3B15C1B06 /* dfu_utility.cpp in Sources */, - 5A90FE173B59A4604C5C032C68493EDD /* event.cpp in Sources */, - 67C66BB7856B3DE85F4E1C321B150C7B /* file_operations.cpp in Sources */, - 1FA32DF6191FEBB8583ADF7B79EC2A95 /* gpio.cpp in Sources */, - 1CAF919B7200F1B12A25BC720B8712FA /* gyro_bosch.cpp in Sources */, - 0A80CAD573E2FA8014579F77DB102016 /* haptic.cpp in Sources */, - 0014A31142F45CF8DD8F97158A923F16 /* humidity_bme280.cpp in Sources */, - 5245DE8BDA3CEF69FD3F68960DFD5212 /* ibeacon.cpp in Sources */, - 770616CEC8F8011DC53F21C2C9DC0382 /* JavaScriptGenerator.cpp in Sources */, - 24D828C45E6F71B2082242FEC478A6D9 /* led.cpp in Sources */, - 8393D965460E8FD5BF384DF8F7D92EDB /* LogDelegate.swift in Sources */, - 3DA9EC6C9DC71F587494883CEC122F1E /* logging.cpp in Sources */, - 3002C8371B19C2E0A24643652A227D46 /* macro.cpp in Sources */, - F9A34D3177F33BC772DB96A984982190 /* magnetometer_bmm150.cpp in Sources */, - 15524AF80C7687EEFE178820AA44AB60 /* MblMwDataSignal+Async.swift in Sources */, - 66AAC37B28988CAF55464DCCF661F6BD /* MblMwEvent+Async.swift in Sources */, - 8C63607B4BC81098C084E5D480C67C79 /* MblMwGattChar.swift in Sources */, - B1BD375B7DED21AC3C11F34FC9597489 /* memory.cpp in Sources */, - 06C0D6BAB5F22A3ED733A4E29D9A2B14 /* MetaWear+Async.swift in Sources */, - 8A0E255FADB60E45BA3CFAA6A2BD45E2 /* MetaWear+LED.swift in Sources */, - 91BF982A6325FF30EAB98ECE8CD7D696 /* MetaWear-tvOS-dummy.m in Sources */, - 2970478C2D5DF00B038205E8E7AFE7F2 /* MetaWear.swift in Sources */, - E942EBF8884BD390011C52E257427BBF /* metawearboard.cpp in Sources */, - 256865952B85AD41E9BD93E916A0A0DD /* MetaWearData.swift in Sources */, - B406DE7B106F854062DB2327F9B83189 /* MetaWearScanner.swift in Sources */, - 1CFB6D47E17FB3C8EDAE2F6EB8747650 /* miniz.cpp in Sources */, - DC2C04B6DF676F0A3B7FA65BE0E62955 /* moduleinfo.cpp in Sources */, - C6176DBD76096CBA50BC837DA24E3300 /* multichanneltemperature.cpp in Sources */, - 4BAF6EE2DABB8814F27CDEB8EFE5CCDF /* neopixel.cpp in Sources */, - C99E708777B6973FD80EB672C0FAFEB7 /* proximity_tsl2671.cpp in Sources */, - 42AA346EECAD5AE9FEE7DE6BA5ADB909 /* PythonGenerator.cpp in Sources */, - CE380E59B294F3007EFE85BD51E0FA99 /* responseheader.cpp in Sources */, - D47786F6190D073C88E50E931F973810 /* ScannerModel.swift in Sources */, - 2719F65CC486072C543ABE92DEBEDC37 /* sensor_fusion.cpp in Sources */, - BBB2E266B8D0F3DB111DAFBB8A099256 /* serialpassthrough.cpp in Sources */, - 598E9CADA08B465439642DDDFB6650FA /* settings.cpp in Sources */, - 9560D784E84B61CEE051D7FDB234BD13 /* String+VersionCompare.swift in Sources */, - E91CF3FED5BF4AA027E07AAC3863F4F8 /* SwiftGenerator.cpp in Sources */, - E8470C571EECD48E33CF2A08CF0DBB08 /* switch.cpp in Sources */, - 4F16EC419BE5AD01EDE65419E1258D7E /* task.cpp in Sources */, - 62C1023A5E2F8B3F34B4E6C5366A4014 /* threadpool.cpp in Sources */, - 39FCE0410151B5721D3BE3604ACA380F /* timer.cpp in Sources */, - 8F31B09D782302C8B46EA7097F5F73B1 /* utils.cpp in Sources */, - BF96E928E9BC3AD8F27382CF69C120D3 /* version.cpp in Sources */, + 428D9B67876EC88BE60B452EAD5F84A5 /* MBProgressHUD-iOS-dummy.m in Sources */, + 79DCFD5516667F253580E607C9CB73D5 /* MBProgressHUD.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2239,6 +2093,74 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + B2C337BBBA150A1E75E8D18B31821025 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 97F05474FB76EF172A21E62742AC40DD /* accelerometer.cpp in Sources */, + F00E1AF02BB54DEBDE1925994FCE0141 /* accelerometer_bosch.cpp in Sources */, + C3A872474AF720DD3D2012D52793B6E2 /* accelerometer_mma8452q.cpp in Sources */, + C29828A687D2AC7BD7D2234E5C82F919 /* ambientlight_ltr329.cpp in Sources */, + 5B20789166A1E738BAB1F4F04508C5A0 /* anonymous_datasignal.cpp in Sources */, + E51AB1557BEDEC0D1C5B149EE7A6407B /* async_creator.cpp in Sources */, + 98EAADBF7AEA76AB8ED3D52258BB9395 /* barometer_bosch.cpp in Sources */, + 13DDAD6264678FB6657FA7DF83257DF5 /* Bridging.swift in Sources */, + D9DDBA8B9D1AA23D9B158EAC12AD627A /* cbindings.swift in Sources */, + AC164AB89D959480F833940917463143 /* CBUUID.swift in Sources */, + 7B0D47F268356F5401C33DADAE94B4D5 /* colordetector_tcs34725.cpp in Sources */, + A67805997E22E904B2B53A1E39A11590 /* conductance.cpp in Sources */, + 16C1BC9AF4C1ECF73C0B6B0B705E5B7A /* datainterpreter.cpp in Sources */, + DE221BBC9AABCD89AE5136DC32A6C730 /* dataprocessor.cpp in Sources */, + 1D958D639CB914592F357B08ACB30A90 /* dataprocessor_config.cpp in Sources */, + 4E008BD9612D9A61C7458913B336A655 /* datasignal.cpp in Sources */, + 54C03B78B13C516A3050802B7A7D24BF /* debug.cpp in Sources */, + 90DB7324D75D64F403AACB2446E7FF08 /* DeviceInformation.swift in Sources */, + 3686C7045F6D7680744E73F7DE1C6E0B /* dfu_operations.cpp in Sources */, + ABA00677F7FF3FAF143404651140D3BB /* dfu_operations_details.cpp in Sources */, + BB1E9590E6FBA669592D7AF0B6E59B2B /* dfu_utility.cpp in Sources */, + 6525B3604A027B49BF64F91E0A9C5456 /* event.cpp in Sources */, + 191A646CC3D1552A4DBFA456E4242804 /* file_operations.cpp in Sources */, + 32BF7369CCB34545FBF13AD2FD926073 /* gpio.cpp in Sources */, + D38611D651E3B147E158A57A92F164E6 /* gyro_bosch.cpp in Sources */, + 1C686346E9429EE2C33B46744233B59C /* haptic.cpp in Sources */, + 0CD89E7641EF087283E52432D6739713 /* humidity_bme280.cpp in Sources */, + 8B186687F9AA50A15299676822136631 /* ibeacon.cpp in Sources */, + 546C1550269ADC2665E7BAFF8B03B55D /* led.cpp in Sources */, + E7299F59203877A6F0C551B1F9AB5956 /* LogDelegate.swift in Sources */, + DE6215B91BC962636B71D7942BBD3895 /* logging.cpp in Sources */, + 1C890CB7D318B42A9552032528E48547 /* macro.cpp in Sources */, + C78FE6696DF4AEC622F73D2A4C931661 /* magnetometer_bmm150.cpp in Sources */, + 7FED0227BD3B17B058F52AFAD8178B3E /* MblMwDataSignal+Async.swift in Sources */, + 8EE19A23C99099CC70D1D728ADB37695 /* MblMwEvent+Async.swift in Sources */, + 4C37E94EED12290BA008E5411CE988E3 /* MblMwGattChar.swift in Sources */, + 3B71FD81FE14146B0B040CDFFD73FE4C /* memory.cpp in Sources */, + F3CA543014E4EE236CFA78759F284E8B /* MetaWear+Async.swift in Sources */, + 1A00CD1C782607B84912F7DD8D910441 /* MetaWear+LED.swift in Sources */, + CCC8261DF1AB3EC3DB64B1E95A2CCF4F /* MetaWear-iOS-dummy.m in Sources */, + 6829201C8EC299F3532AA2AB36312070 /* MetaWear.swift in Sources */, + E28452FB3F13C74C9AF7E3BECFC7BDD4 /* metawearboard.cpp in Sources */, + BA3A136562F166EB8169834B162A9A3E /* MetaWearData.swift in Sources */, + 19BDB3299F2CCBC5F500B956703CBE57 /* MetaWearScanner.swift in Sources */, + 94ABFB494BCA20BC68B6C584FC2E7BB8 /* miniz.cpp in Sources */, + FE7804CCDA50F1ABECD24583E0B1EBFA /* moduleinfo.cpp in Sources */, + 3607CA36EEFDA3162E9CEA01956D20B8 /* multichanneltemperature.cpp in Sources */, + 2729A78CC413E35973C1E8851F10C2F4 /* neopixel.cpp in Sources */, + 37048A8C42106AB3788B980B69DBD4AF /* proximity_tsl2671.cpp in Sources */, + 822D7F45F3216449B34166BDA01F08C1 /* responseheader.cpp in Sources */, + 23DD6A092C4E6F098659B6B77D8DF532 /* ScannerModel.swift in Sources */, + 9354C84D943C524A846DE7AA47BF1151 /* sensor_fusion.cpp in Sources */, + E58174B228D25E6DC763AC80B9836FA8 /* serialpassthrough.cpp in Sources */, + 069234C20D2C1F6CC6AE823A545281B8 /* settings.cpp in Sources */, + 7653E2A01952ACF27D20217BDEB6B374 /* String+VersionCompare.swift in Sources */, + D058E533961EB9862ABE906C38039D1C /* switch.cpp in Sources */, + 896CA72E415E95CEBC9D493BB8A80222 /* task.cpp in Sources */, + 0524949C41B8DBC99D9C22845841642A /* threadpool.cpp in Sources */, + A935CC4D5BBAA4893BD49D18D16BC46E /* timer.cpp in Sources */, + EC43BA6ECE35163EA90DC6E4E535C965 /* utils.cpp in Sources */, + 9D2DB3E3E0A71A336D18DAE0D20FFFD0 /* version.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; C95541EB264FA3C6684F6E0DB7CB3D63 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -2282,71 +2204,71 @@ /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 06C5BADF0D6D68D88224B9DF30C332E1 /* PBXTargetDependency */ = { + 3E64EA44ABB5673F74B36045B9F6204B /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "Bolts-Swift-tvOS"; target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; - targetProxy = 5BC6785D2AACBB742D4DB22DF11194C5 /* PBXContainerItemProxy */; + targetProxy = 1D2E5604F544E0B5C4FC38D6A74DC40A /* PBXContainerItemProxy */; }; - 26336C6F3F075EA924871D0C7FED9B49 /* PBXTargetDependency */ = { + 54CAB50ACABEA53AEE18FD6E3CB8C3D7 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-tvOS"; - target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; - targetProxy = 245792CBF382DE157EBF64316430E63A /* PBXContainerItemProxy */; + name = "MetaWear-iOS"; + target = 40F96C8785C4CCB505582120F8B02D1A /* MetaWear-iOS */; + targetProxy = 5FF77E81DEB3F0E927A03EF465897F26 /* PBXContainerItemProxy */; }; - 267BF41F733C9AD74BE01E7AA887E98F /* PBXTargetDependency */ = { + 554910B3E04E7011576C964F07D77E0D /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "Bolts-Swift-macOS"; target = 60E729C6D466746E969FA5CA967B984D /* Bolts-Swift-macOS */; - targetProxy = C5D7716F2FC4EEC62AA874B25F424962 /* PBXContainerItemProxy */; + targetProxy = BD60CEC2CFC07AA7010D3FF125E22B8B /* PBXContainerItemProxy */; }; - 27BAC95D8C6E3A3A38C47EBA5444873F /* PBXTargetDependency */ = { + 654B02E1754CEEE2923754AF78E68F56 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "MBProgressHUD-iOS"; - target = AFF87B4D6717C0C808A53295373A8AD4 /* MBProgressHUD-iOS */; - targetProxy = 92C68114804FA8D83E197D764C95BF5A /* PBXContainerItemProxy */; + name = "MetaWear-macOS"; + target = 3EAD5FC7EE8E8D39DBDCCF711B0F7D75 /* MetaWear-macOS */; + targetProxy = F8C4B93989D81E4DC95B71B26E25F3E5 /* PBXContainerItemProxy */; }; - 377561D20C875CDA493B0F4909927466 /* PBXTargetDependency */ = { + 72994EB57D10AD147C7368C7AEB568DB /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "MetaWear-tvOS"; target = 33D1D149C44676165C3F0A61912DB392 /* MetaWear-tvOS */; - targetProxy = B2EBE82B0FF66AE592E0DEEAA45D2C10 /* PBXContainerItemProxy */; + targetProxy = F50729F48BA9C962FD16877CB02C9D38 /* PBXContainerItemProxy */; }; - 40C252C642D4544078AA93DC16F3A459 /* PBXTargetDependency */ = { + 747232988016FEB3308C0DCF53899A10 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "MetaWear-macOS"; - target = 3EAD5FC7EE8E8D39DBDCCF711B0F7D75 /* MetaWear-macOS */; - targetProxy = 156FE86E1EF71429A33FA248CA0C7064 /* PBXContainerItemProxy */; + name = "Bolts-Swift-macOS"; + target = 60E729C6D466746E969FA5CA967B984D /* Bolts-Swift-macOS */; + targetProxy = 526636D511AACF9C6246CA315FEA6D31 /* PBXContainerItemProxy */; }; - 51896A97A74CF4DCF1AEA79C0CCC8F4C /* PBXTargetDependency */ = { + 9C619D07461CAB3209BDB89FB08924CE /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "Bolts-Swift-iOS"; target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; - targetProxy = E314C30E409D604711D71CE41E1F4414 /* PBXContainerItemProxy */; + targetProxy = E7FAD6409EE2514DBFF926516DB7BA84 /* PBXContainerItemProxy */; }; - 5C1D24230C47486CB503CEA6C26844C4 /* PBXTargetDependency */ = { + B58404DB3C652134CB6143C6214E13AA /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-iOS"; - target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; - targetProxy = AAE0C3466C81C64F38536F4A913538A4 /* PBXContainerItemProxy */; + name = "MBProgressHUD-tvOS"; + target = 4ACB068906486CDBA8800775159A069C /* MBProgressHUD-tvOS */; + targetProxy = EDFF9D438A615E93BC33D9DABDFCDD6B /* PBXContainerItemProxy */; }; - 8558EEECB449BFFD318ABBEEA5B7CC05 /* PBXTargetDependency */ = { + CD25A3FE649C8D4FB238E9BC9E1B960E /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "MetaWear-iOS"; - target = 40F96C8785C4CCB505582120F8B02D1A /* MetaWear-iOS */; - targetProxy = 1C7BAAC7CFE214F0E12769A44B73EB39 /* PBXContainerItemProxy */; + name = "Bolts-Swift-tvOS"; + target = 553FC7D4BCBC31EB47C0C394118E4FE5 /* Bolts-Swift-tvOS */; + targetProxy = 8D46B54AE244F82243461F2590D49F43 /* PBXContainerItemProxy */; }; - CA91457B0E031D63F2732891B4501CBE /* PBXTargetDependency */ = { + D8199C5ADAD51821C5D1CCE72D9DDF88 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "MBProgressHUD-tvOS"; - target = 4ACB068906486CDBA8800775159A069C /* MBProgressHUD-tvOS */; - targetProxy = 19C0968DF1BACECFB3E048780BC0BA93 /* PBXContainerItemProxy */; + name = "Bolts-Swift-iOS"; + target = A23A11CBF477F1C60EB99E0CECF4EFEF /* Bolts-Swift-iOS */; + targetProxy = 31DFEF4030E750EF5CC6950E5AEBFD0A /* PBXContainerItemProxy */; }; - F3D97938763A1BA4FBEDF0B5B6110CFF /* PBXTargetDependency */ = { + D9D15555FDCE901377C07512360B71BF /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "Bolts-Swift-macOS"; - target = 60E729C6D466746E969FA5CA967B984D /* Bolts-Swift-macOS */; - targetProxy = 3E122BB9935D05146AC1E9A8FA6087F2 /* PBXContainerItemProxy */; + name = "MBProgressHUD-iOS"; + target = AFF87B4D6717C0C808A53295373A8AD4 /* MBProgressHUD-iOS */; + targetProxy = 9B34AFEFC61FE6098E552AF84E07B3C3 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ @@ -2375,7 +2297,7 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 4.0; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.0; + TVOS_DEPLOYMENT_TARGET = 12.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; @@ -2405,7 +2327,7 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.0; + TVOS_DEPLOYMENT_TARGET = 12.0; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; @@ -2427,7 +2349,7 @@ GCC_PREFIX_HEADER = "Target Support Files/MBProgressHUD-iOS/MBProgressHUD-iOS-prefix.pch"; INFOPLIST_FILE = "Target Support Files/MBProgressHUD-iOS/MBProgressHUD-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/MBProgressHUD-iOS/MBProgressHUD-iOS.modulemap"; PRODUCT_MODULE_NAME = MBProgressHUD; @@ -2446,7 +2368,6 @@ isa = XCBuildConfiguration; baseConfigurationReference = A5372FC8ECA6A811905243B4EC16FA3D /* Bolts-Swift-macOS.release.xcconfig */; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -2498,7 +2419,7 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 4.0; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.0; + TVOS_DEPLOYMENT_TARGET = 12.0; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; @@ -2510,7 +2431,6 @@ baseConfigurationReference = CA10A7C819BBF350BDDD6EDCD550F31B /* Pods-Starter-macOS.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -2539,9 +2459,9 @@ }; name = Release; }; - 55110639AF5D6D06F2DF36519AE5F2F8 /* Release */ = { + 4824485BB27AD85F3F780A88B33C2C2C /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 71C80E8469B47A167FD49190C5F25FD6 /* MetaWear-tvOS.release.xcconfig */; + baseConfigurationReference = 7BB6060635F52EB33D6A127505F26CA1 /* MetaWear-tvOS.debug.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -2563,19 +2483,48 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; - VALIDATE_PRODUCT = YES; + TVOS_DEPLOYMENT_TARGET = 12.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; + }; + 4E694A84CD962380003BA01D1B2303D7 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 2B5875CA926E5448969650D1C2F56D64 /* MetaWear-macOS.debug.xcconfig */; + buildSettings = { + CLANG_ENABLE_OBJC_WEAK = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-macOS/MetaWear-macOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-macOS/MetaWear-macOS-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MODULEMAP_FILE = "Target Support Files/MetaWear-macOS/MetaWear-macOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; }; 56299184D4E8DB349A59E1A4AF0D57E6 /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = DCB8B42B9F579C8B8D21BED2494BF344 /* Pods-Starter-macOS.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -2608,7 +2557,6 @@ isa = XCBuildConfiguration; baseConfigurationReference = 612387514A3BD2942AA5BFD04BC09471 /* Bolts-Swift-macOS.debug.xcconfig */; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -2686,17 +2634,16 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MACOSX_DEPLOYMENT_TARGET = 10.14; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; PRODUCT_NAME = "$(TARGET_NAME)"; STRIP_INSTALLED_PRODUCT = NO; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; SWIFT_VERSION = 5.0; SYMROOT = "${SRCROOT}/../build"; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 12.0; }; name = Release; }; @@ -2715,7 +2662,7 @@ GCC_PREFIX_HEADER = "Target Support Files/MBProgressHUD-iOS/MBProgressHUD-iOS-prefix.pch"; INFOPLIST_FILE = "Target Support Files/MBProgressHUD-iOS/MBProgressHUD-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/MBProgressHUD-iOS/MBProgressHUD-iOS.modulemap"; PRODUCT_MODULE_NAME = MBProgressHUD; @@ -2757,48 +2704,48 @@ SDKROOT = appletvos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 12.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Debug; }; - 849A8DDC6AD775505BF5A5804F8D3590 /* Debug */ = { + 86FC65F43749AE836E1827AF03DF8384 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 2B5875CA926E5448969650D1C2F56D64 /* MetaWear-macOS.debug.xcconfig */; + baseConfigurationReference = 73C56E3159D96EE5790B58981C71B08F /* Bolts-Swift-tvOS.debug.xcconfig */; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; - CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-macOS/MetaWear-macOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-macOS/MetaWear-macOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.14; - MODULEMAP_FILE = "Target Support Files/MetaWear-macOS/MetaWear-macOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = macosx; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS.modulemap"; + PRODUCT_MODULE_NAME = BoltsSwift; + PRODUCT_NAME = BoltsSwift; + SDKROOT = appletvos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 12.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Debug; }; - 86FC65F43749AE836E1827AF03DF8384 /* Debug */ = { + A8B60F577054F5F1C9731F7DB4A6CA1D /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 73C56E3159D96EE5790B58981C71B08F /* Bolts-Swift-tvOS.debug.xcconfig */; + baseConfigurationReference = D97D161FDB1E5FDBA4B98B11F07A7B96 /* Pods-Starter-iOS.release.xcconfig */; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; @@ -2807,28 +2754,31 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS-Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-Starter-iOS/Pods-Starter-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS.modulemap"; - PRODUCT_MODULE_NAME = BoltsSwift; - PRODUCT_NAME = BoltsSwift; - SDKROOT = appletvos; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Starter-iOS/Pods-Starter-iOS.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; + name = Release; }; - 99FF58B5FE52CE92C567B4B3F23C8501 /* Debug */ = { + C115D850E0358CAECC2CDA66BB095AAB /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 7BB6060635F52EB33D6A127505F26CA1 /* MetaWear-tvOS.debug.xcconfig */; + baseConfigurationReference = 1E81577EC3C916336A3E28118F7B3EF4 /* MetaWear-iOS.debug.xcconfig */; buildSettings = { + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; @@ -2837,27 +2787,27 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-tvOS/MetaWear-tvOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-tvOS/MetaWear-tvOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-iOS/MetaWear-iOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-iOS/MetaWear-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/MetaWear-tvOS/MetaWear-tvOS.modulemap"; + MODULEMAP_FILE = "Target Support Files/MetaWear-iOS/MetaWear-iOS.modulemap"; PRODUCT_MODULE_NAME = MetaWear; PRODUCT_NAME = MetaWear; - SDKROOT = appletvos; + SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; + TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Debug; }; - A8B60F577054F5F1C9731F7DB4A6CA1D /* Release */ = { + D39153C3B83E9010AB2E380F77FE1A55 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = D97D161FDB1E5FDBA4B98B11F07A7B96 /* Pods-Starter-iOS.release.xcconfig */; + baseConfigurationReference = 50B6D92C920877C7145E1CD0741C4A00 /* Pods-Starter-iOS.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -2871,7 +2821,7 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = "Target Support Files/Pods-Starter-iOS/Pods-Starter-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MACH_O_TYPE = staticlib; MODULEMAP_FILE = "Target Support Files/Pods-Starter-iOS/Pods-Starter-iOS.modulemap"; @@ -2883,50 +2833,46 @@ SDKROOT = iphoneos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; - ABDEBCB843C2B078182FD19187E4C969 /* Release */ = { + DB9EF5EA1C2C880EB3C1115933A773DE /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 8180ED6AA8B350F7282D6C70A86941EE /* MetaWear-macOS.release.xcconfig */; + baseConfigurationReference = 58DE8C555AC916CFE978BAF40295195D /* Bolts-Swift-iOS.release.xcconfig */; buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; - CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-macOS/MetaWear-macOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-macOS/MetaWear-macOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.14; - MODULEMAP_FILE = "Target Support Files/MetaWear-macOS/MetaWear-macOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = macosx; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS.modulemap"; + PRODUCT_MODULE_NAME = BoltsSwift; + PRODUCT_NAME = BoltsSwift; + SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Release; }; - D39153C3B83E9010AB2E380F77FE1A55 /* Debug */ = { + E5B3A21D06CF2DA3CBDC083CE984D999 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 50B6D92C920877C7145E1CD0741C4A00 /* Pods-Starter-iOS.debug.xcconfig */; + baseConfigurationReference = 71C80E8469B47A167FD49190C5F25FD6 /* MetaWear-tvOS.release.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; @@ -2935,26 +2881,26 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-Starter-iOS/Pods-Starter-iOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-tvOS/MetaWear-tvOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-tvOS/MetaWear-tvOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-Starter-iOS/Pods-Starter-iOS.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SDKROOT = iphoneos; + MODULEMAP_FILE = "Target Support Files/MetaWear-tvOS/MetaWear-tvOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = appletvos; SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 12.0; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; + name = Release; }; - D4FB72E5F1AEE7F25EEAF90D69C104EF /* Release */ = { + F19F5A944FA62EB67F22D6C54C8D5009 /* Release */ = { isa = XCBuildConfiguration; baseConfigurationReference = 9C1B536A0A6CDFDEB99751E59899728C /* MetaWear-iOS.release.xcconfig */; buildSettings = { @@ -2970,7 +2916,7 @@ GCC_PREFIX_HEADER = "Target Support Files/MetaWear-iOS/MetaWear-iOS-prefix.pch"; INFOPLIST_FILE = "Target Support Files/MetaWear-iOS/MetaWear-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/MetaWear-iOS/MetaWear-iOS.modulemap"; PRODUCT_MODULE_NAME = MetaWear; @@ -2986,32 +2932,32 @@ }; name = Release; }; - DB9EF5EA1C2C880EB3C1115933A773DE /* Release */ = { + F1CD029C771392AD4C0F651FCBA7A432 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 58DE8C555AC916CFE978BAF40295195D /* Bolts-Swift-iOS.release.xcconfig */; + baseConfigurationReference = 8180ED6AA8B350F7282D6C70A86941EE /* MetaWear-macOS.release.xcconfig */; buildSettings = { + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/MetaWear-macOS/MetaWear-macOS-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/MetaWear-macOS/MetaWear-macOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS.modulemap"; - PRODUCT_MODULE_NAME = BoltsSwift; - PRODUCT_NAME = BoltsSwift; - SDKROOT = iphoneos; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MODULEMAP_FILE = "Target Support Files/MetaWear-macOS/MetaWear-macOS.modulemap"; + PRODUCT_MODULE_NAME = MetaWear; + PRODUCT_NAME = MetaWear; + SDKROOT = macosx; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; @@ -3070,7 +3016,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MACOSX_DEPLOYMENT_TARGET = 10.14; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; @@ -3081,7 +3027,7 @@ SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; SYMROOT = "${SRCROOT}/../build"; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 12.0; }; name = Debug; }; @@ -3100,7 +3046,7 @@ GCC_PREFIX_HEADER = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-prefix.pch"; INFOPLIST_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS.modulemap"; PRODUCT_MODULE_NAME = BoltsSwift; @@ -3141,88 +3087,57 @@ SDKROOT = appletvos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 12.0; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Release; }; - FE01E262EAD08D4CA4D25368489EF5C3 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 1E81577EC3C916336A3E28118F7B3EF4 /* MetaWear-iOS.debug.xcconfig */; - buildSettings = { - CLANG_ENABLE_OBJC_WEAK = NO; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/MetaWear-iOS/MetaWear-iOS-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/MetaWear-iOS/MetaWear-iOS-Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/MetaWear-iOS/MetaWear-iOS.modulemap"; - PRODUCT_MODULE_NAME = MetaWear; - PRODUCT_NAME = MetaWear; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 15C424E67904330769CB45E8AD3D58B4 /* Build configuration list for PBXNativeTarget "MetaWear-macOS" */ = { + 41B6F4E1F3AAB1B5E9EE241620DE4166 /* Build configuration list for PBXNativeTarget "Bolts-Swift-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 849A8DDC6AD775505BF5A5804F8D3590 /* Debug */, - ABDEBCB843C2B078182FD19187E4C969 /* Release */, + F45B395995A265A551634585FB42F7BA /* Debug */, + DB9EF5EA1C2C880EB3C1115933A773DE /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 3DD20A9AFA9A8B4DAC86164D78DB9E9D /* Build configuration list for PBXNativeTarget "MetaWear-iOS" */ = { + 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { isa = XCConfigurationList; buildConfigurations = ( - FE01E262EAD08D4CA4D25368489EF5C3 /* Debug */, - D4FB72E5F1AEE7F25EEAF90D69C104EF /* Release */, + F2BAC9DB487FDBDBFF468F993BDBCDA1 /* Debug */, + 602FBA84BEEB93F580BFFF2DA72691D4 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 41B6F4E1F3AAB1B5E9EE241620DE4166 /* Build configuration list for PBXNativeTarget "Bolts-Swift-iOS" */ = { + 4E6DEEC5927F3FFD1B2E8309923DFFFF /* Build configuration list for PBXNativeTarget "Pods-Starter-macOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - F45B395995A265A551634585FB42F7BA /* Debug */, - DB9EF5EA1C2C880EB3C1115933A773DE /* Release */, + 56299184D4E8DB349A59E1A4AF0D57E6 /* Debug */, + 3F6C372EA4DBB0D7C07BCB5754E8D5E6 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { + 52ED81EAEAA7108A9D332E64084D7859 /* Build configuration list for PBXNativeTarget "MetaWear-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - F2BAC9DB487FDBDBFF468F993BDBCDA1 /* Debug */, - 602FBA84BEEB93F580BFFF2DA72691D4 /* Release */, + C115D850E0358CAECC2CDA66BB095AAB /* Debug */, + F19F5A944FA62EB67F22D6C54C8D5009 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 4E6DEEC5927F3FFD1B2E8309923DFFFF /* Build configuration list for PBXNativeTarget "Pods-Starter-macOS" */ = { + 6067D9023D8A9FC8BC50259E1DEE0632 /* Build configuration list for PBXNativeTarget "MetaWear-macOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 56299184D4E8DB349A59E1A4AF0D57E6 /* Debug */, - 3F6C372EA4DBB0D7C07BCB5754E8D5E6 /* Release */, + 4E694A84CD962380003BA01D1B2303D7 /* Debug */, + F1CD029C771392AD4C0F651FCBA7A432 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -3236,11 +3151,11 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 7D0D05AE63F2A8FDA25A1E97619C14D7 /* Build configuration list for PBXNativeTarget "MetaWear-tvOS" */ = { + 9866A1C965A44D1A23316F5DB3D329FD /* Build configuration list for PBXNativeTarget "MetaWear-tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 99FF58B5FE52CE92C567B4B3F23C8501 /* Debug */, - 55110639AF5D6D06F2DF36519AE5F2F8 /* Release */, + 4824485BB27AD85F3F780A88B33C2C2C /* Debug */, + E5B3A21D06CF2DA3CBDC083CE984D999 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; diff --git a/StarterProject/Pods/Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS.xcconfig b/StarterProject/Pods/Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS.xcconfig deleted file mode 100644 index 8506328..0000000 --- a/StarterProject/Pods/Target Support Files/Bolts-Swift-iOS/Bolts-Swift-iOS.xcconfig +++ /dev/null @@ -1,9 +0,0 @@ -CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Bolts-Swift-iOS -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -PODS_BUILD_DIR = ${BUILD_DIR} -PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) -PODS_ROOT = ${SRCROOT} -PODS_TARGET_SRCROOT = ${PODS_ROOT}/Bolts-Swift -PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} -SKIP_INSTALL = YES diff --git a/StarterProject/Pods/Target Support Files/Bolts-Swift-iOS/Info.plist b/StarterProject/Pods/Target Support Files/Bolts-Swift-iOS/Info.plist deleted file mode 100644 index 7b6b52a..0000000 --- a/StarterProject/Pods/Target Support Files/Bolts-Swift-iOS/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - ${PRODUCT_BUNDLE_IDENTIFIER} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.4.0 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - - - diff --git a/StarterProject/Pods/Target Support Files/Bolts-Swift-macOS/Bolts-Swift-macOS.xcconfig b/StarterProject/Pods/Target Support Files/Bolts-Swift-macOS/Bolts-Swift-macOS.xcconfig deleted file mode 100644 index 735622f..0000000 --- a/StarterProject/Pods/Target Support Files/Bolts-Swift-macOS/Bolts-Swift-macOS.xcconfig +++ /dev/null @@ -1,10 +0,0 @@ -CODE_SIGN_IDENTITY = -CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Bolts-Swift-macOS -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -PODS_BUILD_DIR = ${BUILD_DIR} -PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) -PODS_ROOT = ${SRCROOT} -PODS_TARGET_SRCROOT = ${PODS_ROOT}/Bolts-Swift -PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} -SKIP_INSTALL = YES diff --git a/StarterProject/Pods/Target Support Files/Bolts-Swift-macOS/Info.plist b/StarterProject/Pods/Target Support Files/Bolts-Swift-macOS/Info.plist deleted file mode 100644 index 7b6b52a..0000000 --- a/StarterProject/Pods/Target Support Files/Bolts-Swift-macOS/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - ${PRODUCT_BUNDLE_IDENTIFIER} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.4.0 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - - - diff --git a/StarterProject/Pods/Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS.xcconfig b/StarterProject/Pods/Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS.xcconfig deleted file mode 100644 index f714396..0000000 --- a/StarterProject/Pods/Target Support Files/Bolts-Swift-tvOS/Bolts-Swift-tvOS.xcconfig +++ /dev/null @@ -1,9 +0,0 @@ -CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Bolts-Swift-tvOS -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -PODS_BUILD_DIR = ${BUILD_DIR} -PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) -PODS_ROOT = ${SRCROOT} -PODS_TARGET_SRCROOT = ${PODS_ROOT}/Bolts-Swift -PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} -SKIP_INSTALL = YES diff --git a/StarterProject/Pods/Target Support Files/Bolts-Swift-tvOS/Info.plist b/StarterProject/Pods/Target Support Files/Bolts-Swift-tvOS/Info.plist deleted file mode 100644 index 7b6b52a..0000000 --- a/StarterProject/Pods/Target Support Files/Bolts-Swift-tvOS/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - ${PRODUCT_BUNDLE_IDENTIFIER} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.4.0 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - - - diff --git a/StarterProject/Pods/Target Support Files/MBProgressHUD-iOS/Info.plist b/StarterProject/Pods/Target Support Files/MBProgressHUD-iOS/Info.plist deleted file mode 100644 index 21a30b4..0000000 --- a/StarterProject/Pods/Target Support Files/MBProgressHUD-iOS/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - ${PRODUCT_BUNDLE_IDENTIFIER} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.1.0 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - - - diff --git a/StarterProject/Pods/Target Support Files/MBProgressHUD-iOS/MBProgressHUD-iOS.xcconfig b/StarterProject/Pods/Target Support Files/MBProgressHUD-iOS/MBProgressHUD-iOS.xcconfig deleted file mode 100644 index 6c8ccae..0000000 --- a/StarterProject/Pods/Target Support Files/MBProgressHUD-iOS/MBProgressHUD-iOS.xcconfig +++ /dev/null @@ -1,9 +0,0 @@ -CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/MBProgressHUD-iOS -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_LDFLAGS = $(inherited) -framework "CoreGraphics" -framework "QuartzCore" -PODS_BUILD_DIR = ${BUILD_DIR} -PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) -PODS_ROOT = ${SRCROOT} -PODS_TARGET_SRCROOT = ${PODS_ROOT}/MBProgressHUD -PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} -SKIP_INSTALL = YES diff --git a/StarterProject/Pods/Target Support Files/MBProgressHUD-tvOS/Info.plist b/StarterProject/Pods/Target Support Files/MBProgressHUD-tvOS/Info.plist deleted file mode 100644 index 21a30b4..0000000 --- a/StarterProject/Pods/Target Support Files/MBProgressHUD-tvOS/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - ${PRODUCT_BUNDLE_IDENTIFIER} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.1.0 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - - - diff --git a/StarterProject/Pods/Target Support Files/MBProgressHUD-tvOS/MBProgressHUD-tvOS.xcconfig b/StarterProject/Pods/Target Support Files/MBProgressHUD-tvOS/MBProgressHUD-tvOS.xcconfig deleted file mode 100644 index a33e60d..0000000 --- a/StarterProject/Pods/Target Support Files/MBProgressHUD-tvOS/MBProgressHUD-tvOS.xcconfig +++ /dev/null @@ -1,9 +0,0 @@ -CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/MBProgressHUD-tvOS -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_LDFLAGS = $(inherited) -framework "CoreGraphics" -framework "QuartzCore" -PODS_BUILD_DIR = ${BUILD_DIR} -PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) -PODS_ROOT = ${SRCROOT} -PODS_TARGET_SRCROOT = ${PODS_ROOT}/MBProgressHUD -PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} -SKIP_INSTALL = YES diff --git a/StarterProject/Pods/Target Support Files/MetaWear-iOS/Info.plist b/StarterProject/Pods/Target Support Files/MetaWear-iOS/Info.plist deleted file mode 100644 index 9ae03a0..0000000 --- a/StarterProject/Pods/Target Support Files/MetaWear-iOS/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - ${PRODUCT_BUNDLE_IDENTIFIER} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 3.2.0 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - - - diff --git a/StarterProject/Pods/Target Support Files/MetaWear-iOS/MetaWear-iOS-Info.plist b/StarterProject/Pods/Target Support Files/MetaWear-iOS/MetaWear-iOS-Info.plist index 4af92a1..3424ca6 100644 --- a/StarterProject/Pods/Target Support Files/MetaWear-iOS/MetaWear-iOS-Info.plist +++ b/StarterProject/Pods/Target Support Files/MetaWear-iOS/MetaWear-iOS-Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 3.4.3 + 4.0.0 CFBundleSignature ???? CFBundleVersion diff --git a/StarterProject/Pods/Target Support Files/MetaWear-iOS/MetaWear-iOS.xcconfig b/StarterProject/Pods/Target Support Files/MetaWear-iOS/MetaWear-iOS.xcconfig deleted file mode 100644 index f99a8ee..0000000 --- a/StarterProject/Pods/Target Support Files/MetaWear-iOS/MetaWear-iOS.xcconfig +++ /dev/null @@ -1,13 +0,0 @@ -CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/MetaWear-iOS -FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Bolts-Swift-iOS" -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = $(inherited) $(PODS_TARGET_SRCROOT)/MetaWear/MetaWear-SDK-Cpp/src -OTHER_LDFLAGS = $(inherited) -framework "CoreBluetooth" -OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -PODS_BUILD_DIR = ${BUILD_DIR} -PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) -PODS_ROOT = ${SRCROOT} -PODS_TARGET_SRCROOT = ${PODS_ROOT}/../.. -PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} -SKIP_INSTALL = YES -SWIFT_INCLUDE_PATHS = $(inherited) $(PODS_TARGET_SRCROOT)/MetaWear/MetaWear-SDK-Cpp/src diff --git a/StarterProject/Pods/Target Support Files/MetaWear-macOS/Info.plist b/StarterProject/Pods/Target Support Files/MetaWear-macOS/Info.plist deleted file mode 100644 index 9ae03a0..0000000 --- a/StarterProject/Pods/Target Support Files/MetaWear-macOS/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - ${PRODUCT_BUNDLE_IDENTIFIER} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 3.2.0 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - - - diff --git a/StarterProject/Pods/Target Support Files/MetaWear-macOS/MetaWear-macOS-Info.plist b/StarterProject/Pods/Target Support Files/MetaWear-macOS/MetaWear-macOS-Info.plist index 4af92a1..3424ca6 100644 --- a/StarterProject/Pods/Target Support Files/MetaWear-macOS/MetaWear-macOS-Info.plist +++ b/StarterProject/Pods/Target Support Files/MetaWear-macOS/MetaWear-macOS-Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 3.4.3 + 4.0.0 CFBundleSignature ???? CFBundleVersion diff --git a/StarterProject/Pods/Target Support Files/MetaWear-macOS/MetaWear-macOS.xcconfig b/StarterProject/Pods/Target Support Files/MetaWear-macOS/MetaWear-macOS.xcconfig deleted file mode 100644 index 1f4d201..0000000 --- a/StarterProject/Pods/Target Support Files/MetaWear-macOS/MetaWear-macOS.xcconfig +++ /dev/null @@ -1,14 +0,0 @@ -CODE_SIGN_IDENTITY = -CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/MetaWear-macOS -FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Bolts-Swift-macOS" -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = $(inherited) $(PODS_TARGET_SRCROOT)/MetaWear/MetaWear-SDK-Cpp/src -OTHER_LDFLAGS = $(inherited) -framework "CoreBluetooth" -OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -PODS_BUILD_DIR = ${BUILD_DIR} -PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) -PODS_ROOT = ${SRCROOT} -PODS_TARGET_SRCROOT = ${PODS_ROOT}/../.. -PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} -SKIP_INSTALL = YES -SWIFT_INCLUDE_PATHS = $(inherited) $(PODS_TARGET_SRCROOT)/MetaWear/MetaWear-SDK-Cpp/src diff --git a/StarterProject/Pods/Target Support Files/MetaWear-tvOS/Info.plist b/StarterProject/Pods/Target Support Files/MetaWear-tvOS/Info.plist deleted file mode 100644 index 9ae03a0..0000000 --- a/StarterProject/Pods/Target Support Files/MetaWear-tvOS/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - ${PRODUCT_BUNDLE_IDENTIFIER} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 3.2.0 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - - - diff --git a/StarterProject/Pods/Target Support Files/MetaWear-tvOS/MetaWear-tvOS-Info.plist b/StarterProject/Pods/Target Support Files/MetaWear-tvOS/MetaWear-tvOS-Info.plist index 4af92a1..3424ca6 100644 --- a/StarterProject/Pods/Target Support Files/MetaWear-tvOS/MetaWear-tvOS-Info.plist +++ b/StarterProject/Pods/Target Support Files/MetaWear-tvOS/MetaWear-tvOS-Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 3.4.3 + 4.0.0 CFBundleSignature ???? CFBundleVersion diff --git a/StarterProject/Pods/Target Support Files/MetaWear-tvOS/MetaWear-tvOS.xcconfig b/StarterProject/Pods/Target Support Files/MetaWear-tvOS/MetaWear-tvOS.xcconfig deleted file mode 100644 index f0151fa..0000000 --- a/StarterProject/Pods/Target Support Files/MetaWear-tvOS/MetaWear-tvOS.xcconfig +++ /dev/null @@ -1,13 +0,0 @@ -CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/MetaWear-tvOS -FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Bolts-Swift-tvOS" -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = $(inherited) $(PODS_TARGET_SRCROOT)/MetaWear/MetaWear-SDK-Cpp/src -OTHER_LDFLAGS = $(inherited) -framework "CoreBluetooth" -OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -PODS_BUILD_DIR = ${BUILD_DIR} -PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) -PODS_ROOT = ${SRCROOT} -PODS_TARGET_SRCROOT = ${PODS_ROOT}/../.. -PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} -SKIP_INSTALL = YES -SWIFT_INCLUDE_PATHS = $(inherited) $(PODS_TARGET_SRCROOT)/MetaWear/MetaWear-SDK-Cpp/src diff --git a/StarterProject/Pods/Target Support Files/Pods-Starter-iOS/Info.plist b/StarterProject/Pods/Target Support Files/Pods-Starter-iOS/Info.plist deleted file mode 100644 index 2243fe6..0000000 --- a/StarterProject/Pods/Target Support Files/Pods-Starter-iOS/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - ${PRODUCT_BUNDLE_IDENTIFIER} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.0.0 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - - - diff --git a/StarterProject/Pods/Target Support Files/Pods-Starter-iOS/Pods-Starter-iOS-resources.sh b/StarterProject/Pods/Target Support Files/Pods-Starter-iOS/Pods-Starter-iOS-resources.sh deleted file mode 100755 index 345301f..0000000 --- a/StarterProject/Pods/Target Support Files/Pods-Starter-iOS/Pods-Starter-iOS-resources.sh +++ /dev/null @@ -1,118 +0,0 @@ -#!/bin/sh -set -e -set -u -set -o pipefail - -if [ -z ${UNLOCALIZED_RESOURCES_FOLDER_PATH+x} ]; then - # If UNLOCALIZED_RESOURCES_FOLDER_PATH is not set, then there's nowhere for us to copy - # resources to, so exit 0 (signalling the script phase was successful). - exit 0 -fi - -mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" - -RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt -> "$RESOURCES_TO_COPY" - -XCASSET_FILES=() - -# This protects against multiple targets copying the same framework dependency at the same time. The solution -# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html -RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????") - -case "${TARGETED_DEVICE_FAMILY:-}" in - 1,2) - TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" - ;; - 1) - TARGET_DEVICE_ARGS="--target-device iphone" - ;; - 2) - TARGET_DEVICE_ARGS="--target-device ipad" - ;; - 3) - TARGET_DEVICE_ARGS="--target-device tv" - ;; - 4) - TARGET_DEVICE_ARGS="--target-device watch" - ;; - *) - TARGET_DEVICE_ARGS="--target-device mac" - ;; -esac - -install_resource() -{ - if [[ "$1" = /* ]] ; then - RESOURCE_PATH="$1" - else - RESOURCE_PATH="${PODS_ROOT}/$1" - fi - if [[ ! -e "$RESOURCE_PATH" ]] ; then - cat << EOM -error: Resource "$RESOURCE_PATH" not found. Run 'pod install' to update the copy resources script. -EOM - exit 1 - fi - case $RESOURCE_PATH in - *.storyboard) - echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true - ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} - ;; - *.xib) - echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true - ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} - ;; - *.framework) - echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true - mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true - rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - ;; - *.xcdatamodel) - echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\"" || true - xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodel`.mom" - ;; - *.xcdatamodeld) - echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\"" || true - xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd" - ;; - *.xcmappingmodel) - echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\"" || true - xcrun mapc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm" - ;; - *.xcassets) - ABSOLUTE_XCASSET_FILE="$RESOURCE_PATH" - XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") - ;; - *) - echo "$RESOURCE_PATH" || true - echo "$RESOURCE_PATH" >> "$RESOURCES_TO_COPY" - ;; - esac -} - -mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" -rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" -if [[ "${ACTION}" == "install" ]] && [[ "${SKIP_INSTALL}" == "NO" ]]; then - mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" - rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" -fi -rm -f "$RESOURCES_TO_COPY" - -if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "${XCASSET_FILES:-}" ] -then - # Find all other xcassets (this unfortunately includes those of path pods and other targets). - OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) - while read line; do - if [[ $line != "${PODS_ROOT}*" ]]; then - XCASSET_FILES+=("$line") - fi - done <<<"$OTHER_XCASSETS" - - if [ -z ${ASSETCATALOG_COMPILER_APPICON_NAME+x} ]; then - printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${!DEPLOYMENT_TARGET_SETTING_NAME}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" - else - printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${!DEPLOYMENT_TARGET_SETTING_NAME}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" --app-icon "${ASSETCATALOG_COMPILER_APPICON_NAME}" --output-partial-info-plist "${TARGET_TEMP_DIR}/assetcatalog_generated_info_cocoapods.plist" - fi -fi diff --git a/StarterProject/Pods/Target Support Files/Pods-Starter-macOS/Info.plist b/StarterProject/Pods/Target Support Files/Pods-Starter-macOS/Info.plist deleted file mode 100644 index 2243fe6..0000000 --- a/StarterProject/Pods/Target Support Files/Pods-Starter-macOS/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - ${PRODUCT_BUNDLE_IDENTIFIER} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.0.0 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - - - diff --git a/StarterProject/Pods/Target Support Files/Pods-Starter-macOS/Pods-Starter-macOS-resources.sh b/StarterProject/Pods/Target Support Files/Pods-Starter-macOS/Pods-Starter-macOS-resources.sh deleted file mode 100755 index 345301f..0000000 --- a/StarterProject/Pods/Target Support Files/Pods-Starter-macOS/Pods-Starter-macOS-resources.sh +++ /dev/null @@ -1,118 +0,0 @@ -#!/bin/sh -set -e -set -u -set -o pipefail - -if [ -z ${UNLOCALIZED_RESOURCES_FOLDER_PATH+x} ]; then - # If UNLOCALIZED_RESOURCES_FOLDER_PATH is not set, then there's nowhere for us to copy - # resources to, so exit 0 (signalling the script phase was successful). - exit 0 -fi - -mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" - -RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt -> "$RESOURCES_TO_COPY" - -XCASSET_FILES=() - -# This protects against multiple targets copying the same framework dependency at the same time. The solution -# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html -RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????") - -case "${TARGETED_DEVICE_FAMILY:-}" in - 1,2) - TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" - ;; - 1) - TARGET_DEVICE_ARGS="--target-device iphone" - ;; - 2) - TARGET_DEVICE_ARGS="--target-device ipad" - ;; - 3) - TARGET_DEVICE_ARGS="--target-device tv" - ;; - 4) - TARGET_DEVICE_ARGS="--target-device watch" - ;; - *) - TARGET_DEVICE_ARGS="--target-device mac" - ;; -esac - -install_resource() -{ - if [[ "$1" = /* ]] ; then - RESOURCE_PATH="$1" - else - RESOURCE_PATH="${PODS_ROOT}/$1" - fi - if [[ ! -e "$RESOURCE_PATH" ]] ; then - cat << EOM -error: Resource "$RESOURCE_PATH" not found. Run 'pod install' to update the copy resources script. -EOM - exit 1 - fi - case $RESOURCE_PATH in - *.storyboard) - echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true - ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} - ;; - *.xib) - echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true - ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} - ;; - *.framework) - echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true - mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true - rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - ;; - *.xcdatamodel) - echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\"" || true - xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodel`.mom" - ;; - *.xcdatamodeld) - echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\"" || true - xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd" - ;; - *.xcmappingmodel) - echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\"" || true - xcrun mapc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm" - ;; - *.xcassets) - ABSOLUTE_XCASSET_FILE="$RESOURCE_PATH" - XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") - ;; - *) - echo "$RESOURCE_PATH" || true - echo "$RESOURCE_PATH" >> "$RESOURCES_TO_COPY" - ;; - esac -} - -mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" -rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" -if [[ "${ACTION}" == "install" ]] && [[ "${SKIP_INSTALL}" == "NO" ]]; then - mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" - rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" -fi -rm -f "$RESOURCES_TO_COPY" - -if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "${XCASSET_FILES:-}" ] -then - # Find all other xcassets (this unfortunately includes those of path pods and other targets). - OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) - while read line; do - if [[ $line != "${PODS_ROOT}*" ]]; then - XCASSET_FILES+=("$line") - fi - done <<<"$OTHER_XCASSETS" - - if [ -z ${ASSETCATALOG_COMPILER_APPICON_NAME+x} ]; then - printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${!DEPLOYMENT_TARGET_SETTING_NAME}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" - else - printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${!DEPLOYMENT_TARGET_SETTING_NAME}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" --app-icon "${ASSETCATALOG_COMPILER_APPICON_NAME}" --output-partial-info-plist "${TARGET_TEMP_DIR}/assetcatalog_generated_info_cocoapods.plist" - fi -fi diff --git a/StarterProject/Pods/Target Support Files/Pods-Starter-tvOS/Info.plist b/StarterProject/Pods/Target Support Files/Pods-Starter-tvOS/Info.plist deleted file mode 100644 index 2243fe6..0000000 --- a/StarterProject/Pods/Target Support Files/Pods-Starter-tvOS/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - ${PRODUCT_BUNDLE_IDENTIFIER} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.0.0 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - - - diff --git a/StarterProject/Pods/Target Support Files/Pods-Starter-tvOS/Pods-Starter-tvOS-resources.sh b/StarterProject/Pods/Target Support Files/Pods-Starter-tvOS/Pods-Starter-tvOS-resources.sh deleted file mode 100755 index 345301f..0000000 --- a/StarterProject/Pods/Target Support Files/Pods-Starter-tvOS/Pods-Starter-tvOS-resources.sh +++ /dev/null @@ -1,118 +0,0 @@ -#!/bin/sh -set -e -set -u -set -o pipefail - -if [ -z ${UNLOCALIZED_RESOURCES_FOLDER_PATH+x} ]; then - # If UNLOCALIZED_RESOURCES_FOLDER_PATH is not set, then there's nowhere for us to copy - # resources to, so exit 0 (signalling the script phase was successful). - exit 0 -fi - -mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" - -RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt -> "$RESOURCES_TO_COPY" - -XCASSET_FILES=() - -# This protects against multiple targets copying the same framework dependency at the same time. The solution -# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html -RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????") - -case "${TARGETED_DEVICE_FAMILY:-}" in - 1,2) - TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" - ;; - 1) - TARGET_DEVICE_ARGS="--target-device iphone" - ;; - 2) - TARGET_DEVICE_ARGS="--target-device ipad" - ;; - 3) - TARGET_DEVICE_ARGS="--target-device tv" - ;; - 4) - TARGET_DEVICE_ARGS="--target-device watch" - ;; - *) - TARGET_DEVICE_ARGS="--target-device mac" - ;; -esac - -install_resource() -{ - if [[ "$1" = /* ]] ; then - RESOURCE_PATH="$1" - else - RESOURCE_PATH="${PODS_ROOT}/$1" - fi - if [[ ! -e "$RESOURCE_PATH" ]] ; then - cat << EOM -error: Resource "$RESOURCE_PATH" not found. Run 'pod install' to update the copy resources script. -EOM - exit 1 - fi - case $RESOURCE_PATH in - *.storyboard) - echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true - ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} - ;; - *.xib) - echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true - ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} - ;; - *.framework) - echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true - mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true - rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - ;; - *.xcdatamodel) - echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\"" || true - xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodel`.mom" - ;; - *.xcdatamodeld) - echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\"" || true - xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd" - ;; - *.xcmappingmodel) - echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\"" || true - xcrun mapc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm" - ;; - *.xcassets) - ABSOLUTE_XCASSET_FILE="$RESOURCE_PATH" - XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") - ;; - *) - echo "$RESOURCE_PATH" || true - echo "$RESOURCE_PATH" >> "$RESOURCES_TO_COPY" - ;; - esac -} - -mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" -rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" -if [[ "${ACTION}" == "install" ]] && [[ "${SKIP_INSTALL}" == "NO" ]]; then - mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" - rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" -fi -rm -f "$RESOURCES_TO_COPY" - -if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "${XCASSET_FILES:-}" ] -then - # Find all other xcassets (this unfortunately includes those of path pods and other targets). - OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) - while read line; do - if [[ $line != "${PODS_ROOT}*" ]]; then - XCASSET_FILES+=("$line") - fi - done <<<"$OTHER_XCASSETS" - - if [ -z ${ASSETCATALOG_COMPILER_APPICON_NAME+x} ]; then - printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${!DEPLOYMENT_TARGET_SETTING_NAME}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" - else - printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${!DEPLOYMENT_TARGET_SETTING_NAME}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" --app-icon "${ASSETCATALOG_COMPILER_APPICON_NAME}" --output-partial-info-plist "${TARGET_TEMP_DIR}/assetcatalog_generated_info_cocoapods.plist" - fi -fi diff --git a/StarterProject/StarterProject.xcodeproj/project.pbxproj b/StarterProject/StarterProject.xcodeproj/project.pbxproj index b2647ec..d7b492f 100644 --- a/StarterProject/StarterProject.xcodeproj/project.pbxproj +++ b/StarterProject/StarterProject.xcodeproj/project.pbxproj @@ -259,7 +259,7 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0930; - LastUpgradeCheck = 1020; + LastUpgradeCheck = 1240; ORGANIZATIONNAME = "MBIENTLAB, INC"; TargetAttributes = { 4029732C1DB81F5A00EC8C32 = { @@ -535,6 +535,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -565,7 +566,7 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 4.0; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 12.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; @@ -595,6 +596,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -617,7 +619,7 @@ MTL_ENABLE_DEBUG_INFO = NO; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; SWIFT_VERSION = 4.0; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 12.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release;